The language was changed to English.

Course Type (SWS)
Lecture: 2 │ Exercise: 2 │ Lab: 0 │ Seminar: 0
Exam Number: ZKD 50041
Type of Lecture:

In  German or English with English slides and material

Language: German
Cycle: SS
ECTS: 6
Exam Type Oral Exam (30-45 min.)
Written Exam (90 min.)
assigned Study Courses
assigned People
assigned Modules
Information
Beschreibung:

Die Veranstaltung behandelt musterbasierte und komponentenbasierte Softwareentwicklung. Diese beiden Ansätze legen
Wert auf die Wiederverwendung bereits vorhandenen Wissens bzw. bereits vorhandener Software.

Inhalt im Einzelnen:
- Definition von Mustern
- Verwendung von Mustern im Softwareentwicklungsprozess
- Muster für die verschiedenen Phasen (Analyse: Problem Frames, Analysemuster; Entwurf: Architekturmuster, Entwurfsmuster; Implementierung: Idiome; Test: Testmuster)
- Komponentenbegriff
- Verschiedene Komponentenmodelle (z.B. Enterpise Java Beans, Corba Component Model, OSGi)
- Spezifikation von Komponentenschnittstellen
- Nachweis der Interoperabilität von Komponenten
- Komponentenbasierter Entwicklungsprozess
- Kombination von Mustern und Komponenten in einem integrierten Entwicklungsprozess

Lernziele:

- Grundideen von Mustern und Softwarekomponenten erläutern können
- Vorteile muster- und komponentenbasierter Softwareentwicklungsansätze
gegenüber traditionellen Ansätzen beschreiben können
- Den verschiedenen Phasen des Softwarelebenszyklus Muster zuordnen können
- Für die besprochenen Musterarten Beispiele aufzählen und erläutern können
- Die verschiedenen Arten von Mustern anwenden können.
- Grundidee der komponentenbasierten Softwareentwicklung erläutern können
- Existierende Komponentenmodelle erläutern und beurteilen können.
- Komponenten spezifizieren können.
- Komponentenbasierte Software entwerfen können.
- Zusammenhänge zwischen Mustern und Komponenten erläutern können

Literatur:

- M. Jackson: Problem Frames. Analyzing and structuring software development problems, Addison-Wesley, 2001.
- Martin Fowler: Analysis Patterns: Reusable Object Models, Addison Wesley, 1997.
- F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad und M. Stal:
Pattern-Oriented Software Architecture: A System of Patterns, John
Wiley & Sons, 1996
- E. Gamma, R. Helm, R. Johnson und J. Vlissides: Design Patterns -
Elements of Reusable Object-Oriented Software, Addison Wesley, 1995.
- Binder, R. V. (1999). Testing object-oriented systems: models,
patterns, and tools. Addison-Wesley Longman Publishing
Co., Inc., Boston, MA, USA.
- C. Szyperski: Component Software - Beyond object oriented programming,
Addison Wesley, 2. Aufl. 2002.
- J. Cheesman und J. Daniels: UML Components - A Simple Process for
Specifying Component-Based Software, Addison-Wesley, 2001.
- George T. Heineman and William T. Councill: Component-Based Software Engineering. Addison Wesley, 2001

Vorleistung:

Kenntnisse der Softwaretechnik

Infolink:
Bemerkung:
Description:

The course treats pattern- and component-based software development. Both approaches stress the reuse of existing knowledge or existing software.

Content in detail:
- Definition of Patterns
- Usage of patterns in the software development process
- Patterns for different phases (analysis phase: problem frames, analysis patterns; design phase: architectural patterns, design patterns; implementation phase: idioms; test phase: test patterns)
- Notion of component
- Different component models (e.g., Enterpise Java Beans, Corba Component Model, OSGi)
- Specification of component interfaces
- Demonstration of component interoperability
- Component-based development process
- Combination of patterns and components in an integrated development process

Learning Targets:

- Be able to explain the basic ideas of patterns and software components
- Be able to describe advantages of pattern and component based software development approaches as compared to traditional approaches
- Be able to assign patterns to the different phases of the software development life-cycle
- Be able to give examples for the discussed pattern types and explain them
- Be able to apply the different kinds of patterns
- Be able to explain the basic ideas of component based software development
- Be able to explain and assess existing component models
- Be able to specify a component
- Be able to design component-based software
- Be able to explain the interrelationship between components and patterns

Literature:

- M. Jackson: Problem Frames. Analyzing and structuring software development problems, Addison-Wesley, 2001.
- Martin Fowler: Analysis Patterns: Reusable Object Models, Addison Wesley, 1997.
- F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad und M. Stal:
Pattern-Oriented Software Architecture: A System of Patterns, John
Wiley & Sons, 1996
- E. Gamma, R. Helm, R. Johnson und J. Vlissides: Design Patterns -
Elements of Reusable Object-Oriented Software, Addison Wesley, 1995.
- Binder, R. V. (1999). Testing object-oriented systems: models,
patterns, and tools. Addison-Wesley Longman Publishing
Co., Inc., Boston, MA, USA.
- C. Szyperski: Component Software - Beyond object oriented programming,
Addison Wesley, 2. Aufl. 2002.
- J. Cheesman und J. Daniels: UML Components - A Simple Process for
Specifying Component-Based Software, Addison-Wesley, 2001.
- George T. Heineman and William T. Councill: Component-Based Software Engineering. Addison Wesley, 2001

Pre-Qualifications:
Info Link:
Notice: