Meta-Model and Model co-evolution
|
|
- Dina Cook
- 6 years ago
- Views:
Transcription
1 University of Grenoble Meta-Model and Model co-evolution Jean-Marie Favre University of Grenoble
2 OUTLINE Motivation and background : Industry Software in 3D D1: meta dimension D2: engineering dimension D3: representation dimension Evolution: entering the 4th dimension Conclusion
3 Part I : Motivation and Background
4 Historical mistakes in Software Engineering (1) Software is stable (2) Software is made of programs Everything evolve in complex industrial contexts
5 Architecture and Code co-evolution Architecture Code Explicit vs. implicit architecture Architecture and code both evolve Horizontal impacts Vertical impacts Synchronization and conformance issues Risks of erosion Architecture-driven vs. code-driven driven A "well identified" phenomenon nowadays Initially neglected by academics
6 Architecture and Code co-evolution architecture Explicit vs. implicit architecture Architecture and code both evolve Horizontal impacts Vertical impacts Architecture-driven vs. code-driven driven Synchronization and conformance issues Risks of erosion code A "well identified" phenomenon nowadays Initially neglected by academics
7 Architecture and Code co-evolution Architecture Code Explicit vs. implicit architecture Architecture and code both evolve Horizontal impacts Vertical impacts Synchronization and conformance issues Risks of erosion Architecture-driven vs. code-driven driven A "well identified" phenomenon nowadays Initially neglected by academics
8 Program / Language / Tool co-evolution language Program/Language co-evolution Language/Compiler co-evolution program compiler Program/Compiler co-evolution
9 Program / Language / Tool co-evolution language Program/Language co-evolution Language/Compiler co-evolution program compiler Program/Compiler co-evolution
10 Program / Language / Tool co-evolution language Program/Language co-evolution Language/Compiler co-evolution program compiler Program/Compiler co-evolution
11 Program / Language / Tool co-evolution language program compiler
12 Model / Meta-Model Model / Tool co-evolution metamodel Model/Metamodel co-evolution Metamodel/Tool co-evolution model tool Model/Tool co-evolution
13 Schema Evolution Conceptual schema data Implementation schema
14 Background : A 7-year 7 case study Collaboration with industry World leader in CAD/CAM clients, seats Clients: Boeing, Chrysler, Main software: CATIA
15 CATIA: a very large Software Product Line software engineers classes C components interfaces DLLs 800+ frameworks Need to raise the levels of abstraction Architecture Metamodel
16 A Meta-Model Model Driven Architecture Recovery Process
17 Part II : The 3D Software Space
18 The 3D Software space
19 The 3D Software space
20 The 3D Software space
21 The 3D Software space
22 A taxonomy of software artefacts
23 D1: The Meta dimension The Meta-towers towers The Meta-pyramid The Meta actor pyramid
24 D1: The Meta-towers towers
25 D1: The Meta-pyramid
26 D1: The Meta-pyramid APPLIWARE
27 D1: The Meta-pyramid METAWARE
28 D1: The Meta-pyramid SOFTWARE
29 D1: The Meta actor pyramid
30 D2: The Engineering Dimension The Engineering-tower The Engineering-pyramid The Engineering actor pyramid
31 D2: The Engineering Pyramid
32 D2 R tom : client D1+D2: D3 Appliware execution Tue 24 Dec, 10pm Tom wants to withdraw 100 from the cash machine located "12 rue de la monnaie" at Bruxelles client Meta + Engineering Appliware widthdraw transfermoney R1: all transfers must secured R2: clients can transfer money either via cash machines and internet R3: withdraw requires previous identifiication Software Actor Functional Req. Non Funct. Req. Metaware Use case Requirement A The XB12 feature is running on the cash machine. The cash machine is connected to the ACME bank server executable XP23Serv via a secure connector. Cs29485 Cs ACME bank server Cs Cash Machine <<tcpip>> Bank Server Host Connectors Components Feature Executable Subsystem Boxes D tom : Client name = "tom" a231 : Account balance= a2204 : Account balance= 300 Client name : string 1 client * accounts Account balance : int Class Package Association AssociationEnd Lines Symbol I "tom" Java objects References to objects I Instances class client implements Serializable { private String name ; private Vector Accounts ; public String getname( ) { return this.name ; } public void setname( String name ) { if (name == null) throws new NullPointerException() ; this.name = name JavaClass JavaField JavaMethod Statement Expression D1 M MM MMM Models Meta-models Meta-meta Models
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 D3: The Representation Dimension The Representation Towers The Representation Pyramid The Representation actors
53 D3: The Representation Towers
54 D3: The Representation Dimension
55
56
57
58
59
60
61
62
63 Classifying Software Artefacts Using the 3D Framework to classify software artefacts Coordinates in the reverse order D3-D2 D2-D1D1 Examples : CR-A-MM AR-D-M
64 Classifying Software Transformations Transformations or processes as paths in 3D Useful to classify SE tools and methods Forward engineering Reverse engineering Evolution & co-evolution
65 Evolution : Entering the fourth dimension
66 Evolution: Entering the Fourth Dimension (D4)
67 Co-evolution along the engineering dimension D2+D4
68 Co-evolution along the meta dimension D1+D4
69 Meta-model / model co-evolution at DS Incremental definition of a proprietary component technology Incremental implementation of tools by the tool support team Production of component-based software at the same time Meta-models should be versionned Different variants of the meta-model model used by different teams within DS by partner companies Co-evolution managed in ad-hoc way Manual or semi-automatic transformation
70 Conclusion
71 Conclusion Many academic issues related to meta-modeling modeling / meta-programming More issues coming from industry Co-evolution of meta-models models and models Reverse engineering meta-models models Tool support is required Supporting evolution at various level is an important requirement for the success of model-driven driven approaches (e.g. MDA) Meta-model for evolution vs. evolution of meta-models
72 Call For Papers First International Workshop on Meta-models and Schemas for Reverse Engineering November 13, 2003, Victoria, BC, Canada www-adele.imag.fr/atem2003 With WCRE'2003 Organizers Jean-Marie Favre, University of Grenoble, France Mike Godfrey, University of Waterloo, Canada Andreas Winter, University Koblenz-Landau, Germany
Meta-Model and Model Co-evolution within the 3D Software Space
Meta-Model and Model Co- within the 3D Software Space Jean-Marie Favre Adele Team, Laboratoire LSR-IMAG University of Grenoble, France http://www-adele.imag.fr/~jmfavre Abstract Software -in-the-large
More informationRushikesh K Joshi. Department of Computer Science and Engineering Indian Institute of Technology Bombay
CS 617 Object Oriented Systems Lecture 6 Classes Implementing Interfaces Open-Closed Principle Self References (This) 3:30-5:00 pm Mon, Jan 21 Rushikesh K Joshi Department of Computer Science and Engineering
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 informationA Flexible Approach to Visualize Large Software Products
A Flexible Approach to Visualize Large Software Products Jean-Marie Favre Laboratoire LSR-IMAG, Université Grenoble I 220, Rue de la chimie, Domaine Universitaire, BP53X 38041, Grenoble Cedex 9, France
More informationOutline of Unified Process
Outline of Unified Process Koichiro OCHIMIZU School of Information Science JAIST Schedule(3/3) March 12 13:00 Unified Process and COMET 14:30 Case Study of Elevator Control System (problem definition,
More informationPASS4TEST IT 인증시험덤프전문사이트
PASS4TEST IT 인증시험덤프전문사이트 http://www.pass4test.net 일년동안무료업데이트 Exam : 1z0-809 Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z0-809 Exam's Question and Answers 1 from
More informationPractice problem on defining and using Class types. Part 4.
CS180 Programming Fundamentals Practice problem on defining and using Class types. Part 4. Implementing object associations: Applications typically consist of collections of objects of different related
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 informationCS 617 Object Oriented Systems Lecture 5 Classes, Classless World:Prototypes, Instance Variables, Class Variables, This/Self 3:30-5:00 pm Thu, Jan 17
Objects, Interfaces and CS 617 Object Oriented Systems Lecture 5, Classless World:Prototypes, Instance Variables, Class Variables, This/Self 3:30-5:00 pm Thu, Jan 17 Rushikesh K Joshi Department of Computer
More informationpublic class Account { private int id; private static int nextaccountid = 0; private String name; private double balance;
public class Account { private int id; private static int nextaccountid = 0; private String name; private double balance; public double deposit(double amount) { public double withdraw(double amount) {
More informationAn Industry Definition of Business Architecture
Architecture: State of the Art / State of the Practice ---------------------------- William M. Ulrich Tactical Strategy Group, Inc. www.systemtransformation.com An Industry Definition of Architecture A
More informationModels versus Ontologies - What's the Difference and where does it Matter?
Models versus Ontologies - What's the Difference and where does it Matter? Colin Atkinson University of Mannheim Presentation for University of Birmingham April 19th 2007 1 Brief History Ontologies originated
More informationUML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram
UML Fundamental NetFusion Tech. Co., Ltd. Jack Lee 2008/4/7 1 Use-case diagram Class diagram Sequence diagram OutLine Communication diagram State machine Activity diagram 2 1 What is UML? Unified Modeling
More informationRequirements and Design Overview
Requirements and Design Overview Robert B. France Colorado State University Robert B. France O-1 Why do we model? Enhance understanding and communication Provide structure for problem solving Furnish abstractions
More informationTransformation of the system sequence diagram to an interface navigation diagram
Transformation of the system sequence diagram to an interface navigation diagram William Germain DIMBISOA PhD Student Laboratory of Computer Science and Mathematics Applied to Development (LIMAD), University
More informationFull file at
Chapter 2 Introduction to Java Applications Section 2.1 Introduction ( none ) Section 2.2 First Program in Java: Printing a Line of Text 2.2 Q1: End-of-line comments that should be ignored by the compiler
More informationOutline of UML and Unified Process. Object Oriented Analysis/Design/Programming UML1.5. Koichiro Ochimizu, JAIST. UML&UP outline 1.
Outline of UML and Unified Process Koichiro OCHIMIZU School of Information Science JAIST Schedule Feb. 27th 13:00 Scope and Goal 14:30 Basic Concepts on Representing the World (object, class, association,
More informationSoftware Architecture Recovery based on Dynamic Analysis
Software Architecture Recovery based on Dynamic Analysis Aline Vasconcelos 1,2, Cláudia Werner 1 1 COPPE/UFRJ System Engineering and Computer Science Program P.O. Box 68511 ZIP 21945-970 Rio de Janeiro
More informationSoftware Engineering from a
Software Engineering from a modeling perspective Robert B. France Dept. of Computer Science Colorado State University USA france@cs.colostate.edu Softwaredevelopment problems Little or no prior planning
More informationType Conversion. and. Statements
and Statements Type conversion changing a value from one type to another Void Integral Floating Point Derived Boolean Character Integer Real Imaginary Complex no fractional part fractional part 2 tj Suppose
More informationOO Project Management
OO Project Management Twin Cities Java User s Group November 17, 1999 Mary Poppendieck Poppendieck.LLC Object Oriented Development Objects Simulate the Real World Example: Process Control On/Off Switch
More informationInnovative and Pragmatic Java Source Code Generation. Nikolche Mihajlovski
Innovative and Pragmatic Java Source Code Generation Nikolche Mihajlovski Introduction Hello, world! System.out.println("Hello, GeeCON world!"); Person me = new Person(); me.setfirstname("nikolche"); me.setlastname("mihajlovski");
More informationLessons of Experience in Model-Driven Engineering of Interactive Systems: Grand challenges for MDE?
Lessons of Experience in Model-Driven Engineering of Interactive Systems: Grand challenges for MDE? Gaëlle Calvary 1, Anne-Marie Pinna 2 1 Laboratoire d Informatique de Grenoble, Equipe IIHM, 385 Rue de
More informationAgile Development
Agile Development 12-04-2013 Many flavors: Waterfall, Spiral Rapid Application Development (DSDM) Xtreme Programming (XP, an agile methodology) Usability Engineering Model, Star Iteration is done throughout
More informationSecond OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management
Second OMG Workshop on Web Services Modeling Easy Development of Scalable Web Services Based on Model-Driven Process Management 88 solutions Chief Technology Officer 2003 Outline! Introduction to Web Services!
More informationData Warehousing Introduction. Toon Calders
Data Warehousing Introduction Toon Calders toon.calders@ulb.ac.be Course Organization Lectures on Tuesday 14:00 and Friday 16:00 Check http://gehol.ulb.ac.be/ for room Most exercises in computer class
More informationComparing JavaBeans and OSGi
Comparing JavaBeans and OSGi Towards an Integration of Two Complementary Component Models HUMBERTO CERVANTES JEAN-MARIE FAVRE 09/02 Who I Am Humberto Cervantes 3d year PhD at Adèle team, LSR, Grenoble
More informationKlocwork Architecture Excavation Methodology. Nikolai Mansurov Chief Scientist & Architect
Klocwork Architecture Excavation Methodology Nikolai Mansurov Chief Scientist & Architect Overview! Introduction Production of software is evolutionary and involves multiple releases Evolution of existing
More informationCS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam
CS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam MIDTERM EXAMINATION 2010 Question No: 1 ( Marks: 1 ) - Please choose one By following modern system engineering
More informationFormalizing Fact Extraction
atem 2003 Preliminary Version Formalizing Fact Extraction Yuan Lin 1 School of Computer Science University of Waterloo 200 University Avenue West Waterloo, ON N2L 3G1, Canada Richard C. Holt 2 School of
More informationRequirements to models: goals and methods
Requirements to models: goals and methods Considering Garlan (2000), Kruchen (1996), Gruunbacher et al (2005) and Alter (2006-08) CIS Department Professor Duane Truex III Wojtek Kozaczynski The domain
More informationModel-Driven Architecture/ Development
CSSE 490 Model-Based Software Engineering: Shawn Bohner Model-Driven Architecture/ Development Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu Learning Outcomes: Transformations
More informationOracle Exam 1z0-809 Java SE 8 Programmer II Version: 6.0 [ Total Questions: 128 ]
s@lm@n Oracle Exam 1z0-809 Java SE 8 Programmer II Version: 6.0 [ Total Questions: 128 ] Oracle 1z0-809 : Practice Test Question No : 1 Given: public final class IceCream { public void prepare() { public
More informationBCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT. Object Oriented Programming
BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT Object Oriented Programming Examiner s Report March 2017 A1. a) Explain what is meant by the following terms:
More informationSoftware Architectures
Software Architectures Richard N. Taylor Information and Computer Science University of California, Irvine Irvine, California 92697-3425 taylor@ics.uci.edu http://www.ics.uci.edu/~taylor +1-949-824-6429
More informationObject-Oriented and Classical Software Engineering
Slide 1.1 CHAPTER 1 Slide 1.2 Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill, 2011 THE SCOPE OF SOFTWARE ENGINEERING Stephen R. Schach Outline Slide 1.3 Outline (contd)
More informationCONFIGURED IP MANAGEMENT OBJECTIVE
CONFIGURED IP MANAGEMENT OBJECTIVE Configured IP Management provides engineers with full control and thorough traceability of modifications made with 3DEXPERIENCE applications for designing and simulating
More informationThe ATCP Modeling Framework
The ATCP 2+9+1 Modeling Framework Bobbi Underbakke Adaptive Team Collaboration, Inc. 800.837.0677 atcprocess.com Adaptive Team Collaboration, Inc. March 22, 2005 Chris Armstrong Armstrong Process Group,
More informationObject-Oriented and Classical Software Engineering
Object-Oriented and Classical Software Engineering Slide 1.1 Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 1 Slide 1.2 THE SCOPE OF SOFTWARE ENGINEERING 1 Outline
More informationThe Specifications Exchange Service of an RM-ODP Framework
The Specifications Exchange Service of an RM-ODP Framework X. Blanc (*+), M-P. Gervais(*), J. Le Delliou(+) (*)Laboratoire d'informatique de Paris 6-8 rue du Capitaine Scott F75015 PARIS (+)EDF Research
More informationCS159. Nathan Sprague. September 30, 2015
CS159 Nathan Sprague September 30, 2015 Testing Happens at Multiple Levels Unit Testing - Test individual classes in isolation. Focus is on making sure that each method works according to specification.
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 informationSoftware LEIC/LETI. Lecture 10
Software Engineering @ LEIC/LETI Lecture 10 Last Lecture Software Design Design as Structure Data source architectural patterns FénixFramework Today Software Design Design as Structure Design Principles
More informationMetamodeling with Metamodels. Using. UML/MOF including OCL
Metamodeling with Metamodels Using UML/MOF including OCL Introducing Metamodels (Wikipedia) A metamodel is a model of a model An instantiation of metamodel gives a model Metamodeling is the process of
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 informationCS Introduction to Data Structures Week 1 Thursday
CS 367 - Introduction to Data Structures Week 1 Thursday We assume that you are proficient at object-oriented programming in Java. Please enroll in CS300 if you do not know Java and have not written object-oriented
More informationThis document is a preview generated by EVS
INTERNATIONAL STANDARD ISO 20022-7 First edition 2013-05-01 Financial services Universal financial industry message scheme Part 7: Registration Services financiers Schéma universel de messages pour l'industrie
More informationOn Supporting HCOME-3O Ontology Argumentation Using Semantic Wiki Technology
On Supporting HCOME-3O Ontology Argumentation Using Semantic Wiki Technology Position Paper Konstantinos Kotis University of the Aegean, Dept. of Information & Communications Systems Engineering, AI Lab,
More informationCS164: Programming Assignment 5 Decaf Semantic Analysis and Code Generation
CS164: Programming Assignment 5 Decaf Semantic Analysis and Code Generation Assigned: Sunday, November 14, 2004 Due: Thursday, Dec 9, 2004, at 11:59pm No solution will be accepted after Sunday, Dec 12,
More informationGRAF: Graph-based Runtime Adaptation Framework
GRAF: Graph-based Runtime Adaptation Framework SEAMS 2011 Waikiki, Honolulu, Hawaii, USA Mahdi Derakhshanmanesh1, Mehdi Amoui2, Greg O Grady2 Jürgen Ebert1, Ladan Tahvildari2 1 Institute for Software Technology,
More informationTester vs. Controller. Elementary Programming. Learning Outcomes. Compile Time vs. Run Time
Tester vs. Controller Elementary Programming EECS1022: Programming for Mobile Computing Winter 2018 CHEN-WEI WANG For effective illustrations, code examples will mostly be written in the form of a tester
More informationCS61B Lecture #7. Announcements:
Announcements: CS61B Lecture #7 New discussion section: Tuesday 2 3PM in 310 Soda. New lab section: Thursday 2 4PM in 273 Soda. Programming Contest coming up: 5 October (new date). Watch for details. Last
More informationSoftware LEIC/LETI. Lecture 3
Software Engineering @ LEIC/LETI Lecture 3 Last Lecture System Build Continuous Integration Today Test Automation Verification and Validation Human Error, Fault, Error, Failure Verification vs Validation
More informationChapter 7, System Design: Addressing Design Goals
Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 7, System Design: Addressing Design Goals Overview System Design I ü 0. Overview of System Design ü 1. Design Goals ü 2. Subsystem
More informationStrict Inheritance. Object-Oriented Programming Spring 2008
Strict Inheritance Object-Oriented Programming 236703 Spring 2008 1 Varieties of Polymorphism P o l y m o r p h i s m A d h o c U n i v e r s a l C o e r c i o n O v e r l o a d i n g I n c l u s i o n
More informationElementary Programming
Elementary Programming EECS1022: Programming for Mobile Computing Winter 2018 CHEN-WEI WANG Learning Outcomes Learn ingredients of elementary programming: data types [numbers, characters, strings] literal
More informationScala. Introduction. Scala
Scala Introduction 1 Scala Scala was proposed by Professor Martin Odersky and his group at EPFL in 2003 to provide a highperformance, concurrent-ready environment for functional programming and object-oriented
More informationComplexity. Object Orientated Analysis and Design. Benjamin Kenwright
Complexity Object Orientated Analysis and Design Benjamin Kenwright Outline Review Object Orientated Programming Concepts (e.g., encapsulation, data abstraction,..) What do we mean by Complexity? How do
More informationIntroduce C# as Object Oriented programming language. Explain, tokens,
Module 2 98 Assignment 1 Introduce C# as Object Oriented programming language. Explain, tokens, lexicals and control flow constructs. 99 The C# Family Tree C Platform Independence C++ Object Orientation
More informationInheritance & Polymorphism. Object-Oriented Programming Spring 2015
Inheritance & Polymorphism Object-Oriented Programming 236703 Spring 2015 1 1 Abstractions Reminder A class is an abstraction over objects A class hierarchy is an abstraction over classes Similar parts
More informationConstruction of Complex UML Profiles
Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040, Spain mmiguel@dit.upm.es!1 Context of this work Profiles Construction The present courseware has been
More informationBIG MODELS AN ALTERNATIVE APPROACH
2. BIG MODELS AN ALTERNATIVE APPROACH Whitepaper Eclipse Summit 2008 Modeling Symposium Jos Warmer, Ordina (jos.warmer@ordina.nl) Abstract Scaling up modeling within project runs into many practical problems.
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 informationPractical Database Design Methodology and Use of UML Diagrams Design & Analysis of Database Systems
Practical Database Design Methodology and Use of UML Diagrams 406.426 Design & Analysis of Database Systems Jonghun Park jonghun@snu.ac.kr Dept. of Industrial Engineering Seoul National University chapter
More informationFundamentals to Creating Architectures using ISO/IEC/IEEE Standards
Fundamentals to Creating Architectures using ISO/IEC/IEEE Standards What to Architect? How to Architect? IEEE Goals and Objectives Chartered by IEEE Software Engineering Standards Committee to: Define
More informationCSCI-1200 Data Structures Fall 2009 Lecture 25 Concurrency & Asynchronous Computing
CSCI-1200 Data Structures Fall 2009 Lecture 25 Concurrency & Asynchronous Computing Final Exam General Information The final exam will be held Monday, Dec 21st, 2009, 11:30am-2:30pm, DCC 308. A makeup
More informationEntry Point of Execution: the main Method. Elementary Programming. Learning Outcomes. Development Process
Entry Point of Execution: the main Method Elementary Programming EECS1021: Object Oriented Programming: from Sensors to Actuators Winter 2019 CHEN-WEI WANG For now, all your programming exercises will
More informationInter-Project Dependencies in Java Software Ecosystems
Inter-Project Dependencies Inter-Project Dependencies in Java Software Ecosystems in Java Software Ecosystems Antonín Procházka 1, Mircea Lungu 2, Karel Richta 3 Antonín Procházka 1, Mircea Lungu 2, Karel
More informationELEC 875 Design Recovery and Automated Evolution. Architecture Analysis. ELEC 875 Design Recovery and Automated Evolution
ELEC 875 Design Recovery and Automated Evolution Architecture Analysis Next Week Bull, R.I.; Trevors, A.; Malton, A.J.; Godfrey, M.W. "Semantic grep: regular expressions + relational abstraction" 9th Working
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 information!MDA$based*Teaching*and* Research*in*Software*Engineering*!
Plan!MDA$based*Teaching*and* Research*in*Software*Engineering*! Ludwik!Kuźniarz! Blekinge*Institute*of*Technology* School*of*Computing* Sweden*! Myself! Driven Architecture! MDA based Reaserch! Sample
More informationModel Driven Development of Context Aware Software Systems
Model Driven Development of Context Aware Software Systems Andrea Sindico University of Rome Tor Vergata Elettronica S.p.A. andrea.sindico@gmail.com Vincenzo Grassi University of Rome Tor Vergata vgrassi@info.uniroma2.it
More informationThe Unified Modeling Language (UML)
The Unified Modeling Language (UML) A Very Distilled Introduction to The Unified Modeling Language (UML). A quick introduction to UML is given. Thereafter, the surface of class and activity diagrams and
More informationCourse Content. Objectives of Lecture 18 Black box testing and planned debugging. Outline of Lecture 18
Structural Programming and Data Structures Winter 2000 CMPUT 102: Testing and Debugging Dr. Osmar R. Zaïane Course Content Introduction Objects Methods Tracing Programs Object State Sharing resources Selection
More informationDCS/100: Procedural Programming
DCS/100: wk 12 p.1/23 DCS/100: Procedural Programming Week 12: Classes Queen Mary, University of London DCS/100: wk 12 p.2/23 Last Week: Learning Outcomes From last week you should be able to: explain
More informationChange Detection System for the Maintenance of Automated Testing
Change Detection System for the Maintenance of Automated Testing Miroslav Bures To cite this version: Miroslav Bures. Change Detection System for the Maintenance of Automated Testing. Mercedes G. Merayo;
More informationWarm-up: Revisiting selected data technologies via 101companies
Warm-up: Revisiting selected data technologies via 101companies Software Languages Team University of Koblenz-Landau Ralf Lämmel and Andrei Varanovich & Software Languages Team (University of Koblenz-Landau)
More informationBuilding loosely coupled and scalable systems using Event-Driven Architecture. Jonas Bonér Patrik Nordwall Andreas Källberg
Building loosely coupled and scalable systems using Event-Driven Architecture Jonas Bonér Patrik Nordwall Andreas Källberg Why is EDA Important for Scalability? What building blocks does EDA consists of?
More informationBasic Principles of analysis and testing software
Basic Principles of analysis and testing software Software Reliability and Testing - Barbara Russo SwSE - Software and Systems Engineering Research Group 1 Basic principles of analysis and testing As in
More informationCS180 Review. Recitation Week 15
CS180 Review Recitation Week 15 Announcement Final exam will be held on Thursday(12/17) 8:00~10:00 AM The coverage is comprehensive Project 5 is graded. Check your score in Blackboard. Classes and Methods
More informationFundamentos de programação
Fundamentos de programação Orientação a Objeto Classes, atributos e métodos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Contents Object-Oriented Programming Implementing a Simple
More informationCOMP-202: Foundations of Programming. Lecture 14: static, private, public Jackie Cheung, Winter 2015
COMP-202: Foundations of Programming Lecture 14: static, private, public Jackie Cheung, Winter 2015 Announcements Assignment 3 due Tue, Feb 24 at 11:59pm 2 Happy New Year! 恭喜發財! May all your code compile
More informationAnnouncements. Last modified: Fri Sep 8 00:59: CS61B: Lecture #7 1
Announcements Sign-ups for weekly group tutoring offered by the course tutors have been released! Form will close on Saturday, 9/9, at 11:59PM. You will receive room and time assignments on Sunday via
More informationJSimpleDB: Language Driven Persistence for Java
JSimpleDB: Language Driven Persistence for Java Archie Cobbs Emergency Callworks, Inc. aka Motorola Solutions Why Persistence? Computers are state machines and persistence allows flexibility in handling
More informationWhat Every Xtext User Wished to Know Industry Experience of Implementing 80+ DSLs
What Every Xtext User Wished to Know Industry Experience of Implementing 80+ DSLs EclipseCon Europe 2016 2016-10-26 Roman Mitin Avaloq Evolution AG Allmendstrasse 140 8027 Zurich Switzerland T +41 58 316
More information1st Semester MTCE 601A COMPUTER SYSTEM SOFTWARE
1st Semester MTCE 601A COMPUTER SYSTEM SOFTWARE LECTURE-1 Syllabus Introduction 1.1 Introduction to Object Oriented 1.2 Introduction to UML 1.3 Software Process and OOA&D 1.4 Component and CBSD 1.5 Patterns
More informationObject-Oriented Middleware for Distributed Systems
Object-Oriented Middleware for Distributed Systems Distributed Systems Sistemi Distribuiti Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic
More informationConfiguration Management for Component-based Systems
Configuration Management for Component-based Systems Magnus Larsson Ivica Crnkovic Development and Research Department of Computer Science ABB Automation Products AB Mälardalen University 721 59 Västerås,
More informationCAS CS 460/660 Introduction to Database Systems. Fall
CAS CS 460/660 Introduction to Database Systems Fall 2017 1.1 About the course Administrivia Instructor: George Kollios, gkollios@cs.bu.edu MCS 283, Mon 2:30-4:00 PM and Tue 1:00-2:30 PM Teaching Fellows:
More informationDo model transformations solve all the problems?
Do model transformations solve all the problems? Panel@ICFEM'2008 Kitakyuschu City, October, 27 th Jean Bézivin (AtlanMod team, INRIA& EMN) -1- Ten years or Research in Model Transformation: where do we
More informationAbstract Data Types (ADTs) 1. Legal Values. Client Code for Rational ADT. ADT Design. CS 247: Software Engineering Principles
Abstract Data Types (ADTs) CS 247: Software Engineering Principles ADT Design An abstract data type (ADT) is a user-defined type that bundles together: the range of values that variables of that type can
More informationCAS 703 Software Design
Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software Architecture by Tao et al. (Chapters 6 and 7) 1
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 information<is web> Information Systems & Semantic Web University of Koblenz Landau, Germany
Information Systems University of Koblenz Landau, Germany Joint Metamodels for UML and OWL Ontologies & Software Tech: Starting Point @Koblenz IST Institute for Software Technology @Koblenz OWL Model theory
More informationCMSC 132: Object-Oriented Programming II. Inheritance
CMSC 132: Object-Oriented Programming II Inheritance 1 Mustang vs Model T Ford Mustang Ford Model T 2 Interior: Mustang vs Model T 3 Frame: Mustang vs Model T Mustang Model T 4 Compaq: old and new Price:
More informationCS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring 2004
CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring 2004 Lecture 9: Readers-Writers and Language Support for Synchronization 9.1.2 Constraints 1. Readers can access database
More informationExecutive Summary. Round Trip Engineering of Space Systems. Change Log. Executive Summary. Visas
Reference: egos-stu-rts-rp-1002 Page 1/7 Authors: Andrey Sadovykh (SOFTEAM) Contributors: Tom Ritter, Andreas Hoffmann, Jürgen Großmann (FHG), Alexander Vankov, Oleg Estekhin (GTI6) Visas Surname - Name
More informationObjectives. Problem Solving. Introduction. An overview of object-oriented concepts. Programming and programming languages An introduction to Java
Introduction Objectives An overview of object-oriented concepts. Programming and programming languages An introduction to Java 1-2 Problem Solving The purpose of writing a program is to solve a problem
More informationJava How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.
Java How to Program, 10/e Education, Inc. All Rights Reserved. Each class you create becomes a new type that can be used to declare variables and create objects. You can declare new classes as needed;
More informationCSE332: Data Abstractions Lecture 19: Mutual Exclusion and Locking
CSE332: Data Abstractions Lecture 19: Mutual Exclusion and Locking James Fogarty Winter 2012 Including slides developed in part by Ruth Anderson, James Fogarty, Dan Grossman Banking Example This code is
More information