13.01.2014 Aufrufe

Katalog der Wahlpflichtmodule - Hochschule Furtwangen

Katalog der Wahlpflichtmodule - Hochschule Furtwangen

Katalog der Wahlpflichtmodule - Hochschule Furtwangen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Katalog</strong> <strong>der</strong><br />

Informatik-Module<br />

Angebot an Informatik-<strong>Wahlpflichtmodule</strong>n<br />

an <strong>der</strong> <strong>Hochschule</strong> <strong>Furtwangen</strong><br />

Stand Sommersemester 2012<br />

Prof. Dr. Dirk Eisenbiegler<br />

Prof. Dirk Koschützki<br />

Prof. Dr. Mohsen Rezagholi<br />

Prof. Dr.-Ing. Robert Hönl


Erläuterungen<br />

Die <strong>Hochschule</strong> <strong>Furtwangen</strong> hat im Bereich Informatik ein sehr umfangreiches Angebot an<br />

Lehrveranstaltungen. Dieses Handbuch soll den Studentinnen und Studenten <strong>der</strong> <strong>Hochschule</strong><br />

<strong>Furtwangen</strong> einen Überblick über dieses Angebot geben. Die Studentinnen und Studenten<br />

sollen dazu ermutigt werden, bei <strong>der</strong> Auswahl <strong>der</strong> <strong>Wahlpflichtmodule</strong> auch einen Blick auf<br />

das Angebot an<strong>der</strong>er Fakultäten zu werfen. Das Handbuch informiert darüber, welches Modul<br />

für welchen Studiengang geeignet ist und welche Einschränkungen gegebenenfalls zu<br />

beachten sind.<br />

Das Handbuch besteht aus zwei Teilen.<br />

✗Teil 1: Studiengänge<br />

Im ersten Teil wird Studiengang für Studiengang aufgelistet, welche <strong>der</strong> Informatik-Module<br />

für den jeweiligen Studiengang geeignet sind und welche Einschränkungen gegebenenfalls zu<br />

beachten sind, wenn man ein bestimmtes Modul als <strong>Wahlpflichtmodule</strong> belegen möchte.<br />

✗Teil 2: Module<br />

Eine Auflistung aller Module mit verschiedenen nützlichen Informationen zu den Modulen.<br />

Die Studentinnen und Studenten können hier erfahren, welcher Inhalt genau in welchem<br />

Modul vermittelt wird, wie das Modul strukturiert ist, welche Art von Prüfung zu absolvieren<br />

ist und vieles mehr.<br />

Die <strong>Hochschule</strong> <strong>Furtwangen</strong> hat inzwischen fast alle Lehrmodule auf ein einheitliches Format<br />

von 6 ECTS Lehrumfang umgestellt. Dies begünstigt die Austauschbarkeit von<br />

Prüfungsleistungen innerhalb <strong>der</strong> <strong>Hochschule</strong>. Alle hier dargestellten Lehrmodule haben ein<br />

Format von 6 ECTS und sind somit in den meisten Studiengängen kompatibel zu den<br />

Anfor<strong>der</strong>ungen, die dort an <strong>Wahlpflichtmodule</strong> gestellt werden. Für Studierende <strong>der</strong><br />

Fakultäten CEE (Computer and Electrical Engineering), Digitale Medien (DM) und<br />

Informatik (IN) ist dies in allen Studiengängen <strong>der</strong> Fall.<br />

Das Handbuch umfasst in <strong>der</strong> aktuellen Version nur die Module und Studiengänge <strong>der</strong><br />

Fakultäten CEE, DM und IN. Diese Fakultäten wünschen einen fakultätsübergreifenden<br />

Austausch von Prüfungsleistungen. Aus diesem Grund haben diese Fakultäten die<br />

Anrechenbarkeit von Prüfungsleistungen an<strong>der</strong>er Fakultäten pauschal geregelt und diese<br />

Regelung in Teil 1 dieses Handbuches zusammengestellt. Für die Studentinnen und Studenten<br />

ihrer Studiengänge bedeutet dies, dass sie die Regeln für die Anerkennung dieser<br />

Prüfungsleistungen diesem Handbuch entnehmen können und eine Einzelfallprüfung durch<br />

den Studiengangsleiter in diesen Fällen nicht mehr erfor<strong>der</strong>lich ist. Die hier aufgelisteten<br />

<strong>Wahlpflichtmodule</strong> können von den Studentinnen und Studenten unter den beschriebenen<br />

Randbedinungen direkt im Studentensekretariat als Wahlpflichtmodul gebucht werden.


Teil 1: Studiengänge<br />

Dieser Abschnitt beschreibt Studiengang für Studiengang, welche Module für diesen<br />

Studiengang als Wahlpflichtmodul sinnvollerweise in Frage kommen und welche<br />

Einschränkung bezüglich <strong>der</strong> Anrechenbarkeit es gegebenenfalls gibt.<br />

1.1 Elektronik und Technische Informatik Bachelor (ETI)<br />

1.2 Security & Safety Engineering Bachelor (SSB)<br />

1.3 Information Communication System Bachlor (ICSB)<br />

1.4 Medieninformatik Bachelor (MIB)<br />

1.5 OnlineMedien Bachelor (OMB)<br />

1.6 Allgemeine Informatik Bachelor (AIB)<br />

1.7 Computer Networking Bachelor (CNB)


1.1 Elektronik und Technische Informatik Bachelor (ETI)<br />

Die nachfolgenden Module können von den Studentinnen und Studenten dieses Studiengangs als<br />

<strong>Wahlpflichtmodule</strong> belegt werden. Die genannten Einschränkungen sind zu beachten.<br />

✗ Computergrafik<br />

✗ Datenbanken (DM) *<br />

✗ Development of Interactive Applications<br />

✗ Digital Media Processing<br />

✗ Grafische Datenverarbeitung<br />

✗ Grafische Datenverarbeitung Workshop<br />

✗ Medienprogrammierung<br />

✗ Verteilte Anwendungen 1 *<br />

✗ Software-Entwicklung *<br />

✗ Algorithmen und Datenstrukturen<br />

✗ Computernetze 1<br />

✗ Computernetze 2<br />

✗ Datenbanken (IN) *<br />

✗ Formale Sprachen<br />

✗ Netzprogrammierung *<br />

✗ Netzwerkmanagement<br />

✗ Netzwerksicherheit<br />

✗ Objektorientierte Programmierung 2<br />

✗ Software Engineering 1 *<br />

✗ Software Engineering 2 *<br />

✗ Software-Architektur<br />

✗ Softwarequalität<br />

✗ Systemsoftware (IN) *<br />

*) Veranstaltungen, die nicht miteinan<strong>der</strong> kombiniert werden dürfen:<br />

✗ Datenbanken (DM),<br />

Datenbanken (IN)<br />

✗ Systemsoftware (CEE),<br />

Systemsoftware (IN)<br />

✗ Software-Entwicklung, Software Engineering 1<br />

✗ Sofwaretechnik, Software Engineering 2<br />

✗ Verteilte Systeme, Online Programmierung, Netzprogrammierung<br />

✗ Grafische Datenverarbeitung, Digital Media Processing


1.2 Security & Safety Engineering Bachelor (SSB)<br />

Die nachfolgenden Module können von den Studentinnen und Studenten dieses Studiengangs<br />

<strong>Wahlpflichtmodule</strong> belegt werden.<br />

✗ Netzwerksicherheit<br />

als


1.3 Information Communication Systems Bachelor<br />

(ICSB)<br />

Die nachfolgenden Module können von den Studentinnen und Studenten dieses Studiengangs<br />

<strong>Wahlpflichtmodule</strong> belegt werden. Die genannten Einschränkungen sind zu beachten.<br />

✗ Computergrafik<br />

✗ Datenbanken (DM) *<br />

✗ Development of Interactive Applications<br />

✗ Digital Media Processing<br />

✗ Grafische Datenverarbeitung<br />

✗ Grafische Datenverarbeitung Workshop<br />

✗ Medienprogrammierung<br />

✗ Verteilte Anwendungen 1 *<br />

✗ Software-Entwicklung *<br />

✗ Algorithmen und Datenstrukturen<br />

✗ Computernetze 1<br />

✗ Computernetze 2<br />

✗ Datenbanken (IN) *<br />

✗ Formale Sprachen<br />

✗ Netzprogrammierung *<br />

✗ Netzwerkmanagement<br />

✗ Netzwerksicherheit<br />

✗ Objektorientierte Programmierung 2<br />

✗ Software Engineering 1 *<br />

✗ Software Engineering 2 *<br />

✗ Software-Architektur<br />

✗ Softwarequalität<br />

✗ Systemsoftware (IN) *<br />

als<br />

*) Veranstaltungen, die nicht miteinan<strong>der</strong> kombiniert werden dürfen:<br />

✗ Datenbanken (DM),<br />

Datenbanken (IN)<br />

✗ Systemsoftware (CEE),<br />

Systemsoftware (IN)<br />

✗ Software-Entwicklung, Software Engineering 1<br />

✗ Sofwaretechnik, Software Engineering 2<br />

✗ Verteilte Systeme, Verteilte Anwendungen 1, Netzprogrammierung<br />

✗ Grafische Datenverarbeitung, Digital Media Processing


1.4 Medieninformatik Bachelor (MIB)<br />

Die nachfolgenden Module können von den Studentinnen und Studenten dieses Studiengangs<br />

<strong>Wahlpflichtmodule</strong> belegt werden. Die genannten Einschränkungen sind zu beachten.<br />

als<br />

✗ Betriebssysteme<br />

✗ Codierungstheorie<br />

✗ IT-Sicherheitskonzepte<br />

✗ Microcomputer<br />

✗ Programmierbare Bausteine<br />

✗ Software für Embedded Systeme<br />

✗ Softwaretechnik *<br />

✗ Systemsoftware (CEE) *<br />

✗ Verteilte Systeme *<br />

✗ Computernetze 1<br />

✗ Computernetze 2<br />

✗ Datenbanken (IN) *<br />

✗ Formale Sprachen<br />

✗ Netzprogrammierung *<br />

✗ Netzwerkmanagement<br />

✗ Netzwerksicherheit<br />

✗ Objektorientierte Programmierung 2<br />

✗ Software Engineering 1 *<br />

✗ Software Engineering 2 *<br />

✗ Software-Architektur<br />

✗ Softwarequalität<br />

✗ Systemsoftware (IN) *<br />

*) Veranstaltungen, die nicht miteinan<strong>der</strong> kombiniert werden dürfen:<br />

✗ Datenbanken (DM),<br />

Datenbanken (IN)<br />

✗ Systemsoftware (CEE),<br />

Systemsoftware (IN)<br />

✗ Software-Entwicklung, Software Engineering 1<br />

✗ Sofwaretechnik, Software Engineering 2<br />

✗ Verteilte Systeme, Verteilte Anwendungen 1, Netzprogrammierung<br />

✗ Grafische Datenverarbeitung, Digital Media Processing


1.6 Allgemeine Informatik Bachelor (AIB)<br />

Die nachfolgenden Module können von den Studentinnen und Studenten dieses Studiengangs<br />

<strong>Wahlpflichtmodule</strong> belegt werden.<br />

als<br />

✗ IT-Sicherheitskonzepte<br />

✗ Microcomputer<br />

✗ Programmierbare Bausteine<br />

✗ Software für Embedded Systeme<br />

✗ Computergrafik<br />

✗ Development of Interactive Applications<br />

✗ Digital Media Processing<br />

✗ Medienprogrammierung


1.7 Computer Networking Bachelor (CNB)<br />

Die nachfolgenden Module können von den Studentinnen und Studenten dieses Studiengangs<br />

<strong>Wahlpflichtmodule</strong> belegt werden.<br />

als<br />

✗ IT-Sicherheitskonzepte<br />

✗ Microcomputer<br />

✗ Programmierbare Bausteine<br />

✗ Software für Embedded Systeme<br />

✗ Computergrafik<br />

✗ Development of Interactive Applications<br />

✗ Digital Media Processing<br />

✗ Medienprogrammierung


Teil 2 Module<br />

Eine Auflistung aller Module mit verschiedenen nützlichen Informationen zu den Modulen.<br />

2.1 Effektive C/C++ Programmierung<br />

2.2 Kodierungstheorie/ Kryptologie<br />

2.3 IT-Sicherheitskonzepte<br />

2.4 Mikrocomputer<br />

2.5 Programmierbare Bausteine<br />

2.6 Embedded Systeme<br />

2.7 Modellierung von Embedded Systeme<br />

2.8 Softwaretechnik<br />

2.9 Systemsoftware (CEE)<br />

2.10 Verteilte Systeme<br />

2.11 Computergrafik<br />

2.12 Datenbanken (DM)<br />

2.13 Development of Interactive Applications<br />

2.14 Digital Media Processing<br />

2.15 Grafische Datenverarbeitung<br />

2.16 Grafische Datenverarbeitung Workshop<br />

2.17 Medienprogrammierung<br />

2.18 Verteilte Anwendungen 1 (neu)<br />

2.19 Software-Entwicklung<br />

2.20 Verteilte Anwendungen 2 (neu)<br />

2.21 Gamedesign (neu)<br />

2.22 Grundlagen <strong>der</strong> Spieleentwicklung 3D (neu)<br />

2.23 Projektmanagement in Software-Projekten (neu)<br />

2.24 Weitverkehrsnetze (neu)<br />

2.25 Netzwerktechnik und Dienste (neu)<br />

2.26 Game Engineering Theorie (neu)<br />

2.27 Max / MSP / Jitter (neu)<br />

2.28 Algorithmen und Datenstrukturen<br />

2.29 Computernetze 1<br />

2.30 Computernetze 2<br />

2.31 Datenbanken (IN)<br />

2.32 Formale Sprachen<br />

2.33 IT-Recht (ab WS 12/13)


2.34 IT-Sicherheit in verteilten Infrastrukturen (ab SS 13)<br />

2.35 Mobile Systeme und Anwendungen (neu)<br />

2.36 Netzprogrammierung<br />

2.37 Netzwerkmanagement<br />

2.38 Netzwerksicherheit<br />

2.39 Objektorientierte Programmierung 2<br />

2.40 Parellele Prozesse (neu)<br />

2.41 Software Engineering 1<br />

2.42 Software Engineering 2<br />

2.43 Software-Architektur<br />

2.44 Softwarequalität<br />

2.45 Systemsoftware (IN)<br />

2.46 Verteilte Infrastrukturen für mobile Systeme (ab WS 12/13)


2.1 Effektive C/C++ Programmierung<br />

Fakultät<br />

Computer and Electrical Engineering<br />

SWS 4<br />

ECTS 5<br />

Arbeitsaufwand 150 Stunden<br />

Präsenzstunden 45 Stunden Vorlesung pro Semester<br />

Turnus<br />

Wintersemester<br />

Dozent<br />

Prof. Dr. Wolfgang Rülling<br />

Sprache<br />

deutsch<br />

Voraussetzungen ‣ Informatik 1<br />

‣ Informatik 2<br />

Lernziele ‣ Tiefgehende Kenntnisse und praktische Fähigkeiten <strong>der</strong> objektorientierten<br />

Programmierung in C++.<br />

‣ Fähigkeit zur Analyse und Programmierung komplexer Software.<br />

Inhalt ‣ Klassenhierarchien in C++<br />

Konstruktoren, Destruktoren<br />

virtuelle Funktionen, abstrakte Klasse n<br />

Mehrfachvererbung, Laufzeit-Typinformationen<br />

‣ Template<br />

‣ C++ Standardbibliothek<br />

Standardcontainer<br />

Algorithmen<br />

Iteratoren<br />

‣ Implementierung von Design Pattern in C++<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis Klausur (1K)<br />

Literatur S. Meyers: Effective C++, Addison-Wesley, 2005<br />

A.Alexandrescu, Mo<strong>der</strong>n C++ Design, Addison-Wesley, 2001<br />

B. Stroustrup, „Die C++ Programmiersprache“, Addison-Wesley, 2000


2.2 Kodierungstheorie/ Kryptologie<br />

Fakultät<br />

Computer and Electrical Engineering<br />

SWS 4<br />

ECTS 6<br />

Arbeitsaufwand Vorlesung: 100 Stunden<br />

Übungen: 80 Stunden<br />

Präsenzstunden 60 Stunden Vorlesung pro Semester<br />

Turnus<br />

Sommersemester<br />

Dozent<br />

Prof. Dr. Neiße<br />

Sprache<br />

deutsch<br />

Voraussetzungen ‣ Mathematikkenntnisse (Abitur)<br />

‣ Grundlagen <strong>der</strong> Programmierung und Informatik<br />

‣ Analysis 1<br />

‣ Algebra 1 + 2<br />

Lernziele ‣ Verständnis für grundlegende Begriffe und Konzepte fehlerkorrigieren<strong>der</strong> Codes und<br />

kryptologischer Tools<br />

‣ Kenntnis mo<strong>der</strong>ner Codes und mo<strong>der</strong>ner kryptologischer Algorithmen (auch Aspekte<br />

<strong>der</strong> effizienten Realisierung)<br />

‣ Einblick in einige typische Anwendungen und <strong>der</strong>en praktischer Umsetzung<br />

Inhalt ‣ Kodierung<br />

Grundlegende Begriffe <strong>der</strong> Codierung<br />

Identifikationscodes in <strong>der</strong> Praxis<br />

Grundlagen <strong>der</strong> Informationstheorie (Entropie, Kanal, Fehlerarten)<br />

Modelle und Methoden <strong>der</strong> Quellencodierung (Verlustfreie und verlustbehaftete<br />

Kompression)<br />

Modelle und Methoden <strong>der</strong> Quellencodierung<br />

Blockcodes wie Hamming, Reed-Solomon, CRC<br />

Faltungscodes<br />

‣ Kryptologie<br />

Grundlegende Fragestellung und Anwendungsbereiche<br />

Zufall und dessen Erzeugung<br />

Verschlüsselung (symmetrisch, asymmetrisch)<br />

Integrität und Authentizität (Hash, digitale Unterschrift)<br />

Kryptoanalyse<br />

Verfahren und Protokolle in <strong>der</strong> Kryptographie<br />

Anwendungsbeispiele<br />

PGP , UMTS , SSL, SET<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis Klausur (1K)<br />

Literatur ‣ W. Dankmeier: Grundkurs Codierung<br />

‣ H. Schnei<strong>der</strong>-Obermann: Kanalcodierung<br />

‣ A. Beutelspacher: Kryptographie in Theorie und Praxis


2.3 IT-Sicherheitskonzepte<br />

Fakultät<br />

Computer and Electrical Engineering<br />

SWS 4<br />

ECTS 6<br />

Arbeitsaufwand 180 Stunden / Semester<br />

Präsenzstunden 45 Stunden / Semester<br />

Turnus<br />

Jedes Semester<br />

Dozent<br />

Prof. Dirk Koschützki<br />

Sprache<br />

deutsch<br />

Voraussetzungen ‣ Informationstechnologie<br />

Lernziele<br />

Im Rahmen <strong>der</strong> Vorlesung lernen die Studierenden, dass die Informationssicherheit<br />

ganzheitlich zu betrachten ist. Nur eine Betrachtung, die von den Geschäftsprozessen über<br />

die verwendeten Anwendungen zur notwendigen Infrastruktur erfolgt, ist<br />

erfolgversprechend. Deshalb werden im Rahmen <strong>der</strong> Vorlesung sowohl die Management-<br />

Aspekte <strong>der</strong> Informationssicherheit als auch das Vorgehensmodell „IT-Grundschutz“ des<br />

Bundesamtes für Sicherheit in <strong>der</strong> Informationstechnik besprochen. Ein Schwerpunkt im<br />

Rahmen <strong>der</strong> Vorlesung ist die Zertifizierung nach ISO-27001, die für viele Unternehmen<br />

bereits ein wichtiges Thema ist bzw. in <strong>der</strong> nahen Zukunft sein wird. Das für das<br />

Verständnis <strong>der</strong> Grundschutzkataloge notwendige Fachwissen wird im Rahmen <strong>der</strong><br />

Veranstaltung mit vermittelt.<br />

Inhalt ‣ Grundlagen <strong>der</strong> Informationssicherheit<br />

‣ Informationssicherheitsmanagementsysteme (ISMS)<br />

‣ Das Grundschutz-Vorgehensmodell nach BSI<br />

‣ Die Grundschutzkataloge des BSI<br />

‣ Die Zertifizierung auf <strong>der</strong> Basis ISO-27001<br />

‣ Wichtige Konzepte <strong>der</strong> Informationssicherheit: (Viren, Trojaner, Würmer und an<strong>der</strong>e<br />

Bedrohungen, Datensicherungen, Firewall)<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis Klausur (1K)<br />

Literatur ‣ Standards 100-X und IT-Grundschutzkataloge, Bundesamt für IT-Sicherheit in <strong>der</strong><br />

Informationstechnik, jeweils in <strong>der</strong> neuesten Version,<br />

‣ ISO-2700X, jeweils in <strong>der</strong> neuesten Version<br />

‣ Kersten, H.; Reuter, J.; Schrö<strong>der</strong>, K.-W.: IT-Sicherheitsmanagement nach ISO 27001<br />

und Grundschutz, Vieweg Verlag, 2007<br />

‣ Kersten, H., Klett, G.: Der IT Security Manager, Vieweg + Teubner, 2008


2.4 Mikrocomputer<br />

Fakultät<br />

Computer and Electrical Engineering<br />

SWS 4<br />

ECTS 6<br />

Arbeitsaufwand 180 Stunden (= 6 ECTS-Leistungspunkte)<br />

davon 90 Stunden für Vorlesung und 90 Stunden für Praktikum<br />

Präsenzstunden 45 Stunden Vorlesung pro Semester<br />

15 Stunden Labor pro Semester<br />

Turnus<br />

Wintersemester<br />

Dozent<br />

Prof. Dr.-Ing. Rainer Müller<br />

Sprache<br />

deutsch<br />

Voraussetzungen ‣ Strukturierte Programmierung<br />

‣ Grundlagen <strong>der</strong> digitalten Schaltlogik<br />

Lernziele<br />

Grundlegende Kenntnisse über den prinzipiellen Aufbau und die Arbeitsweise von<br />

Mikroprozessoren und <strong>der</strong>en Ausbau zum Mikrocomputer/Mikrocontroller mit praktischen<br />

Erfahrungen in Assembler- und Hochsprachenprogrammierung durch begleitendes<br />

Praktikum (Labor).<br />

Inhalt<br />

Vorlesung:<br />

‣ Begriffsbestimmungen,<br />

‣ Allgemeiner Aufbau und Funktionsweise eines Mikrocomputers anhand<br />

verschiedener Prozessoren und Controllern (x86, mc68k, ARM)<br />

‣ Programmieren eines Mikrocontrollers in Assembler- und Hochsprache,<br />

‣ Anschluss und Arbeitsweise von Speicher und Peripherie (parallele und serielle<br />

Schnittstelle, Timer) an 8-, 16- und 32-bit breiten Bussystemen,<br />

‣ Speicherorganisation und Adressplan,<br />

‣ Ausnahmebehandlungen (Exceptions) allgemein<br />

‣ Direct Memory Access<br />

‣ Mehrprozessorsysteme<br />

‣ Exemplarische Prozessoreigenschaften zur Realisierung von Betriebssystemen<br />

(Semaphore, Speicherschutz, Virtualisierung)<br />

Veranstaltungsart<br />

Leistungsnachweis<br />

Literatur<br />

Praktikum:<br />

‣ Programmierung eines Mikrocontrollers in <strong>der</strong> Programmiersprache C anhand des<br />

ARM-Cortex-M3-Prozessors<br />

‣ Typische Aufgaben sind: Tastenerfassung, LED-, Relais- und<br />

Optokoppleransteuerung, Ansteuerung einer LCD-Anzeige, Benutzung von<br />

Interrupts<br />

Vorlesung (Mikrocomputer)<br />

Praktikum (Mikrocomputer Praktikum)<br />

Klausur (1K) (Mikrocomputer)<br />

Laborarbeit (1L) (Mikrocomputer Praktikum)<br />

Vorlesungsskript und die darin enthaltenen Literaturhinweise


2.5 Programmierbare Bausteine<br />

Fakultät<br />

Computer and Electrical Engineering<br />

SWS 4<br />

ECTS 6<br />

Arbeitsaufwand 180 Stunden<br />

Präsenzstunden 45 Stunden pro Semester<br />

Turnus<br />

Sommersemester<br />

Dozent<br />

Prof. Dr. Wolfgang Rülling<br />

Sprache<br />

deutsch<br />

Voraussetzungen ‣ Informatik 1<br />

‣ Informatik 2<br />

‣ Digitaltechnik<br />

Lernziele<br />

Kenntnisse und praktische Fähigkeiten für den Entwurf und den Einsatz von FPGAs (Field<br />

Programmable Gate Arrays). Insbeson<strong>der</strong>e das Entwerfen von Schaltungen mit Hilfe <strong>der</strong><br />

Hardware-Beschreibungssprache VHDL, diese zu simulieren und schließlich ein FPGA<br />

entsprechend <strong>der</strong> Schaltung zu konfigurieren.<br />

Inhalt<br />

Aufbau und Arbeitsweise eines FPGAs<br />

Verhaltens- und Strukturbeschreibungen<br />

Schaltungsbeschreibungen in VHDL<br />

‣ Nebenläufige und sequentielle Programmierung<br />

‣ Datentypen, Funktionen, und Prozeduren inVHDL<br />

‣ Verhaltens- und Strukturbeschreibungen<br />

‣ Kombinatorische Schaltungen in VHDL<br />

‣ Hardwaresynthese für Fallunterscheidungen<br />

‣ Sequentielle Schaltungen in VHDL<br />

‣ Speicherelemente<br />

‣ Finite State Machines<br />

Schaltungssimulation mit VHDL<br />

‣ Testbench<br />

‣ Bedeutung von Sensitivity-Listen und wait-Statements<br />

Hardware-Sharing<br />

Optimierung des Zeitverhaltens einer Schaltung<br />

Probleme <strong>der</strong> Schaltungsverifikation<br />

Veranstaltungsart Vorlesung mit integriertem Labor<br />

Leistungsnachweis Klausur + Laborarbeit (1K+1L)<br />

Literatur G. Lehmann, B. Wun<strong>der</strong>, M. Selz: Schaltungsdesign mit VHDL, Franzis-Verlag, 1989


2.6 Embedded Systems<br />

Fakultät<br />

Computer and Electrical Engineering<br />

SWS 3<br />

ECTS 4<br />

Arbeitsaufwand 120 Stunden (Großteils als Laborarbeit)<br />

Präsenzstunden 40 Stunden pro Semester<br />

Turnus<br />

Sommersemester<br />

Dozent<br />

Prof. Dr. Rainer Müller<br />

Sprache<br />

deutsch<br />

Voraussetzungen Strukturierte und Objektorientierte Programmierung, Arbeitsweise von<br />

Mikroprozessoren, Mikrocomputern und Mikrocontrollern,<br />

(Adressierung, Interrupts), Eigenschaften von Speichermedien<br />

Lernziele<br />

Die Studierenden erhalten einen Einblick in Anfor<strong>der</strong>ungen von<br />

Embedded Systemen, sowie erwerben sie Fähigkeiten Anfor<strong>der</strong>ungen<br />

von Embedded Systemen zu erfassen und umzusetzen. Spezielles<br />

Know-How für die Entwicklung von komplexen Realzeitsystemen wird<br />

vermittelt.<br />

Inhalt ‣ • Anfor<strong>der</strong>ungen an Embedded Systeme<br />

‣ • Hardwarenah programmierte Embedded Systeme<br />

‣ • Programmierung von Embedded Systemen mit einem<br />

‣ Multitaskingbetriebssytem<br />

‣ * Interprozesskommmunikation<br />

‣ • Programmiersprachen für Embedded Systeme<br />

‣ • speziell: Realzeit (geplante und organisierte Zeitvergabe)<br />

‣ • Crossentwicklung<br />

‣ • User Interfaces für Embedded Systeme<br />

‣ • Typische Beispiele (Logging, Watchdog)<br />

‣ Praktische Umsetzung <strong>der</strong> Konzepte auf Modellen in einer Laborarbeit<br />

‣ (z.B. Aufzugs- o<strong>der</strong> Roboteransteuerung<br />

Veranstaltungsart Workshop<br />

Leistungsnachweis Klausur + Laborarbeit (1K+1L)<br />

Literatur


2.7 Modellierung von Embedded Systeme<br />

Fakultät<br />

Computer and Electrical Engineering<br />

SWS 4<br />

ECTS 5<br />

Arbeitsaufwand 150 Stunden (Großteils als Laborarbeit)<br />

Präsenzstunden 45 Stunden pro Semester<br />

Turnus<br />

Sommersemester<br />

Dozent<br />

Prof. Dr. Rainer Müller<br />

Sprache<br />

deutsch<br />

Voraussetzungen Strukturierte und Objektorientierte Programmierung, Arbeitsweise von<br />

Mikroprozessoren, Mikrocomputern und Mikrocontrollen,<br />

(Adressierung, Interrupts), Vorlesungsinhalte „Embedded Systems“<br />

Lernziele<br />

Die Studierenden erhalten einen Überblick und in einigen Punkten<br />

auch Detailkenntnisse im Bereich <strong>der</strong> Modellierung von Embedded<br />

Systems. Spezieller Augenmerk liegt auf Design Pattern für Embedded<br />

Systems und <strong>der</strong>en Auswirkungen, sowie den Einsatz von CASE-Tools<br />

für Model Based Testing<br />

Inhalt ‣ Memory Design Pattern<br />

‣ Concurrency Design Pattern<br />

‣ Modelbased testing<br />

Veranstaltungsart Workshop<br />

Leistungsnachweis Klausur + Laborarbeit (1K+1L)<br />

Literatur


2.8 Softwaretechnik<br />

Fakultät<br />

Computer and Electrical Engineering<br />

SWS<br />

3 (Softwaretechnik)<br />

1 (Softwaretechnik Seminar)<br />

ECTS<br />

3 (Softwaretechnik)<br />

3 (Softwaretechnik Seminar)<br />

Arbeitsaufwand 180 Stunden<br />

davon 90 Stunden Vorlesung und 90 Stunden Seminar<br />

Präsenzstunden 45 Stunden Vorlesung pro Semester<br />

15 Stunden Seminar pro Semester<br />

Turnus<br />

Wintersemester<br />

Dozent<br />

Prof. Dr. Rainer Müller<br />

Sprache<br />

deutsch<br />

Voraussetzungen ‣ Grundfertigkeiten in strukturierter und objektorientierter Programmierung<br />

‣ Erstellung einer technischen Dokumentation<br />

Lernziele<br />

Die Studierenden erwerben Kenntnisse über aktuelle Vorgehensweisen in <strong>der</strong><br />

Softwareentwicklung. Im praxisorientierten Seminarteil werden Fertigkeiten in <strong>der</strong><br />

planmäßigen Bearbeitung von Softwareprojekten in unbekanntem Umfeld erworben. Die<br />

Kenntnisse in <strong>der</strong> Anfertigung einer Dokumentation aus dem Projektseminar werden<br />

vertieft.<br />

Inhalt<br />

Vorlesung:<br />

Vorgehensmodelle<br />

‣ Wasserfallmodell<br />

‣ Spiralmodell<br />

‣ V-Modell<br />

Analyse- und Designmethoden<br />

‣ UML (Klassendiagramm, Use Cases, Szenarios, Sequenzdiagramm)<br />

‣ Petri-Netze<br />

‣ Structured Anaysis<br />

‣ Beispiele<br />

Ansätze zu Softwarequalität (ISO 9000ff, CMM)<br />

Softwaredokumentation<br />

Softwaretest<br />

+ Begleitende Übungen zur Vorlesung<br />

Seminar:<br />

Ein aktuelles Thema aus einem <strong>der</strong> Bereiche<br />

‣ Analyse und Design einer Softwareanwendung<br />

‣ Implementierung einer Softwareanwendung<br />

‣ Werkzeuge im Bereich des Softwareengineerings<br />

ist in einer Zweiergruppe zu bearbeiten.<br />

Veranstaltungsart Vorlesung (Softwaretechnik)<br />

Seminar (Softwaretechnik Seminar)<br />

Leistungsnachweis Klausur (1K) (Softwaretechnik)<br />

Laborarbeit (1L) (Softwaretechnik Seminar)<br />

Literatur ‣ Forbig, Kerner: Lehr- und Übungsbuch Softwareentwicklung, Fachbuchverlag<br />

Leipzig, 2004


2.9 Systemsoftware (CEE)<br />

Fakultät<br />

Computer and Electrical Engineering<br />

SWS 4<br />

ECTS 6<br />

Arbeitsaufwand 180 Stunden<br />

Präsenzstunden 60 Stunden pro Semester<br />

Turnus<br />

Sommersemester<br />

Dozent<br />

N.N.<br />

Sprache<br />

deutsch<br />

Voraussetzungen ‣ Informatik 1,2<br />

‣ Effektive C/C++ Programmierung,<br />

‣ Software -Technik, Embedded Systems<br />

Lernziele<br />

Die Studierenden erwerben fundierte Kenntnisse über die Konzepte Prozess und Thread und<br />

die dazugehörigen Synchronisationsprinzipien und Kommunikationsmechanismen.<br />

Zusätzlich vertiefen die Studierenden die in den vorigen Semestern gewonnenen Erfahrungen<br />

in <strong>der</strong> Programmierung anhand von Beispielen aus dem Bereich Ein-/Ausgabe auf UNIXartigen<br />

Betriebssystemen.<br />

Inhalt ‣ EA-Funktionen (C-Lib, Kernel-basiert, Multiplexing)<br />

‣ Konzept Prozess und Thread<br />

‣ Prozesserzeugung/- beendigung<br />

‣ POSIX-Threads<br />

‣ Synchronisationskonzepte (Deadlocks, Semaphore, Rendezvous)<br />

‣ Interprozesskommunikation (Pipes, Message Queues, Shared Memory)<br />

Veranstaltungsart Vorlesung+Praktikum<br />

Leistungsnachweis Klausur + Laborarbeit (1K+1L)<br />

Literatur ‣ E. Glatz: “Betriebssysteme”, dpunkt. Verlag, 2006.<br />

‣ J. Wolf: „Linux-UNIX-Programmierung“, Galileo Computing, 2009.<br />

‣ H. Herold: "Linux/Unix Systemprogrammierung", 3. Auflage, Addison-Wesley 2004<br />

‣ S. Tanenbaum: „Mo<strong>der</strong>ne Betriebssysteme“ , 2. Auflage, Pearson-Studium, 2003<br />

‣ K.A. Robbins, S. Robbins: „UNIX Systems Programming“ Pearson Education, 2003


2.10 Verteilte Systeme<br />

Fakultät<br />

Computer and Electrical Engineering<br />

SWS 4<br />

ECTS 6<br />

Arbeitsaufwand 180 Stunden<br />

Präsenzstunden 60 Stunden pro Semester<br />

Turnus<br />

Sommersemester<br />

Dozent<br />

N.N.<br />

Sprache<br />

deutsch<br />

Voraussetzungen ‣ Informatik 1,2<br />

‣ Effektive C/C++ Programmierung<br />

‣ Systemsoftware, Software-Technik<br />

Lernziele<br />

Die Studierenden erwerben grundlegende Kenntnisse zum Einsatz verschiedener<br />

Middleware-Technologien. Diese Kenntnisse werden in einem praktischen, die Vorlesung<br />

begleitenden Teil, vertieft. Zusätzlich werden Methoden zum Entwurf und zur<br />

Beschreibung Verteilter Systeme vermittelt.<br />

Inhalt ‣ Grundlagen <strong>der</strong> Kommunikation über TCP/IP, UDP/IP<br />

‣ Verteilte Systeme vs. Verteilte Anwendungen<br />

‣ Middleware-Technologien (RCP, RMI, JMS, CORBA, Webservices)<br />

‣ Entwurfsmethoden für Verteilte Systeme<br />

‣ Programmiersprachen für Verteilte Systeme (z.B. Erlang)<br />

Veranstaltungsart Vorlesung+Praktikum<br />

Leistungsnachweis Klausur + Laborarbeit (1 K + 1 L)<br />

Literatur ‣ U. Hammerschall: Verteilte Systeme und Anwendungen, Pearson Studium, 2005<br />

‣ G. Bengel: Grundkurs Verteilte Systeme\, Vieweg-Verlag, 3. Auflage, 2004<br />

‣ T. Peschel-Findeisen: Nebenläufige und Verteilte Systeme, mitp-Verlag, 2006<br />

‣ G. Coulouris, J. Dollimore und T. Kindberg: Verteilte Systeme: Konzepte und<br />

Design, Pearson Studium, 2002<br />

‣ A. S. Tannenbaum und M. van Steen: Verteilte Systeme: Grundlagen und<br />

Paradigment\, Pearson Studium, 2003<br />

‣ J. Armstrong: „Programming Erlang, Software for a Concurrent World”, Pragmatic<br />

Bookshelf, 2007.


2.11 Computergrafik<br />

Dieses Modul besteht aus zwei Einzelveranstaltungen, die nacheinan<strong>der</strong> aufgeführt sind: einer Vorlesung und<br />

einem Praktikum.<br />

Computergrafik Vorlesung<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 2<br />

Dozent<br />

Prof. Christoph Müller<br />

Informatik-ECTS 2<br />

Voraussetzungen Keine<br />

Lernziele<br />

Ziel <strong>der</strong> Veranstaltung ist die Einführung in die wichtigsten theoretischen Grundlagen <strong>der</strong><br />

Computergrafik, sowie das Schaffen eines fundierten Basiswissens im Bereich 3D-<br />

Modellierung. Studierende sollen in <strong>der</strong> Lage sein, Aufgabenstellungen wie z.B. das<br />

Erstellen von Grafiken und Animationen für Illustrationen und technische<br />

Dokumentationen selbständig zu erfassen, aus den zur Verfügung stehenden Werkzeugen<br />

und Methoden die geeignetsten auszuwählen und auf Grund des vermittelten<br />

Hintergrundwissens zur effizienten Lösungsfindung anzuwenden.<br />

Inhalt<br />

Die Veranstaltung ist eng gekoppelt mit dem Praktikum Computergrafik – in <strong>der</strong> Regel<br />

werden in <strong>der</strong> Vorlesung die theoretischen Grundlagen und technischen Hintergründe für<br />

die darauffolgende Praktikumsveranstaltung vorgestellt, daher sind auch Vorlesung und<br />

Praktikum jeweils am selben Tag hintereinan<strong>der</strong> im Stundenplan angeordnet. Für die<br />

Übungen im Praktikum kommt <strong>der</strong>zeit die Software „Cinema4D“ zum Einsatz, die auch<br />

zur Illustration und Veranschaulichung in <strong>der</strong> Vorlesung eingesetzt wird.<br />

Das in <strong>der</strong> Vorlesung vermittelte Wissen ist aber nicht auf ein bestimmtes Software-Paket<br />

beschränkt. Das in <strong>der</strong> Vorlesung Erlernte wird gegen Ende des Semesters in einer<br />

benoteten Klausur abgeprüft.<br />

Ø Grundlagen, Pixelgrafik, Vektorgrafik<br />

Ø Modellierung<br />

- 3D-Objekte<br />

- Koordinatensysteme<br />

- Objekt-Hierarchien<br />

- Transformationen<br />

- Selektion<br />

- Polygonmodellierung<br />

- Splines und NURBS<br />

- Subdivision Surfaces<br />

- Deformation<br />

Ø Shading<br />

- Farbe & Beleuchtung<br />

- Material und<br />

o Material und Texturen


o Texture-Mapping Hintergrund<br />

- Prozedurale Texturen<br />

- UV-Mapping<br />

o Standard-Mapping<br />

o UV-Unwrapping<br />

Ø Animation<br />

- Keyframe Animation<br />

- Path Animation<br />

- Ton-Synchronisierung<br />

- Shape Animation<br />

- Skeletal Animation<br />

- Forward-Kinematik/Inverse Kinematik/Rigging<br />

- Partikel-Animation<br />

Ø Ren<strong>der</strong>ing-Verfahren<br />

- Polygon-Ren<strong>der</strong>ing<br />

- Raytracing<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis Klausur (1K als Prüfungsleistung)<br />

Literatur ‣ Computer Graphics, Principles and Practice .James D. Foley, Andries van<br />

Dam, Steven K. Feiner, John F. Hughes, Addison-Wesley, Reading 1990<br />

ECTS- Berechnung ‣ 15h Präsenz<br />

‣ 16h Vor- und Nachbereitung, Literaturstudium<br />

‣ 20h Praktisches Nachvollziehen des Gelernten am Rechner<br />

‣ 1,5h Klausur<br />

‣ 7,5h Klausurvorbereitung, Klausureinsicht<br />

Computergrafik Praktikum<br />

Fakultät<br />

Digitale Medien<br />

SWS 1<br />

ECTS 1<br />

Dozent<br />

Prof. Christoph Müller<br />

Informatik-ECTS 1<br />

Voraussetzungen Keine<br />

Lernziele<br />

Das Praktikum Computergrafik vermittelt die in <strong>der</strong> Vorlesung Computergrafik<br />

dargestellten Sachverhalte und Herangehensweisen. Mit Hilfe <strong>der</strong> 3D-<br />

Modellierungssoftware Cinema4D sollen Studierende eine Einführung in die<br />

unterschiedlichen Werkzeuge und Methoden zur Erstellung von 3D-Illustrationen und<br />

Animationen für Print, Film und interaktive Applikationen (Games) erlernen. Die<br />

Praktikumsgruppen finden jeweils im Anschluss an die Vorlesung statt und sind inhaltlich<br />

eng an die Vorlesung gekoppelt. Gerade zu Beginn wird in den Praktikumsterminen direkt<br />

Bezug auf das zuvor in <strong>der</strong> Vorlesung Vermittelte genommen.<br />

In <strong>der</strong> ersten Semester-Hälfte werden die Teilnehmer/innen anhand von schrittweisen<br />

Übungen an die Bedienung <strong>der</strong> komplexen Software-Werkzeuge herangeführt. Ab etwa<br />

<strong>der</strong> Hälfte des Semesters werden mehrere komplexere Übungsaufgaben im Bereich


Inhalt<br />

Veranstaltungsart<br />

Leistungsnachweis<br />

Literatur<br />

ECTS-Berechnung<br />

Animation angeboten, die dann in Kleingruppen über die zweite Semester-Hälfte hinweg<br />

unter Anleitung bearbeitet werden sollen. Die dabei entstehenden Animationen sind die<br />

Grundlage für die Testierung <strong>der</strong> Teilnahme.<br />

Ø Modellierung<br />

- Grundobjekte/Primitive, rotieren, skalieren, verschieben<br />

- Objekt-Hierarchien<br />

- Polygon-Modellierung<br />

- Rotationssymmetrie, Extrudierung<br />

- Box-Modelling, Subdivision Surfaces<br />

- Polygonmodellierung<br />

Ø Shading<br />

- Material und Licht<br />

- Texturierung und Sha<strong>der</strong><br />

- UV-Mapping<br />

o Standard-Mapping<br />

o UV-Unwrapping<br />

Ø Animation<br />

- Keyframe Animation<br />

– Path Animation<br />

Praktikum<br />

Praktische Arbeit (1A als Studienleistung)<br />

Ø Cinema4D.– video2brain Online Tutorials, Addison Wesley<br />

Ø Cinema4D-Handbuch & Begleit- CDs<br />

Ø 7,5h Präsenz<br />

Ø 7,5h Vor- und Nachbereitung<br />

Ø 15h Selbständige Arbeit in Projekt-Kleingruppe


2.12 Datenbanken (DM)<br />

Dieses Modul besteht aus zwei Einzelveranstaltungen, die nacheinan<strong>der</strong> aufgeführt sind: einer Vorlesung und<br />

einem Praktikum.<br />

Datenbanken, Vorlesung<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Wolfgang Taube<br />

Informatik-ECTS 3<br />

Voraussetzungen ‣ grundlegende Programmierkenntnisse in Java<br />

‣ Modul Programmierung (im Grundstudium)<br />

Lernziele<br />

Die TeilnehmerInnen sollen<br />

‣ komplexe Abfragen für strukturierte und unstrukturierte Datenbestände formulieren<br />

können,<br />

‣ aus fachlichen Anfor<strong>der</strong>ungen flexible Datenbasen strukturieren können,<br />

‣ datenintensive interaktive Anwendungen implementieren können, funktionale<br />

Aufteilungen<br />

Inhalt ‣ DBMS<br />

‣ SQL2003<br />

‣ Objekt-Relationale Datenbanken<br />

‣ Datenmodellierung (ER, UML-Klassendiagramme)<br />

‣ Transaktionen, Stored Procedures<br />

‣ DB-Anwendungsentwicklung<br />

‣ Programmierumgebungen (JDBC)<br />

‣ XML / XQuery<br />

‣ Datenstrukturierungs-Paradigma<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis 1 Klausur (1K als Prüfungsleistung)<br />

Literatur ‣ Datenbanken kompakt. Andreas Heuer, Gunter Saake, Kai-Uwe Sattler: Bonn: MITP,<br />

2. Auflage 2003, 19.95<br />

‣ Datenbanken: Konzepte und Sprachen. Andreas Heuer, Gunter Saake: Bonn: MITP, 2.<br />

Auflage 2000 (2 Bände)<br />

‣ Querying XML. XQuery, XPath, and SQLXML in context. Melton, Jim; Buxton,<br />

Stephen (2006): Amsterdam: Elsevier/ Morgan Kaufmann<br />

‣ MySQL 5. Michael Kofler: Addison-Wesley, 3. Auflage, 2005<br />

Ergänzend/vertiefend:<br />

‣ Einführung in den Sprachkern von SQL-99. Wolfgang Panny, Alfred Taudes:<br />

Heidelberg: Springer, 2000<br />

‣ An Introduction to Database Systems. Christopher Date, Reading: Addison-Wesley, 8th<br />

edition 2003 (Englisches Grundlagenwerk)<br />

ECTS-Berechnung ‣ 22,5h Präsenzveranstaltung<br />

‣ 17,5h Klausurvorbereitung<br />

‣ 50,0h Vor- und Nachbereitung


Datenbanken, Praktikum<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

SWSD 4<br />

Dozent<br />

Prof. Dr. Wolfgang Taube<br />

Informatik-ECTS 3<br />

Voraussetzungen siehe Veranstaltungsbeschreibung<br />

Lernziele<br />

siehe Veranstaltungsbeschreibung<br />

Inhalt<br />

Anwendung und Vertiefung <strong>der</strong> in <strong>der</strong> Vorlesung Datenbanken behandelten Inhalte.<br />

Entwicklung von kleinen DB-Anwendungen.<br />

Veranstaltungsart Praktikum<br />

Leistungsnachweis Übung (1Ü als Studienleistung)<br />

Literatur<br />

siehe Veranstaltungsbeschreibung<br />

ECTS-Berechnung ‣ 22,5h Präsenzveranstaltung<br />

‣ 67,5h Bearbeitung von Übungsaufgaben


2.13 Development of Interactive Applications (Modul)<br />

Dieses Modul besteht aus zwei Einzelveranstaltungen, die nacheinan<strong>der</strong> aufgeführt sind. Beachten Sie bitte, dass<br />

beide Veranstaltungen auf Englisch gehalten werden und dass <strong>der</strong> Modul lei<strong>der</strong> nicht in jedem Semester<br />

stattfindet.<br />

Ambient Intelligence (Veranstaltung)<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent Prof. Dr. Dirk Eisenbiegler<br />

Informatik-ECTS 3<br />

Voraussetzungen Ø Grundlagen <strong>der</strong> Informatik<br />

Ø Datenbanktheorie<br />

Ø Grundlagen <strong>der</strong> Mathematischen Logik<br />

Ø Webtechnologien, u.a. XML<br />

Lernziele<br />

Unter Ambient Intelligence versteht man nun die Fähigkeit des Systems, ein Verständnis für<br />

die jeweilige Situation des Benutzers zu entwickeln und sich diesem Kontext anzupassen,<br />

sowie selbstständig und vorausschauend auf Aktionen des Benutzers zu reagieren. In dieser<br />

Veranstaltung werden die technologischen Grundlagen und Anwendungsfel<strong>der</strong> vorgestellt.<br />

Inhalt<br />

- Motivation und Grundlagen<br />

- Technologische Grundlagen<br />

- Ubiquitous Computing und Pervasive Computing<br />

- Anwendungsfel<strong>der</strong> des Ambient Intelligence - Ökonomische Aspekte des Ambient<br />

Intelligence<br />

- Smart Products und Smart Services<br />

Veranstaltungsart Seminar<br />

Leistungsnachweis Modulprüfung<br />

Literatur<br />

Ø The New Everyday View on Ambient Intelligence. Stefano Marzano, Emile Aarts,<br />

Uitgeverij 010 Publishers, Febr. 2003.<br />

Ø Ambient Intelligence - from vision to reality. IST Advisory Group, Draft consolidated<br />

report, September 2003.<br />

Ø Das Internet <strong>der</strong> Dinge - Ubiquitous Computing und RFID in <strong>der</strong> Praxis. Fleisch, E.;<br />

Mattern, F. (Hrsg.), Springer, 2005.<br />

Ø Ubiquitous Computing aus betriebswirtschaftlicher Sicht. Fleisch, E.; Dierkes, M., In:<br />

Wirtschaftsinformatik 45 (2003), 6, pp. 611-620. - Mattern, F. (Hrsg.): Total vernetzt,<br />

Springer, 2003.<br />

ECTS-Berechnung Ø 22,5h Präsenzveranstaltung<br />

Ø 27,5h Vor-/Nachbereitung <strong>der</strong> Veranstaltung<br />

Ø 20,0h Lösen von Übungsblättern<br />

Ø 20,0h Klausurvorbereitungen


Mobile and Interactive Applications (Veranstaltung)<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Dirk Eisenbiegler<br />

Informatik-ECTS 3<br />

Voraussetzungen ‣ Grundlagen <strong>der</strong> objektorientierten Programmierung<br />

‣ Kenntnisse <strong>der</strong> Programmierung von Client-Server-Anwendungen<br />

Lernziele<br />

Zahlreiche IT-Anwendungen werden heute in Form von Web-Anwendungen konstruiert.<br />

Das Wissen über die Programmierung von Web-basierten Anwendungen ist heute weit<br />

verbreitet. Allerdings haben klassische Web-Anwendungen Beschränkungen hinsichtlicher<br />

<strong>der</strong> Interaktivität (Mensch-Maschine-Schnittstelle), die man bei <strong>der</strong> klassischen GUI- bzw.<br />

Event-basierten Programmierung nicht kennt. Mit zunehmen<strong>der</strong> Rechenleistung und<br />

Netzwerkbandbreiten ist man nicht mehr auf simple Web-Anwendungen angewiesen.<br />

Ereignisorientierte, interaktive Ansätze gewinnen an Bedeutung. Stichworte: Push-<br />

Dienste, Rich Clients.<br />

Die Vorlesung möchte deshalb in die ereignisbasierte Programmierung und in die<br />

Programmierung von Graphischen Benutzerschnittstellen (GUI-Pgorammierung)<br />

einführen.<br />

Ein zweiter Fokus <strong>der</strong> Vorlesung ist die Programmierung mobiler Endgeräte. Ganz<br />

allgemein soll in den Begriff Embedded Systems eingeführt werden und es soll den<br />

Studenten vermittelt werden, welche Beson<strong>der</strong>heiten hier bei <strong>der</strong> Programmierung zu<br />

beachten sind.<br />

Inhalt ‣ Grundkonzepte ereignisorientierter Programmierung: Ereignisse, Listener, Beans<br />

‣ Programmierung graphischer Benutzerschnittstellen: Widgets, Container, Layout-<br />

Manager, Fenster<br />

‣ Embedded Systems - Grundlagen und Überblick<br />

‣ Objektorientierte Programmierung von Embedded Systems mit J2ME und speziell mit<br />

MIDP-Systemen ("Handy-Programmierung")<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis Klausur (1 MK als Prüfungsleistung)<br />

Literatur ‣ Thinking in Java. Eckel, Bruce<br />

‣ Technische Dokumentation zu Java ME von Sun Microsystems<br />

ECTS-Berechnung ‣ 22,5h Präsenzveranstaltung<br />

‣ 27,5h Vor-/Nachbereitung <strong>der</strong> Veranstaltung<br />

‣ 20,0h Lösen von Übungsblättern<br />

‣ 20,0h Klausurvorbereitungen


2.14 Digital Media Processing<br />

Dieses Modul besteht aus drei Einzelveranstaltungen, die nacheinan<strong>der</strong> aufgeführt sind.<br />

Digitale AV-Technik, Vorlesung<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 2<br />

Dozent<br />

Prof. Nikolaus Hottong; Prof. Dr. Miguel Garica<br />

Informatik-ECTS keine<br />

Voraussetzungen Erfolgreiche Teilnahme an den Modulen Medientechnik und Medienproduktion o<strong>der</strong><br />

gleichwertigen Modulen.<br />

Lernziele<br />

Es wird ein fundiertes Wissen über die Grundlagen, Methoden und Technologien <strong>der</strong><br />

Digitalen AV-Technik, insbeson<strong>der</strong>e <strong>der</strong> Codectechnologien erworben.<br />

Inhalt<br />

Themen dieser Veranstaltung:<br />

‣ Natives Digital Video, Digitale Komponentensignale<br />

‣ Prinzipien <strong>der</strong> digitalen Signalverarbeitung<br />

‣ Encodingtechnologien Audio inkl. reale Implementierungen<br />

‣ Encodingtechnologien Video inkl. reale Implementierungen<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis Modulprüfung<br />

Literatur ‣ Digital Video and HDTV. Charles Poynton, Morgan Kaufmann Publishers, 2003,<br />

ISBN 1-55860-792-7, zusätzlich: www.poynton.com<br />

‣ MPEG Handbook. J. Watkinson, Focal Press, ISBN: 0240516567<br />

‣ Datenformate im Medienbereich. Heyna, Briede, Schmidt, Fachbuchverlag Leipzig<br />

ISBN 3-446-22542-0<br />

‣ Fernsehtechnik. R. Mäusl, Hüthig, ISBN: 3778528572<br />

‣ Digital video broadcasting (DVB). Reimers, Ulrich, Springer, ISBN 3-540-60946-6<br />

ECTS-Berechnung ‣ 7,5h Veranstaltungsvorbereitung<br />

‣ 22,5h Präsenzveranstaltung<br />

‣ 15h Veranstaltungsnachbereitung<br />

‣ 16h Prüfungsvorbereitung<br />

Grafische Datenverarbeitung, Seminar<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Michael Waldowski<br />

Informatik-ECTS 3<br />

Voraussetzungen Vorausgesetzt wird das Wissen, welches <strong>der</strong> Studierende in folgenden<br />

Lehrveranstaltungen und Modulen erworben hat:<br />

‣ Mathematik in Medien und Informatik 1 des Moduls Grundlagen 1<br />

‣ Mathematik in Medien und Informatik 2 des Moduls Grundlagen 2


‣ Physik in Medien und Informatik des Moduls Grundlagen 2<br />

Lernziele<br />

Die Studierenden kennen und verstehen die Grundlagen <strong>der</strong> Verarbeitung grafischer Daten<br />

im Orts- und Ortsfrequenzbereich sowie <strong>der</strong>en Anwendungsgebiete. Dieses Ziel soll<br />

insbeson<strong>der</strong>e dadurch erreicht werden, dass relevante Konzepte und Methoden <strong>der</strong><br />

Programmierung anhand von Beispielprogrammen erläutert, sowie durch interaktive<br />

Programmierung in Matlab während <strong>der</strong> Vorlesung veranschaulicht werden.<br />

Die Studierenden sollen im Vorlesungsteil des Seminars in die Lage versetzt werden, sich<br />

selbstständig in ein Spezialgebiet einzuarbeiten und im Seminar darüber vorzutragen.<br />

Inhalt ‣ Anwendungsbereiche <strong>der</strong> GDV<br />

‣ Grundlagen <strong>der</strong> Bildverarbeitung<br />

‣ Visuelle Wahrnehmung<br />

‣ Bildstatistiken<br />

‣ Huffmancodierung<br />

‣ Filter<br />

‣ Wavelets<br />

‣ Fouriertransformation<br />

Veranstaltungsart Seminar<br />

Leistungsnachweis Praktische Arbeit (1A als Prüfungsleistung)<br />

Literatur ‣ Digital Image Processing using Matlab. R.C. Gonzales et al., Prentice Hall, 2004<br />

‣ Digital Image Processing. R. C. Gonzales, R. E. Woods, Prentice Hall, 2nd ed., 2002<br />

‣ Computer Graphics, J. D. Foley et. al., Addison -Wesley, 2nd ed., 1990<br />

‣ Digital Image Processing. W. K. Pratt, John Wiley & Sons, 3rd ed., 2001<br />

‣ Digitale Bildverarbeitung. P. Haberäcker, Hanser, 4. Auflage, 1991<br />

‣ Wavelets and Filter Banks. G. Strang and T. Nguyen, Wellesley-Cambridge Press,<br />

Revised ed., 1997<br />

‣ Die neue Holographie-Fibel. P. Heiß, Wittig Fachbuch, 4. Auflage, 1995<br />

‣ Synthetische Holografie. D. Schreier, VEB Fachbuchverlag Leipzig, 1984. The<br />

MathWorks. Matlab-Handbuch, Inc. 2004<br />

ECTS-Berechnung ‣ 22,5h Betreutes Lernen im Seminar<br />

‣ 37,5h Vor -und Nachbereitung des Seminars inkl. Referat<br />

‣ 12,0h zusätzliche Ausarbeitungszeit in <strong>der</strong> Prüfungszeit<br />

‣ 18,0h Literaturstudium gemäß freier Zeiteinteilung, z.B. in den Semesterferien<br />

Grafische Datenverarbeitung, Übungen<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 2<br />

Dozent<br />

Prof. Dr. Michael Waldowski<br />

Informatik-ECTS 2<br />

Voraussetzungen Vorausgesetzt wird das Wissen, welches die Studierenden in folgenden<br />

Lehrveranstaltungen und Modulen erworben hat:<br />

‣ Mathematik in Medien und Informatik 1 des Moduls Grundlagen 1<br />

‣ Mathematik in Medien und Informatik 2 des Moduls Grundlagen 2<br />

‣ Physik in Medien und Informatik des Moduls Grundlagen 2<br />

‣ Seminar Grafische Datenverarbeitung dieses Moduls<br />

Lernziele<br />

Ziel <strong>der</strong> Übungen ist es, das im Seminar Grafische Datenverarbeitung gelernte anhand von<br />

Programmieraufgaben in Matlab einzuüben.<br />

Inhalt<br />

Die Übungen werden unter Verwendung von Matlab - ergänzt um die Image Processing<br />

Toolbox - durchgeführt.


Ausgewählte Übungsthemen sind:<br />

‣ Stereobildverarbeitung<br />

‣ Affine Transformationen<br />

‣ Wavelettransformation<br />

‣ Filtern im Ortsfrequenzbereich<br />

Veranstaltungsart Übung<br />

Leistungsnachweis Praktische Arbeit (1A als Studienleistung)<br />

Literatur ‣ Digital Image Processing using Matlab. R.C. Gonzales et al., Prentice Hall, 2004<br />

‣ The MathWorks. Matlab-Handbuch, Inc., 2004<br />

ECTS-Berechnung ‣ 22,5h Betreutes Lernen<br />

‣ 17,5h Programmieren außerhalb <strong>der</strong> betreuten Übung<br />

‣ 8,0h Literaturstudium in <strong>der</strong> Prüfungszeit<br />

‣ 12,0h Literaturstudium gemäß freier Zeiteinteilung, z.B. in den Semesterferien


2.15 Grafische Datenverarbeitung (alternativ zu Digital Media<br />

Processing)<br />

Dieses Modul besteht aus zwei Einzelveranstaltungen, die nacheinan<strong>der</strong> aufgeführt sind: einer Vorlesung und<br />

einem Praktikum.<br />

Grafische Datenverarbeitung, Vorlesung<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Michael Waldowski<br />

Informatik-ECTS 3<br />

Voraussetzungen Vorausgesetzt wird das Wissen, welches <strong>der</strong> Studierende in folgenden<br />

Lehrveranstaltungen und Modulen erworben hat:<br />

‣ Mathematik in Medien und Informatik 1 des Moduls Grundlagen 1<br />

‣ Mathematik in Medien und Informatik 2 des Moduls Grundlagen 2<br />

‣ Physik in Medien und Informatik des Moduls Grundlagen 2<br />

Lernziele<br />

Die Studierenden kennen und verstehen die Grundlagen <strong>der</strong> Verarbeitung grafischer Daten<br />

im Orts- und Ortsfrequenzbereich sowie <strong>der</strong>en Anwendungsgebiete. Dieses Ziel soll<br />

insbeson<strong>der</strong>e dadurch erreicht werden, dass relevante Konzepte und Methoden <strong>der</strong><br />

Programmierung anhand von Beispielprogrammen erläutert, sowie durch interaktive<br />

Programmierung in Matlab während <strong>der</strong> Vorlesung veranschaulicht werden.<br />

Inhalt ‣ Anwendungsbereiche <strong>der</strong> GDV<br />

‣ Grundlagen <strong>der</strong> Bildverarbeitung<br />

‣ Visuelle Wahrnehmung<br />

‣ Bildstatistiken<br />

‣ Huffmancodierung<br />

‣ Hauptachsentransformation<br />

‣ Filter<br />

‣ Wavelets<br />

‣ Fouriertransformation<br />

‣ Kosinustransformation<br />

‣ Bilddatenkompression<br />

‣ Holografie<br />

‣ Digitale Bildverarbeitung mit Matlab<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis Klausur (1K als Prüfungsleistung)<br />

Literatur ‣ Digital Image Processing using Matlab, R.C. Gonzales et al.: Prentice Hall, 2004<br />

‣ Digital Image Processing, R. C. Gonzales, R. E. Woods: Prentice Hall, 2nd ed., 2002<br />

‣ Computer Graphics, J. D. Foley et. al.: Addison -Wesley, 2nd ed., 1990<br />

‣ Digital Image Processing, W. K. Pratt: John Wiley & Sons, 3rd ed., 2001<br />

‣ Digitale Bildverarbeitung, P. Haberäcker: Hanser, 4. Auflage, 1991<br />

‣ Wavelets and Filter Banks, G. Strang and T. Nguyen: Wellesley-Cambridge Press,<br />

Revised ed., 1997


‣ Die neue Holographie-Fibel, P. Heiß: Wittig Fachbuch, 4. Auflage, 1995<br />

‣ Synthetische Holografie, D. Schreier:, VEB Fachbuchverlag Leipzig, 1984<br />

‣ The MathWorks, Matlab-Handbuch, Inc., 2004<br />

ECTS-Berechnung ‣ 45h Betreutes Lernen<br />

‣ 15h Vor-und Nachbereitung <strong>der</strong> Vorlesung<br />

‣ 12h Klausurvorbereitung<br />

‣ 18h Literaturstudium gemäß freier Zeiteinteilung, z.B. in den Semesterferien<br />

Grafische Datenverarbeitung, Übung<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Michael Waldowski<br />

Informatik-ECTS 3<br />

Voraussetzungen Vorausgesetzt wird das Wissen, welches <strong>der</strong> Studierende in folgenden<br />

Lehrveranstaltungen und Modulen erworben hat:<br />

‣ Mathematik in Medien und Informatik 1 des Moduls Grundlagen 1<br />

‣ Mathematik in Medien und Informatik 2 des Moduls Grundlagen 2<br />

‣ Physik in Medien und Informatik des Moduls Grundlagen 2<br />

‣ Vorlesung Grafische Datenverarbeitung dieses Moduls<br />

Lernziele<br />

Ziel <strong>der</strong> Übungen ist es, die in <strong>der</strong> Vorlesung Grafische Datenverarbeitung dargestellten<br />

relevanten Konzepte und Methoden <strong>der</strong> Programmierung anhand von<br />

Programmieraufgaben einzuüben. Dazu gehören insbeson<strong>der</strong>e:<br />

‣ Effiziente Algorithmen für die Verarbeitung <strong>der</strong> Datenstruktur 'multidimensionaler<br />

Array'<br />

‣ Syntaxelemente für eine massiv parallele Datenverarbeitung<br />

Inhalt<br />

Die Übungen werden unter Verwendung von Matlab - ergänzt um die Image Processing<br />

Toolbox - durchgeführt. Die Übungsaufgaben orientieren sich am Vorlesungsstoff und<br />

dienen auf diese Weise <strong>der</strong> Nachbereitung <strong>der</strong> Vorlesungsinhalte und <strong>der</strong> Vorbereitung auf<br />

die Klausur. Ausgewählte Übungsthemen sind:<br />

‣ Stereobildverarbeitung<br />

‣ affine Transformationen<br />

‣ Wavelettransformation<br />

‣ Filtern im Ortsfrequenzbereich<br />

Veranstaltungsart Übung<br />

Leistungsnachweis Praktische Arbeit (1A als Studienleistung)<br />

Literatur ‣ Digital Image Processing using Matlab, R.C. Gonzales et al.: Prentice Hall, 2004<br />

‣ The MathWorks, Matlab-Handbuch, Inc., 2004<br />

ECTS-Berechnung ‣ 22,5h Betreutes Lernen<br />

‣ 37,5h Programmieren außerhalb <strong>der</strong> betreuten Übung<br />

‣ 12,0h Zusätzliche Übungszeit in <strong>der</strong> Prüfungszeit<br />

‣ 18,0h Literaturstudium gemäß freier Zeiteinteilung, z.B. in den Semesterferien---


2.16 Grafische Datenverarbeitung Workshop<br />

Fakultät<br />

Digitale Medien<br />

SWS 4<br />

ECTS 6<br />

Dozent<br />

Prof. Dr. Michael Waldowski<br />

Informatik-ECTS 6<br />

Voraussetzungen keine<br />

Lernziele<br />

Das Interesse <strong>der</strong> Studierenden an <strong>der</strong> Grafischen Datenverarbeitung soll durch eine<br />

möglichst freie Gestaltung <strong>der</strong> Lehrveranstaltung geweckt werden.<br />

Inhalt<br />

Der Inhalt ist variabel, und kann von den Studierenden weitgehend selbst bestimmt<br />

werden. Die Orientierung an aktuellen Themen wird bevorzugt, z.B.:<br />

‣ Mustererkennung<br />

‣ Bildcodierung<br />

‣ Stereobildverarbeitung, 3D-Verfahren<br />

‣ Computerholographie<br />

Veranstaltungsart Workshop<br />

Leistungsnachweis Praktische Arbeit (1A als Prüfungsleistung)<br />

Literatur ‣ Digital Image Processing using Matlab. R.C. Gonzales et al, Prentice Hall, 2004<br />

‣ Digital Image Processing, R. C. Gonzales, R. E. Woods, Prentice Hall, 2nd ed., 2002<br />

‣ Computer Graphics. J. D. Foley et. al., Addison -Wesley, 2nd ed., 1990<br />

‣ Digital Image Processing. W. K. Pratt, John Wiley & Sons, 3rd ed., 2001<br />

‣ Digitale Bildverarbeitung. P. Haberäcker, Hanser, 4. Auflage, 1991<br />

‣ Wavelets and Filter Banks. G. Strang and T. Nguyen, Wellesley-Cambridge Press,<br />

Revised ed., 1997<br />

‣ Die neue Holographie-Fibel. P. Heiß, Wittig Fachbuch, 4. Auflage, 1995<br />

‣ Synthetische Holografie. D. Schreier, VEB Fachbuchverlag Leipzig, 1984<br />

‣ The MathWorks. Matlab-Handbuch, Inc., 2004<br />

ECTS-Berechnung ‣ 45,0h Betreutes Lernen im Seminar<br />

‣ 75,0h Vor -und Nachbereitung des Workshops<br />

‣ 24,0h zusätzliche Ausarbeitungszeit in <strong>der</strong> Prüfungszeit<br />

‣ 36,0h Literaturstudium gemäß freier Zeiteinteilung, z.B. in den Semesterferien


2.17 Medienprogrammierung<br />

Dieses Modul besteht aus zwei Einzelveranstaltungen, die nacheinan<strong>der</strong> aufgeführt sind: einer Vorlesung und<br />

einem Praktikum.<br />

Medienprogrammierung, Vorlesung<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Wolfgang Taube,<br />

Informatik-ECTS 3<br />

Voraussetzungen Modul Programmierung im Grundstudium<br />

Lernziele<br />

siehe Modulbeschreibung<br />

Inhalt<br />

Kern <strong>der</strong> Veranstaltung ist die algorithmische Behandlung medialer Inhalte. Im medialen<br />

Anwendungskontext sollen fortgeschrittene Programmierungskonzepte und Methoden zur<br />

Komplexitätsbewältigung größerer Projekte vermittelt werden. Verwendete Programmiersprachen<br />

sind:<br />

‣ OpenGLC++ und Cg<br />

‣ Mediale APls<br />

‣ Open GL<br />

‣ neue Programmiersprache: C++<br />

‣ Sha<strong>der</strong>-Programmierung (Cg/HLSL/GLSL)<br />

‣ Design Pattern bei medialen Anwendungen<br />

‣ Datenstrukturen: Bäume<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis Klausur (1Kals Prüfungsleistung)<br />

Literatur ‣ Visual C++ 2008, Louis, Dirk: München: Markt&Technik 2008<br />

‣ Die C++ Programmiersprache, Stroustrup, Bjarne: München: Addison-Wesley, 2000<br />

‣ OpenGL - A Primer, Angel, Edward: Addison-Wesley, 3rd edition, 2008<br />

‣ The Cg Tutorial, Randima Fernando; Kilgard, Mark J.: Addison Wesley 2003<br />

‣ Pro Ogre3D Programming Junker, Gregory: Apress 2006<br />

‣ In C++ Denken Eckel, Bruce: Prentice Hall, 2. Auflage, 1998<br />

‣ Lehrbuch <strong>der</strong> Grafikprogrammierung, Zeppenfeld, Klaus: Spektrum 2004<br />

ECTS-Berechnung ‣ 22,5h Präsenzveranstaltung<br />

‣ 50,0h Nachbereitung Vorlesung<br />

‣ 17,5 Klausurvorbereitung


Medienprogrammierung, Praktikum<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Wolfgang Taube,<br />

Informatik-ECTS 3<br />

Voraussetzungen siehe Veranstaltung Medienprogrammierung<br />

Lernziele<br />

Die Studierenden sollen das in <strong>der</strong> Vorlesung erworbene Wissen praktisch umsetzen<br />

können.<br />

Inhalt<br />

Im Praktikum werden anhand von praktischen Übungsaufgaben die in <strong>der</strong> Vorlesung<br />

vermittelten Inhalte vertieft und praktisch umgesetzt.<br />

Veranstaltungsart Praktikum<br />

Leistungsnachweis 1 A (erfolgreiche Bearbeitung von Übungsaufgaben)<br />

Literatur<br />

siehe Veranstaltung Medienprogrammierung (Vorlesung)<br />

ECTS-Berechnung ‣ 22,5h Präsenzveranstaltung<br />

‣ 67,5 h Entwicklung, Programmierung, Test und Dokumentation von Programmen.<br />

Es wird von einem Arbeitsaufwand von mindestens 6 Stunden pro Woche<br />

ausgegangen.


2.18 Verteilte Anwendungen 1<br />

Dieses Modul besteht aus zwei Einzelveranstaltungen, die nacheinan<strong>der</strong> aufgeführt sind: einer Vorlesung und<br />

einem Praktikum.<br />

Verteilte Anwendungen 1, Vorlesung<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Dirk Eisenbiegler<br />

Informatik-ECTS 3<br />

Voraussetzungen Grundkenntnisse <strong>der</strong> objektorientierten Programmierung.<br />

Lernziele<br />

Es sollen die Grundlagen <strong>der</strong> Programmierung verteilter Anwendung vermittelt werden.<br />

Dazu gehört insbeson<strong>der</strong>e die Programmierung von Services. Bei <strong>der</strong> Programmierung<br />

von Services hat die Datenbankanbindung eine beson<strong>der</strong>e Bedeutung. Es soll vermittelt<br />

werden, wie robuste und performante Services inklusive einer Datenbankanbindungen<br />

konstruiert werden können und welche konzeptionellen Alternativen es dabei gibt.<br />

Inhalt ‣ nebenläufige Programmierung (Multithreading)<br />

‣ elementare Netzwerkkommunikation zwischen Programmen (Socket-Programmierung)<br />

‣ Services<br />

‣ Web-Anwendungen: HTTP, statische und dynamische Seiten, Session-Management,<br />

Servlets, JSPs, SSI, Forward, Redirect<br />

‣ Strukturierung komplexer Web-Anwendungen: Custom Tags, EL, Tag-Libraries<br />

‣ Datenbankanbindung (JDBC)<br />

‣ Remote Method Invocation (RMI)<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis Klausur (1K)<br />

Literatur ‣ http://java.sun.com/javaee/5/docs/tutorial/doc/index.htm.l Online Tutorial von Sun<br />

Microsystems zu Java Enterprise Edition 5<br />

‣ Thinking in Java. Eckel, Bruce<br />

ECTS-Berechnung ‣ 22,5h Präsenzveranstaltung<br />

‣ 37,5h Vor-/Nachbereitung <strong>der</strong> Veranstaltung<br />

‣ 30,0h Klausurvorbereitungen<br />

Verteilte Anwendungen 1, Praktikum<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Dirk Eisenbiegler<br />

Informatik-ECTS 3<br />

Voraussetzungen Grundkenntnisse <strong>der</strong> objektorientierten Programmierung.<br />

Lernziele<br />

Die theoretischen Inhalte <strong>der</strong> begleitenden Vorlesung sollen durch praktische Aufgaben<br />

vertieft werden. Die Studenten sollen in die Lage versetzt werden, einfache verteilte<br />

Anwendungen eigenständig zu realisieren.<br />

Inhalt<br />

Das Praktikum beginnt mit kleinen Übungsaufgaben zu den Themen Nebenläufigkeit,<br />

Socket-Programmierung, HTTP und dynamischen Web-Seiten. Es folgt eine mehrwöchige<br />

Programmieraufgabe, in <strong>der</strong> eine einfach Web-Anwendung mit Datenbankanwendung


durchgängig programmiert werden soll. Es folgt eine Aufgabe zum Thema RMI, bei <strong>der</strong><br />

die zuvor realisierte Web-Anwendung um einen RMI-basierten Push-Mechanismus<br />

ergänzt wird.<br />

Veranstaltungsart Praktikum, Einzelarbeit am Computer<br />

Leistungsnachweis Praktische Arbeit (1A als Studienleistung)<br />

Literatur ‣ http://java.sun.com/javaee/5/docs/tutorial/doc/index.html. Online Tutorial von Sun<br />

Microsystems zu Java Enterprise Edition 5<br />

‣ Thinking in Java. Eckel, Bruce<br />

ECTS-Berechnung ‣ 22,5h Präsenzveranstaltung<br />

‣ 67,5h Lösen <strong>der</strong> Übungsblätter


2.19 Software-Entwicklung<br />

Dieses Modul besteht aus zwei Einzelveranstaltungen, die nacheinan<strong>der</strong> aufgeführt sind.<br />

Objektorientiertes Systemdesign<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Wilhelm Walter<br />

Informatik-ECTS 3<br />

Voraussetzungen Module des Grundstudiums!<br />

Lernziele<br />

Die Studierenden kennen entsprechende Verfahren des Requirement Engineering und<br />

können diese praktisch anwenden. Sie können die Qualität von Anfor<strong>der</strong>ungen bewerten.<br />

Sie kennen die wichtigsten Diagramme <strong>der</strong> UML und können diese aus Problemstellungen<br />

entwickeln. Die Studierenden wissen, was man unter Softwarearchitektur versteht und<br />

kennen die wichtigsten Designpattern und wie diese angewendet werden.<br />

Inhalt ‣ Requirements Engineering<br />

‣ Objektorientierte Analyse, incl. <strong>der</strong> UML-Notation<br />

‣ Systemarchitekturen<br />

‣ Objektorientiertes Design<br />

‣ Design Patterns<br />

‣ Prozessmodelle ( V-Modell, UML-RUP, eXtreme Programming )<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis 1 Klausur als Modulprüfung<br />

Literatur ‣ Requirements-Engineering und -Management. Chris Rupp, Hanser-Verlag, ISBM: 3-<br />

446-21960<br />

‣ Objektorientierter Softwarentwurf mit UML. G. Bannert, Addison-Welesley, ISBN:<br />

3-8273-1489-9<br />

‣ UML. Perdita Stevens, Addison-Weseley, ISBN: 3-827-37003-5<br />

‣ Entwurfsmuster. Erich Gamma, Addison-Weseley, ISBN: 3-89319-950-0<br />

‣ Effektive Software-Architekturen. G. Starke, Hanser-Verlag,<br />

‣ ISBN: 3-446-21998-6<br />

‣ UML2 Glasklar. Jeckle, Rupp<br />

‣ SOA intern. Mathas Christoph, Hanser-Verlag ISBN 978-3-446-41189-0<br />

‣ Web-Services. Eberhart Andreas, Hanser-Verlag ISBN 3-446-22530-7<br />

‣ Objektorientierte Softwaretechnik. Brügge Bernd, Addison Weseley,<br />

‣ ISBN 3-8273-7082-5<br />

‣ Effektive Softwarearchitekturen. Starke Gernot, Hanser-Verlag, ISBN 3-446- 22846-<br />

2<br />

‣ Objektorientierte Softwareentwicklung. Meyer, Bertrand, Hanser-Verlag, ISBN 3-<br />

446- 15773-5<br />

‣ Objektorientiertes Modellieren und Entwerfen. Rumbough, James, Hanser-Verlag,<br />

ISBN 3-446-17520-2Addison Weseley, ISBN 3-8273-7082-5<br />

ECTS-Berechnung ‣ 22,5h Präsenzveranstaltung<br />

‣ 27,5h Vor-/Nachbereitung <strong>der</strong> Veranstaltung


‣ 20,0h Lösen von Übungsblättern<br />

‣ 20,0h Klausurvorbereitungen


2.20 Verteilte Anwendungen 2<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Dirk Eisenbiegler<br />

Informatik-ECTS 3<br />

Voraussetzungen Kenntnisse in <strong>der</strong> objektorientierten Programmierung sowie bei <strong>der</strong> Programmierung von<br />

Services und insbeson<strong>der</strong>e von Web-Anwendungen.<br />

Lernziele<br />

Bei <strong>der</strong> Programmierung von Services gilt es verschiedene wie<strong>der</strong>kehrende Aspekte, die<br />

beachtet werden müssen, damit man auch bei <strong>der</strong> Konstruktion komplexer Client-Server-<br />

Architekturen zu softwaretechnisch beherrschbaren und gleichzeitig stabil betreibbaren<br />

verteilten Anwendungen kommt. Diese Aspekte sind weitgehend unabhängig von den<br />

konkret verwendeten Anwendungsprotokollen. Auf diese querschneidenden Aspekte soll<br />

in dieser Vorlesung eingegangen werden. Fragestellungen:<br />

‣ Wie konstruiert man Services so, dass sie stabil auf einem Server betrieben werden<br />

können?<br />

‣ Wie kommt man zu Services, die auch den vorgegebenen Lastanfor<strong>der</strong>ungen<br />

gewachsen sind?<br />

‣ Welche Bedeutung haben Three-Tier-Architekturen? Was bringen sie und wie setzt<br />

man sie ein?<br />

Was ist ein Persistenzframework? Sind sie eine Alternative zur klassischen SQL-basierten<br />

Datenbankanbindung?<br />

Inhalt<br />

‣ Logging<br />

‣ Performance von Services<br />

‣ Three-Tier-Architekturen: Frontend-Service, Middleware, Backend-Services<br />

‣ Objektorientierte Frameworks und die Bedeutung von Reflection und Annotations in<br />

diesem Zusammenhang<br />

‣ EJB 3.0: ein objektorientiertes Middlewareframework mit Persistenzframework<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis 1 Klausur als Modulprüfung<br />

Literatur ‣ http://java.sun.com/javaee/5/docs/tutorial/doc/index.html. Online Tutorial von Sun<br />

Microsystems zu Java Enterprise Edition 5<br />

‣ Enterprise JavaBeans 3.0. Grundlagen - Konzepte – Praxis. Baschat, Martin:<br />

Spektrum<br />

ECTS-Berechnung ‣ 22,5h Präsenzveranstaltung<br />

‣ 37,5h Vor-/Nachbereitung <strong>der</strong> Veranstaltung<br />

‣ 30,0h Klausurvorbereitungen


2.21 Gamedesign (Modul)<br />

Dieses Modul besteht aus zwei Einzelveranstaltungen, die nacheinan<strong>der</strong><br />

aufgeführt sind: einer Vorlesung und einem Praktikum.<br />

GAMEDESIGN, Seminar (Veranstaltung)<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Jirka Dell´Oro-Friedl<br />

Informatik-ECTS 3<br />

Voraussetzungen Es bietet sich an, zuvor das Modul „Grundlagen <strong>der</strong> Spieleentwicklung“ abgeschlossen zu<br />

haben. Dieses stellt mittelfristig die Basis für das Modul „GAMEDESIGN“ dar.<br />

Lernziele<br />

Die theoretische Auseinan<strong>der</strong>setzung mit Computerspielen ist eine sehr junge Disziplin<br />

die sich noch am Anfang ihrer Entwicklung befindet. Während lange versucht wurde,<br />

Erkenntnisse <strong>der</strong> Film- und Theaterwissenschaften auf diesen Bereich zu übertragen,<br />

haben sich mittlerweile spezifische Methoden durchgesetzt, um hochinteraktive<br />

Unterhaltungsmedien zu beschreiben und greifbar zu machen.<br />

Vorgestellt werden Ansätze die es GAME-Designern ermöglichen, eine Spielidee zu<br />

einem ausgereiften Konzept zu entwickeln. In <strong>der</strong> Folge wird <strong>der</strong> Produktionsprozess in<br />

kleinen Teams durchlaufen, wobei die Abstimmung zwischen den einzelnen<br />

„Abteilungen“ (Grafik, Programmierung, Modelling, ...) eine tragende Rolle spielt und<br />

damit geübt wird.<br />

Inhalt ‣ Fähigkeit zur Abstraktion und Präsentation einer Spielidee.<br />

‣ Urteilsfähigkeit bezüglich Genres, Machbarkeit, Aufwand, Gameplay, Emergenz.<br />

‣ Fähigkeit Spielregeln zu erkennen und zu formulieren.<br />

‣ Fähigkeit ein Designdokument zu erstellen, welches einem Produktionsteam zur<br />

Vorlage dienen kann.<br />

‣ Fähigkeit, ein Spielkonzept zu analysieren und die technischen<br />

Rahmenbedingungen zu erkennen,<br />

‣ Verständnis <strong>der</strong> Einbindung und Nutzung verschiedener Medientypen für die<br />

Interaktion in Echtzeit,<br />

‣ Abstraktion <strong>der</strong> Spiele-Logik zu Algorithmen (Pseudocode) und Datenstrukturen<br />

‣ Kenntnis grundlegen<strong>der</strong> Programmieralgorithmen, die in <strong>der</strong> Spiele-Produktion<br />

Verwendung finden.<br />

‣ Grundlagen <strong>der</strong> Echtzeit-Animation in 2D und/o<strong>der</strong> 3D<br />

‣ Strukturiertes Arbeiten im Team.<br />

Veranstaltungsart Seminar<br />

Leistungsnachweis 1 MA (1 praktische Modul-Ausarbeitung als Prüfungsleistung)<br />

Literatur ‣ Schell, Jesse (2008), „The Art of Game Design: A Book of Lenses“<br />

‣ Koster, Raph (2005), „A Theory of Fun for Game Design“<br />

ECTS-Berechnung ‣ 22,5h Präsenz im Seminar


‣ 22,5h Vor- und Nachbereitung, Literaturstudium<br />

‣ 35h Analyse von Fallbeispielen<br />

‣ 10h Klausurvorbereitung


GAMEDESIGN, Praktikum (Veranstaltung)<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Jirka Dell´Oro-Friedl<br />

Informatik-ECTS 3<br />

Voraussetzungen Es bietet sich an, zuvor das Modul „Grundlagen <strong>der</strong> Spieleentwicklung“ abgeschlossen zu<br />

haben. Dieses stellt mittelfristig die Basis für das Modul „GAMEDESIGN“ dar.<br />

Lernziele<br />

In kleinen Teams entwickeln die Studierenden eine Spielidee, verfeinern diese und<br />

erstellen ein Designdokument<br />

Inhalt<br />

Das so festgelegte Spiel wird von <strong>der</strong> technischen und gestalterischen Seite analysiert,<br />

ausgearbeitet und schließlich mit Grafik, Sound und Code produziert. Ziel ist es, einen<br />

einfachen, spielbaren Prototypen zu erstellen.<br />

Veranstaltungsart Praktikum<br />

Leistungsnachweis 1 MA (1 praktische Modul-Ausarbeitung als Prüfungsleistung)<br />

Literatur ‣ Schell, Jesse (2008), „The Art of Game Design: A Book of Lenses“<br />

‣ Koster, Raph (2005), „A Theory of Fun for Game Design“<br />

ECTS-Berechnung ‣ 22,5h Präsenz im Seminar<br />

‣ 12,5h Vor- und Nachbereitung, Literaturstudium<br />

‣ 55h Erstellung einer praktischen Arbeit


2.22 Grundlagen <strong>der</strong> Spieleentwicklung 3D (Modul –<br />

Seminar und Praktikum)<br />

Dieses Modul besteht aus zwei Einzelveranstaltungen, die nacheinan<strong>der</strong> aufgeführt sind: einer Vorlesung<br />

und einem Praktikum.<br />

Fakultät<br />

Digitale Medien<br />

SWS<br />

2 (Seminar) 2 (Praktikum)<br />

ECTS<br />

3 (Seminar) 3 (Praktikum)<br />

Dozent<br />

Prof. Jirka Dell´Oro-Friedl<br />

Informatik-ECTS 6<br />

Voraussetzungen Kenntnisse in <strong>der</strong> objektorientierten Programmierung sowie bei <strong>der</strong> Programmierung von<br />

Services und insbeson<strong>der</strong>e von Web-Anwendungen.<br />

Lernziele<br />

Unity3D schickt sich an, im Bereich <strong>der</strong> räumlichen Echtzeit-Darstellung zu werden, was<br />

Flash <strong>der</strong>zeit im 2D-Bereich ist. Eine integrierte Entwicklungsumgebung für interaktive<br />

on- und offline Anwendungen, welche sich mit dem Ansatz „Develop once, deploy<br />

everywhere“ rasend schnell verbreitet und damit einen Standard definiert. In diesem<br />

Seminar untersuchen wir die Möglichkeiten und Grenzen von Unity3D für die<br />

Spieleentwicklung. Dabei werden insbeson<strong>der</strong>e die Parallelen und die Unterschiede zu<br />

Flash beleuchtet. Hilfreich ist, dass wie in Flash mit ECMA-Script (Javascript)<br />

programmiert werden kann. Es werden grundlegende Entwurfsmuster vorgestellt, welche<br />

die Entwicklung von Spielen vereinfachen und standardisieren. Zudem wird Unity3D als<br />

Rapid-Prototyping-Tool, als Experimentierlabor und als Werkzeug für die Konzeption<br />

etabliert. Daher richtet sich <strong>der</strong> Kurs insbeson<strong>der</strong>e auch an angehende Konzepter.<br />

Inhalt • Kenntnis <strong>der</strong> Arbeitsweise in <strong>der</strong> Unity3D-IDE<br />

• Fähigkeit, innerhalb von Unity3D vorgegebene und individuelle Körper zu erstellen<br />

und zu manipulieren<br />

• Fähigkeit, Timeline-Animationen zu erstellen und zu steuern<br />

• Verständnis <strong>der</strong> hierarchischen Beziehungen <strong>der</strong> Grafikobjekte (Scene-Tree)<br />

• Verständnis des Message-Handlings von Unity3D<br />

• Kenntnis <strong>der</strong> Einbindung externer Daten zur Laufzeit über Javascript und XML<br />

• Kenntnisse über die Einbindung und Manipulation von Sound<br />

• Fähigkeit mit Unity3D-Komponenten zu arbeiten<br />

• Fähigkeit komplexe Anwendungen und einfache Spiele objektorientiert mit Unity3D<br />

und dem ECMA-Standard zu erstellen.<br />

Methode: Das Seminar hat ausgesprochene „Workshop-Charakter“. Ausgehend von<br />

<strong>der</strong> Oberfläche dringen wir langsam in die Tiefen von Unity 3D vor. Die Übungen<br />

lassen begrenzten Raum für eigene Kreativität, die sich gegen Ende <strong>der</strong><br />

veranstaltung voll entfalten soll. Dann gilt es eine Idee zu einen kleinen Konzept zu<br />

verdichten und damit schließlich eine komplexe, fertige Applikation unter<br />

Berücksichtigung <strong>der</strong> geübten Entwurfsmuster zu entwicklen.<br />

Veranstaltungsart<br />

Leistungsnachweis<br />

Literatur<br />

ECTS-Berechnung<br />

Seminar und Praktikum<br />

Entwicklung eines Konzeptes und einer kleinen, komplexen 3D-Applikation nach einem<br />

vorgegebenen Kriterienkatalog.<br />

Michelle Menard (2011) : "Game Development with Unity"<br />

Seminar:


Ø 22,5h Präsenz im Seminar<br />

Ø 22,5h Vor- und Nachbereitung, Literaturstudium<br />

Ø 35h Analyse von Fallbeispielen<br />

Ø 10h Klausurvorbereitung<br />

Praktikum:<br />

Ø 22,5h Präsenz im Seminar<br />

Ø 12,5h Vor- und Nachbereitung, Literaturstudium<br />

Ø 55h Erstellung einer praktischen Arbeit


2.23 Projektmanagement in Software-Projekten<br />

Projektmanagement in Software-Projekten (Veranstaltung)<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Philipp Reif (Lehrbeauftragter) Prof. Wilhelm Walter<br />

Informatik-ECTS 3<br />

Voraussetzungen Keine<br />

Lernziele<br />

In diesem Modul werden Theorie und Praxis des Projektmanagements von<br />

Softwareprojekten behandelt. Die Studenten beschäftigen sich mit allgemeinen Aspekten<br />

von Entwicklungsprojekten und beson<strong>der</strong>en Merkmalen von Software-Projekten. Es<br />

werden klassische Verfahren wie RUP o<strong>der</strong> V-Modell wie auch agile Software-<br />

Entwicklungsprozesse wie Extreme Programming und Scrum eingeführt, verglichen und<br />

bewertet. Ergänzt wird dieser Themenkomplex durch die Betrachtung von Software<br />

Lifecycle Management-Prozessen. Die Themen Mo<strong>der</strong>ation und Team-Building ergänzen<br />

die strukturellen Aspekte des Projektmanagements mit Strategien Personalauswahl,<br />

Handhabung von Konflikten und <strong>der</strong> Entwicklung von Eskalationsszenarien in Projekten.<br />

Ein beson<strong>der</strong>er Schwerpunkt sind auch die Aufgabenplanung, die Zeitplanung und die<br />

Kalkulation von Software-Projekten.<br />

Inhalt Einführung in das Thema Projekte<br />

Abgrenzung Software-Projekte gegenüber Industrieprojekten<br />

Projektplanung<br />

Erstellung <strong>der</strong> Projektdokumentation<br />

Projekt-Rahmenbedingungen: Beteiligte, Risiken, Ziele<br />

Konzeption, Lastenheft, Pflichtenheft, Spezifikation<br />

Aufgabenplanung<br />

Zeitplanung<br />

Kalkulation: Grundlagen, Preisermittlung, Kostenrechnung<br />

Entwicklungsprozesse: Wasserfall, Spiralmodell, V-Modell, RUP, Extreme<br />

Programming, Scrum<br />

Lifecycle Management<br />

Team Building (Personalauswahl und Team-Management)<br />

Konfliktmanagement / Motivationsstrategien<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis Klausur (1K als Prüfungsleistung)<br />

Literatur Boehm, Barry: A Spiral Model of Software Development and Enhancement<br />

Litke, Hans-Dieter: Projektmanagement – Handbuch für die Praxis<br />

Litke, Hans-Dieter: Methoden, Techniken, Verhaltensweisen: Methoden,<br />

Techniken, Verhaltensweisen. Evolutionäres Projektmanagement<br />

Dr. Richter, Reinhard: Management von Informatikprojekten<br />

Schwaber, Ken; Sutherland, Jeff: Scrum User Guide<br />

Softhouse: Scrum in 5 Minutes<br />

ECTS-Berechnung ‣ 22,5h Präsenzveranstaltung<br />

‣ 27,5h Vor-/Nachbereitung <strong>der</strong> Veranstaltung


‣ 20,0h Lösen von Übungsblättern<br />

‣ 20,0h Klausurvorbereitungen


Projektmanagement in Software-Projekten<br />

Projektmanagement in Software-Projekten (Praktikum)<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Philipp Reif<br />

Informatik-ECTS 3<br />

Voraussetzungen Keine<br />

Lernziele<br />

In dem Praktikum ist auf die begleitende Vorlesung "Management von Software-<br />

Projekten" abgestimmt. Es sollen die in <strong>der</strong> Vorlesung erworbenen Kenntnisse praktische<br />

angewandt werden. Die Studenten sollen in die Lage versetzt werden, Projekte zu planen,<br />

kalkulieren, umzusetzen und durchzuführen. Das in <strong>der</strong> Vorlesung erworbene Wissen<br />

somit vertieft und gefestigt<br />

Inhalt<br />

Veranstaltungsart<br />

Leistungsnachweis<br />

Literatur<br />

ECTS-Berechnung<br />

Übungsaufgaben zu den Themen <strong>der</strong> Vorlesung "Management von Software-Projekten".<br />

Praktikum<br />

Praktische Arbeit (1A als Studienleistung)<br />

Ø 22,5 Präsenzveranstaltung<br />

Ø 67,5 Recherchen zu Aufgabenstellungen, Lösen <strong>der</strong> Hausarbeiten und Übungen


2.24 Weitverkehrsnetze<br />

Gemeinsam mit <strong>der</strong> Wahlpflichtveranstaltung "Rechtliche Grundlagen kommunaler<br />

Breitbandversorgung", welche jeweils im Sommersemester angeboten wird, bildet sie das Modul<br />

"Breitbandnetze". Eine entsprechende Information in Form eines Flyers ist in dem Dateienbereich<br />

hinterlegt.<br />

Weitverkehrsnetze<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Jürgen An<strong>der</strong>s<br />

Informatik-ECTS 3<br />

Voraussetzungen<br />

Lernziele<br />

Die Wahlpflichtveranstaltung gibt einen Überblick über die im Bereich <strong>der</strong> Weitverkehrsund<br />

Zugangsnetze eingesetzten Technologien und Netzstrukturen. Diese bilden eine<br />

wichtige Grundlage für die zukünftige Verteilung multimedialer Inhalte wie HDTV/3D<br />

Fernsehen und Online Gaming, Anwendungen im Rahmen des Cloud Computing sowie<br />

neuer Applikationen zum Beispiel im Bereich <strong>der</strong> Telemedizin.<br />

Inhalt<br />

Die Lerninhalte werden zu jeweils einem Drittel über Vorlesungen, Beiträgen <strong>der</strong><br />

Teilnehmer und Exkursionen vermittelt.<br />

Die Veranstaltung bildet einen Pflichtbaustein für die Zusatzqualifikation "Grundlagen<br />

kommunaler Breitbandnetze". Gemeinsam mit <strong>der</strong> Wahlpflichtveranstaltung "Rechtliche<br />

Grundlagen kommunaler Breitbandversorgung", welche jeweils im Sommersemester<br />

angeboten wird, bildet sie das Modul "Breitbandnetze". Eine entsprechende Information in<br />

Form eines Flyers ist in dem Dateienbereich hinterlegt.<br />

Folgende Themenblöcke werden abgedeckt:<br />

1. Marktübersicht und Stand <strong>der</strong> Technik<br />

2. Grundlagen (Normen, Topologien, Verkabelung, Paketnetze)<br />

3. Drahtlose Zugangsnetze (GSM, UMTS, LTE, Rundfunk, Satellit, Richtfunk)<br />

4. Kupferbasierte Zugangsnetze (xDSL, Standleitungen)<br />

5. Hybride Koax-Fasernetze ("Kabel" Netze)<br />

6. Glasfaserbasierte Netzarchitekturen<br />

Veranstaltungsart Vorlesung / Exkursion.<br />

Leistungsnachweis Die Exkursionen sind prüfungsrelevant und die Prüfungsleistung besteht aus einer benoteten<br />

Klausur<br />

Literatur<br />

ECTS-Berechnung 9 x 1,5h Präsenzlehre (Vorlesung)<br />

2 x 4,5h Exkursion.


2.25 Netzwerktechnik und Dienste<br />

Netzwerktechnik und Dienste<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Dr. Jürgen An<strong>der</strong>s<br />

Informatik-ECTS 3<br />

Voraussetzungen<br />

Lernziele<br />

Diese Wahlpflichtveranstaltung vermittelt einen Einblick in die Grundlagen <strong>der</strong><br />

Netzwerktechnik. Beginnend mit den physikalischen Übertragungsmedien werden die<br />

verschiedenen Ebenen <strong>der</strong> Netzkommunikation behandelt. Abschließend werden die<br />

Herausfor<strong>der</strong>ungen zukünftiger Medienproduktionen für die Netzwerktechnik analysiert.<br />

Die Veranstaltung besteht aus Vorlesungen, Übungen sowie gruppenweiser Ausarbeitung<br />

aktueller Entwicklungen im Rahmen <strong>der</strong> Netzwerktechnik. Ergänzend ist die Teilnahme<br />

an einer kostenfreien Exkursion vorgesehen (prüfungsrelevant).<br />

Inhalt • Übertragungsmedien, Kupferkabel, Lichtwellenleiter, Funkverbundung<br />

• Übertragungssicherung: Fehlererkennung und Flusskontrolle<br />

• Verbindungssteuerung: Leitungsvermittlung, Paketvermittlung, Datagrammtechnik<br />

• Netzklassen, Leistungsklassen, Verfügbarkeit, Kosten<br />

• Internet Protokoll Satz<br />

• Internet-Anwendungen und Services<br />

• Netzsicherheit durch Verschlüsselung und Authentifizierung<br />

• Systemsicherheit durch Firewalls<br />

Veranstaltungsart<br />

Leistungsnachweis<br />

Literatur<br />

-Computernetzwerke“, 4. überarbeitete Auflage Andrew S. Tanenbaum, Pearson Studium<br />

ISBN 3-8273-7046-9<br />

-Computernetze“, James F. Kurose, Keith W. Ross Pearson Studium ISBN 3-8273-7017-5<br />

-TCP/IP Tutorial and Technical Overview“, (E-Book) Rodriguez, Gatrell, Karas, Peschke<br />

IBM Redbooks ibm.com/redbooks<br />

-Network Protocols Handbook“, Second Edition Jarvin Technologies (Herausgeber) ISBN<br />

978-0-9740945-2-6 (auch als E-Book erhältlich)<br />

Nützliche Webreferenzen:<br />

protocols.com / LAN-Standards IEEE802 / Lokale Netze, Weitverkehrsnetze<br />

ECTS-Berechnung 12 x 1,5h Vorlesung<br />

1 x 4,5h Exkursion


2.26 Game Engineering Theorie (Veranstaltung und<br />

Praktikum)<br />

Dieses Modul besteht aus zwei Einzelveranstaltungen, die nacheinan<strong>der</strong> aufgeführt sind: einer Vorlesung und<br />

einem Praktikum.<br />

Game Engineering Theorie (Veranstaltung)<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Christoph Müller<br />

Informatik-ECTS 3<br />

Voraussetzungen Kenntnisse in <strong>der</strong> Programmierung von Unity 3D (Beispiel Besuch <strong>der</strong> WPV 3D-<br />

Spieleprogrammierung), 3D-Modellierungs-Kenntnisse<br />

Lernziele<br />

Ziel <strong>der</strong> Veranstaltung ist es, Studierenden einen Einblick in sämtliche an <strong>der</strong> 3D-Game-<br />

Erstellung beteiligten technischen Arbeitsschritte zu geben. Dabei auf bereits vorhandene<br />

Grundlagen in <strong>der</strong> Game-Programmierung aufgesetzt werden.<br />

Die Veranstaltung ist eng gekoppelt mit <strong>der</strong> Veranstaltung Game-Engineering-Praxis – in<br />

<strong>der</strong> Regel werden in <strong>der</strong> Vorlesung die theoretischen Grundlagen und technischen<br />

Hintergründe für die darauffolgende Praktikumsveranstaltung vorgestellt, daher sind auch<br />

Vorlesung und Praktikum jeweils am selben Tag hintereinan<strong>der</strong> im Stundenplan<br />

angeordnet.<br />

Die Prüfungsleistung erfolgt durch die Vertiefung in einem spezifischen Teilgebiet und<br />

eine umfangreiche Ausarbeitung mit einem Vortrag.<br />

Inhalt<br />

Veranstaltungsart<br />

Leistungsnachweis<br />

Literatur<br />

ECTS-Berechnung<br />

Ø 3D-Modellierung für Games<br />

Ø Character-Animation in Games<br />

Ø Die Ren<strong>der</strong>ing-Pipeline<br />

Ø Sha<strong>der</strong>-Programmierung<br />

Ø Physik-Simulation in Games und ihre Ansteuerung<br />

Ø Fortgeschrittene Programmierkonzepte für Games<br />

Ø Einfügen von Sound und Musik<br />

Ø Controller und Eingabegeräte<br />

Vorlesung<br />

Vortrag/Referat<br />

Ø 22,5 Präsenz<br />

Ø 17,5h Vor- und Nachbereitung<br />

Ø 50h Ausarbeitung


Game Engineering Theorie (Praktikum)<br />

Fakultät<br />

Digitale Medien<br />

SWS 2<br />

ECTS 3<br />

Dozent<br />

Prof. Christoph Müller<br />

Informatik-ECTS 3<br />

Voraussetzungen Kenntnisse in <strong>der</strong> Programmierung von Unity 3D (Beispiel Besuch <strong>der</strong> WPV 3D-<br />

Spieleprogrammierung), 3D-Modellierungs-Kenntnisse<br />

Lernziele<br />

Das Praktikum Game Engineering flankiert die Vorlesung Game Engineering und<br />

untermauert das in <strong>der</strong> Theorie vermittelte Wissen durch praktische Arbeiten mit <strong>der</strong><br />

Game-Authoring-Software Unity, sowie <strong>der</strong> 3D-Modellierungssoftware Cinema4D. Ziel<br />

ist es, das Erlernte anhand einer größeren praktischen Arbeit (z.B. in Gruppen)<br />

anzuwenden.<br />

Inhalt<br />

Veranstaltungsart<br />

Leistungsnachweis<br />

Literatur<br />

ECTS-Berechnung<br />

Praktische Einarbeitung in die in <strong>der</strong> Vorlesung behandelten Themen<br />

Ø 3D-Modellierung für Games<br />

Ø Character-Animation in Games<br />

Ø Die Ren<strong>der</strong>ing-Pipeline<br />

Ø Sha<strong>der</strong>-Programmierung<br />

Ø Physik-Simulation in Games und ihre Ansteuerung<br />

Ø Fortgeschrittene Programmierkonzepte für Games<br />

Ø Einfügen von Sound und Musik<br />

Ø Controller und Eingabegeräte<br />

Ausarbeitung einer interaktiven Echzteit-3D-Anwendung<br />

Praktikum<br />

Praktische Arbeit (1A als Studienleistung)<br />

Ø 22,5 Präsenz<br />

Ø 17,5h Vor- und Nachbereitung<br />

Ø 50h Praktische Arbeit


2.27 Max / MSP / Jitter (Modul)<br />

Fakultät<br />

Digitale Medien<br />

SWS 4<br />

ECTS 6<br />

Dozent<br />

Prof. Dr. Bruno Friedmann / Herr Roland Sproll<br />

Informatik-ECTS 6<br />

Voraussetzungen<br />

Lernziele<br />

Inhalt<br />

Veranstaltungsart<br />

Leistungsnachweis<br />

Literatur<br />

ECTS-Berechnung<br />

Max/MSP/Jitter (MMJ) ist eine grafische Programmierumgebung, Ereignis- und Echtzeit<br />

orientiert. Ursprünglich als Performance-Software für das MIDI-Datenmanagement zu<br />

Aufführungen elektronischer Musik gedacht, wurde MMJ ergänzt und weiterentwickelt<br />

und kann heute Datenströme, Audio-, Video-, Schnittstellen- und Messsignale, z. B.<br />

Tracking-Daten verarbeiten und mühelos koordinieren. MMJ wird heute im medialen<br />

künstlerischen Bereich als interaktive Software von maßgeblichen Medienkünstlern<br />

benutzt. Mit MMJ kann sowohl von Programmier-Anfängern aufgrund von vielen zur<br />

Verfügung stehenden und frei verwendbaren Beispiel-Patches relativ schnell eine<br />

komplexe Anwendung erstellt werden. Jedoch können auch Programmierer ihre<br />

Erfahrungen einbringen, da MMJ mit in mo<strong>der</strong>nen Programmiersprachen üblichen<br />

Konzepten aufgebaut ist, es ist objektorientiert, besitzt klare Hierarchien, auch lassen sich<br />

bei Bedarf, in C++ o<strong>der</strong> Java programmierte Externals (unter Nutzung von verfügbaren<br />

APIs) hinzufügen.


2.28 Algorithmen und Datenstrukturen<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Piepmeyer<br />

Dr. Spale<br />

Voraussetzungen ‣ Grundlagen <strong>der</strong> Programmierung<br />

‣ Objektorientierte Programmierung 1<br />

‣ Vergleichbare Kenntnisse<br />

Lernziele<br />

Nach erfolgreicher Absolvierung kennen die Teilnehmer gängige Datenstrukturen wie<br />

Arrays, verkettete Listen, Heaps und verschiedene Arten von Suchbäumen.<br />

Algorithmen etwa zum Sortieren von Listen werden ebenfalls vermittelt. Mit Hilfe <strong>der</strong><br />

Komplexitätstheorie sind die Teilnehmer in <strong>der</strong> Lage Datenstrukturen und Algorithmen<br />

kritisch zu analysieren.<br />

Inhalt<br />

In dieser Veranstaltung werden Methoden zur Untersuchung, Beschreibung und<br />

Entwicklung von Datenorganisationen und Zugriffsmethoden vermittelt. Ein zentrales<br />

Hilfsmittel bildet hier die elementare Komplexitätstheorie, die den Brückenschlag<br />

zwischen Methoden <strong>der</strong> Mathematik und <strong>der</strong> Informatik darstellt.<br />

Die Verfahren zur Beschreibung und Analyse von Algorithmen werden exemplarisch an<br />

Sortierverfahren geübt. Hier werden sowohl die intuitiv-elementaren als auch die<br />

optimierten Sortieralgorithmen erläutert und theoretisch auf ihre Leistungsfähigkeit –auch<br />

im worst case- untersucht.<br />

Die Vermittlung des Stoffes in <strong>der</strong> Vorlesung findet ausgewogen zwischen Theorie und<br />

Praxis etwa durch die Erläuterung von Grafiken und Code-Fragmenten statt.<br />

Im begleitenden Praktikum führen die Studierenden selbständig Programmieraufgaben<br />

durch. Eine Lernkontrolle findet dabei regelmäßig bei <strong>der</strong> Abnahme <strong>der</strong> Testate im<br />

Einzelgespräch mit dem Dozenten statt.<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur ‣ A.V. Aho, J.D. Ullman: Informatik, Datenstrukturen und Konzepte <strong>der</strong> Abstraktion,<br />

mitp, Bonn 1996.<br />

‣ D. E. Knuth: The Art of Computer Programming, (3 Vol.), Addison-Wesley, 2002.<br />

‣ R. Sedgewick: Algorithmen in Java, Pearson Studium, 2002.<br />

‣ R. Sedgewick: Algorithmen in C++, Addison-Wesley, Bonn u.a., 2002.<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

In <strong>der</strong> Software-Entwicklung muss immer wie<strong>der</strong> entschieden werden, wie Daten – auch<br />

in Hinsicht auf einen effizienten Zugriff – organisiert werden. In dieser Veranstaltung wird<br />

eine Übersicht zu den Standards des Fachgebietes mit zahlreichen Anwendungsbeispielen<br />

gegeben.


2.29 Computernetze 1<br />

Fakultät<br />

Informatik<br />

SWS<br />

4 (Vorlesung)+ 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Karduck<br />

Voraussetzungen ‣ Einführung in die Webtechnologien<br />

Lernziele<br />

Die Studierenden lernen die grundlegenden Konzepte, Protokolle und Technologien von<br />

Computer-Netzen kennen, die für private und öffentliche Netze wesentlich sind. Basierend<br />

auf dem ISO/OSI-Modell und dem TCP/IP-Modell werden die Zusammenhänge im<br />

Bereich „Computer Networking“ und „Offener Systeme“ vermittelt, so dass<br />

Entwicklungstrends und <strong>der</strong>en Potenziale in <strong>der</strong> Praxis genutzt werden können. Neben den<br />

festnetzbasierten Infrastrukturen im lokalen und Weitverkehrs-Bereich umfasst dies eine<br />

Einführung in Netzkategorien für die mobile Kommunikation sowie Themen <strong>der</strong><br />

Sicherheit in Netzen. Hierdurch wird das grundlegende Know-how erworben, um an<br />

Projekten im Umfeld des Designs, <strong>der</strong> Umsetzung und des Betriebs von „Computer<br />

Networks“ und des Einsatzes von Mobile Networking systematisch mitzuwirken. Im<br />

begleitenden Praktikum werden die Vorlesungsinhalte in Teamarbeit ergänzt.<br />

Inhalt ‣ Computernetze und Referenzmodelle<br />

‣ TCP/IP-Protokollsuite<br />

‣ LAN/WAN-Netzwerktopologien<br />

‣ Internetworking/Routing (WAN)<br />

‣ Infrastrukturen mobiler Netze (WLAN, Bluetooth, GPRS, UMTS/LTE,<br />

ZigBee/Mesh-Netze)<br />

‣ Voice over IP Infrastrukturen<br />

‣ Dienste in Kommunikationsnetzen (z.B. Security-Dienste, Verzeichnisdienste)<br />

‣ Case Studies über Computer-Netzwerk-Infrastrukturen<br />

Das begleitende Praktikum ergänzt die Vorlesungsinhalte. Hierbei werden physikalische<br />

und logische Netze konfiguriert, Routing-Verfahren erprobt/simuliert, Mesh-Netze erprobt<br />

o<strong>der</strong> Netzverkehr analysiert.<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur ‣ Peterson, L., Davie, B. (2007): Computernetze – eine systemorientierte Einführung,<br />

dpunkt-Verlag<br />

‣ Kurose, J.F., Ross, K.W. (2008): Computer Netzwerke: Der Top-Down-Ansatz,<br />

Prentice Hall Int.<br />

‣ Scherff, J. (2010): Computernetze, Vieweg Verlag<br />

‣ Badach, A. (2010): Voice over IP, Hanser Verlag.<br />

‣ Fuchß, T. (2009): Mobile Computing, Hanser-Verlag<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Die globale Vernetzung und die heute de facto bestehende Abhängigkeit jedes grösseren<br />

Unternehmens von <strong>der</strong> Informations- und Kommunikationstechnik definiert die Bedeutung<br />

des Wissensgebiets „Computer-Netze“ für jeden Informatiker. Der Mix zwischen<br />

Kommunikation über festnetzbasierte und mobile Netze ist die Grundlage von Endgeräte-,<br />

Benutzer-, und Dienstmobilität. Sie müssen deshalb mit den wesentlichen Konzepten,<br />

Protokollen, Technologien und Diensten vertraut sein, um die Potenziale aktueller Netz-<br />

Infrastrukturen in Projekten umsetzen zu können.


Sonstige Hinweise<br />

Das Modul bildet die Grundlage für Computernetz-Teile <strong>der</strong> Vorlesung „Verteilte<br />

Infrastrukturen für mobile Systeme“, sowie für weiterführende Themen im Bereich des<br />

Mobile Networking, Protocol-Engineering und IT-Sicherheit.


2.30 Computernetze 2<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Kaspar<br />

Prof. Dr. Reich<br />

Voraussetzungen ‣ Computernetze 1<br />

Lernziele<br />

Verständnis für den Aufbau und die Funktionsweise von Rechnernetzen, vertiefte<br />

Kenntnis aktueller Netztechnologien mit Fokus auf die Internettechnologien. Verständnis<br />

für die grundlegenden Prinzipien <strong>der</strong> Rechnervernetzung. Fähigkeit bei neuen<br />

Technologien die darunter liegenden grundlegenden Prinzipien zu erkennen. Fähigkeit<br />

aktiv mit Netztechnologien umzugehen, z.B. Analyse von Protokollen, Design und Betrieb<br />

von Rechnernetzen und netzbasierten Anwendungen.<br />

Inhalt<br />

Aufbauend auf Computernetze 1 werden Kenntnisse vertieft und neue Fel<strong>der</strong> erarbeitet.<br />

Wichtige Punkte sind: Anwendungsprotokolle (http, SMTP, DNS), Ende-zu-Ende<br />

Protokolle (UDP, TCP) mit beson<strong>der</strong>er Berücksichtigung von Dienstgüte, Flusskontrolle<br />

und Überlastkontrolle, Paketvermittlung, insbeson<strong>der</strong>e dynamisches Routing (RIP, OSPF,<br />

BGP), Multicast und Multicast-Routing. Vertiefung <strong>der</strong> Kenntnisse über das<br />

Internetprotkoll (IPv4, Ipv6), Adressierung in <strong>der</strong> Sicherungsschicht, ARP, PPP, Link-<br />

Virtualisierung, ATM, MPLS, Multimedianetze<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur ‣ James F. Kurose, Keith W. Ross; Computernetze; Addison-Wesley (Pearson<br />

Studium); 4. Auflage; 2009<br />

‣ Larry L. Peterson, Bruce S. Davie, Computernetze; dpunkt.verlag; 4. Auflage; 2007<br />

‣ Jürgen Scherff: “Computernetze”; Vieweg Verlag; 2006<br />

‣ Douglas E. Comer; Computernetzwerke und Internets; Prentice Hall (Pearson<br />

Studium); 3. Auflage; 2002<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Für eine Tätigkeit im Bereich <strong>der</strong> System- und Netzadministration o<strong>der</strong> <strong>der</strong> Entwicklung<br />

verteilter Anwendungen o<strong>der</strong> sind die hier vermittelten Kenntnisse essentiell. Da heute die<br />

Rechnervernetzung allgegenwärtig geworden ist, gehören Kenntnisse über Rechnernetze<br />

und insbeson<strong>der</strong>e fundierte Kenntnisse <strong>der</strong> Protokolle des Internet zur Grundausstattung<br />

jedes Informatikers.<br />

Sonstige Hinweise Grundlage für die Module Netzwerksicherheit und Netzwerkmanagement.


2.31 Datenbanken (IN)<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Piepmeyer<br />

Voraussetzungen ‣ Die Studierenden sollten Programmierkenntnisse mitbringen, wie sie etwa im Modul<br />

„Objektorientierte Programmierung 1“ vermittelt wird.<br />

Lernziele<br />

Nach dem erfolgreichen Besuch des Moduls können die Studierenden Datenbanksysteme<br />

anhand des ANSI/SPARC-Modells beschreiben. Sie sind in <strong>der</strong> Lage selbstständig einen<br />

Datenbankentwurf durchzuführen und den Entwurf mit Hilfe eines relationalen<br />

Datenbankmanagementsystems (RDBMS) zu implementieren. Die Studierenden erlernen<br />

die Abfragesprache SQL und können so auch Daten bearbeiten.<br />

Inhalt<br />

Grundsätzlich geht es um eine Einführung in das Design relationaler Datenbanken und die<br />

Structured Query Language (SQL).<br />

Es wird die solide theoretische Grundlage relationaler Datenbanken dargelegt. Die<br />

grundlegenden Begriffe des relationalen Modells werden vermittelt, um in Verbindung mit<br />

dem E/R-Modell Wege zur Datenmodellierung kennen zu lernen.<br />

Die zur Implementierung des entworfenen logischen Datenmodells erfor<strong>der</strong>lichen SQL-<br />

Befehle werden erklärt.<br />

Es wird die Formulierung geeigneter SQL-Statements zum einfügen, än<strong>der</strong>n, löschen und<br />

abfragen von Informationen in <strong>der</strong> Datenbank vermittelt. Anhand <strong>der</strong> JDBC-Schnittstelle<br />

lernen die Studierenden, wie man SQL-Statements aus Java Programmen absetzt.<br />

Die physikalische Ebene des DBMS wird anhand von Transaktionsprotokollierung, Datenorganisation<br />

und Sperren erklärt.<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur ‣ R. A. Elmasri, S. B. Navathe: Grundlagen von Datenbanksystemen, Pearson Studium<br />

(2009)<br />

‣ C. J. Date: An Introduction to Database Systems, Addison Wesley (2004)<br />

‣ M. Schubert: Datenbanken: Theorie, Entwurf und Programmierung relationaler<br />

Datenbanken Vieweg+Teubner Verlag (2006)<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

In praktisch allen Unternehmen ist die Datenbanklandschaft ein Kernstück <strong>der</strong> IT-<br />

Infrastruktur. Ihre zentrale Bedeutung erfor<strong>der</strong>t eine kompetenten Umgang mit<br />

Datenbanken und eine sichere Be-herrschung <strong>der</strong> Instrumente zum Operieren auf den<br />

Daten.


2.32 Formale Sprachen<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Übung)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Fleischer<br />

