[go: up one dir, main page]

0% found this document useful (0 votes)
114 views25 pages

Design and Code Generation Tools Overview

This document summarizes several modeling tools and methodologies, including UML, OPM, SysML, and SEAM. It provides an overview of each approach and compares their key aspects. UML is described as having many diagram types but potential integration and consistency issues. OPM is presented as a holistic alternative that represents both structure and behavior on a single diagram. SysML and SEAM are summarized as extensions of UML for systems modeling and enterprise architecture, respectively. References are provided for further reading.

Uploaded by

Do Quang Tri
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
114 views25 pages

Design and Code Generation Tools Overview

This document summarizes several modeling tools and methodologies, including UML, OPM, SysML, and SEAM. It provides an overview of each approach and compares their key aspects. UML is described as having many diagram types but potential integration and consistency issues. OPM is presented as a holistic alternative that represents both structure and behavior on a single diagram. SysML and SEAM are summarized as extensions of UML for systems modeling and enterprise architecture, respectively. References are provided for further reading.

Uploaded by

Do Quang Tri
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

Tool for Design and Code

Generation
Tri Do
dotri84@[Link]

Co-Supervisors: Dr. Quan Thanh Tho - HCMUT, Vietnam


Biljana Bajic, Alain Wegmann - EPFL, Switzerland

University of Technology
Ho Chi Minh City 2011
Overview
 The challenge of software development
 [W3] Model Driven Development?
 UML Factbook
 UML Deficiencies & EA
 OPM & OPCAT
 SysML
 Basic ideas of SEAM
The challenge of software
development
Le

 a
Difficulty in producing reliable estimates

rn
Problems with securing the right people, at the right time

Fro
Delivery milestones slipped repeatedly
Difficulty in integrating with other systems

m

 Unacceptable levels of bugs found during system testing



Fa
High rates of bugs found after implementation

ilu
Reluctant, disillusioned and dissatisfied users

r
 High ongoing maintenance costs


Unhelpful system documentation
e
Systems that are inflexible in response to business change
[W3] Model Driven
Development?
 What MDD?
 Raise the level of abstraction from textual
code to visual models.
 Why MDD?
 Agile Modeling
 Quickly represent a solution to stakeholders
 When MDD?
 Depend on your choices
“It’s not the strongest who survive
nor the most intelligent, but the ones
most adaptable to change.”

- Charles Darwin
UML Factbook
 UML stands for “Unified Modeling Language”
 UML is not dependent on any one language or
technology.
 It is a industry-standard graphical language for
specifying, visualizing, constructing, and
documenting the artifacts of software systems
 UML 2.3 has 14 types of diagrams.
 Class Diagrams, Sequence Diagrams, Statechart
Diagrams, Activity Diagrams…
 Size of UML 2.3 specification: over 700 pages
 A major research endeavor. (read more [10])
