Write Once, Deploy N a Performance Oriented MDA Case Study
|
|
- Diana Briggs
- 6 years ago
- Views:
Transcription
1 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study Write Once, Deploy N a Performance Oriented MDA Case Study Pieter Van Gorp and Dirk Janssens Formal Techniques in Software Engineering Pieter.VanGorp@ua.ac.be, Dirk.Janssens@ua.ac.be Tracy Gardner (IBM) tgardner@uk.ibm.com
2 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 1/37 Presentation Roadmap 1. Research Context: Problem and proposed solution in a nutshell 2. MDA Today 3. The WODN MDA Case Study Case study: why? MDA is young, needs more (and more complex) case studies Basis for assessing quality of tools and QVT submissions 4. Conclusions & Future Work
3 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 2/37 Part I: Problem and solution in a nutshell
4 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 3/37 Problem Statement Optimizing the performance of distributed database applications is hard to combine with middleware vendor independence since cache, transaction and cluster configuration is database and application server specific. = Part of this decade s integration challenge as explained by keynote of Prof. Douglas C. Schmidt
5 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 4/37 Platform Independence? Resin Javlin NetWeaver
6 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 5/37 Component Model Essentials Distributed Server Components Memory Management, Persistence, Caching, Connection Management, Transaction Management, Object Distribution, as container services Example: Enterprise JavaBeans Java sources inherit / implement certain interfaces Remote Home Intf, Local Home Intf Remote Bean Intf, Local Bean Intf Bean Class (focus on business logic) Deployment Attributes for code generators / compilers XML Deployment Descriptors (tuning!!!) Final component accesses server specific API Callbacks to Bean Class Popular alternative: Hibernate Same principles (interfaces and descriptors)
7 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 6/37 Proposed Solution 1. Model platform independent business components PIMs 2. Generate platform specific implementations May be interactive wizard (e.g. point to database) PSMs, PSC 3. Generate platform independent wrapper code Generate PIC 4. Write applications using these components Plain Java (depends on your high-level API) or visual behavioral language (e.g., SDM) 5. Analyze access scenario of such applications Model analysis 6. Generate delegation code (component discovery) Optimizing performance = tuning code generator Requires good transformation language!
8 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 7/37 Part II: Solution Space: MDA Mainstream and next-generation tools» Standards
9 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 8/37 Existing MDA Tools Input Model for contracts package (PIM) Generated Source for ContractBean.java (PSC) /* Autogenerated by AndroMDA (EntityBean.vsl) - do not package org.andromda.samples.carrental.contracts; /** *... generate="false" local-class="org.an generate="false" local-class="org.andromd generate = "false" class = "java.lang.strin * table-name="contract */ public abstract class ContractBean extends java.lang.object implements javax.ejb.entitybean { /** * Get the driver * * name="contract->driver" * role-name="contract->driver:thecontract" * target-ejb="driver" * target-role-name="contract->driver:driver" * target-multiple="true" * * fk-column = "DRIVER" * related-pk-field = "id" */ public abstract org.andromda.samples.carrental.customers.driver getdriver(); }
10 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 9/37 How to realize research goals? Performance optimization Platform independence» Adapt the code generator!
11 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 10/37 Code Templates Access to model elements WYSIWIG Code package $packagename; import javax.ejb.entitycontext; import javax.ejb.removeexception; public abstract class ${entityname}beanimpl extends ${entityname}bean { private EntityContext context; public void setentitycontext(entitycontext ctx) { //Log.trace("${class.name}Bean.setEntityContext..."); context = ctx; } public void unsetentitycontext() { //Log.trace("${class.name}Bean.unsetEntityContext..."); context = null; } public void ejbremove() throws RemoveException { //Log.trace( // "${class.name}bean.ejbremove..."); }
12 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 11/37 Code Templates - Too Abstract Input Models => Complex scripting - code duplication - no integrated style checking #foreach ( $op in $class.operations ) #if ($transform.getstereotype($op) == "FinderMethod") signature="${transform.findfullyqualifiedname($op.gettype())} ${transform.getoperationsignature($op)}" #set($viewtype = "") #set($viewtype = $transform.findtagvalue($op.taggedvalues, "@andromda.ejb.viewtype")) #if($viewtype == "local" $viewtype == "remote" $viewtype == "both") * view-type="$viewtype" #end #set($querystring = "") #set($querystring = $transform.findtagvalue($op.taggedvalues, "@andromda.ejb.query")) #if($querystring == "") #set($querystring = "SELECT DISTINCT OBJECT(c) FROM $class.name AS c") #if($op.parameters.size() >0 ) #set($querystring = "${querystring} WHERE") #foreach($prm in $op.parameters) #set($querystring="${querystring} c.$prm.name =?$velocitycount") #if($velocitycount!= $op.parameters.size()) #set($querystring = "${querystring} AND") #end #end #end #end * query="$querystring"
13 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 12/37 Evolving today s MDA tools Problem Input Metamodel (UML) is too General Purpose Solution: ( Too abstract for code generation ) 1. Code Templates on very concrete Metamodels Refactor input metamodel to stack of metamodels 2. Solution: Stepwise refinement Refactor code templates to model transformations This requires vertical exogenous model to model transformations
14 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 13/37 MDA Standards Definition Model-Driven Engineering with UML and MOF UML: Widely known notations for diagrams (Visualize your models) MOF: Repository standard (Store your models) QVT: Model transformation standard M2T: Code template standard Goal Standard MDD Tools Education, Managing Evolution of Framework Standards Beyond J2EE Best practices as first class programming artifacts before in standard Your company standards for what IBM, BEA, SUN, should not standardize Beyond MOF (!)
15 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 14/37 Model Transformation Today Submissions to QVT RFP See T. Gardner et al. and K. Czarnecki et al. Research Languages and Tools Triskell : MTL Lina: ATL ISIS: GReAT (GME) Segravis: SDM (Fujaba) BME-MIT: VIATRA QVT: What do they have in common? How can vendors compete?
16 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 15/37 Declarative VS Imperative [ T. Gardner et al. ] Declarative No explicit execution step specification Relationships between variables Engine infers result from the relation Imperative Explicit state manipulation Hybrid Combination of declarative and imperative
17 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 16/37 Problem with QVT RFP No concrete use cases Therefore, no example of a relation between variables Unclear what declarative means why it is relevant Solution: case studies More (horizontal and vertical transformations) More realistic (e.g. performance-oriented)
18 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 17/37 Part III: The WODN MDA Case Study
19 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 18/37 Write Once, Deploy N Online Data Access Scenario s 85% Read for Display: Lazy Loading Invalidations from Writers No Transactions 10% Read-Write: Aggressive Loading Transaction Support 5% Batch Update: Lazy Loading Transaction Support
20 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 19/37 WODN as and MDA Case Study Server Component Deployment A Deploy 1 Component would need conservative deployment attributes and waste resources! A Deploy 3 Approach boosts performance. Manual Implementation is tedious Attributes vary per vendor MDE Approach: Generate the 3 deployments Hide clients from this optimization
21 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 20/37 Part III: Suggested solution to the case study
22 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 21/37 Domain Specific Metamodels Metamodel for business analysis (PIM) Metamodel for transactional caching Metamodel for object-to-relational mapping Metamodel for WL EJB (PSM1) Metamodel for JBoss EJB (PSM2)
23 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 22/37 Model Transformation Process
24 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 23/37 Metamodels for WODN (I/III) Note MM Reuse
25 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 24/37 Metamodels for WODN (II/III)
26 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 25/37 Metamodels for WODN (III/III)
27 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 26/37 An interpretation of Declarative Most declarative transformation description = the consistency constraint that it establishes!!! Transformation Data2TransactionalCaching { // models as structural features (attributes) Data d; // metamodel as static type of model TransactionalCaching tc; // model as container of model elements (8) // rules as behavioral features (operations) Rule Entity2RO_Component () { postcondition: // a specific invariant is established d.entity.allinstances->forall(e tc.component.allinstances->exists(c e.classifier = c.classifier and c.lockingstrategy = LockingStrategy::noLock and c.transactiondemarcation = tc.transactiondemarcation::optional ) ) }... } Role of the transformation language engine Framework needs to be hybrid
28 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 27/37 Transformation Language Requirement Therefore, a transformation engine should be integrated with a consistency checker Review of ArcStyler tool User experience: Developer experience: OK Problematic
29 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 28/37 What about Imperative languages? Why Imperative? For complex automatic reconciliation Less needed as engines mature What language can be used? Fujaba s SDM, GME s GReAT, ATL, Java,
30 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 29/37 A QVT Standard within months? Initially, QVT standard should NOT standardize the imperative language MDA tool vendors can compete on transformation engines that automatically satisfy complex consistency constraints! After a couple of years, OMG can standardize The most popular imperative transformation language Popular constraint predicates (like isisomorphicto )
31 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 30/37 Transformation Language Requirement Integration with code templates No separate model to text RFP! (ArcStyler review ) WODN code generator requires polymorphism (AndroMDA review ) Advantage: smooth visualization in model transformation process
32 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 31/37 Concrete integration example from WODN abstract Transformation Components2xDoclet { TransactionalCaching tc; ORDB o; Text code; Rule Generate() { postcondition: tc.component.allinstances->forall( c o.entity.allinstances->forall( e (c.classifier = e.classifier) implies ( code.file.allinstances->exists( // ignore directories in this example f f.name= (c.name + ".java") and f.content= Join2JavaFile(c, e) ) ) ) ) }... }
33 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 32/37 Polymorphism in Code Template Rules: Platform Specialization without Code Duplication abstract Transformation Components2xDoclet {... Rule Join2JavaFile (TransactionalCaching::Component c, ORDB::Entity e): Text::String { // code template fragment for Java imports // code template fragment for conventional Javadoc #call Join2ClassTags(c,e);... // code template fragment for iterating over methods... #call Join2MethodTags(c,e); } Polymorphic execution= Declarative: engine executes concrete transformation rule from dynamic type of transformation abstract Rule Join2ClassTags ( TransactionalCaching::Component c, ORDB::Entity e): Text::String { // code template for vendor independent xdoclet class // @ejb.interface, //... }... }
34 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 33/37 Concrete rule in subtype transfo abstract Transformation Components2WL inherits Components2xDoclet { // Join2JavaFile inherited, not overriden Polymorphic execution= Declarative: engine executes concrete transformation rule from dynamic type of transformation Rule Join2ClassTags ( TransactionalCaching::Component c, ORDB::Entity e): Text::String { #call super.join2classtags(c,e); // code template for WebLogic specific // xdoclet class tags }... }
35 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 34/37 Part IV: Conclusions & Future Work
36 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 35/37 WODN: Lessons learned for QVT Solution to declarative<>imperative dilemma: Most declarative description of a transformation = consistency constraint Standardize framework for automatic constraint solvers instead of one unproven language OCL for consistency constraints Proprietary languages for imperative transformation fragments JMI could already be used as a standard language! Vendors can compete on power of transformation engines Future versions of spec. can standardize most popular imperative language Integrate QVT and M2T from the beginning Today s middleware code is text! MDA emerged there! Most popular MDA tools have mature code template support
37 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 36/37 WODN: Modeling transformations Model transformation process Use activity diagrams Transformation structure and Variability of code generator Use class diagrams
38 Pieter Van Gorp, The Write Once, Deploy N MDA Case Study 37/37 Future Work Implement reference framework with maximal reuse of existing software (migration effort assessment) Approach 1: Combine OCL software with transformation software E.g. OCL Toolkit (or AndroMDA) combined with JCMTG (or VIATRA) Approach 2: Use software supporting OCL and transformations ATL or GReAT Add model transformations from EJB model elements to plain object model elements Enables low-level style checking Parser => Bidirectionality Add more platforms support to code generator lib! Investigate polymorphism of consistency rules
The Write Once, Deploy N MDA Case Study
Pieter Van Gorp, The Write Once, Deploy N MDA Case Study Belgisch-Nederlandse Evolution Workshop July 8-9, 2004 @ University of Antwerp The Write Once, Deploy N MDA Case Study Pieter Van Gorp, Dirk Janssens
More informationGenerating JMI model transformation code from UML profile models for SDM Aligning Graph Rewriting with MDA-light
Segravis School on Foundations of Visual Modelling Techniques, May 2004, Schloss Dagstuhl Generating JMI model transformation code from UML profile models for SDM Aligning Graph Rewriting with MDA-light
More informationIntroduction to MDE and Model Transformation
Vlad Acretoaie Department of Applied Mathematics and Computer Science Technical University of Denmark rvac@dtu.dk DTU Course 02291 System Integration Vlad Acretoaie Department of Applied Mathematics and
More informationAll you need are models Anneke Kleppe, Klasse Objecten
Model Driven Architecture All you need are models Anneke Kleppe, Klasse Objecten Contents Limited Vision on MDA Modeling Maturity Levels Models Model Driven Development Model Driven Architecture MDA in
More informationMDD with OMG Standards MOF, OCL, QVT & Graph Transformations
1 MDD with OMG Standards MOF, OCL, QVT & Graph Transformations Andy Schürr Darmstadt University of Technology andy. schuerr@es.tu-darmstadt.de 20th Feb. 2007, Trento Outline of Presentation 2 Languages
More informationTowards 2D Traceability
Towards 2D Traceability in a platform for Contract Aware Visual Transformations with Tolerated Inconsistencies Pieter Van Gorp pieter.vangorp@ua.ac.be Frank Altheide frank.altheide@gmail.com Dirk Janssens
More informationModel driven Engineering & Model driven Architecture
Model driven Engineering & Model driven Architecture Prof. Dr. Mark van den Brand Software Engineering and Technology Faculteit Wiskunde en Informatica Technische Universiteit Eindhoven Model driven software
More informationLeveraging UML Profiles to Generate Plugins From Visual Model Transformations
Electronic Notes in Theoretical Computer Science 127 (2005) 5 16 www.elsevier.com/locate/entcs Leveraging UML Profiles to Generate Plugins From Visual Model Transformations Hans Schippers, Pieter Van Gorp,
More informationSmall is Beautiful Building a flexible software factory using small DSLs and Small Models
Small is Beautiful Building a flexible software factory using small DSLs and Small Models Jos Warmer Partner, Ordina jos.warmer@ordina.nl 1 Modeling Maturity Levels MML 0: No specification MML 1: Textual
More informationModel Driven Engineering (MDE)
Model Driven Engineering (MDE) Yngve Lamo 1 1 Faculty of Engineering, Bergen University College, Norway 26 April 2011 Ålesund Outline Background Software Engineering History, SE Model Driven Engineering
More informationComputation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):
viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information
More informationMDSE USE CASES. Chapter #3
Chapter #3 MDSE USE CASES Teaching material for the book Model-Driven Software Engineering in Practice by Morgan & Claypool, USA, 2012. www.mdse-book.com MDSE GOES FAR BEYOND CODE-GENERATION www.mdse-book.com
More informationCopying Subgraphs within Model Repositories
Copying Subgraphs within Model Repositories Pieter van Gorp, Hans Schippers, Dirk Janssens April 2, 2006 1 / 37 Contents Languages 2 / 37 Outline Languages 3 / 37 : Model Driven Software Engineering Model
More informationModel Abstraction versus Model to Text Transformation
Model Abstraction versus Model to Text Transformation Jon Oldevik, Tor Neple, Jan Øyvind Aagedal SINTEF Information and Communication Technology, Forskningsvn 1, N-0314 Oslo, Norway {jon.oldevik tor.neple
More informationModel Transformation Techniques
Transformation Techniques (or: Why I'd like write programs that write programs rather than write programs) Prof. Jean-Marc Jézéquel (Univ. Rennes 1 & INRIA) Triskell Team @ IRISA Campus de Beaulieu F-35042
More informationModel Driven Architecture - The Vision
Model Driven Architecture - The Vision Marko Fabiunke Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik marko.fabiunke@first.fraunhofer.de The Fraunhofer FIRST Institut Your partner We support
More informationTOPLink for WebLogic. Whitepaper. The Challenge: The Solution:
Whitepaper The Challenge: Enterprise JavaBeans (EJB) represents a new standard in enterprise computing: a component-based architecture for developing and deploying distributed object-oriented applications
More informationJAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP
2013 Empowering Innovation DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP contact@dninfotech.com www.dninfotech.com 1 JAVA 500: Core JAVA Java Programming Overview Applications Compiler Class Libraries
More informationModel-Driven Architecture
THE IT-ARCHITECTURE PROFESSIONALS Model-Driven Architecture Stephen J. Mellor, Kendall Scott, Axel Uhl, Dirk Weise Interactive Objects Software info@io-software.com Agenda 2 Motivation for MDA Terminology:
More informationPractical Model-Driven Development with the IBM Software Development Platform
IBM Software Group Practical Model-Driven Development with the IBM Software Development Platform Osmond Ng (ong@hk1.ibm.com) Technical Consultant, IBM HK SWG 2005 IBM Corporation Overview The Challenges
More informationModel Driven Development. Building Automated Code Generation Methods with Eclipse and DSL Tools. Vicente Pelechano
Model Driven Development Building Automated Code Generation Methods with Eclipse and DSL Tools Vicente Pelechano Departamento de Sistemas Informáticos y Computación Universidad Politécnica de Valencia
More informationIndex. business modeling syntax 181 business process modeling 57 business rule 40
OCL.book Page 203 Tuesday, July 22, 2003 9:48 PM Index Symbols OclAny, of 167 = OclAny, of 167 @pre 34, 86, 155 ^ 34, 156 ^^ 157 A abstract syntax 93 accumulator 153 action in statechart 56 activity
More informationEnterprise JavaBeans: BMP and CMP Entity Beans
CIS 386 Course Advanced Enterprise Java Programming Enterprise JavaBeans: BMP and CMP Entity Beans René Doursat Guest Lecturer Golden Gate University, San Francisco February 2003 EJB Trail Session Beans
More informationUNIT-III EJB APPLICATIONS
UNIT-III EJB APPLICATIONS CONTENTS EJB Session Beans EJB entity beans EJB clients EJB Deployment Building an application with EJB. EJB Types Types of Enterprise Beans Session beans: Also called business
More informationAn Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com
An Introduction to Model Driven Engineering (MDE) Bahman Zamani, Ph.D. bahmanzamani.com Department of Software Systems Engineering University of Isfahan Fall 2013 Overview Model & Modeling UML & UML Profile
More informationAppendix A - Glossary(of OO software term s)
Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component
More informationThe Model Driven (R)evolution. Richard Mark Soley, Ph.D. Chairman and CEO Object Management Group, Inc.
The Model Driven (R)evolution Richard Mark Soley, Ph.D. Chairman and CEO Object Management Group, Inc. Modeling Changes Everything! Throw out those pesky objects! Toss away your silly compilers! No more
More informationA Taxonomy of Model Transformation
Electronic Notes in Theoretical Computer Science 152 (2006) 125 142 www.elsevier.com/locate/entcs A Taxonomy of Model Transformation Tom Mens 1 Software Engineering Lab Université de Mons-Hainaut Mons,
More informationImplementing a Web Service p. 110 Implementing a Web Service Client p. 114 Summary p. 117 Introduction to Entity Beans p. 119 Persistence Concepts p.
Acknowledgments p. xvi Introduction p. xvii Overview p. 1 Overview p. 3 The Motivation for Enterprise JavaBeans p. 4 Component Architectures p. 7 Divide and Conquer to the Extreme with Reusable Services
More informationOCL for the Specification of Model Transformation Contracts
OCL for the Specification of Model Transformation Contracts Eric Cariou, Raphaël Marvie, Lionel Seinturier, and Laurence Duchien LIFL - Université des Sciences et Technologies de Lille UMR CNRS 8022 -
More informationAn Introduction to MDE
An Introduction to MDE Alfonso Pierantonio Dipartimento di Informatica Università degli Studi dell Aquila alfonso@di.univaq.it. Outline 2 2» Introduction» What is a Model?» Model Driven Engineering Metamodeling
More informationEJB ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY. EJB Enterprise Java
EJB Enterprise Java EJB Beans ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY Peter R. Egli 1/23 Contents 1. What is a bean? 2. Why EJB? 3. Evolution
More informationComponent-based Architecture Buy, don t build Fred Broks
Component-based Architecture Buy, don t build Fred Broks 1. Why use components?... 2 2. What are software components?... 3 3. Component-based Systems: A Reality!! [SEI reference]... 4 4. Major elements
More informationIntroduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX
Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject
More informationModel transformations. Overview of DSLE. Model transformations. Model transformations. The 4-layer architecture
Overview of DSLE Model driven software engineering g in general Grammars, signatures and meta-models DSL Design Code generation Models increase the level of abstraction used for both hardware and software
More informationModellierung operationaler Aspekte von Systemarchitekturen. Master Thesis presentation. October 2005 March Mirko Bleyh - Medieninformatik
Modellierung operationaler Aspekte von Systemarchitekturen Master Thesis presentation October 2005 March 2006 Agenda Goals Model-Driven Software Development Pro-active Infrastructure (PAI) Operational
More informationObject Security. Model Driven Security. Ulrich Lang, Rudolf Schreiner. Protection of Resources in Complex Distributed Systems
Object Security TM The Security Policy Company Protection of Resources in Complex Distributed Systems Ulrich Lang, Rudolf Schreiner ObjectSecurity Ltd. University of Cambridge Agenda COACH Project Model
More informationOMG Workshop MDA. Tool Chains for MDA? Let's consider leaving our tool chains behind us.
Karl Frank Principal Architect: Product Strategy and Architecture kfrank@borland.com OMG Workshop MDA Tool Chains for MDA? Let's consider leaving our tool chains behind us. Please note the existence of
More informationUNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach?
Department: Information Technology Questions Bank Class: B.E. (I.T) Prof. Bhujbal Dnyaneshwar K. Subject: Object Oriented Modeling & Design dnyanesh.bhujbal11@gmail.com ------------------------------------------------------------------------------------------------------------
More informationIndex. Index. More information. block statements 66 y 107 Boolean 107 break 55, 68 built-in types 107
A abbreviations 17 abstract class 105 abstract data types 105 abstract method 105 abstract types 105 abstraction 92, 105 access level 37 package 114 private 115 protected 115 public 115 accessors 24, 105
More informationModel-Driven QoS Provisioning Techniques for CCM DRE Systems
Model-Driven QoS Provisioning Techniques for CCM DRE Systems Stoyan Paunov, Gan Deng, Douglas C. Schmidt, and Anirudha Gokhale ISIS, Vanderbilt University Motivation for QoS-enabled Middleware Trends!
More informationBLU AGE 2009 Edition Agile Model Transformation
BLU AGE 2009 Edition Agile Model Transformation Model Driven Modernization for Legacy Systems 1 2009 NETFECTIVE TECHNOLOGY -ne peut être copiésans BLU AGE Agile Model Transformation Agenda Model transformation
More informationScience of Computer Programming. GREAT: UML transformation tool for porting middleware applications
Science of Computer Programming 73 (2008) 3 12 Contents lists available at ScienceDirect Science of Computer Programming journal homepage: www.elsevier.com/locate/scico GREAT: UML transformation tool for
More informationIntroduction to Dependable Systems: Meta-modeling and modeldriven
Introduction to Dependable Systems: Meta-modeling and modeldriven development http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics 3 Software development Automated software
More informationTransformational Design with
Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie Transformational Design with Model-Driven Architecture () Prof. Dr. U. Aßmann Technische Universität
More informationDEV427 MODEL-DRIVEN DEVELOPMENT USING PowerDesigner. Xiao-Yun WANG PowerDesigner Chief Architect
DEV427 MODEL-DRIVEN DEVELOPMENT USING PowerDesigner Xiao-Yun WANG PowerDesigner Chief Architect xwang@sybase.com OBJECTIVES 1. Understand what s Model-Driven Development 2. Understand why Model-Driven
More information09. Component-Level Design
09. Component-Level Design Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 What is Component OMG UML Specification defines a component as OO view a
More informationSequence Diagram Generation with Model Transformation Technology
, March 12-14, 2014, Hong Kong Sequence Diagram Generation with Model Transformation Technology Photchana Sawprakhon, Yachai Limpiyakorn Abstract Creating Sequence diagrams with UML tools can be incomplete,
More informationModel Driven Architecture and Rhapsody
Model Driven Architecture and Rhapsody Dr. Bruce Powel Douglass Chief Evangelist Telelogic Model Driven Architecture and Rhapsody Abstract MDA, short for Model Driven Architecture, is a unification by
More informationinnoq Deutschland GmbH innoq Schweiz GmbH D Ratingen CH-6330 Cham Tel Tel
innoq Deutschland GmbH innoq Schweiz GmbH D-40880 Ratingen CH-6330 Cham Tel +49 2102 77 1620 Tel +41 41 743 01 11 www.innoq.com Stefan Tilkov, stefan.tilkov@innoq.com 1 Goals Introduce MDE, MDA, MDD, MDSD,...
More informationADT: Eclipse development tools for ATL
ADT: Eclipse development tools for ATL Freddy Allilaire (freddy.allilaire@laposte.net) Tarik Idrissi (tarik.idrissi@laposte.net) Université de Nantes Faculté de Sciences et Techniques LINA (Laboratoire
More informationPOJOs to the rescue. Easier and faster development with POJOs and lightweight frameworks
POJOs to the rescue Easier and faster development with POJOs and lightweight frameworks by Chris Richardson cer@acm.org http://chris-richardson.blog-city.com 1 Who am I? Twenty years of software development
More informationQoS-aware model-driven SOA using SoaML
QoS-aware model-driven SOA using SoaML Niels Schot A thesis submitted for the degree of MSc Computer Science University of Twente EEMCS - TRESE: Software Engineering Group Examination committee: Luís Ferreira
More informationBuilding the Enterprise
Building the Enterprise The Tools of Java Enterprise Edition 2003-2007 DevelopIntelligence LLC Presentation Topics In this presentation, we will discuss: Overview of Java EE Java EE Platform Java EE Development
More informationCMP relations between Enterprise Java Beans (EJB) eclipse, xdoclet, jboss
CMP relations between Enterprise Java Beans (EJB) eclipse, xdoclet, jboss A step by step example showing how to develop CMP relations between EJBs using eclipse, xdoclet and MyEclipse. We use an example
More informationMethods for the Development
Methods for the Development Of Dependable and Adaptive Information Systems Carolina Gomez Hernandez Index of Contents History of Modeling Methods for the Development of DAIS: Model Driven Architecture
More informationHistory of Enterprise Java
History of Enterprise Java! At first: Sun focused on the Java Development Kit (JDK) " Remember that Java is a spec, not a technology " Different vendors can implement Java " The JDK became the de-facto
More informationLab2: CMP Entity Bean working with Session Bean
Session Bean The session bean in the Lab1 uses JDBC connection to retrieve conference information from the backend database directly. The Lab2 extends the application in Lab1 and adds an new entity bean
More informationRaising the Level of Development: Models, Architectures, Programs
IBM Software Group Raising the Level of Development: Models, Architectures, Programs Dr. James Rumbaugh IBM Distinguished Engineer Why Is Software Difficult? Business domain and computer have different
More informationPart II Black-Box Composition Systems 20. Finding UML Business Components in a Component-Based Development Process
Fakultät Informatik - Institut Software- und Multimediatechnik - Softwaretechnologie Prof. Aßmann - CBSE Part II Black-Box Composition Systems 20. Finding UML Business Components in a Component-Based Development
More informationIntegrating Software Architecture Concepts into the MDA Platform with UML Profile
Journal of Computer Science 3 (10): 793-802, 2007 ISSN 1549-3636 2007 Science Publications Integrating Software Architecture Concepts into the MDA Platform with UML Profile 1 Adel Alti, 2 Tahar Khammaci
More informationIBM Rational Software Architect
Unifying all aspects of software design and development IBM Rational Software Architect A complete design & development toolset Incorporates all the capabilities in IBM Rational Application Developer for
More informationCOURSE 9 DESIGN PATTERNS
COURSE 9 DESIGN PATTERNS CONTENT Applications split on levels J2EE Design Patterns APPLICATION SERVERS In the 90 s, systems should be client-server Today, enterprise applications use the multi-tier model
More informationComparative Analysis of EJB3 and Spring Framework
Comparative Analysis of EJB3 and Spring Framework Janis Graudins, Larissa Zaitseva Abstract: The paper describes main facilities of EJB3 and Spring Framework as well as the results of their comparative
More informationComparative analysis of MDA tools
STUDIA INFORMATICA Nr 1-2(16) Systems and information technology 2012 Comparative analysis of MDA tools Krzysztof Pietraszek 1 1 Institute of Computer Science, University of Natural Sciences and Humanities,
More informationEnterprise JavaBeans (I) K.P. Chow University of Hong Kong
Enterprise JavaBeans (I) K.P. Chow University of Hong Kong JavaBeans Components are self contained, reusable software units that can be visually composed into composite components using visual builder
More information16 Evaluation Framework for Model-Driven Product Line Engineering Tools
16 Evaluation Framework for Model-Driven Product Line Engineering Tools J. Oldevik, A. Solberg, Ø. Haugen, and B. Møller-Pedersen Abstract Both the -driven development (MDD) approach and the product line
More informationModel Driven Architecture Model Driven Development. Johann Oberleitner
Model Driven Architecture Model Driven Development Johann Oberleitner joe@infosys.tuwien.ac.at 23. 5. 2006 Agenda Motivation Goals of MDA Technologies/Paradigms for MDA MDA Tools MDA State of the Art Next
More informationThe Details of Writing Enterprise Java Beans
The Details of Writing Enterprise Java Beans Your Guide to the Fundamentals of Writing EJB Components P. O. Box 80049 Austin, TX 78708 Fax: +1 (801) 383-6152 information@middleware-company.com +1 (877)
More informationServices Oriented Architecture and the Enterprise Services Bus
IBM Software Group Services Oriented Architecture and the Enterprise Services Bus The next step to an on demand business Geoff Hambrick Distinguished Engineer, ISSW Enablement Team ghambric@us.ibm.com
More informationImplementing Model Driven Architecture
TUTORIAL Implementing Model Driven Architecture Using Enterprise Architect MDA in Practice By Frank Truyen frank.truyen@cephas.cc All rights reserved. Page 1 Cephas Consulting Corp. Implementing Model
More informationCSSE 490 Model-Based Software Engineering: Introduction to Domain Engineering
CSSE 490 Model-Based Software Engineering: Introduction to Domain Engineering Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu Learning Outcomes: Metamodels Design
More informationImpacts of changes in enterprise software construction for telecommunications
Project Report Impacts of changes in enterprise software construction for telecommunications Model Driven Architecture Assessments of relevant technologies Editor: Olaf Kath, IKV++ Technologies AG DRAFT
More informationRECODER - The Architecture of a Refactoring System
RECODER - The Architecture of a Refactoring System Andreas Ludwig Prof. U. Aßmann http://recoder.sf.net Overview ➊Programming in the Large Problems, Concepts, The Approach ➋The Architecture of RECODER
More informationModel Driven Engineering
Model Driven Engineering Stuart Kent University of Kent Royal Society Industry Fellow with IBM Model Terminology encompasses more than program code design, analysis, specification, business models Driven
More informationECLIPSE MODELING PROJECT
ECLIPSE MODELING PROJECT A Domain-Specific Language Toolkit Richard С. Gronback AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Pans Madrid
More informationChapter 1 GETTING STARTED. SYS-ED/ Computer Education Techniques, Inc.
Chapter 1 GETTING STARTED SYS-ED/ Computer Education Techniques, Inc. Objectives You will learn: The IDE: Integrated Development Environment. MVC: Model-View-Controller Architecture. BC4J: Business Components
More informationChapter 1 GETTING STARTED. SYS-ED/ Computer Education Techniques, Inc.
Chapter 1 GETTING STARTED SYS-ED/ Computer Education Techniques, Inc. Objectives You will learn: WSAD. J2EE business topologies. Workbench. Project. Workbench components. Java development tools. Java projects
More informationIn the most general sense, a server is a program that provides information
d524720 Ch01.qxd 5/20/03 8:37 AM Page 9 Chapter 1 Introducing Application Servers In This Chapter Understanding the role of application servers Meeting the J2EE family of technologies Outlining the major
More informationSoftwaretechnik. Lecture 19: Model Driven Engineering. Peter Thiemann. University of Freiburg, Germany
Softwaretechnik Lecture 19: Model Driven Engineering Peter Thiemann University of Freiburg, Germany 23.07.2012 Peter Thiemann (Univ. Freiburg) Softwaretechnik 23.07.2012 1 / 50 Introduction MDA Introduction
More informationTechniques for Building J2EE Applications
Techniques for Building J2EE Applications Dave Landers BEA Systems, Inc. dave.landers@4dv.net dave.landers@bea.com Why are we Here? Discuss issues encountered with J2EE Application deployment Based on
More informationOverview of lectures today and Wednesday
Model-driven development (MDA), Software Oriented Architecture (SOA) and semantic web (exemplified by WSMO) Draft of presentation John Krogstie Professor, IDI, NTNU Senior Researcher, SINTEF ICT 1 Overview
More informationMyEclipse EJB Development Quickstart
MyEclipse EJB Development Quickstart Last Revision: Outline 1. Preface 2. Introduction 3. Requirements 4. MyEclipse EJB Project and Tools Overview 5. Creating an EJB Project 6. Creating a Session EJB -
More information<<Interface>> EntityBean (from ejb) EJBHome. <<Interface>> CountHome. (from entity) create() findbyprimarykey() <<Interface>> EJBObject.
Count BMP Entity EJB Count BMP Entity EJB EJBHome (from ejb) EntityBean (from ejb) CountClient main() CountHome create() findbyprimarykey() EJBObject (from ejb) Count getcurrentsum() setcurrentsum() increment()
More informationCOMP9321 Web Application Engineering
COMP9321 Web Application Engineering Design Patterns II Dr. Basem Suleiman Service Oriented Computing Group, CSE, UNSW Australia Semester 1, 2016, Week 7 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2442
More informationindex_ qxd 7/18/02 11:48 AM Page 259 Index
index_259-265.qxd 7/18/02 11:48 AM Page 259 Index acceptance testing, 222 activity definition, 249 key concept in RUP, 40 Actor artifact analysis and iterative development, 98 described, 97 136 in the
More informationModelling in Enterprise Architecture. MSc Business Information Systems
Modelling in Enterprise Architecture MSc Business Information Systems Models and Modelling Modelling Describing and Representing all relevant aspects of a domain in a defined language. Result of modelling
More informationThe Unified Modelling Language. Example Diagrams. Notation vs. Methodology. UML and Meta Modelling
UML and Meta ling Topics: UML as an example visual notation The UML meta model and the concept of meta modelling Driven Architecture and model engineering The AndroMDA open source project Applying cognitive
More informationThe Power of XDoclet CIS Database System Design
The Power of XDoclet CIS 764 - Database System Design Darren Landoll Computing and Information Sciences Kansas State University 2/28/2005 Table of Contents 1. Introduction...3 1.1 Concepts...3 1.2 References...3
More informationJ2EEML: Applying Model Driven Development to Autonomic Enterprise Java Bean Systems
J2EEML: Applying Model Driven Development to Autonomic Enterprise Java Bean Systems Jules White jules@dre.vanderbilt.edu Institute for Software Integrated Systems (ISIS) Vanderbilt University Nashville,
More informationCode generation with XDoclet. It s so beautifully arranged on the plate you know someone s fingers have been all over it.
Code generation with XDoclet It s so beautifully arranged on the plate you know someone s fingers have been all over it. Julia Child 33 34 CHAPTER 2 Code generation with XDoclet Developing EJBs today entails
More informationApplying MDE Tools at Runtime: Experiments upon Runtime Models
Applying MDE Tools at Runtime: Experiments upon Runtime Models Hui Song, Gang Huang, Franck Chauvel, and Yanchun Sun Key Lab of High Confidence Software Technologies (Ministry of Education) School of Electronic
More information* Corresponding Author
A Model Driven Architecture for REA based systems Signe Ellegaard Borch, Jacob Winther Jespersen, Jesper Linvald, Kasper Østerbye* IT University of Copenhagen, Denmark * Corresponding Author (kasper@it-c.dk)
More informationA Metamodel independent approach for Conflict Detection to support distributed development in MDE. Mostafa Pordel A THESIS
A Metamodel independent approach for Conflict Detection to support distributed development in MDE By Mostafa Pordel mpl08001@student.mdh.se A THESIS Submitted in partial fulfillment of requirements for
More informationAnno Accademico Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat
Universita degli Studi di Bologna Facolta di Ingegneria Anno Accademico 2007-2008 Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat http://www lia.deis.unibo.it/courses/tecnologieweb0708/
More informationOntology-based Model Transformation
Ontology-based Model Transformation Stephan Roser Advisor: Bernhard Bauer Progamming of Distributed Systems Institute of Computer Science, University of Augsburg, Germany [roser,bauer]@informatik.uni-augsburg.de
More informationRole of Executable UML in MDA. Presented by Shahid Alam
Role of Executable UML in MDA Presented by Shahid Alam salam3@connect.carleton.ca 12/2005 Outline Introduction to MDA Executable UML Does it apply to MDA Model Compilers Conclusion Model Driven Architecture
More informationHow to Harvest Reusable Components in Existing Software. Nikolai Mansurov Chief Scientist & Architect
How to Harvest Reusable Components in Existing Software Nikolai Mansurov Chief Scientist & Architect Overview Introduction Reuse, Architecture and MDA Option Analysis for Reengineering (OAR) Architecture
More information10.1 Big Objects, Business Objects, and UML Components
II Black-Box Composition Systems 10. Finding Business s in a -Based Development Process Literature J. Cheesman, J. Daniels. UML s. Addison-Wesley. 1. The UML component model 2. Business component model
More informationConception of Information Systems Lecture 8: J2EE and EJBs
Conception of Information Systems Lecture 8: J2EE and EJBs 3 May 2005 http://lsirwww.epfl.ch/courses/cis/2005ss/ 2004-2005, Karl Aberer & J.P. Martin-Flatin 1 1 Outline Components J2EE and Enterprise Java
More information