Dipl.-Math. Kettern<br />

Voraussetzungen -<br />

Lernziele<br />

Der Student soll wichtige Algorithmen und Prinzipien <strong>der</strong> theoretischen Informatik<br />

kennenlernen und anwenden können.<br />

Inhalt<br />

Formale Sprachen: Regelgrammatiken, Typ-2-Sprachen (BNF-Notation, Syntax-<br />

Diagramm, Ein- bzw. Mehrdeutigkeit), reguläre Ausdrücke<br />

Automaten: Akzeptoren (deterministisch, nicht-deterministisch, Reduktion, Zusammenhang<br />

mit Typ-3-Grammatiken), Kellerautomaten.<br />

In den Übungen werden umfangreichere Beispiele und die Hausaufgaben besprochen.<br />

Daneben werden Grammatiken und Automaten mit Software-Tools analysiert.<br />

Veranstaltungsart Vorlesung + Übung<br />

Literatur ‣ Wagenknecht/Hielscher: Formale Sprachen, abstrakte Automaten und Compiler<br />

‣ San<strong>der</strong>/Stucky/Herschel: Automaten, Sprachen, Berechenbarkeit<br />

Stellenwert<br />

Schulung des analytischen Denkens und <strong>der</strong> theoretischen Prinzipien <strong>der</strong> Informatik.<br />

