Exploring the Future Potential of AI-Enabled Smartphone Processors
Romulus project presentation
1. JL-1
Domain Driven Design and
Mashup Oriented Development based on
Open Source Java Metaframework for
Pragmatic, Reliable and Secure Web Development
Project Presentation
June, 2009
2. Overview
Consortium
ROMULUS Rationale
ROMULUS Objectives
Research topics
ROMULUS Results
Business opportunity
Contact information
Project presentation, 2009 2
3. Consortium Overview
GESFOR ES Coordinator,J2EE, OWASP
ASSET IT SME, Metaframework Product
LIFERAY DE SME, Portal Product
UPM ES R+D Soft. Engineering
IMOLA IT SME, J2EE, JBI
DERI IE R+D Semantic web
ICI RO R+D Soft. Engineering
Project presentation, 2009 3
4. Rationale
PROBLEM
Java web development is the
leading trend in Europe with more
than 1M qualified developers
Java Enterprise Edition provides
more than 900 industry driven
specifications
Not as productive
Robust, scalable and proved
technology BUT…
as desirable
There are problems in its
productivity
Need of new methods such as
Ruby on Rails
Project presentation, 2009 4
5. Romulus global objective
Researching on novel methods for increasing
productivity and reliability of Java-based web
development
Project presentation, 2009 5
6. Romulus objectives
Improve Java web development productivity, reliability
and security
Provide methods and tools for Domain Driven Design
based 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, 2009 6
7. Domain Driven Design
“For most software projects, primary focus should be on modelling
the domain and domain logic” (Evans, 92)
“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
Project presentation, 2009 7
8. What is a metaframework?
Frameworks provide 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, 2009 8
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, 2009 9
10. Romulus Research Topics
I
METAFRAMEWORK + DDD + MDA
II III IV BALANCE
MASHUP QUALITY CLIENT &
ORIENTED SOFT SERVER
DEVELOPMENT GOALS
Project presentation, 2009 10
12. 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
I
Allows to select the targeted framework and change it easily
METAFRAMEWORK + DDD + MDA
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.
Project presentation, 2009 12
15. Goal II: Mashup Oriented Development
Higher productivity / reliability through mashups
Integration of mashups in the standard development
cycle
Data-level mashups – Integration heterogeneous data
II
sources MASHUP ORIENTED
DEVELOPMENT
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.
Project presentation, 2009 15
23. 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)
IV BALANCE
CLIENT & SERVER 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
Project presentation, 2009 23
29. Business Opportunities
Product companies. Asset and Liferay have improved their
product functionalities,
ROMULUS has been delivered itself as an open source
project.
Industrial partners provides consultancy, integration and
training services
ROMULUS provides vertical demonstrators for facilitating
its exploitation
Project presentation, 2009 29
30. 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, 2009 30
31. 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, 2009 31
32. For any contact information
Coordinator:
Dr. Carlos A. Iglesias
Informática Gesfor
Avda. Manoteras, 32 28040 Madrid (Spain)
Email: cif@germinus.com
WWW: http://www.ict-romulus.eu
Thanks for your
attention!
Project presentation, 2009 32