Modelling and Simulation Based Design (COMP 762B)
Modelling and Simulation Based Design
Winter Term 2006 COMP 762B (CRN 4573))
The course
Goals
The purpose of this course is to look at the State of The Art
in Modelling and Simulation on the one hand and Software (and to a far lesser extent Hardware) Design
on the other hand. The goal is to get some insight into the
Model Based Development (MDD) of truly complex systems.
In particular, we will look into the recent trend towards Domain-Specific Modelling (DSM).
The focus will be on the use
of multiple modelling formalisms and their interrelationships to study
and design such complex systems. We will study meta-modelling and
model transformation (mostly using Graph Rewriting) extensively
as they enable the development of MDD tools. In the software realm, we will study the recent evolutions
of the Unified Modelling Language (UML) and how the UML fits in the
broader context of computer-automated multi-paradigm modelling and simulation (CAMPaM).
Method and Evaluation
The course will study research publications in the literature.
You should be capable of independent, critical reading. Students will be expected
to give (at least) two presentations, and to evaluate the other
presentations.
The presentations should be prepared in an
electronic form that can be used to create an online resource.
The first presentation reviews work from the literature.
The second presentation presents the result of a small research
project which builds on the material you have studied.
You will be evaluated on your presentation, your presentation evaluations
(how well you understood other presentations), and your project.
You will also be graded on your work during in-class tutorials
(building for example a small modelling environment using meta-modelling
and graph rewriting).
Warning: you will have to learn Python
on your own and use the AToM3
meta-modelling tool.
Announcements
Thursday 2 March at 13:00 (Trottier Labs). Hands-on development of
Operational Semantics of the Timed Traffic formalism.
Thursday 9 February at 13:00 (Trottier Labs). Hands-on development of
Abstract and Concrete Syntax of the Timed Traffic formalism.
Presentations
Presentation evaluation form [pdf]
[txt] (please submit via e-mail no later than one day after the presentation).
Resources
Modelling Languages, Formalisms, Syntax, Semantics, ...
- David Harel, Bernhard Rumpe. Meaningful Modeling: What's the Semantics
of "Semantics"?, Computer, vol. 37, no. 10, pp. 64-72, October, 2004.
[pdf].
- David Harel, Bernhard Rumpe.
Syntax, Semantics, and all that stuff.
Meta-modelling and Mega-modelling
- Juha-Pekka Tolvanen's course on
Metamodeling and Method Engineering.
- Greg Nordstrom. Metamodeling – Rapid Design and Evolution of Domain-Specific Modeling Environments.
Ph.D. dissertation at Vanderbilt University
[pdf].
- Jean-Marie Favre. Megamodelling and Etymology.
Proceedings of Dagstuhl Seminar 05161 - Transformation Techniques in Software Engineering. 2006.
- Thomas Kühne. Matters of (Meta-) Modeling.
Software and Systems Modelins (SoSyM). pp 1- 17. Online First. 2006.
- Colin Atkinson and Thomas Kühne.
Rearchitecting the UML infrastructure
[pdf].
ACM Transactions on Modeling and Computer Simulation (TOMACS).
Volume 12, Issue 4. pp 290 - 321. October 2002.
- Daniel Varro and Andras Pataricza.
VPM: A visual, precise and multilevel metamodeling framework for
describing mathematical domains and UML
(The Mathematics of Metamodeling is Metamodeling Mathematics)
[pdf].
Software and Systems Modeling. Volume 2, No. 3 pp. 187 - 210.
October 2003.
- www.metamodel.com
Domain-Specific Modelling (DSM)
Model Transformation, Graph Transformation
- K. Czarnecki and S. Helsen.
Classification of model transformation approaches.
In J. Bettin, G. van Emde Boas, A. Agrawal, E. Willink, and J. Bezivin, editors,
Second Workshop on Generative Techniques in the context of Model Driven Architecture, October 2003.
[pdf].
- L. Baresi and R. Heckel,
Tutorial Introduction to Graph Transformation: A Software Engineering Perspective.
In Corradini, A.,H. Ehrig, H.-J. Kreowski und G. Rozenberg (Editors):
Proc. 1st Int. Conference on Graph Transformation
(ICGT 02), Barcelona, Spain,
Volume 2505 of Lecture Notes in Comp. Science.
Springer-Verlag, Oktober 2002.
[ps].
- L. Baresi and R. Heckel,
Foundations and Applications of Graph Transformation:
An introduction from a software engineering perspective.
[presentation (pdf)].
- D. Blostein, H. Fahmy and A. Grbavec,
Practical Use of Graph Rewriting
[pdf].
- Handbook on Graph Grammars and Computing by Graph Transformation:
- Volume 1. Foundations.
G Rozenberg, editor. 1997.
- Volume 2. Applications, Languages and Tools.
H Ehrig, G Engels, H J Kreowski, editors. 1999.
- Volume 3. Concurrency, Parallelism, and Distribution.
H Ehrig, H J Kreowski, U Montanari, editors. 1999.
World Scientific Publishing.
Concrete Syntax: Visual Languages
- G. Costagliola, A. Delucia, S. Orefice and G. Polese,
A Classification Framework to Support the Design of Visual Languages,
Journal of Visual Languages & Computing, Volume 13, Issue 6, , December 2002, Pages 573-600.
- Mark Minas and Berthold Hoffmann,
Specifying and Implementing Visual Process Modeling Languages with DiaGen,
Electronic Notes in Theoretical Computer Science, Volume 44, Issue 4, UNIGRA 2001,
Uniform Approaches to Graphical Process Specification Techniques (a Satellite Event of ETAPS 2001), July 2001, Pages 1-13.
Multi-Paradigm Modelling
Meta-modelling and Graph Transformation in AToM3
- AToM3,
A Tool for Multi-formalism and Meta-Modelling.
- Juan de Lara and Hans Vangheluwe.
AToM3: A tool for multi-formalism and meta-modelling.
In European Joint Conference on Theory And Practice of Software (ETAPS, Grenoble, France),
Fundamental Approaches to Software Engineering (FASE), Lecture Notes in Computer Science 2306, pages 174 - 188.
Springer-Verlag, April 2002.
[pdf]
Formalisms: Statecharts
- David Harel. Statecharts: A Visual Formalism for Complex Systems.
Science of Computer Programming. Volume 8. 1987. pp. 231 - 274.
[pdf].
- David Harel. On Visual Formalisms.
Communications of the ACM. Volume 31, No. 5. 1988. pp. 514 - 530.
[pdf].
- David Harel and Amnon Naamad,
The STATEMATE semantics of statecharts.
ACM Transactions on Software Engineering and Methodology (TOSEM) Volume 5 , Issue 4 (October 1996)
pp.293 - 333. [pdf].
- David Harel and Hillel Kugler,
The Rhapsody Semantics of Statecharts (or, On the Executable Core of the UML),
Lecture Notes in Computer Science, Volume 3147, Jan 2004, Pages 325 - 354.
[pdf].
In Integration of
Software Specification Techniques for Application in Engineering 2004.
- Michelle L. Crane, Juergen Dingel,
UML Vs. Classical Vs. Rhapsody Statecharts: Not All Models Are Created Equal.
Lecture Notes in Computer Science, Volume 3713, Nov 2005, Page 97 - 112.
pdf].
- Jianwei Niu, Joanne M. Atlee, Nancy A. Day,
Template Semantics for Model-Based Notations.
IEEE Transactions on Software Engineering, Vol. 29, No. 10, October 2003, pp. 866-882.
[pdf].
- Bran Selic's presentation (Montreal, 7 March 2003)
Preview of UML 2.0 and MDA.
[pdf] demonstrates the introduction
of connectors and ports in UML 2.0 to enhance modularity.
- A report on "Executable UML" (with a chat program example, using UML 2.0
constructs in Telelogic's Tau tool) by
Geir Melby of Agder University College.
[pdf].
- DCharts introduced in Thomas Feng's M.Sc. thesis:
Modelling and Simulation with DCharts, a Modular and Expressive
Formalism.
- Michael von der Beeck. A structured operational semantics for UML-statecharts.
Software and Systems Modeling. Volume 1, No. 2 pp.130 - 141 .
December 2002.
[pdf].
From behaviour requirements to execution
- David Harel. Can Behavioral Requirements be Executed ?
[ps].
Introduces Play-in/Play-out.
- David Harel and Hillel Kugler.
Synthesizing state-based object systems
from LSC specifications.
International Journal of Foundations of Computer Science, Vol. 13, No.1. 2002.
pp. 5-51. World Scientific Publishing Company.
[ps].
- David Harel and Rami Marelly.
Specifying and Executing Behavioral Requirements: The
Play-In/Play-Out Approach
[pdf].
Software and Systems Modeling. Volume 2, Number 2. July 2003.
pp. 82 - 107.
The Unified Modeling Language UML (and its consistency problems)
Model Driven Architecture
- The OMG's
MDA pages.
- Anneke Kleppe, Jos Warmer, Wim Bast.
MDA Explained: The Model Driven Architecture--Practice and Promise.
(a high-level introduction).
[Amazon].
- Bran Selic's presentation (Montreal, 7 March 2003)
"Preview of UML 2.0 and MDA".
[pdf]
- U2 partners' April 2003 "UML 2.0 Superstructure"
[pdf]
[xmi]
[petal(rose)].
- Mapping a UML Platform Independent Model onto an ASP.NET
web application.
Presentation (McGill, 9 April 2003) by Michel Brassard from
Codagen.
[pdf]
Model Based Design of User Interfaces
- Hallvard Trætteberg. Model-based User Interface Design.
Ph.D. thesis. Department of Computer and Information Sciences.
Faculty of Information Technology, Mathematics and Electrical Engineering.
Norwegian University of Science and Technology. 2002.
[pdf].
- Jeffrey Nichols, Brad A. Myers, Brandon Rothrock.
"UNIFORM: Automatically Generating Consistent Remote Control User Interfaces,"
In Proceedings of CHI'2006. April 22-26. Montreal, Canada. pp. 611-620.
[pdf].
- Karsten Ehrig, Claudia Ermel, Stefan Hansgen, Gabriele Taentzer.
Generation of visual editors as eclipse plug-ins.
Proceedings of the 20th IEEE/ACM international Conference on Automated
Software Engineering (ASE). Long Beach, CA, USA. 2005. pp. 134 - 143.
For a slightly more elaborate version of this paper, see
Towards Graph Transformation Based
Generation of Visual Editors using Eclipse [pdf] by the same authors.
Refactoring
Miscellaneous interesting links