in <strong>der</strong> Praxis


2.33 IT-Recht (ab WS 12/13)<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung)<br />

ECTS 3<br />

Turnus<br />

SS und WS<br />

Dozent<br />

N.N.<br />

Voraussetzungen ‣ Grundlagenkenntnisse in Informatik<br />

Lernziele<br />

In diesem Modul werden Grundlagen des DV-Rechts vermittelt. Die Studierenden lernen<br />

die charakteristischen Merkmale <strong>der</strong> im Softwaregeschäft verbreiteten Vertragsformen<br />

Kaufvertrag und Dienstvertrag kennen. Sie können die Risiken <strong>der</strong> mit <strong>der</strong> Erstellung und<br />

Lieferung von Software verbundenen Gewährleistungspflichten einschätzen. Anhand<br />

konkreter Fallbeispiele lernen sie, Vertragsinhalte über die Lieferung von Software wie<br />

z.B. Leistungsgegenstand, Leistungsumfang, Termin- und Preisvereinbarungen sowie<br />

Verzugsklauseln selbst zu formulieren.<br />

Inhalt<br />

Die Themen <strong>der</strong> Vorlesung setzen sich intensiv mit den vertragsrechtlichen Aspekten <strong>der</strong><br />

Lieferung von DV-Produkten und -Dienstleistungen auseinan<strong>der</strong>. Im einzelnen werden<br />

