MODISCO: A TOOL FOR MODEL DRIVEN ARCHITECTURES CS 791Z – Grad Sem. on Software Engineering February 18 th, 2014 By: Alex Redei.

Slides:



Advertisements
Similar presentations
Jane Long, MA, MLIS Reference Services Librarian Al Harris Library.
Advertisements

©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software processes 2.
Chapter 11 Software Evolution
SOFTWARE MAINTENANCE 24 March 2013 William W. McMillan.
MDA – Model Driven Architecture: An introduction Franco Flore Senior Product Manager.
Modeling Process-Oriented Integration of Services Using Patterns and Pattern Primitives Uwe Zdun and Schahram Dustdar Distributed Systems Group Institute.
Software Engineering COMP 201
CS 490M Software Testing Company Sponsored Projects An Overview [Under Construction] Fall 2006 Instructor: Aditya Mathur August 21, 2006.
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Software Evolution and Reverse Engineering Founded in 2004 Main aims: Analyze and define approaches, methodologies, techniques, tools able to support software.
CS350/550 Software Engineering Lecture 1. Class Work The main part of the class is a practical software engineering project, in teams of 3-5 people There.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
INDEPTH Network INDEPTH Data Systems Kobus Herbst.
Knowledge Discovery: How To Reverse-Engineer Legacy Sytems © 2008 INRIA Knowledge Discovery: How to Reverse-Engineer Legacy Systems Hugo Bruneliere,
Research in Compilers and How it Relates to Software Engineering Part III: Relation to SE Tomofumi Yuki EJCP 2015 June 22, Nancy.
Comparing M2T & M2M Complementary Approaches © 2008 INRIA, University of York & SINTEF Comparing M2T & M2M Complementary Approaches Hugo Bruneliere,
© 2011 IBM Corporation Overview on Modeling RESTful Services August, 2011 Manoj Paul, Software Developer, Rational,
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Extreme Programming.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
A Generic And Extensible Framework For Model Driven Reverse Engineering.
Mendeley Institutional Edition Hazman Aziz, eProduct Manager (APAC) University Kebangsaan Malaysia.
Providing a Software Quality Framework for Testing of Mobile Applications Dominik Franke and Carsten Weise RWTH Achen University Embedded Software Laboratory.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
Mihir Daptardar Software Engineering 577b Center for Systems and Software Engineering (CSSE) Viterbi School of Engineering 1.
Chapter 2 소프트웨어공학 Software Engineering 임현승 강원대학교
Chapter 1 소프트웨어의 본질 The Nature of Software 임현승 강원대학교
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
PAPER PRESENTATION: EMPIRICAL ASSESSMENT OF MDE IN INDUSTRY Erik Wang CAS 703.
Integrating Usability Engineering and Agile Software Development: A Literature Review 陳振炎教授 楊哲豪
Software Specification and Design Sirisin Kongsilp & James Brucker.
DR Software: Essential Foundational Elements and Platform Components UCLA Smart Grid Energy Research Center (SMERC) Industry Partners Program (IPP) Meeting.
Methods and Models Choice of methods for Development of IT related products and systems SVINGSVING Conference held in Gothenburg, Sweden, October 2000.
Abstract We present two Model Driven Engineering (MDE) tools, namely the Eclipse Modeling Framework (EMF) and Umple. We identify the structure and characteristic.
August 2003 At A Glance VMOC-CE is an application framework that facilitates real- time, remote cooperative work among geographically dispersed mission.
Object-Oriented Analysis and Design Fall 2009.
SysML Reference Model Definition Model Based System Development in the Joint Strike Missile project Svein-Erik Søgård KDS/Missile Division.
Object Oriented Reverse Engineering JATAN PATEL. What is Reverse Engineering? It is the process of analyzing a subject system to identify the system’s.
1 An Aspect-Oriented Implementation Method Sérgio Soares CIn – UFPE Orientador: Paulo Borba.
MDA – Model Driven Architecture Olivier Riboux. Overview What is MDA? The Challenges MDA addresses Developing in the MDA Benefits / Conclusion Case Study:
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
Software Engineering Emphasis for Engineering Computing Courses William Hankley Computing & Information Sciences Kansas State University.
Patterns in cs education Matthias Felleisen & Daniel Jackson NDIST · December 5, 2001.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with IBM Rational Software Architect, V7.5 Module 18: Applying Patterns and Transformations.
CASE Tools CSC 532 : Advance Topics CSC 532 : Advance Topics Software Engineering Software Engineering Dr. box Dr. box Moayad Almohaishi Moayad Almohaishi.
KEYNOTE ADDRESS North Carolina Teachers of Mathematics Conference 2013 Teruni Lamberg Ph.D. University of Nevada, Reno Whole Class Mathematics Discussions:
Design and implementation Chapter 7 – Lecture 1. Design and implementation Software design and implementation is the stage in the software engineering.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2010 Stephen R. Schach
Model Driven Architecture MDA SE-548 Lale Doğan
Object Oriented Analysis & Design By Rashid Mahmood.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
Software Development.
Chapter 1 The Nature of Software
Overview Power Quality Dashboard Fred Elmendorf August 2014.
Chapter 18 Maintaining Information Systems
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
Publishing software and data
Chapter 1 The Nature of Software
Chapter 1 The Nature of Software
Evaluating Compuware OptimalJ as an MDA tool
Chapter 7 –Implementation Issues
Automated Analysis and Code Generation for Domain-Specific Models
Delivering great hardware solutions for Windows
Re- engineeniering.
Recommending Adaptive Changes for Framework Evolution
Remedy Integration Strategy Leverage the power of the industry’s leading service management solution via open APIs February 2018.
Presentation transcript:

