Page 1 Model Based Software Development - a pragmatic view Mikkel Lauritsen Intentia R&D A/S

Slides:



Advertisements
Similar presentations
Major Influences on the Design of ODM Dan Chang (IBM) Elisa Kendall (Sandpiper) MDSW 2004.
Advertisements

Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Why am I here Development techniques are headed down the wrong path! Our world should be getting simpler – it is not The solutions that will solve the.
1Model Driven Architecture – 3. März 2008 – Siegfried Nolte 1.UML – What is it and what is it good for ? 2.MDA – What is it and what is it good for ? 3.MDA.
Chapter 22 UML Tooks and UML as Blueprint Model-Driven Architecture (MDA) Object-Constraint Language (OCL)
From Natural Language Requirements to Executable Models of Software Components.
Model Driven Architecture Efficiently react to Changing Architectural and Functional Requirements Stainless Steel Models for Red Rusting Technologies Wim.
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
Smalltalk in Large-Scale Enterprise Architectures Rob Vens
OMG‘s MDA: An Overview copyright © 2001, MATHEMA AG OMG‘s MDA: An Overview OMG‘s MDA: An Overview Markus Völter
MDA > Model Driven Architecture > Orçun Dayıbaş > December, 2006 > METU, Ankara.
MDA – Model Driven Architecture: An introduction Franco Flore Senior Product Manager.
Reasons to study concepts of PL
Adaptive Database Application Modeling API Final Project Report SOURENA NASIRIAMINI CS 491 6/2/2005.
Introduction to UML Visual modeling Models and its importance
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Model Driven Architecture (MDA) Partha Kuchana. Agenda What is MDA Modeling Approaches MDA in a NutShell MDA Models SDLC MDA Models (an Example) MDA -
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
MDA Model Driven Architecture Eduardo Scoz. Overview Different approach for SD: Models Different approach for SD: Models Automated tools can generate.
OMG Meeting, Helsinki Model Driven Architecture An Alternative Implementation Approach Werner Froidevaux
Copyright © 1998 by Addison Wesley Longman, Inc. 1 Concepts of Programming Languages Chapter 1.
MDD Tutorial for managers Eclipse ECESIS Project A presentation of MDD basics Model-driven development (MDD) tutorial for managers EUROPEAN SOFTWARE INSTITUTE,
Research in Compilers and How it Relates to Software Engineering Part III: Relation to SE Tomofumi Yuki EJCP 2015 June 22, Nancy.
Using UML Models for the Performance Analysis of Network Systems Nico de Wet and Pieter Kritzinger Department of Computer Science University of Cape Town.
1 Ivano Malavolta, University of L’aquila, Computer Science Department Ivano Malavolta DUALLy: an Eclipse platform for architectural languages interoperability.
NIEM-UML Profile Justin Stekervetz, NIEM PMO
ARCH-6: UML Modeling with Enterprise Architect Phillip Magnay Technical Architect.
HL7 UK 2003 (c) Abies Ltd Modelling Clinical Information Using UML Tim Benson Abies Ltd
Spectra Software Defined Radio Products Applying Model Driven Design, Generative Programming, and Agile Software Techniques to the SDR Domain OOPSLA '05.
MDA Guide Version CYT. 2 Outline OMG Vision and Process Introduction to MDA How is MDA Used? MDA Transformations Other MDA Capabilities Using the.
Using MDA in Web Software Architectures Santiago Meliá Cristina Cachero Jaime Gómez Universidad de Alicante Spain.
Model-Driven Architecture & OptimalJ Roland T. Craddolph.
Executable UML The Models are the Code - Executable UML CS387 Paul Krause.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Metadata Tools and Methods Chris Nelson Metanet Conference 2 April 2001.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
Software Engineering Chapter 8 Fall Analysis Extension of use cases, use cases are converted into a more formal description of the system.Extension.
A Template-Based Model Transformation Approach Using A Simplified Hierarchical Metamodel Ph.D Dissertation Hongming Liu DePaul University.
3 April SOA: Services Oriented Architecture MDA: Model Driven Architecture.
Introduction to MDA (Model Driven Architecture) CYT.
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
2nd TTCN-3 User Conference, June The TTCN-3 Metamodel – A Basis for Tool Integration Ina Schieferdecker TU Berlin/Fraunhofer Fokus Hajo Eichler,
ISO/IEC CD and WD : Core Model and Model Mapping ISO/IEC JTC1/SC32/WG September 2005, Toronto SC32/WG2 Japan (Kanrikogaku Ltd) Masaharu.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
MDA and Security October 12, 2006 FAU Secure Systems Group Patrick Morrison.
SysML Reference Model Definition Model Based System Development in the Joint Strike Missile project Svein-Erik Søgård KDS/Missile Division.
L8 - March 28, 2006copyright Thomas Pole , all rights reserved 1 Lecture 8: Software Asset Management and Text Ch. 5: Software Factories, (Review)
1 5 Nov 2002 Risto Pohjonen, Juha-Pekka Tolvanen MetaCase Consulting AUTOMATED PRODUCTION OF FAMILY MEMBERS: LESSONS LEARNED.
ARCH-2: UML From Design to Implementation using UML Frank Beusenberg Senior Technical Consultant.
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.
Introducing Allors Applications, Tools & Platform.
December 4, ICSSEA’03 The SmartTools Software Factory The MDA approach and Generative programming for Software Development:
MDD approach for the Design of Context-Aware Applications.
Slide title In CAPITALS 50 pt Slide subtitle 32 pt Robust Reconfigurable Erlang Component System ErlCOM Gabor Batori, Zoltan Theisz, Domonkos Asztalos.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Analysis Yaodong Bi. Introduction to Analysis Purposes of Analysis – Resolve issues related to interference, concurrency, and conflicts among use cases.
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.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
A Flexible MDATool Set Anneke Kleppe Klasse Objecten.
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.
Chapter 5 – System Modeling Lecture 1 1Chapter 5 System modeling.
Page 1 An Overview of The COTS-Aware Requirements Engineering and Software Architecting Project (CARE/SA) The University of Texas at Dallas Department.
Evaluating Compuware OptimalJ as an MDA tool
ARCH-5: From Design to Implementation in OpenEdge® using UML and MDA
UML profiles.
Constructing MDA-based Application Using Rational XDE for .NET
Presentation transcript:

