Using MDA in Web Software Architectures Santiago Meliá Cristina Cachero Jaime Gómez Universidad de Alicante Spain.

Slides:



Advertisements
Similar presentations
Andrea Maurino Web Service Design Methodology Batini, De Paoli, Maurino, Grega, Comerio WP2-WP3 Roma 24/11/2005.
Advertisements

Web Services Architecture An interoperability architecture for the World Wide Service Network.
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
Kellan Hilscher. Definition Different perspectives on the components, behavioral specifications, and interactions that make up a software system Importance.
Modelling Class T05 Conceptual Modelling – Domain References: –Conceptual Modeling of Information Systems (Chapters 1.2.1, 2, 3) –A practical Guide to.
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
ELSE – eLearning in Software Engineering Stanimir Stoyanov, Distributed eLearning Center (DeLC), University of Plovdiv.
The OO-H method C. Cachero, J. Gómez, A. Párraga, O. Pastor DLSI. Universidad de Alicante DSIC. Universidad Politécnica de Valencia SPAIN June 2001Valencia.
MDA – Model Driven Architecture: An introduction Franco Flore Senior Product Manager.
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
Semantic description of service behavior and automatic composition of services Oussama Kassem Zein Yvon Kermarrec ENST Bretagne France.
Secure Middleware (?) Patrick Morrison 3/1/2006 Secure Systems Group.
Domain-Specific Software Engineering (DSSE). Software Engineering Concerns  There are many of them  “Classical” software architecture research has focused.
1 Introduction to Software Engineering Lecture 42 – Communication Skills.
Methodologies for Web Information System Design
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
HAS. Patterns The use of patterns is essentially the reuse of well established good ideas. A pattern is a named well understood good solution to a common.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
LUCENTIA Research Group Department of Software and Computing Systems Using i* modeling for the multidimensional design of data warehouses Jose-Norberto.
Roles and Responsibilities Jahangheer Shaik. Service Specification Specification requires development of three inter-related documents CIM, PIM and PSM.
IHP Im Technologiepark Frankfurt (Oder) Germany IHP Im Technologiepark Frankfurt (Oder) Germany ©
International Telecommunication Union ITU-T Study Group 17, Moscow, 30 March – 8 April 2005 New Recommendations on ODP Arve Meisingset Rapporteur Q15.
MDA Guide Version CYT. 2 Outline OMG Vision and Process Introduction to MDA How is MDA Used? MDA Transformations Other MDA Capabilities Using the.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Executable UML The Models are the Code - Executable UML CS387 Paul Krause.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
3 April SOA: Services Oriented Architecture MDA: Model Driven Architecture.
Introduction to MDA (Model Driven Architecture) CYT.
2nd TTCN-3 User Conference, June The TTCN-3 Metamodel – A Basis for Tool Integration Ina Schieferdecker TU Berlin/Fraunhofer Fokus Hajo Eichler,
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
Cohesive Design of Personalized Web Applications Presented by Yinghua Hu Schwabe, D. Mattos Guimaraes, R. Rossi, G. Pontificia Univ. Catolica do Rio de.
Information System Development Courses Figure: ISD Course Structure.
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
A language to describe software texture in abstract design models and implementation.
1 A Model-Driven Approach For Information System Migration Raymonde Le Delliou 1, Nicolas Ploquin 2, Mariano Belaunde 3, Reda Bendraou 4, Louis Féraud.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
Model-Driven Engineering of Behaviors in User Interfaces Efrem Mbaki & Jean Vanderdonckt Université catholique de Louvain (UCL) Louvain School of Management.
Early Availability Requirements Modeling using Use Case Maps KAMARUL ZAMAN BIN PANATIK MAN
UML 2 Models for ODP Engineering/Technology Viewpoints – An Experiment - Daisuke Hashimoto Hiroshi.
XASTRO Metamodel. CCSDS SAWG2 Presentation Outline XASTRO-1 Metamodel XASTRO-2 Metamodel Alignment with Model Driven Architecture.
MDA – Model Driven Architecture Olivier Riboux. Overview What is MDA? The Challenges MDA addresses Developing in the MDA Benefits / Conclusion Case Study:
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
1 CMPT 275 High Level Design Phase Modularization.
Rational Unified Process Fundamentals Module 7: Process for e-Business Development Rational Unified Process Fundamentals Module 7: Process for e-Business.
Improving Dependability in Service Oriented Architectures using Ontologies and Fault Injection Binka Gwynne Jie Xu School of Computing University of Leeds.
MDD approach for the Design of Context-Aware Applications.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Modeling the ODP Computational Viewpoint with UML 2.0: The Templeman Library Example José Raúl Romero, Antonio Vallecillo Universidad de Málaga, Spain.
FIPA Abstract Architecture London FIPA meeting January 24-29, 2000 from: TC-A members.
Ontology-Based Interoperability Service for HL7 Interfaces Implementation Carolina González, Bernd Blobel and Diego López eHealth Competence Center, Regensurg.
Incorporating Cooperative Portlets in Web Application Development Nathalie Moreno, José Raúl Romero, Antonio Vallecillo Universidad de Málaga {vergara,jrromero,av}
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
Architecture Ecosystem SIG March 2010 Update Jacksonville FL.
Model Driven Architecture MDA SE-548 Lale Doğan
Page 1 Hitachi Ltd. – FhI FOKUS TTCN-3 User Conference, June 2005 MDA based approach for generation of TTCN-3 test specifications Hideto Ogawa, Hitachi.
Module: Software Engineering of Web Applications
Web Ontology Language for Service (OWL-S)
Software Design Methodology
Rafael Almeida, Inês Percheiro, César Pardo, Miguel Mira da Silva
Tools for Composing and Deploying Grid Middleware Web Services
Evaluating Compuware OptimalJ as an MDA tool
UML profiles.
Analysis models and design models
Module: Software Engineering of Web Applications
Presentation transcript:

