Katalog der Wahlpflichtmodule - Hochschule Furtwangen
Katalog der Wahlpflichtmodule - Hochschule Furtwangen
Katalog der Wahlpflichtmodule - Hochschule Furtwangen
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.