CO7207 Generative Development
||Convenor: Dr. Piotr Kosiuczenko
||essential: Basic Java knowledge, cf. CO1003
||desirable: basic UML knowledge, CO2006
||Three hour exam: 75%
This module teaches the basic principles and techniques of Generative Software
Development, Aspect Oriented Programming and Model Driven Architecture.
At the end of this course the students should be able to:
- Systematically use UML diagrams for modelling and code generation
- Use tools for an automatic code generation from UML diagrams
- Understand the concepts of Model Driven Architecture
- Understand concepts of Aspect Oriented Programming
Class sessions together with course notes, textbooks,
printed solutions, and some additional hand-outs and
Traditional written examination.
To teach students methods of Generative Development.
Students will be able to: model problems with UML and implement
the solution using generative methods, and state of the art tools.
Class sessions and labour sessions (when appropriate).
Explanation of Pre-requisites
Knowledge of Jada and rudimentary knowledge of UML is required.
Software engineering is a very dynamically developing discipline.
There are new specification, modelling and programming languages, new tools
and paradigms for development of software systems.
To the most promising milestones in the development belong:
- UML for modelling of software systems
- Generative Methods for generation of code from models
- Aspect Oriented Programming for separate implementation of concerns
- Model Driven Architecture for decoupling of application specific concerns from
- Software Factories and Repositories for facilitation of component reuse
The course will provide a broad picture of these this new developments.
It will teach details of conscious modelling with different UML diagrams,
systematic system development from UML model using Generative Methods,
the principles of Aspect Oriented Programming and Model Driven Architecture.
In this course we will use state of the art software tools.
K. Czarnecki, U. Eisenecker,
David S. Frankel,
Model Driven Architecture,
Joseph D. Gradecki, Nicholas Lesiecki,
Mastering AspectJ: Aspect-Oriented Programming in Java,
UML Distilled: A Brief Guide to the Standard Object Modeling Language,
Invasive Software Composition,
Practical Aspect-Oriented Programming,
Manning Publications, 2003.
C. T. Arrington, Syed H. Rayhan,
Enterprise Java with UML, 2nd Edition,
Course notes, internet resources, handouts.
Course questionnaires, course review.
Author: N. Rahman, tel: +44 (0)116 252 2593
Last updated: 2004-01-20
MCS Web Maintainer
This document has been approved by the Head of Department.
© University of Leicester.