MODISCO: A TOOL FOR MODEL DRIVEN ARCHITECTURES CS 791Z – Grad Sem. on Software Engineering February 18 th, 2014 By: Alex Redei

OVERVIEW 1.Intro: Who wants to be a programmer?™ 2.The problem 3.How models are different 4.Business case 5.Challenges 6.Converting UML to code 7.Conclusion W ARNING : B AD C ODE A HEAD !

3 G AME

4 T HE P ROBLEM Code, Code, Code…

VIDEO Eban Escott – Ph.D. – University of Queensland: 3:50 – 5:30 – INTRO 8:20 – 16:23 – MDE Philosophy 9:50 – talks about generated code vs written code 11:00 – model driven code 16:10 – Automated Documentation / Dashboards 17:00 – Eclipse Plugin 18:00 – on automated test cases 19:25 – 20:20 - Conclusion H OW M ODELS A RE D IFFERENT

MODEL-DRIVEN ENGINEERING Focus on the big picture. Optimizations are hard to see, but concurrency and design patterns are easier to spot. Keeping documentation up-to-date.

7 T HE M O D ISCO T OOL

INSTALLATION Java Eclipse plug-in. So easy I could do it!

CODE GENERATION AND DISCOVERY

CODE METRICS Code metrics can be generated from the models. Additionally, code can be refactored using the model.

IF YOU WANT TO PLAY WITH IT YOURSELF…. You can remote to it via: Java Eclipse folder is on the desktop, MoDIsco is already installed.

A living document: code and documentation not as likely to fall out of sync. Maximize design time. Easier to identify design patterns. Linking and interfaces between classes more visual. 12 ProsCons High upfront cost. Retraining of programmers to think abstractly, new tools to be learned, etc. Limited flexibility. DSLs will only make sense to those with domain knowledge. Makes knowledge transfer harder. Precise calculations and functions are harder to express. C ONCLUSION

“ A new study that surveyed 450 MDE practitioners and performed in-depth interviews with 22 suggests that although MDE might be more widespread than commonly believed, developers rarely use it to generate whole systems. Rather, they apply MDE to develop key parts of a system.” – Jon Whittle, Lancaster University

REFERENCES MoDisco: a Model Driven Reverse Engineering Framework Hugo Bruneliere, Jordi Cabot, Grégoire Dupé and Frédéric Madiot. A full long paper in Elsevier journal on Information and Software Technology 56 (2014) (pages ) How to Deal with your IT Legacy? What is Coming up in MoDisco: A short article about the current status of MoDisco, as part of ERCIM News 88 focusing on Evolving Software, January 2012 (pages 43-44). How to Deal with your IT Legacy? Reverse Engineering using Models: MoDisco in a Nutshell!: A complete article about MoDisco v0.9.0, as part of the JavaTech Journal #10 focusing on the Eclipse Indigo Simultaneous Release, August 2011 (pages 21-24). MoDisco: a Generic and Extensible Framework for Model Driven Reverse Engineering: A short paper introducing MoDisco, published in the ASE Conference 2010 (Antwerp, Belgium, September 2010). MoDisco, a Model-Driven Platform to Support Real Legacy Modernization Use Cases: A detailed book chapter from Information Systems Transformation: Architecture-Driven Modernization 14