folgende Themen behandelt:<br />

‣ Einführung in das Vertragsrecht<br />

‣ Lieferung von DV-Systemen auf <strong>der</strong> Basis von Werk- o<strong>der</strong> Kaufverträgen<br />

‣ Benutzungsanspruch des Anwen<strong>der</strong>s und Programmschutz<br />

‣ Wartung und Pflege von Software-Produkten<br />

‣ Miete und Leasing von Software<br />

Veranstaltungsart Vorlesung<br />

Leistungsnachweis 1K<br />

Literatur ‣ Horst Speichert: Praxis des IT-Rechts. Vieweg und Teubner, 2007.<br />

‣ Christoph Zahrnt: IT-Projektverträge – Erfolgreiches Management. Dpunkt Verlag,<br />

2008.<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Softwareingenieure unterstützen die Vertriebsorganisation u. a. bei <strong>der</strong> Ausarbeitung von<br />

Angeboten und Verträgen über die Lieferung von DV-Produkten. Sie müssen daher im<br />

Umgang mit kommerziellen und rechtlichen Aspekten von DV-Verträgen geübt sein.


2.34 IT-Sicherheit in verteilten Infrastrukturen (ab SS 2013)<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Laschinger<br />

Frank Dölitzscher, Msc.<br />

Voraussetzungen ‣ Grundkenntnisse in <strong>der</strong> Vernetzung und von Netzprotokollen (z.B. erfolgreicher<br />

Abschluss des Moduls „Computernetze“)<br />