Using MDA in Web Software Architectures Santiago Meliá Cristina Cachero Jaime Gómez Universidad de Alicante Spain

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/2 Content Introduction Motivation Work Context & Goals. WebSA: Web Software Architecture. WebSA expressed with MDA. The view Model. Logical Architecture View in MDA. Generation strategy. Extension of the Architecture for MDA Models. Conclusions & Future Work

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/3 1. Introduction The new challenges posed by Internet Market imply: Development of more sophisticated Web Applications in a shorter period of time. Higher quality level to satisfy more demanding clients. The possibility to cover a vast diversity of web applications with different non functional requirements like number of clients, security, maintenance,etc.

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/4 1. Introduction Work context: Up to now, Web methodologies (OO-H [Cachero03], UWE[Koch03], OOHDM, [Schwabe99],etc) have paid little attention to non functional requirements for web applications. Web generation techniques are only used to obtain code for a predefined architecture of web applications. Objectives: Integrate software architecture into Web Applications in order to cover the gap between web design and non functional requirements. Have the ability to generate code able to cover the vast diversity of web applications.

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/5 2. Web Software Architecture A new proposal called WebSA (Web Software Architecture) which is based on two main aspects: The definition of specific software architecture models for Web (DSSA) to complement other UML proposals in the specification of Web Applications. The use of the MDA standard [OMG 2001] to formalize and describe such models.

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/6 3. WebSA expressed with MDA [OMG2001] MDA defines an architecture for models and provides a set of guidelines for structuring specifications expressed as models. It defines concepts as View, Refinement, Abstract. WebSA splits the web software architecture description in several concurrent views as other authors do with UML [Krunchen95] [Hofmeister et all. 1999]. WebSA does this using also MDA and focusing on the web domain, which allows for a higher level of details in the specification process.

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/7 3.1 The WebSA view model This view model represents briefly the reference model of WebSA.

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/8 3.2 Logical architecture view in MDA The Logical Architecture defines the set of logical components (subsystems, modules and/or software components) and the relationships between them. The WebSA logical architecture is subdivided in three models: Subsystem Model: determines which are the subsystems that make up our application and the best distribution in layers of our system. Web Component Configuration Model: provides an ontology of web abstract components and connectors that are particular to the web domain. Web Component Integration Model: connects the functional and the architectural views under a common set of concrete components, modules and connectors.

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/9 3.2 Logical architecture view in MDA The three architectural models are Independent from the Platform. Integration Model is defined at a level of abstraction similar to that of the EDOC profile[OMG 2002]. WebSA is capable of automatically providing different mappings platforms such as EJB, CORBA or.NET. Subsystem Model > D1 > CWD1 {card=1} > M1 {card=*} > VWD1 {card =1} > SWD1 {card=*} > n > 1..n > 1..n > n > Web Component Configuration Model Functional Viewpoint > Web Component Integration Model CCW1 serviceRequest() navigationRequest() > Client newClient() deleteClient() checkClient() getClient() (from ModuleModel1) > Cart newCart() addItem() deleteItem() showAllItems() generateOrder() (from ModuleModel1) > Order newOrder() (from ModuleModel1) > generateOrder > checkClient > newCart > newOrder >

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/ Logical architecture view in MDA Possibility to classify the Web Integration Model as PIMs in the context of MDA. Integration Model is defined at a level of abstraction similar to that of the EDOC profile[OMG 2002].

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/11 > Web Integration Component Model CCW1 serviceRequest() navigationRequest() > Client newClient() deleteClient() checkClient() getClient() (from ModuleModel1) > Cart newCart() addItem() deleteItem() showAllItems() generateOrder() (from ModuleModel1) > Order newOrder() (from ModuleModel1) > generateOrder > checkClient > newCart > newOrder > XML Interface Template-Code Generator J2EE.NETCORBA WebSA Generation Strategy Standard PSM

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/12 4. The Problem with Traditional MDA MDA, [OMG 2001] when referring to quality attributes says “it is desirable to support and integrate such features in the modeled applications”. Such integration can only be achieved, as stated in [Bass et al. 2000], by specifying the software architecture system. The subsystem model and the web component configuration model cannot be integrated in the traditional views of MDA because they are independent from the problem domain, and are exclusively influenced by the non functional requirements or quality attributes.

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/13 4. Extension of the architecture for MDA Models Extended architecture provides: A more rigorous mapping between the analysis phase and the design phase. A better quality of the generated code, because it allows the definition of a generation mechanism where both the functional and the architectural parts are combined Computation Independent Business Model Platform Independent Component View Platform Specific TRADITIONAL ARCHITECTURE FOR MDA MODELS Incomplete Analysis-Design Mapping Computation Independent Business Model Platform Independent Component View Platform Specific Software Architectural Model EXTENDED ARCHITECTURE FOR MDA MODELS Complete (Analisys+Architecture)- Design mapping

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/14 Conclusions & Future Works Conclusions We have presented a new proposal called WebSA for the development of web applications. Its aim is to extend the traditional MDA so as to capture the non functional requirements. We have proposed a code generation approach for mapping a WebSA specification to an implementation. Future Works We are in the process of defining the UML profile of WebSA. We are going to extend the VisualWADE CASE Tool to support this approach. We intend to generate an XML specification to feed template-code generators.

Santiago Meliá, Cristina Cachero & Jaime GomezOOPSLA´03/15 Thanks for your attention!! Questions? For further comments...