Communication and Media Engineering

Module Guide

 Back 

Computer Science

Teaching methods Lecture/Lab
Learning target / Competences

Being able to perform Object-Orientated Analysis (OOA) using UML
Transfer of analysis models to Object-Orientated Design (OOD) models using UML
Know Design Patterns and be able to apply them

Being able to understand the main concepts of object oriented programming: encapsulation, inheritance and polymorphism
Applying abstract data types and polymorphism and work with it meaningfully
To understand the UML class diagrams and to be able to implement them in Java as a programming language.
Create high quality Java applications due to the principles of object oriented programming using Unit and Mock testing techniques.

Duration 2
Hours per week 6.0
Overview
Classes 90 h
Individual / Group work: 150 h
Workload 240 h
ECTS 8.0
Requirements for awarding credit points

Object Oriented Software Development: written exam K60 (50 %)
OO Software Development Lab: Lab has to be passed
Objected Oriented Modeling (UML): written exam K60 (50 %)
Both exams must be passed.

Credits and grades

8 CP, grades 1 ... 5

Responsible person

Prof. Dr. rer. nat. Klaus Dorer

Recommended semester 1+2
Frequency Every sem.
Usability

Master's degree program CME

Lectures

Object Oriented Modelling (UML)

Type Lecture
Nr. EMI402
Hours per week 2.0
Content

1. Introduction
2. Object Oriented Analysis
2.1. Use Case
2.2. Class + Object
2.3. Activity
2.4. State
2.5. Sequence
2.6. Analysis Patterns
3. Object Oriented Design
3.1. Architecture
3.2. Package
3.3. Component
3.4. Design Patterns
3.5. Anti Patterns

 

Literature

• Brett D. McLaughlin; Gary Pollice; David West, Head first object-oriented analysis and design : [a brain-friendly guide to OOA@D], 2007
• Grady Booch, Object-oriented analysis and design with applications, 2007
• Martin Fowler: UML Distilled: A Brief Guide to the Standard Object Modeling Language, Addison-Wesley, 2004
• Bernd Oestereich, Analyse und Design mit der UML 2.5 : objektorientierte Softwareentwicklung, 2012
• Bernd Oestereich, Developing software with UML: Object-Oriented Analysis and Design in Practice, Addison-Wesley, 2001

 

Object Oriented Software Development

Type Lecture
Nr. EMI400
Hours per week 2.0
Content
  • Introduction to programming in C++
  • Classes and Objects
  • Relationships between classes: composition, aggregation, inheritance
  • Polymorphism
  • Abstract classes and interfaces
  • Unit Testing
  • Design Patterns in C++

 

 

Literature
  • Bjarne Stroustrup ”Programming: Principles and Practice Using C++
  • ”Lippman, Lajoie and Moo ”C++ Primer”
  • Scott Meyers „Effective C++
  • ”Scott Meyers „Effective Modern C++
  • ”Gamma, Helm, Johnson, Vlissides: ”Design Patterns: Elements of Reusable Object-Oriented Software

 

OO Software Development Lab

Type Lab
Nr. EMI401
Hours per week 2.0
Content

The lab class is conducted in parallel to the lecture and supports anindependent in-depth study of the learning content. Students will write C++programs containing all concepts covered in the lecture.

Literature

See lecture.

 Back