Lernziele<br />

IErwerb grundlegen<strong>der</strong> Kenntnisse über (un-)sichere Rechnernetze; Kennenlernen<br />

genereller Mechanismen und aktueller Werkzeuge zum Umgang mit Sicherheitsproblemen;<br />

Anwendung und Vertiefung des Lehrinhalte anhand praktischer Beispiele.<br />

Inhalt ‣ Datenschutz- und Datensicherheit, IT-Infrastruktur, Vertraulichkeit, Integrität,<br />

Authentizität, Verfügbarkeit<br />

‣ Vertraulichkeit: Symmetrische und asymmetrische Verschlüsselung, Zugriffskontrolle,<br />

Firewalls<br />

‣ Security Management: Bedrohungsanalyse, Schutzbedarfsanalyse, Risikoanalyse<br />

‣ Praktische Sicherheit in Netzwerkumgebungen:<br />

➢ Protokolle (IPSec, SSL etc.)<br />

➢ Angriffe auf Netzwerkumgebungen<br />

➢ Sicherungstopologien, Firewall-Techniken<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Leistungsnachweis 1K + 1A<br />

Literatur ‣ Claudia Eckert: IT-Sicherheit – Konzepte, Verfahren, Protokolle, 6. Auflage,<br />

Oldenbourg, 2009.<br />

‣ CFrank Neugebauer: Penetration Testing mit Metasploit - Eine praktische<br />

Einführung, dpunkt-Verlag, 2011.<br />

‣ Bruce Schneier: Secret & Lies – IT-Sicherheit in einer vernetzten Welt, dpunkt-<br />

Verlag, 2004.<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Das Absichern von verteilten Infrastrukturen ist heute eines <strong>der</strong> zentralen<br />

Beschäftigungsfel<strong>der</strong> von Netzwerkspezialisten. Hierbei ist es nicht nur wichtig, die<br />

eigene Umgebung evaluieren zu können, son<strong>der</strong>n auch durch Strukturwissen über<br />

mögliche Angriffe und fundierte Methoden vorausschauend agieren zu können.


2.35 Mobile Systeme und Anwendungen (neu)<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Workshop)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Hollun<strong>der</strong><br />

Prof. Dr. Thiel<br />

Voraussetzungen ‣ Computernetze, Verteilte Infrastrukturen für mobile Systeme<br />

Lernziele<br />

Das Potenzial und Einsatzgebiete innovativer Anwendungen unter Einbeziehung mobiler<br />

Endgeräte wie Smartphones, PDAs und Handys können bewertet werden. Tiefergehende<br />

Konzepte und zugrunde liegende Architekturen ausgewählter Anwendungsszenarien<br />

sollen verstanden werden. Die Bewertungskompetenz <strong>der</strong> Studierenden hinsichtlich <strong>der</strong><br />

technischen Realisierbarkeit neuartiger Anwendungen soll ausgebaut werden.<br />

Inhalt ‣ Endgeräte für mobile Systeme: Laptops, Notebooks, Smartphones, PDAs, Handys,<br />

Handhelds, Sensoren und Embedded Systems<br />

‣ Architektur verteilter mobiler Anwendungen<br />

‣ Mobiles Transaktionsmodell<br />

‣ Synchronisation von Inhalten<br />

‣ Zugriff auf bestehende Dienste<br />

‣ Qualitätsaspekte für mobile Anwendungssysteme<br />

‣ Ortsbezogene mobile Anwendungen<br />

‣ Navigationsanwendungen<br />

‣ Mobile Anwendungen und soziale Netze<br />

Veranstaltungsart Vorlesung + Workshop<br />

Literatur ‣ Mike Bach: Mobile Anwendungen mit Android: Entwicklung und praktischer<br />

Einsatz, Addison-Wesley, ISBN: 978-3-8273-3047-5, 2011.<br />

‣ Dennis Krannich: Mobile System Design: Herausfor<strong>der</strong>ungen, Anfor<strong>der</strong>ungen und<br />

Lösungsansätze für Design, Implementierung und Usability-Testing Mobiler<br />

Systeme, Books on Demand, ISBN 978-3-8423-0724-7, 2010.<br />

‣ Thomas Fuchß: Mobile Computing: Grundlagen und Konzepte für mobile<br />

Anwendungen, Hanser Verlag, ISBN 978-3-446-22976-1, 2009.<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Die stark zunehmende Verbreitung von mobilen Endgeräten nicht nur im geschäftlichen<br />

Umfeld son<strong>der</strong>n auch im privaten Bereich ist die Triebfe<strong>der</strong> für eine Vielzahl von<br />

zukünftigen Anwendungs-szenarien. Hierbei spielt die mobile und flexible Nutzung von<br />

unterschiedlichsten Diensten und Daten eine wesentliche Rolle.


2.36 Netzprogrammierung<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Kaspar<br />

Prof. Dr. Reich<br />

Voraussetzungen ‣ Objektorientierte Programmierung<br />

Lernziele<br />

Programmierung verteilter Anwendungen mit verschiedenen Ansätzen. Vertieftes<br />

Verständnis für Ansätze <strong>der</strong> Client-Server-Programmierung. Umgang mit <strong>der</strong> durch<br />

Verteilung gegebenen Nebenläufigkeit. Erfahrungen sammeln mit APIs (Application<br />

Programming Interfaces) in den Programmiersprachen C und Java. Beurteilung von<br />

verschiedenen Anwendungsfällen in Bezug auf Vor- und Nachteile und <strong>der</strong>en Eignung.<br />

Inhalt<br />

Ein-, Ausgabe (Streams, Puffer, Kanäle), Socketprogrammierung in Java und C, Client-<br />

Server Applikationen mit TCP und UDP, Serverkonzepte (iterative, concurrent, stateless,<br />

statefull, ...), verteilter Prozeduraufruf (RPC), Überwindung <strong>der</strong> Heterogenität <strong>der</strong> Daten<br />

(XDR), grundlegende Webkonzepte (URI, URL, HTML, ...), ProtokollHandler,<br />

ContentHandler, API für Multicastunterstützung<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur ‣ Elliote Rusty Harold; „Java Network Programming“; 2000; O'Reilly<br />

‣ Stevens, W.R., Fenner, Bill; Rudoff Andrew M; „UNIX Network Programming“; 3rd<br />

Edition; 2003;<br />

‣ Adison-Wesley<br />

‣ Günther Bengel; Verteilte Systeme; Vieweg; 2 Auflage; 2002<br />

‣ Larry L. Peterson, Bruce S. Davie; „Computernetze“ dpunkt Verlag; 3. Auflage,<br />

deutsch; 2004<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Die Programmierung verteilter Anwendungen ist essentiell in <strong>der</strong> heutigen<br />

Softwareentwicklung. Der Verteilungsaspekt ermöglicht eine Vielzahl neuartiger<br />

Anwendungen und ist in <strong>der</strong> IT-Industrie wesentlicher Wachstumsmotor. Die wichtigsten<br />

APIs verteilter Programmierung für den industriellen Einsatz haben Schnittstellen für Java<br />

und C. Durch die Verwendung von Beispielen in Java und C werden auch die<br />

Programmiererfahrungen <strong>der</strong> ersten Semester nochmals vertieft.


2.37 Netzwerkmanagement<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Kaspar<br />

Dipl.-Ing. (FH) Kramer<br />

Voraussetzungen ‣ Kenntnisse über Rechnernetze<br />

Lernziele<br />

Basistechnologien, Prozesse, Analysemethoden und Werkzeuge für das Netzwerkmanagement<br />

verstehen und anwenden.<br />

Inhalt<br />

Basistechnologien wie ICMP, SNMP, MIB, SMI, ASN1 und ausgewählte unterstützende<br />

Technologien wie BOOTP, DHCP, NAT zur Konfiguration, sowie Desktop Management,<br />

Logging und Hardware nahe Technologien wie IPMI. Sicherheit im Netzwerkmanagement.<br />

Prozessorientierter Ansatz für das Management von Netzwerken mit den Disziplinen<br />

Performanz Management, Fehler Management, Konfigurationsmanagement, Sicherheitsmanagement.<br />

Das Netzwerkmanagement wird eingeordnet in das IT-Service Management.<br />

Analyse und Beurteilung von Fehlern, <strong>der</strong>en Ursache, ihrer Dringlichkeit, sowie <strong>der</strong>en<br />

Positionierung im OSI-Modell. Strategien zur Eingrenzung von Störungsursachen.<br />

Performancemessungen. Automatische Erfassung von Hardware und Software. Dazu<br />

sollen geeignete kommerzielle und Open Source Werkzeuge (Tools) vorgestellt und<br />

besprochen werden und im Rahmen praktischer Übungen angewendet werden. In den<br />

praktischen Übungen soll auch das Verständnis von Basistechnologien vertieft werden.<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur ‣ Thomas Schwenkler; Sicheres Netzwerkmanagement; Springer; 2006<br />

‣ W. Stallings: SNMP, SNMPv2, SNMPv3, and RMON 1 and 2, Addison Wesley,<br />

1998<br />

‣ D.R. Mauro, K.J. Schmidt; Essential SNMP; Second Edition, O' Reilly; 2005<br />

‣ J.R. Burke; Network Management: concepts and practice; Pearson - Prentice Hall;<br />

2004<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Das Netzwerk als Basisinfrastruktur und Teil <strong>der</strong> IT Infrastruktur ist unverzichtbar. Das<br />

Management <strong>der</strong> Netzwerke spielt für die Qualität von Anwendungen, die in wachsen<strong>der</strong><br />

Zahl und Bedeutung verteilt sind, eine entscheidende Rolle. Verfügbarkeit, Performanz,<br />

Sicherheit sind ohne Netzwerkmanagement nicht zu erreichen. Die hier vermittelten<br />

Kenntnisse im Netzwerkmanagement bilden das Fundament für eine Tätigkeit als<br />

Netzwerk Administrator.


2.38 Netzwerksicherheit<br />

Fakultät<br />

Informatik<br />

SWS<br />

4 (Vorlesung) + 2 (Seminar)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Frank<br />

Prof. Dr. Laschinger<br />

Voraussetzungen ‣ Grundlegende Kenntnisse <strong>der</strong> Vernetzung und <strong>der</strong> Netzprotokolle (z.B. Modul<br />

Computernetze 1 erfolgreich abgeschlossen)<br />

Lernziele<br />

Einerseits sollen Empfindlichkeiten für (un-)sichere Rechnernetze geweckt werden und<br />

an<strong>der</strong>erseits die generellen Mechanismen und gerade aktuellen Tools zum Umgang mit<br />

den Problemen kennengelernt und teilweise geübt werden.<br />

Inhalt<br />

Kryptographie:<br />

‣ Symmetrische und asymmetrische Verschlüsselung<br />

‣ Geheimhaltung und Integritätssicherung, Betriebsarten<br />

‣ Digitale Signatur<br />

‣ Authentisierung mittels Kryptographie<br />

‣ Keymanagement<br />

Architekturen, Techniken und Verfahren <strong>der</strong> Netzwerk-Sicherheit:<br />

‣ Grundlagen (Modelle, Host-Based, Net-Based)<br />

‣ Protokolle (IPSec, SSL etc.)<br />

‣ Sicherungstopologien, Firewall-Techniken, Intrusion Detection Systeme (DMZ,<br />

Honeypot, VPN)<br />

‣ Zertifikate<br />

‣ Datenschutz, Pseudonymisierung<br />

Seminar: Ausarbeitung von Sicherheitsthematiken – teils auf theoretischer Basis, teils<br />

durch praktische Umsetzung – Gruppenarbeit<br />

Veranstaltungsart Vorlesung + Seminar<br />

Literatur ‣ Eckert: IT-Sicherheit Studienausgabe. Oldenbourg 2005<br />

‣ Ettisberger: IT-Security & Hacking, Books on Demand GmbH 2006<br />

‣ Beutelpacher: Mo<strong>der</strong>ne Verfahren <strong>der</strong> Kryptographie, Vieweg 1995<br />

‣ Ertel: Angewandte Kryptographie, Hanser 2007<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Absichern von Netzsegmenten/Intranets ist heute eines <strong>der</strong> zentralen Beschäftigungsfel<strong>der</strong><br />

<strong>der</strong> Netzadministration. Hierbei ist <strong>der</strong> im Vorteil, <strong>der</strong> nicht immer nur reagieren son<strong>der</strong>n<br />

durch fundiertes Strukturwissen zu diesem Thema auch vorausschauend agieren kann.


2.39 Objektorientierte Programmierung 2<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Kaspar<br />

Voraussetzungen ‣ Objektorientierte Programmierung 1<br />

Lernziele<br />

Wie<strong>der</strong>holung und Vertiefung <strong>der</strong> aus C übernommenen Sprachelemente. Abdeckung <strong>der</strong><br />

wichtigen Elemente des objektorientierten Teils von C++, wie Klassen, Objekte,<br />

Wertobjekte erzeugen, kopieren, vernichten, Aggregation und Komposition. Vererbung,<br />

frühe Bindung, späte Bindung, Mehrfachvererbung, Templates. Einführung <strong>der</strong><br />

Syntaxelemente zum Verständnis <strong>der</strong> Standardbibliothek. Einführung in die<br />

Standardbibliothek.<br />

Inhalt<br />

Klassen und Objekte, Konstruktor, Destruktor, Kopierkonstruktor und Speicherverwaltung,<br />

Überladung von Operatoren, Typen und Typumwandlungen, statische<br />

Klassenelemente, Vererbung, Mehrfachvererbung, Virtuelle Funktionen und Polymorphie,<br />

Templates, Ausnahmebehandlung. Die Standardbibliothek mit Ein- Ausgabe, Behältern,<br />

Algorithmen, Ausnahmen.<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Leistungsnachweis 1K + 1A<br />

Literatur ‣ Martin Aupperle, Die Kunst <strong>der</strong> Programmierung mit C++; Vieweg; 2. Auflage; 2002<br />

‣ Ulrich Breymann; C++ - Eine Einführung; 9. Auflage; Hanser; 2007<br />

‣ Herbert Schildt; C++ Ent-Packt, Osborne Mc Graw Hill; 2001<br />

‣ Bruce Eckel: Thinking in C++; Prentice Hall; 2000<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

C++ hat die sehr gute Performance von C geerbt. Die Sprache besitzt sehr reichhaltige<br />