UML Modeling Tools
 Rational Rose, Rational Rhapsody (
[Link]) by IBM

 Enterprise Architect (
[Link]

 ArgoUML (free software) (http://


[Link]/) Open Source

 Others (
[Link]
[Link]
)
UML Deficiencies
 9 Deficiencies (Read more [3])
 So many models, each model introduces its
own set of symbols and concepts.
 Difficult to maintain integration, consistency
among views. ([6])
 …
Object Process Methodology
(OPM)
 Developed by Dov Dori in 2002

 Holistic methodology that covers structure and behavior


of systems using a single mode

 Motivation:
 Unbalanced structure-behavior representation
 Model multiplicity problem (Peleg et al, 2000)
 Bi-model representations
 Graphical: Object-Process Diagrams (OPD)
 Textual: Object-Process Language (OPL)
OPM
 OPM uses Objects and Processes in order to model the
structural and behavioral
 Objects are things that exist over time. Object can be
stateful (i.e., have states).
 Processes are things that transform Objects by creating
them, destroying them, or changing their states.
 Procedural links connect processes to objects to express
these transformations.
 Structural relations connect objects to express static,
long-term between them.
OPM (cont.)
 ISO/TC 184/SC 5 committee have decided to establish a
Study Group tasked with exploring OPM as an ISO
standard for ISO/TC 184/SC 5. (April 2009)
 Industrial Partners: KODAK, NASA, Siemens PLM
Solutions, US Navy, …
 Academic and Standards Institutions: ISO, MIT, Keio
University, Penn State University, …
OPL

OPM Model
 SD: High level view
OPD
OPM vs. UML
 UML has multiple-views

 Each view specifies a different aspect

 The diagram types are divided into:


 Structural diagrams
 Procedural diagrams
OPM vs. UML
 OPM: Process is an entity that uniformly represents
patterns of behavior
 UML: Behavior of the system can be spread across
five diagram types

 OPM: System’s structure and behavior are specified


side-by-side, enabling one to see the whole picture in
a single view
 UML: System’s structure and behavior are specified
at different and separate
views
OPM vs. UML

OPM: No need for mental transformations


and integration across different views
UML: Need to validate consistency among
the various views
OPM: 25 symbols
UML: 150 symbols (Dori,2002)
OPCAT ([Link])
 OPCAT (Object-Process CAse Tool) has been
developed as a CASE tool to support the Object-
Process Methodology.

 Graphic and textual representation, jointly express the


same OPM model

 OPL serves human as well as machine

 OPCAT provide an advanced simulation tool

 OPCAT enable code generation (using OPL)

 OPCAT enable UML diagrams generation


OPCAT overview

Entities

Structural Procedural
links links
Simulation by animation
What is SySML?

 SysML is a graphical modeling language


 A UML profile that represents a subset of
UML 2 with extensions
 Is methodology and tool independent
 Some tools:
 TOPCASED-SYSML
 Papyrus for SysML
 …
Systemic Enterprise Architecture
Methodology (SEAM)
 A family of methods for strategic thinking, business / IT
alignment, requirement engineering.
 SEAM provides a language and a CAD tool (SeamCAD)
for visual modeling. Visual model made by SeamCAD is
stored as an XML file.
 SEAM’s ontology is based on RM-ODP and formalized in
a specification language called Alloy ([Link]).
 Alloy is a model checker decides formula satisfiable and
generates model instance.
SEAM (cont.)
 SeamCAD – Eclipse’s plug in
 Precondition, Postcondition, Invariant fields added (read
more [7],[8])
 Help in Code Generation ?
 Data Dictionary as JSON file
 JavaCC compile Data Dictionary + Template
Reference
1. From Business Specification Down to Executable JEE code using SEAM, a
Systemic Design and Analysis Method
Biljana Bajic, Claude Petitpierre, Alain Wegmann
School of Computer, Communication and Information Sciences
E´cole polytechnique fe´de´rale de Lausanne (EPFL)
CH-1015 Lausanne, Switzerland

2. SeamCAD: Object-Oriented Modeling Tool for Hierarchical Systems in


Enterprise Architecture
Lam-Son Lê, Alain Wegmann

3. Problems and Deficiencies of UML as a Requirements Specification


Language
Martin Glinz - Institut für Informatik, Universität Zürich Winterthurerstrasse 190
CH-8057 Zurich, Switzerland

4. OPM vs. UML - Experimenting with Comprehension and Construction of


Web Application [Link] Software Engineering
Iris Reinhartz-Berger and Dov Dori
Reference (cont.)
5. Object-Process Methodology (OPM) vs. UML: A Code Generation
Perspective
Iris Reinhartz-Berger1 and Dov Dori2

6. Workshop on "Consistency Problems in UML-based Software Development


II“
Ludwik Kuzniarz, Zbigniew Huzar, Gianna Reggio, Jean Louis Sourrouille, Miroslaw
Staron

7. Objects, components, and frameworks with UML - The Catalysis approach,


4th ed. Addison-Wesley, 2001
D. F. D’Souza, and A. C. Wills

8. Catalysis page
[Link]
Reference (cont.)
9. Alloy
[Link]
10. OMG Unified Modeling LanguageTM (OMG UML), Superstructure v2.4
[Link]
Thank you!

You might also like