Universitatea Babeş-Bolyai Cluj-Napoca
Facultatea de Matematică şi Informatică
Ciclul de studii: Masterat
Domeniul: Informatica
Programul de studii: Metode formale în programare
Limba de predare: Engleză

SYLLABUS

I. General data
Code	Subject	
MI368	Software modeling - new trends, concepts, technologies and tools  	

Semester	Hours: C+S+L	Category	Status	
2	2+2+1		compulsory	

II. Full status faculty members
Name and	Scientific	Didactic	Chair	Type of activity	
surname	title	title		C	S	L	
CHIOREAN Ioan Danut	Ph.D.	Lect.	Programming  Languages and Methods	*			

Associated faculty members
Name and	Scientific	Institution	Type of	Type of activity	
surname	title		position	C	S	L	

III. Course objectives
- To teach students about new concepts, trends and techniques used in software development.

- To present the role of modeling, metamodeling and programming with models.

- To explain why these trends appeared, exemplifying by problems, aspects of software development that can be solved by applying the new techniques.

- To highlight the advantages of using the new technologies and tools against using "classical" technologies and tools (between 1980 - 2000)

- To stimulate students' participation in extending and developing the new concepts, beyond understanding and using them. 	

IV. Course contents
1. The role and importance of modeling in the context of new trends in software development

2. The anatomy of modeling languages

3. Navigating models and specifying constraints.

4. Meta Object Facility (MOF)
   a. metadata and their management
   b. transferring MOF models using the XMI standard
   c. MOF based repositories: UML, CWM, JMI
   d. Domain Specific Languages

5. Modeling at different levels of abstraction
   a. Platform Independent Models (PIM)
   b. Platform Specific Models (PSM)

6. Model Driven Architecture (MDA) and Model Driven Engineering (MDE)

7. Aspect Oriented Modeling (AOM)

8. Model transformation
   a. Automatic code generation
   b. Round Trip Engineering - Synchronizing the code with the model

9. Tools supporting MDA - case studies 	

V. Bibliography
1. David S. Frankel - Model Driven Architecture: Applying MDA to Enterprise Computing - Wiley Publishing 2003

2. Anneke Kleppe, Jos Warmer, Wim Bast - MDA Explained: The Model Driven Architecture -Practice and Promise - Addison Wesley 2003

3. Jos Warmer, Anneke Kleppe - The Object Constraint Language: Getting Your Models Ready for MDA, Second Edition - Addison Wesley 2003

4. Jack Greenfield, Keith Short, Steve Cook, Stuart Kent, John Crupi - Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools - Wiley Publishing 2004

5. Jim Arlow, Ila Neustadt - Enterprise Patterns and MDA : Building Better Software with Archetype Patterns and UML - Addison Wesley 2004

6. Clark T., Evans A., Sammut P., and Willans J., Applied Metamodeling - a Foundation for Language Driven Development, beta version (0.1), Xactium, 2004.

7. Thomas Kuhne - Matters on (Meta-) Modeling - Software and Systems Modeling - Springer - Volume 5, Number 4 / December, 2006 - pp. 369-385

8. [OMG] - Meta-Object Facility Specification - Version 2.0 - http://www.omg.org/cgi-bin/doc?formal/2006-01-01

9. [OMG] - MOF 2.0/ XMI Mapping Specification, v. 2.1 - http://www.omg.org/cgi-bin/doc?formal/2005-09-01

10. [OCLE] - Object Constraint Language Environment - http://lci.cs.ubbcluj/ro/ocle 	

VI. Thematic of didactic activities per weeks

VII. Didactic methods used

VIII. Assessment
Each student must defend a report about an interest topic for this course and realize a small project using a modeling tool.  The report (including the seminar activity) and the project will be marked on a scale from 1 to 10.  The final examination will be done in the form of a written test marked similarly.  The mark obtained will be the average of the above mentioned marks.	

IX. Additional references

	Dean,							Chair head,

	Date,							Course responsible,
								Lect. CHIOREAN Ioan Danut, Ph.D.