Ausdrucksmöglichkeiten, ist weit verbreitet und gut standardisiert, d.h. langlebig. Sie<br />

besitzt interessante, weit reichende Konzepte, insbeson<strong>der</strong>e für große Softwareprojekte.<br />

Software Entwickler mit guten C++ Kenntnissen sind deshalb nach wie vor eine gefragte<br />

Spezies.


2.40 Parallele Prozesse (neu)<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Gläser<br />

Voraussetzungen ‣ Kenntnisse in <strong>der</strong> Programmiersprache Java wie sie im Modul Objektorientierte<br />

Programmierung 1 vermittelt werden.<br />

Lernziele<br />

Nach dem Besuch des Moduls ist <strong>der</strong> Student in <strong>der</strong> Lage, die vorgestellten Konzepte<br />

problemgerecht einzusetzen und eine größere Anwendung mit nebenläufigen Aktionen,<br />

die <strong>der</strong> Synchronisation bedürfen, zu entwerfen und zu implementieren.<br />

Inhalt<br />

Die Synchronisationsprobleme werden beim Ablauf von nebenläufigen Aktionen an den<br />

klassischen Beispielen Kritischer Abschnitt, Erzeuger-Verbraucher- und Leser-Schreiber-<br />

Problem geschil<strong>der</strong>t und die Lösungsmöglichkeiten diskutiert. Die Implementierung von<br />

nebenläufige Aktionen als Threads wird an Java Beispielen vorgeführt, ebenso die Lösung<br />

<strong>der</strong> Synchronisationsprobleme mit Mutexen und Conditions, bzw. mit Pipes, Message<br />

Queues, Semaphoren und <strong>der</strong> Monitortechnik nach Hoare. Im weiteren Verlauf <strong>der</strong><br />

Vorlesung wird die Problematik von Nebenläufigkeit bei Netzen (Sockets, RMI, Servlets)<br />

und bei Client-Server-Systemen diskutiert.<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Leistungsnachweis 1K + 1A<br />

Literatur ‣ Oechsle, R.: Parallele und verteilte Anwendungen in JAVA, München, Hanser, 2007<br />

‣ Goetz, B., Peierls, T., Bloch, J., Bowbeer, J., Holmes, D., Lea, D.: Java Concurrency<br />

in Practice, Amsterdam, Addison-Wesley Longman, 2006<br />

‣ Magee, J., Kramer, J.: Concurrency: State Models and Java Programs, Chichester,<br />

Wiley & Sons, 2006<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Nebenläufige Prozesse und Threads werden inzwischen in nahezu je<strong>der</strong> Anwendung<br />

eingesetzt; je<strong>der</strong> Student sollte mit <strong>der</strong> Synchronisationsproblematik und ihren<br />

Lösungsmöglichkeiten intensiv vertraut sein; in <strong>der</strong> Praxis gibt es hier immer noch die<br />

größten Probleme.


2.41 Software Engineering 1<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) +4 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Rezagholi<br />

Prof. Dr. Thiel<br />

Voraussetzungen -<br />

Lernziele<br />

Die Studenten erhalten mit „Software Engineering 1“ das notwendige Wissen, um eine<br />

Anwendung methodisch zu untersuchen und zu entwerfen. In <strong>der</strong> Vorlesung werden die<br />

Methoden <strong>der</strong> Analyse und des Entwurfs behandelt; während <strong>der</strong> Übungen wird das<br />

erworbene Wissen anhand von Beispielen vertieft und verfestigt.<br />

Inhalt<br />

Die wachsende Komplexität <strong>der</strong> Software, die steigenden Qualitätsanfor<strong>der</strong>ungen <strong>der</strong><br />

Kunden und <strong>der</strong> zunehmende Kosten- und Zeitdruck auf Unternehmen machen eine<br />

systematische Vorgehensweise bei <strong>der</strong> Konzeption, Modellierung und Implementierung<br />

von Softwaresystemen erfor<strong>der</strong>lich.<br />

Software Engineering ist eine technische Disziplin, die sich mit Methoden, Techniken und<br />

Werkzeugen zur effizienten Entwicklung von Softwaresystemen befasst. Im Mittelpunkt<br />

des Software Engineering 1 steht die Modellierung von Softwaresystemen<br />

Aus dem Inhalt:<br />

‣ Einführung in die Modellierung<br />

‣ Analyse und Entwurf mit UML: Use Cases, Statisches Modell, Dynamisches Modell<br />

‣ Analyse- und Entwurfsmuster, Softwarearchitektur<br />

‣ Implementierung: Strukturierung im Kleinen<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur<br />

Bücher (jeweils neueste Auflage):<br />

‣ Bruegge, B.; Dutoit, A. H.: Object-Oriented Software Engineering Using UML,<br />

Patterns, and Java, 2nd Edition. Pearson Education.<br />

‣ Maciaszek, L. A.; Liong, B. L.: Practical Software Engineering, Addison Wesley.<br />

‣ Oestereich, B.: Objektorientierte Softwareentwicklung mit <strong>der</strong> Unified Modeling<br />

Language., Oldenbourg.<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Sonstige Hinweise<br />

Zeitschriften:<br />

‣ ACM Transactions on Software Engineering and Methodology, ACM Press, New<br />

York<br />

‣ IEEE Transactions on Software Engineering, IEEE Computer Society, Los Alamitos<br />

‣ IEEE Software, IEEE Computer Society, Los Alamitos<br />

Der Stellenwert des Software Engineering für den Beruf „Informatiker“ ist erheblich, denn<br />

Software Engineering ist die praktische Anwendung von Erkenntnissen <strong>der</strong> Informatik für<br />

die wirtschaftliche Entwicklung qualitativ hochwertiger Software.<br />

Das Modul wird im Studiengang AIB „Software Engineering 1“ und im Studiengang CNB<br />

„Software Engineering“ bezeichnet.


2.42 Software Engineering 2<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) +2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Hollun<strong>der</strong><br />

Prof. Dr. Rezagholi<br />

Voraussetzungen ‣ Kenntnis <strong>der</strong> Analyse- und Entwurfsmethoden (Software Engineering 1)<br />

Lernziele<br />

Im Rahmen dieses Moduls wird den Studenten das Verständnis vermittelt, wie die<br />

Entwicklungsprozesse zu gestalten sind, um große Softwaresysteme zu entwickeln. In <strong>der</strong><br />

Vorlesung werden die wesentlichen Softwareprozesse behandelt; während des Praktikums<br />

erstellen die Studenten Software-Spezifikationen für ein umfangreicheres Beispiel aus <strong>der</strong><br />

Praxis.<br />

Inhalt<br />

Software Engineering ist eine technische Disziplin, die sich mit Methoden, Techniken und<br />

Werkzeugen zur effizienten Entwicklung von Softwaresystemen befasst. Software<br />

Engineering 2 baut auf dem Modul „Software Engineering 1“ auf. Während SE 1 sich mit<br />

den Methoden <strong>der</strong> Analyse und des Designs beschäftigt, vermittelt SE 2 die Prozesssicht<br />

auf die Softwareentwicklung, insbeson<strong>der</strong>e im Hinblick auf die Definition und<br />

Spezifikation von Softwaresystemen.<br />

Aus dem Inhalt:<br />

‣ Requirements Engineering: Anfor<strong>der</strong>ungsermittlung, -analyse und Dokumentation<br />

‣ Architekturanalyse: Bewertung von Design-Entscheidungen (Definition wirtschaftlicher<br />

Architekturen).<br />

‣ Prozessdefinition: Prozessmodelle, Prozessauswahl<br />

‣ Konfigurations- und Än<strong>der</strong>ungsmanagement<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur<br />

Bücher (jeweils neueste Auflage):<br />

‣ Balzert, Helmut: Lehrbuch <strong>der</strong> Software-Technik: Software-Management. Spektrum<br />

Akademischer Verlag.<br />

‣ Pomberger, Gustav; Pree, Wolfgang: Software Engineering – Architektur-Design und<br />

Prozessorientierung. Hanser Verlag.<br />

‣ Sommerville, I.: Software Engineering. Addison-Wesley.<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Zeitschriften:<br />

‣ ACM Transactions on Software Engineering and Methodology, ACM Press, New<br />

York<br />

‣ IEEE Transactions on Software Engineering, IEEE Computer Society, Los Alamitos<br />

‣ IEEE Software, IEEE Computer Society, Los Alamitos<br />

Der Stellenwert des Software Engineering für den Beruf „Informatiker“ ist erheblich, denn<br />

Software Engineering ist die praktische Anwendung von Erkenntnissen <strong>der</strong> Informatik für<br />

die wirtschaftliche Entwicklung qualitativ hochwertiger Software.


2.43 Software-Architektur<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Hollun<strong>der</strong><br />

Voraussetzungen ‣ Software Engineering 1, Software Engineering 2<br />

‣ Objektorientierte Programmierung 2<br />

Lernziele<br />

Die Studierenden verstehen die Bedeutung <strong>der</strong> Software-Architektur bei <strong>der</strong> Entwicklung<br />

von Software-Systemen und kennen die zentralen Aufgaben des Software-Architekten.<br />

UML Diagrammarten können zur Modellierung <strong>der</strong> unterschiedlichen Sichten auf<br />

Software-Systeme eingesetzt werden. Die Studierenden kennen wichtige Architekturmuster<br />

und -heuristiken, um fachliche und technische Anfor<strong>der</strong>ungen an Software-<br />

Systeme umsetzen zu können. Ein weiteres Ziel ist das Kennenlernen wichtiger<br />

Architekturaspekte und entsprechen<strong>der</strong> Technologien, um technische Systemeigenschaften<br />

in dem zu erstellenden Software-System realisieren zu können.<br />

Inhalt ‣ Sichten auf Software-Systeme<br />

‣ Vorgehen bei <strong>der</strong> Architekturerstellung<br />

‣ Aufgaben des Software-Architekten<br />

‣ Architekturdokumentation<br />

‣ Entwurfsprinzipien<br />

‣ Architekturmuster<br />

‣ Heuristiken zum Architekturentwurf<br />

‣ Typische Architekturaspekte: Persistenz, graphische Oberflächen, Integration<br />

bestehen<strong>der</strong> Systeme, Geschäftsregeln, Workflow, Sicherheit, Logging<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur ‣ Gernot Starke. Effektive Software-Architekturen, ein praktischer Leitfaden, Hanser<br />

Verlag, 2008.<br />

‣ Dino Esposito, Andrea Saltarello. Microsoft .NET: Architecting Applications for the<br />

Enterprise. Microsoft Press, 2009.<br />

‣ Len Bass, Paul Clements, Rick Kazman. Software Architecture in Practice. Addison-<br />

Wesley, 2009.<br />

‣ Richard Taylor, Nenad Medvidovic, Eric Dashofy. Software Architecture,<br />

Foundations, Theory, and Practice. John Wiley & Sons, 2010.<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Die Erstellung von Software-Architekturen spielt eine zentrale Rolle bei <strong>der</strong><br />

professionellen Erstellung von Software-Systemen. Software-Architekten müssen<br />

fachliche und technische Anfor<strong>der</strong>ungen an Software-Systeme umsetzen. Durch die<br />

Definition angemessener Software- Architekturen sollen nachvollziehbare und flexible<br />

Strukturen zur Kommunikation, Dokumentation und Implementierung des zu erstellenden<br />

Systems geschaffen werden.


2.44 Softwarequalität<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Rezagholi<br />

Voraussetzungen ‣ Kenntnisse aus dem Bereich Programmierung und Software Engineering<br />

Lernziele<br />

Die Studenten sind in <strong>der</strong> Lage, für jede Phase des SW-Entwicklungsprozesses<br />

Testverfahren zu bewerten, auszuwählen und durchzuführen, für die ausgewählten<br />

Testverfahren möglichst effiziente Testfälle zu generieren und die Ergebnisse zu<br />

dokumentieren.<br />

Inhalt<br />

Die Prüfung von Software ist nicht auf eine bestimmte Phase im Projekt beschränkt. Jedes<br />

Entwicklungsergebnis kann einer Prüfung unterzogen werden. In <strong>der</strong> Vorlesung werden<br />

die wesentlichen Prüfverfahren behandelt, die dann im Praktikum anhand von Beispielen<br />

vertieft werden. Ferner wird die Bedeutung von Software-Metriken zur Bewertung und<br />

Verbesserung <strong>der</strong> Softwarequalität behandelt. Dabei werden ausgewählte Software-<br />

Metriken und ihre Anwendung diskutiert.<br />

Aus dem Inhalt:<br />

‣ Statische Softwareprüfung, insbeson<strong>der</strong>e Review-Techniken und statische<br />

Programmanalyse<br />

‣ Dynamische Softwareprüfung: Methoden des Glasbox- und des Blackbox-Tests<br />

‣ Modul-, Integrations- und Systemtest<br />

‣ Softwaremetriken (die Betonung liegt auf Produkt-Metriken und <strong>der</strong>en Anwendung)<br />

‣ Metrikanwendung in <strong>der</strong> Praxis<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur<br />

Bücher (jeweils neueste Auflage):<br />

‣ Liggesmeyer, Peter: Software Qualität – Testen, Analysieren und Verifizieren von<br />

Software, Spektrum Akademischer Verlag.<br />

‣ Rezagholi, Mohsen: Prozess- und Technologiemanagement in <strong>der</strong> Softwareentwicklung<br />

- Ein metrikbasierter Ansatz. Oldenbourg.<br />

‣ Schnei<strong>der</strong>, Kurt.: Abenteuer Software Qualität – Grundlagen und Verfahren für<br />

Qualitätssicherung und Qualitätsmanagement, dpunkt.verlag<br />

‣ Sneed, Harry; Winter, Mario: Testen objektorientierter Software. Hanser Verlag.<br />

‣ Spillner, Andreas, Linz, Tilo: Basiswissen Softwaretest, dpunkt.verlag.<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Der Stellenwert <strong>der</strong> Softwarequalität in <strong>der</strong> Softwareentwicklung ist erheblich und<br />

naheliegend: Allein um Pannen zu beseitigen, geben IT-Unternehmen jährlich etwa ein<br />

Drittel ihres Gesamtbudgets aus. Softwarequalität ist <strong>der</strong> zentrale Erfolgsfaktor jedes<br />

Softwareprojekts.


2.45 Systemsoftware (IN)<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Frank<br />

Prof. Dr. Gläser<br />

Voraussetzungen ‣ Gute Kenntnisse in C und Java<br />

Lernziele<br />

Die wichtigsten Funktionalitäten von Betriebssystemen einerseits und darauf aufbauenden<br />

Benutzerschnittstellen an<strong>der</strong>erseits sollen kennengelernt und in ausgewählten Teilen<br />

praktisch um-gesetzt werden. Grundziele sind (1) das Verstehen <strong>der</strong> Mechanismen, um an<br />

den Schnittstellen damit umgehen zu können und (2) das darauf aufbauende Umgehen mit<br />

Nebenläufigkeit.<br />

Inhalt ‣ Multi-Processing, Prozess/Thread, Semphore, Scheduling (Theoretische Grundlagen)<br />

‣ Synchronisationskonzepte (Modellierung mit Petri Netzen, Monitor)<br />

‣ File System Systematik<br />

‣ Schnittstellen <strong>der</strong> UNIX Umgebung - OpenGroup (IPC, Posix)<br />

‣ Nebenläufigkeit in Java<br />

‣ Interprozess-/Interthread-Kommunikation<br />

‣ Praktische Umsetzung <strong>der</strong> Konzepte in Java bzw. in UNIX Umgebungen<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur ‣ Glatz: Betriebssysteme – Grundlagen, Konzepte, Systemprogrammierung,<br />

dpunkt.verlag 2006<br />

‣ Stallings: Operating Systems, Prentice Hall 2008<br />

‣ Coulouris: Distributed Systems, Addison-Wesley Longman 2006<br />

‣ Oechsle, R.: Parallele und verteilte Anwendungen in JAVA, Hanser 2007<br />

‣ Goetz,B. et.al.: Java Concurrency in Practice, Addison-Wesley Longman 2006<br />

‣ Magee.J, et.al.: Concurrency: State Models and Java Programs, Wiley&Sons 2006<br />

‣ Betriebssystembücher von Tanenbaum und Stevens<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Vertiefung des Verständnisses <strong>der</strong> Zusammenhänge in mo<strong>der</strong>nen Betriebssystemen ist<br />

gerade in Bezug auf Nebenläufigkeit wichtig. Der Einsatz von Nebenläufigkeit in<br />

Anwendungen ist in nahezu jedem Bereich heute gegeben – allerdings immer noch keine<br />

triviale Technik, die viel Kenntnisse <strong>der</strong> Zusammenhänge und auch Grundtechniken<br />

erfor<strong>der</strong>t.


2.46 Verteilte Infrastrukturen für mobile Systeme<br />

(ab WS 12/13)<br />

Fakultät<br />

Informatik<br />

SWS<br />

2 (Vorlesung) + 2 (Praktikum)<br />

ECTS 6<br />

Turnus<br />

SS und WS<br />

Dozent<br />

Prof. Dr. Kaspar<br />

Prof. Dr. Reich<br />

Voraussetzungen ‣ Computernetze<br />

Lernziele<br />

Verständnis für die Anfor<strong>der</strong>ungen, den Aufbau und die Funktionsweise verteilter Infrastrukturen<br />

für mobile Systeme. Vertiefte Kenntnis aktueller Netztechnologien. Fähigkeit<br />

bei neuen Technologien die darunter liegenden grundlegenden Prinzipien zu erkennen.<br />

Fähigkeit aktiv mit Infrastrukturkomponenten, wie Protokollen, Netzen, Middleware,<br />

Verfahren und Anwendungen umzugehen.<br />

Inhalt<br />

Aufbauend auf Computernetze werden Kenntnisse vertieft und neue Fel<strong>der</strong> erarbeitet.<br />

Wichtige Punkte sind:<br />

‣ Anwendungsprotokolle (http, DNS)<br />

‣ Ende-zu-Ende Protokolle (UDP, TCP) mit beson<strong>der</strong>er Berücksichtigung von<br />

Dienstgüte<br />

‣ Flusskontrolle und Überlastkontrolle<br />

‣ Socket API für verteilte Kommunikation<br />

‣ Dynamisches Routing (OSPF)<br />

‣ Multicast und Multicast-Routing<br />

‣ Verteilte Objekte am Beispiel Java RMI<br />

‣ Client-Server und Peer-to-Peer Netze<br />

‣ Link-Virtualisierung und QoS (ATM, MPLS)<br />

‣ Basisdienste wie Replikation, Datensynchronisation<br />

‣ Multimedianetze<br />

‣ Mobile Ad-hoc Netzwerke (manet)<br />

Veranstaltungsart Vorlesung + Praktikum<br />

Literatur ‣ James F. Kurose, Keith W. Ross; Computernetze; Addison-Wesley (Pearson<br />

Studium); 4. Auflage; 2009<br />

‣ Larry L. Peterson, Bruce S. Davie; Computernetze; dpunkt.verlag; 4. Auflage; 2007<br />

‣ Sasu Tarkoma; Mobile Middleware; Wiley; 2009<br />

Stellenwert<br />

in <strong>der</strong> Praxis<br />

Da Vernetzung heute allgegenwärtig geworden ist und immer neue Anwendungsszenarien<br />

durch diese umfassenden Kommunikationsmöglichkeiten entstehen, sind die hier vermittelten<br />

Kenntnisse extrem wertvoll für die Beherrschung und Weiterentwicklung verteilter,<br />

insbeson<strong>der</strong>e mobiler Infrastrukturen und Anwendungen.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!