IV2009 Model-driven Development of Components 7.5 credits
This course has been discontinued.
Last planned examination: Spring 2000
Decision to discontinue this course:
No information insertedContent and learning outcomes
Course contents
The course contains the basis for developing components using methods based on model-driven architecture (MDA) and component-based development (CBD). During the tutorials and project assignments, the participants will learn a model driven method for component design. During the project assignments Enterprise Java Beans (EJB) components will be implemented based on technology and platform independent models.
The course also contains an introduction to service oriented computing (SOC) and service oriented architecture (SOA).
Required prior knowledge :
- Objektorienterad analysis and design with UML
- Good skills in object-orientered programming with Java
- Relational databses and SQL
× Model-driven Architecture (MDA) is a system development approach, in which the business logic is separated from the technology and platform specific parts of a system. Using MDA, a system is modelled in different levels of abstraction, by utilising standards for metadata representation, e.g. UML and MOF. This facilitates the reuse of models, and the automated generation from technology and platform independent models to technology and platform specific models.
× Component-based Development (CBD) is an approach for developing components, which can be used as building blocks in systems. Components are commonly running inside a specific component server in order to achieve efficient transaction handling and high scalability. CBD requires a new approach to system design, as well as knowledge about the component servers required to build high-performance systems.
Brief course contents:
- Model-driven architecture (MDA)
- Metadata and metamodels
- Standards for metadata representation: Unified Modeling Language (UML), Meta Object Facility (MOF) and Common Warehouse Metamodel (CWM).
- Component-based development (CBD), important design principles.
- A model-driven method for component analysis and design.
- Component environments and servers: Microsoft .net Enterprise Services/COM+, Enterprise Java Beans (EJB).
- Principles and standards for development of services (SOAP, UDDI, WSDL, SOA)
Intended learning outcomes
An advanced level course in model-driven architecture, object-oriented analysis, and component-based development, and how these can be combined to develop component-based systems.
After the course the participants should be able to:
1) Explain how several layers of models can be used for system construction by doing model transformations.
2) Use component based design principles and be able to explain how (and why) these differ from object-oriented principles.
3) Systematically be able to use models and component based design principles to design and construct systems.
4) Be able to explain the advantages of component servers, such as transaction handling and scalability, and know the basic features of the component technologies EJB, COM+ and .net.
5) Explain the structure/architecture of service oriented systems, and the basic principles behind service-orientation (SOA).
6) Know about the basic standards needed for model based development (MOF, CWM and XMI).
Literature and preparations
Specific prerequisites
For single-course students:
Bachelor degree/180 hp (120 old credits) in information technology, information systems, computer science or computer and systems sciences.
Recommended prerequisites
- Object oriented analysis and design with UML
- Good skills in object-orientered programming with Java
- Relational databases and SQL
Equipment
Literature
Anneke Kleppe, Jos Warmer, Wim Bast : MDA Explained, Addison-Wesley Professional, 2003, 978-0321194428
Compendium with articles about MDA, and Services/SOA.
Examination and completion
If the course is discontinued, students may request to be examined during the following two academic years.
Grading scale
Examination
- PROA - Project, 4.5 credits, grading scale: P, F
- TEN1 - Examination, 3.0 credits, grading scale: A, B, C, D, E, FX, F
Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.
The examiner may apply another examination format when re-examining individual students.
Other requirements for final grade
To pass the course the student needs to pass both the project part and the written exam. The final course grade is based on the grade of exam.
Opportunity to complete the requirements via supplementary examination
Opportunity to raise an approved grade via renewed examination
Examiner
Ethical approach
- All members of a group are responsible for the group's work.
- In any assessment, every student shall honestly disclose any help received and sources used.
- In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.