02291: System Integration
Hubert Baumeister
hub@imm.dtu.dk
Spring 2011
Contents
1 Explorative Modelling 1 1.1 Example: MUD Game . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Example: EaseWaste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 Software Development Process 6 2.1 Software Development Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2 Extreme Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.3 Lean Software Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.4 Cycle time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.5 Create flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.6 Agile Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3 Project Introduction 22 3.1 Description of the toll system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.2 Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.3 Project Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.4 Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1 Explorative Modelling
Explorative Modelling: The purpose of models
- Models provide an overview over the system for a certain purpose that is easier to obtain than actually
building the system – Purpose of models: e.g. plan the project, understand the problem, understand the design, guide the implementation – Make the problem easier by abstracting away from details
- Problem: How can one make models executable so that one, e.g., test them?
- Observation: Object-orientation provides: Abstraction and Encapsulation
→ Expressiveness of OO languages comes close to expressiveness of UML → Why not use OO languages as modelling languages?
- Advantage over UML
– OO programs can be executed which gives immediate feedback
- Difference from a prototype