Page 1 Model Based Software Development - a pragmatic view Mikkel Lauritsen Intentia R&D A/S

Page 2  Introduction  Modeling  Model based software development ... in an ideal world: MDA ... in the real world: DSL’s  Demo  Summary and questions Agenda

Page 3 The next 2 x 45 minutes will be  Pragmatic  Useful in ”the real world”  Focused on technology Introduction

Page 4 $ The business angle

Page 5 Hopefully you will get an idea about  What is model driven software development?  Why use it? Other stuff includes  a bunch of acronyms Introduction

Page 6 Who am I?  33 years old, MSc in computer science  Works as a software architect at Intentia R&D in Ballerup  Does model based J2EE e-Commerce applications for a living Introduction

Page 7  Introduction  Modeling  Model based software development ... in an ideal world: MDA ... in the real world: DSL’s  Demo  Summary and questions Agenda

Page 8 As defined by OMG: Designing before coding  A model is an abstraction – it gives a high-level description of objects  Models are often graphical  You often have specialized tooling for modeling Modeling

Page 9 Level 0Information (data) Product(”DVD Player”, ) Level 1Model (metadata) Record(”Product”, (Field(”name”, String), Field(”price”, Money)) Level 2Metamodel (meta-metadata) Class(”Record”, (Attr(”name”, String), Attr(”fields”, List )) Class(”Field”, […]) Level 3Meta-metamodel Hardwired Modeling

Page 10  Introduction  Modeling  Model based software development ... in an ideal world: MDA ... in the real world: DSL’s  Demo  Summary and questions Agenda

Page 11 What is software development?  Specification  Design  Coding  Testing  etc. And processes to connect it all Software development

Page 12  ´The challenge: it’s too difficult Coding Time to write code Total time Program size Time spent

Page 13  The natural extension of programming languages  High-level primitives  The model becomes the code Model based software development Model (program) Artifacts Generator (compiler)

Page 14  Design = code  Reduced time consumption – lower cost.  Early validation – perhaps more in theory than in practice  Agility  Simplicity - avoid (some of) the complexity that always creeps into large software projects  Platform independence Advantages of model based development

Page 15 Compared to component libraries, modeling and code generation gives you  Simplicity  Consistency checking  Portability  No need for AOP and other dirty tricks Modeling vs. component libraries

Page 16  Introduction  Modeling  Model based software development ... in an ideal world: MDA ... in the real world: DSL’s  Demo  Summary and questions Agenda

Page 17  MDA is defined by the Object Management Group, OMG   Much theory, little practice Modeling: Model Driven Architecture

Page 18 Not targeted at any specific kind of applications The core concern: platform independency  Platform Independent Model describes business logic  Platform Specific Model describes mapping to underlying platform From the PIM programs are generated using one or more PSM’s Modeling: MDA

Page 19  Mix of multiple languages for separate domains  Not really useful Modeling: Unified Modeling Language

Page 20 XML is a way of expressing metadata (structure) in textual data Effective XML Elliotte Rusty Harold XML is really great because of  ubiquitous tooling  human readability Modeling: (XMI and) XML

Page 21  Introduction  Modeling  Model based software development ... in an ideal world: MDA ... in the real world: DSL’s  Demo  Summary and questions Agenda

Page 22 More specific metamodel and code generation than in MDA  DSL’s have primitives that somehow match a domain  … defined technically, functionality-wise or in other ways Examples: see Modeling: Domain Specific Languages

Page 23 On top of the advantages of more generic modeling like UML  Better coverage  Consistency checking - at a high level All in all: SIMPLICITY Advantages of DSL’s

Page 24 Handling of nonfunctional requirements like  Performance  Concurrency support  Security DSL’s make it harder to shoot yourself in the foot Advantages of DSL’s, continued

Page 25  Introduction  Modeling  Model based software development ... in an ideal world: MDA ... in the real world: DSL’s  Demo  Summary and questions Agenda

Page 26 Demo

Page 27  Introduction  Modeling  Model based software development ... in an ideal world: MDA ... in the real world: DSL’s  Demo  Summary and questions Agenda

Page 28  Model based software development: generate code from model  Increases simplicity, lowers price  Allows you to focus on business value instead of technical details Questions? Summary and questions

Page 29