Upload
grupo-gesfor-idi
View
604
Download
7
Embed Size (px)
DESCRIPTION
FP7 Romulus project presentation: http://www.ict-romulus.eu/
Citation preview
JL-1
Domain Driven Design and Mashup Oriented Development based on
Open Source Java Metaframework for Pragmatic, Reliable and Secure Web
Development
Project Presentation
February, 2008
Project presentation, 2008 2
Overview
● Consortium● ROMULUS Rationale● ROMULUS Objectives● Research topics● ROMULUS Results● Business opportunity● Contact information
Project presentation, 2008 3
Consortium Overview
R+D Soft. EngineeringROICI
R+D Semantic webIEDERI
SME, J2EE, JBIITIMOLA
R+D Soft. EngineeringESUPM
SME, Portal ProductDELIFERAY
SME, Metaframework ProductITASSET
Coordinator,J2EE, OWASPESGESFOR
Project presentation, 2008 4
Rationale
o Java web development is the leading trend in Europe with more than 1M qualified developers o Java Enterprise Edition provides more than 900 industry driven specificationso Robust, scalable and proved technology BUT…
o There are problems in its productivityo Need of new methods such as Ruby on Rails
PROBLEM
Not as productive as desirable
Project presentation, 2008 5
Romulus global objective
Researching on novel methods for increasing productivity and reliability of Java-based
web development
Project presentation, 2008 6
Romulus objectives
● Improve Java web development productivity, reliability and security
● Provide methods and tools for Domain Driven Designbased on a metaframework
● Integrate mashups in the development cycle, including data, enterprise, web services and portal mashups
● Extend domain description with soft goals and provide automatic generation of functional, load and security tests
● Provide bias for seamless balance of server, client and scripting technologies
Project presentation, 2008 7
Domain Driven Design
“The key to controlling complexity is a good domain model, a model that goes beyond a surface vision of a domain by introducing an underlying structure, which gives the software developers the leverage they need. A good domain model can be incredibly valuable, but it’s not something that’s easy to make” (Fowler, 03)
• Focus on the domain• Extend domain descriptions with annotations (@OP)• Use automatic code generation (80%) for developing the application
“For most software projects, primary focus should be on modelling the domain and domain logic” (Evans, 92)
Project presentation, 2008 8
What is a metaframework?
● Frameworks provides a design and implementation of a common and extensible functionality such as persistence, web flow or authentication.
● A metaframework provides abstract interfaces for 90% of main aspects considered in a framework
● Developers can annotate the domain and develop the domain logic with the metaframework, and adaptors are linked for a particular framework.
Project presentation, 2008 9
Advantages of a metaframework ● Applications are portable across frameworks.
● Save investments● Easier to upgrade to new technology
● Higher productivity thanks to automatic code generation and concentration on domain design
● Lower required skills for Java web development● Ability to tune for a particular framework (although portability
is lost)
Project presentation, 2008 10
Romulus Research Topics
III QUALITY
SOFT GOALS
II MASHUP
ORIENTED DEVELOPME
NT
IV BALANCE CLIENT & SERVER
I METAFRAMEWORK + DDD + MDA
Project presentation, 2008 11
Goal I: Metaframework + DDD + MDA
● Increasing productivity of Java web development, focused on Java, by means of a metaframework, DDD and MDA
● Integrate key frameworks in the metaframework, reducing required skills● Metaframework which
● Allows to select the targeted framework and change it easily● But allows to exploit the strengths of underlying frameworks
● Define an agile methodology for web apps based on the metaframework supported by common IDEs (Eclipse/Netbeans)
● Collect and consolidate information from wikis, forums and development tools about bugs and feature requests. Express such information using in W3C RDF language and using the appropriate ontologies (SIOC, BAETLE etc). Aggregate, process and deliver these informations as extra functionalities embedded in the tools themselves.
I METAFRAMEWORK + DDD + MDA
Project presentation, 2008 12
Goal II: Mashup Oriented Development
• Higher productivity / reliability through mashups
• Integration of mashups in the standard development cycle
• Data-level mashups – Integration heterogeneous data sources
• Mashup web services –integration of mashup web services
• Enterprise mashup – Integration of enterprise systems
• Portal mashups – Integration of mashable portal services such as rating, commentary, etc.
II MASHUP
ORIENTED DEVELOPMENT
Project presentation, 2008 13
Goal III: Software Quality & Soft Goals
• Involve soft goals in the development phase (security, traceability, performance reliability)
• Usage of Attribute Oriented Programming (A@P) for annotating the domain and biasing MDA generation
III QUALITY
SOFT GOALS
Project presentation, 2008 14
Goal IV: Balance client & server technologies
• Research on suitable balance between server technologies (J2EE / .NET), Server side scripting technologies (Ruby, …) and client technologies (RIC, Ajax, Flash)
• Research on pure client side technologies and automatic configuration and composition of applications by end users without programming skills
• Integrate server-side scripting languages in order to increase productivity
IV BALANCE CLIENT & SERVER
Project presentation, 2008 15
Romulus expected results
Security Scalability Testing
Mas
hu
ps
Data
Enterprise
Web Service
Portal
IDEsMethodology & Best Practices
Semantic Social Notifier
Client Server Scripting
Vertical Demostrators
Project presentation, 2008 16
Business Opportunities
• Product companies. Asset and Liferay improve their product functionalities,
• ROMULUS is delivered itself as an open source project.
• Industrial partners will provide consultancy, integration and training services
• ROMULUS will provide vertical demonstrators for facilitating its exploitation
Project presentation, 2008 17
Expected Impact
• Shift on Java web development, with serious impact on efficiency, productivity and reliability
• Costs reduction
• Save the investment. Applications are portable across tools and frameworks
• Gain of productivity. Up to 90% of effort
• Increase of competitiveness, with European companies leading this shift
• Integration of two open source communities, such as Liferay and ROMA
Project presentation, 2008 18
Standardisation
• Proposal of a JSR for metaframeworks
• Proposal for a JSR for portal mashups
• Participation in different committees:
– JDO 1.0 (JSR 12) / JDO 2.0 (JSR 243) – Asset
– Portlets (JSR-286) – Liferay
– JBI (JSR-208) – IMOLA
– OWASP – Gesfor
– W3C Semantic specifications - DERI
Project presentation, 2008 19
For any contact information
Coordinator: – Dr. Carlos A. Iglesias
– Informática Gesfor
– Avda. Manoteras, 32 28040 Madrid (Spain)
– Email: [email protected]
– WWW: http://www.ict-romulus.eu
Thanks for your attention!