Angewandte Informatik

Im renommierten, bundesweiten CHE-Ranking der Zeit 2021 erneut mit „sehr gut“ bewertet

Modulhandbuch

 Zurück 

Angewandte Informatik (AI)

PO-Version [  20202  ]

Algorithmen und Datenstrukturen

Empfohlene Vorkenntnisse

Modul "Prozedurale Programmierung" oder "Programmierung"

Lehrform Vorlesung/Labor
Lernziele / Kompetenzen

Erfolgreiche Teilnehmer

- kennen die behandelten klassischen Algorithmen (z.B. Suchen, Sortieren) und können diese anwenden

- können Algorithmen hinsichtlich Komplexität und Laufzeitverhalten bewerten

- können vorgegebene Algorithmen und Datenstrukturen (in Java) implementieren

- können reale Problemstellungen abstrahiert mittels Datenstrukturen darstellen und mit Algorithmen lösen

Dauer 1
SWS 4.0
Aufwand
Lehrveranstaltung 60
Selbststudium / Gruppenarbeit: 90
Workload 150
ECTS 5.0
Voraussetzungen für die Vergabe von LP

Modulprüfung für "Algorithmen und Datenstrukturen" (K90)
"Praktikum Algorithmen und Datenstrukturen" muss "m.E." attestiert sein

Modulverantwortlicher

Prof. Dr. Stefan Wehr

Max. Teilnehmer 41
Empf. Semester 2
Haeufigkeit jedes Jahr (SS)
Verwendbarkeit

Angewandte Informatik (Bachelor)
Wirtschaftsinformatik plus (Bachelor)
Wirtschaftsinformatik (Bachelor)

Veranstaltungen

Algorithmen und Datenstrukturen

Art Vorlesung
Nr. EMI112
SWS 2.0
Lerninhalt

Die Studierenden kennen klassische Algorithmen und Datenstrukturen, können deren Komplexität in der O-Notation beurteilen und selbstständig anwenden. Es werden folgende Algorithmen und Datenstrukturen behandelt:

  • Verschiedene Arten von Listen
  • Verschiedene Sortierverfahren
  • Verschiedene Suchverfahren
  • Binärbäume, Suchbäume, balancierte Suchbäume
  • Funktionale Datenstrukturen (Queues, Arrays)
  • Hashing
  • Graphen, inkl. topologische Sortierung und shortest-path Algorithmus
Literatur

Ottmann, Thomas; Widmayer, Peter (2017): Algorithmen und Datenstrukturen, 6. Auflage, Spektrum, Berlin.
Cormen, Tomas H.; Leiserson, Charles E.; Rivest, Ronald L.; Stein, Clifford (2009): Introduction to Algorithms, 3. Auflage, MIT Press.

Praktikum Algorithmen und Datenstrukturen

Art Labor
Nr. EMI113
SWS 2.0
Lerninhalt

Im Praktikum werden alle Inhalte der Vorlesungen „Algorithmen & Datenstrukturen” praktisch mit Java umgesetzt. Die Studierenden kennen klassische Algorithmen und Datenstrukturen, können deren Komplexität in der O-Notation beurteilen und selbstständig anwenden. Es werden folgende Algorithmen und Datenstrukturen behandelt:

  • Verschieden Arten von Listen
  • Verschiedene Sortierverfahren
  • Verschiedene Suchverfahren
  • Binärbäume, Suchbäume, balancierte Suchbäume
  • Funktionale Datenstrukturen (Queues, Arrays)
  • Hashing Graphen, inkl. topologische Sortierung und shortest-path Algorithmus
Literatur

Ottmann, Thomas; Widmayer, Peter (2017): Algorithmen und Datenstrukturen, 6. Auflage, Spektrum, Berlin.

Cormen, Tomas H.; Leiserson, Charles E.; Rivest, Ronald L.; Stein, Clifford (2009): Introduction to Algorithms, 3. Auflage, MIT Press

Betriebssysteme

Empfohlene Vorkenntnisse

Modul "Programmierung 1" mit Erfolg abgeschlossen

Gleichzeitige Teilnahme am Modul "Programmierung 2" 

Lehrform Vorlesung/Labor
Lernziele / Kompetenzen
  • Die Studierenden lernen die Rolle des Betriebssystems als Teil einer Systemarchitektur verstehen. Sie kennen die Grundbegriffe, Komponenten und Funktionen eines Betriebssystems.
  • Die Studierenden machen sich mit Problemstellungen auf Betriebssystemebene vertraut und lernen Lösungsansätze anzuwenden
  • Durch praktische Übungen sind die Studierenden in der Lage, eine Anwendung unter Einsatz von Betriebssystemschnittstellen zu entwickeln.
  • Die Studierenden können Werkzeuge und Hilfsmittel auf Betriebssystemebene praktisch einsetzen.
Dauer 1
SWS 4.0
Aufwand
Lehrveranstaltung 60
Selbststudium / Gruppenarbeit: 90
Workload 150
ECTS 5.0
Voraussetzungen für die Vergabe von LP

Modulprüfung für "Betriebssysteme" (K60)
"Praktikum Betriebssysteme" muss "m.E." attestiert sein

Modulverantwortlicher

Prof. Dr. Tobias Lauer

Max. Teilnehmer 41
Empf. Semester 2
Haeufigkeit jedes Jahr (SS)
Verwendbarkeit

Angewandte Informatik (Bachelor)
Wirtschaftsinformatik plus (Bachelor)
Wirtschaftsinformatik (Bachelor)

Veranstaltungen

Betriebssysteme

Art Vorlesung
Nr. EMI110
SWS 2.0
Lerninhalt
  • Rechnerarchitektur
  • Architektur von Betriebssystemen
  • Prozesse, Prozessverwaltung (Prozesszustände, -übergänge)
  • Threads, Threadbibliotheken
  • Scheduling in Betriebssystemen
  • Synchronisation von Prozessen und Threads
  • Kommunikation und Kooperation
  • Nebenläufigkeit, Verklemmungen
  • Speicherverwaltung
  • E/A-Verwaltung
  • Dateiverwaltung
  • Ausgewählte Betriebssysteme (LINUX, Windows)
Literatur

Glatz, E., Betriebssysteme, Grundlagen, Konzepte, Systemprogrammierung, Heidelberg, dpunkt-Verlag, 2015
Mandl, P., Grundkurs Betriebssysteme : Architekturen, Betriebsmittelverwaltung, Synchronisation, Prozesskommunikation, Virtualisierung, 4. Auflage, Wiesbaden, Vieweg+Teubner, 2014
Stallings, W., Betriebssysteme : Prinzipien und Umsetzung, 4., überarbeitete Auflage, München, Pearson Studium, 2005
Tanenbaum, A. S., Moderne Betriebssysteme, 4., aktualisierte Auflage, München, Pearson Studium, 2016

Praktikum Betriebssysteme

Art Labor
Nr. EMI111
SWS 2.0
Lerninhalt

Windows

  • Grundkenntnisse in Windows
  • Umgang mit Windows Systemtools (winmsd, taskmgr, perfmon, devmgmt, ...)
  • Typische Probleme auf Betriebssystemebene und ihre Diagnose
  • Programmierübungen zu Threads (Threaderzeugung, -synchronisation, ...) unter Windows

Linux/UNIX

  • Linux-Praktikum (Grundbefehle, Dateiverwaltung, Verzeichnisverwaltung, Ein-/Ausgabeumlenkung,
    Textverarbeitung, wichtige Tools, etc.)
  • Beispiele zur Prozesserzeugung/-kommunikation/-synchronisation unter UNIX
Literatur

Stallings, W., Betriebssysteme : Prinzipien und Umsetzung, 4., überarbeitete Auflage, München, Pearson Studium, 2005
Tanenbaum, A. S., Moderne Betriebssysteme, 4., aktualisierte Auflage, München, Pearson Studium, 2016
Glatz, E., Betriebssysteme, Grundlagen, Konzepte, Systemprogrammierung, Heidelberg, dpunkt-Verlag, 2015
Mandl, P., Grundkurs Betriebssysteme : Architekturen, Betriebsmittelverwaltung, Synchronisation, Prozesskommunikation, Virtualisierung, 4. Auflage, Wiesbaden, Vieweg+Teubner, 2014

Grafische Benutzerschnittstellen

Empfohlene Vorkenntnisse

Keine

Lehrform Vorlesung/Labor
Lernziele / Kompetenzen
  • Die Studierenden erlangen die grundlegenden Kenntnisse zur Gestaltung grafischer Benutzeroberflächen, die sicherstellen sollen, dass der Benutzer seine Arbeitsaufgaben effektiv, effizient und zufriedenstellend erledigen kann.
  • Durch praktische Übungen mit UI-Prototyping-Werkzeugen erhalten die Studierenden einen Einblick, wie in Software-Projekten die Benutzerbedürfnisse durch spezielle Vorgehensweisen (User Centered Design Methoden) besser berücksichtigt werden können.
  • Ein besonderer Fokus wird auf webbasierte Benutzeroberflächen gelegt, da diese Stand der Technik vieler Produkte sind und für zahlreiche weiterführende Veranstaltungen Voraussetzungen sind.
  • Es werden grundlegende Kenntnisse über die Geschichte und Themen der Web-Technologien vermittelt, so dass die Studierenden Fachbegriffe und Technologien richtig einordnen und einsetzen können. Sie werden befähigt, Spezifikationen wie ISOC und W3C richtig zu recherchieren und korrekt anzuwenden.
  • Mit Hilfe eines Praktikums werden diese Kenntnisse durch Programmieraufgaben vertieft.
Dauer 1
SWS 6.0
Aufwand
Lehrveranstaltung 90
Selbststudium / Gruppenarbeit: 120
Workload 210
ECTS 7.0
Voraussetzungen für die Vergabe von LP

Gemeinsame Modulprüfung für "Web-Technologien" und "Software Ergonomie" (K90)
"Praktikum Web-Technologien" muss "m.E." attestiert sein

Modulverantwortlicher

Prof. Dr. Jan Münchenberg

Max. Teilnehmer 41
Empf. Semester 1
Haeufigkeit jedes Jahr (WS)
Verwendbarkeit

Angewandte Informatik (Bachelor)
Wirtschaftsinformatik plus (Bachelor)
Wirtschaftsinformatik (Bachelor)

Veranstaltungen

Web-Technologien

Art Vorlesung
Nr. EMI102
SWS 2.0
Lerninhalt

Ziel der Vorlesung ist die Vermittlung von Kenntnissen über das World Wide Web (WWW), insbesondere von Markup- und Programmiersprachen zur Erstellung von webbasierten Benutzeroberflächen.

Im Einzelnen hat die Vorlesung folgende Inhalte:

  • Die Geschichte des WWW (und Internets)
  • Die Organisation des WWW (und Internets)
  • Relevante Grundlagen: ISO/OSI-Modell, HTTP-Protokoll, URI, IPV6, Kommunikation BrowserWeb-Server u.v.m.
  • Markup Languages im Allgemeinen
  • HTML (Hypertext Markup Language): HTML5, Formulare, ...
  • CSS (Cascading Stylesheet)/Design: CSS3, MedieQueries, Barrierefreiheit, ...
  • Javascript: Syntax, Funktionen, diverse Frameworks, DOM, Debugging, ...
Literatur

http://www.w3.org/standards/webdesign/
http://www.w3schools.com/

Software Ergonomie

Art Vorlesung
Nr. EMI101
SWS 2.0
Lerninhalt
  • Interaktion zwischen Mensch und Computer 
  • Grundlagen grafischer Benutzerschnittstellen (und Historie) 
  • Ergonomische Gestaltungsprinzipien (Menschliche Informationsverarbeitung, Normen, Gesetze, Usability Principles, Guidelines zur visuellen Gestaltung, UI Design Patterns)
  • Praktisches UI Design und UI Prototyping (mit Microsoft .Net WPF, Expression Blend, Windows Phone, Anwendung von Styleguides)
  • Methoden des Usability Engineering (User Centered Design) 
Literatur

Herczeg, M., Software-Ergonomie: Theorien, Modelle und Kriterien für gebrauchstaugliche interaktive Computersysteme, 4. Auflage, München, Wien, De Gruyter Oldenbourg, 2018
Butz, A., Krüger, A., Mensch-Maschine-Interaktion, 2. Auflage, München, Wien, De Gruyter Oldenbourg, 2017
Eberhard-Yom M., Usability als Erfolgsfaktor: Grundregeln, User Centered Design, Umsetzung, Berlin, Cornelsen Scriptor, 2010
Richter M., Flückiger M., Usability und UX kompakt, Produkte für Menschen, 4. Auflage, Heidelberg, Springer Vieweg, 2016 Tidwell, J., Designing Interfaces, Boston, O`Reilly, 2019 Shneiderman, B., Plaisant, C., Designing the user interface: strategies for effective human-computer interaction, 6. Auflage, Pearson, 2017
Jacobsen, J., Mayer, L., Praxisbuch Usability & UX: was jeder wissen sollte, der Websites und Apps entwickelt, 2. Auflage, Bonn, Rheinwerk Verlag, 2019
Goldstein, E.B., Wahrnehmungspsychologie: der Grundkurs, 9. Auflage, Berlin, Heidelberg, Springer, 2015
Norman, D.A., The design of everyday things: Psychologie und Design der alltäglichen Dinge, 2. Auflage, München, Franz Vahlen, 2016

Praktikum Web-Technologien

Art Labor/Studio
Nr. EMI103
SWS 2.0
Lerninhalt

Das Praktikum wird synchron zur Vorlesung durchgeführt und vertieft die dortige Theorie durch entsprechende praktische Implementierungsaufgaben. Die Studierenden sollen dabei auch lernen, eine Aufgabenstellung korrekt umzusetzen. Deshalb wird bei den Lösungen besonders auf ein strukturiertes Vorgehen, die Benutzerfreundlichkeit, ein ansprechendes Design, Programmieralgorithmen und Wartbarkeit der Lösung geachtet. Hierzu werden die im WWW existierenden Kriterien für Standards mit Hilfe der W3C-Validatoren angesetzt.

Literatur

Siehe Vorlesung "Web-Technologien"

Mathematik 1

Empfohlene Vorkenntnisse

Keine

Lehrform Vorlesung/Übung
Lernziele / Kompetenzen

Die Studierenden sollen nach erfolgreichem Abschluss des Moduls:

- Logische Aussagen formulieren, auswerten und vereinfachen können. Logische Verknüpfungen auf Mengen anwenden können. Mächtigkeit von Mengen mit Mitteln der Kombinatorik bestimmen können,

- Gesetzmäßigkeiten für das Rechnen in den reellen und komplexen Zahlen zielgerichtet anwenden können. Größenordnung von Zahlenfolgen beurteilen können,

- Modulo-Rechnung in Anwendungsfällen der Informatik anwenden können,

- Grundlagen der Lineare Algebra zur Beschreibung, Analyse und Lösung linearer Problemstellungen anwenden können.

 

 

Dauer 1
SWS 8.0
Aufwand
Lehrveranstaltung 120
Selbststudium / Gruppenarbeit: 90
Workload 210
ECTS 7.0
Voraussetzungen für die Vergabe von LP

Modulprüfung für "Mathematik 1" (K90 mit PA-Anteil)

Modulverantwortlicher

Prof. Dr. Kreilos

Max. Teilnehmer 41
Empf. Semester 1
Haeufigkeit jedes Jahr (WS)
Verwendbarkeit

Angewandte Informatik (Bachelor)

Veranstaltungen

Mathematik 1

Art Vorlesung/Übung
Nr. EMI108
SWS 8.0
Lerninhalt

Grundlagen der Diskreten Mathematik und Lineare Algebra:

  • Logik und Mengen
  • Rechnen in den reellen und komplexen Zahlen inklusive Zahldarstellung im ComputerStellenwertsysteme, Polynome, Folgen
  • Modulo-Rechnung, Gruppen und Körper
  • Lineare Algebra (Vektor- und Matrizenrechnung, Analytische Geometrie)

 

Literatur

Teschl, G. und Teschl, S., Mathematik für Informatiker : Band 1: Diskrete Mathematik und Lineare Algebra, 4. Auflage, Berlin, Heidelberg, Springer Spektrum, 2013.

Hartmann, P., Mathematik für Informatiker : Ein praxisbezogenes Lehrbuch, 6. Auflage, Wiesbaden, Springer Vieweg, 2015.

Brill, M., Mathematik für Informatiker: Einführung an praktischen Beispielen aus der Welt der Computer, 2. Auflage, München, Wien, Hanser Verlag, 2005.

 

 

Mathematik 2

Empfohlene Vorkenntnisse

Modul "Mathematik 1"

Lehrform Vorlesung/Übung
Lernziele / Kompetenzen

Die Studierenden sollen nach erfolgreichem Abschluss des Moduls:

- Funktionale und relationale Zusammenhänge aus Informatik, Technik und Wirtschaft über mathematische Funktionen beschreiben und wichtige Eigenschaften analysieren und mit mathematischer Fachsprache beschreiben können.

- Wichtige Algorithmen zur Analyse und Auswertung funktionaler Zusammenhänge anwenden können.

- Näherungsverfahren mit Hilfe von Potenzreihen und Fourierreihen durchführen, ihre Zielsetzung beschreiben und ihre Leistungsfähigkeit begründen können.

Dauer 1
SWS 8.0
Aufwand
Lehrveranstaltung 120
Selbststudium / Gruppenarbeit: 90
Workload 210
ECTS 7.0
Voraussetzungen für die Vergabe von LP

Modulprüfung für "Mathematik 2" (K90 mit PA-Anteil)

Modulverantwortlicher

Prof. Dr. Kreilos

Max. Teilnehmer 41
Empf. Semester 2
Haeufigkeit jedes Jahr (SS)
Verwendbarkeit

Angewandte Informatik (Bachelor)

Veranstaltungen

Mathematik 2

Art Vorlesung/Übung
Nr. EMI116
SWS 8.0
Lerninhalt
  • Relationen, Funktionen, Folgen, Grenzwerte
  • Differential- und Integralrechnung in einer und mehreren Variablen
  • Reihen, Potenzreihen, Fourierreihen 
  • Kombinatorik
  • Passende Anwendungsbeispiele. 

 

Literatur

Teschl, G. und Teschl, S., Mathematik für Informatiker : Band 1: Diskrete Mathematik und Lineare Algebra, 4. Auflage, Berlin, Heidelberg, Springer Spektrum, 2013.

Hartmann, P., Mathematik für Informatiker. Ein praxisbezogenes Lehrbuch, 6. Auflage, Wiesbaden, Springer Vieweg, 2015.

Papula, L., Mathematik für Ingenieure und Naturwissenschaftler Band 1. Ein Lehr- und Arbeitsbuch für das Grundstudium, 14. Auflage, Wiesbaden, Springer Vieweg, 2014.

Papula, L., Mathematik für Ingenieure und Naturwissenschaftler Band 2. Ein Lehr- und Arbeitsbuch für das Grundstudium, 14. Auflage, Wiesbaden, Springer Vieweg, 2015.

Methodenkompetenz

Empfohlene Vorkenntnisse

Keine

Lehrform Seminar
Lernziele / Kompetenzen
  • Grundlagen des wissenschaftlichen Arbeitens (z.B. Recherche, Zitieren) anwenden
  • Verständnis für die Problematik von Plagiaten haben
  • Präsentationen vorbereiten und halten
Dauer 1
SWS 2.0
Aufwand
Lehrveranstaltung 30
Selbststudium / Gruppenarbeit: 45
Workload 75
ECTS 3.0
Voraussetzungen für die Vergabe von LP

Referat

Modulverantwortlicher

Prof. Dr. rer. nat. Tobias Lauer

Max. Teilnehmer 41
Empf. Semester 1
Haeufigkeit jedes Jahr (WS)
Verwendbarkeit

Angewandte Informatik (Bachelor)

Veranstaltungen

Kommunikationskompetenz

Art Seminar
Nr. EMI161
SWS 2.0
Lerninhalt

(Englischsprachige) Manuals und Dokumentationen

Wissenschaftliche Texte und wissenschaftliches Arbeiten (korrektes Zitieren, Plagiate)

Digital Libraries von ACM und IEEE

Selbstorganisation und Zeitmanagement

Gewaltfreie Kommunikation

Literatur

Individuell ausgewählte aktuelle Artikel und Texte (wird im Kurs und per Moodle bereit gestellt)

ACM 2020. Citation Style and Reference Formats (Update from 23/01/2020). Verfügbar unter: https://www.acm.org/publications/authors/reference-formatting 
 
IEEE 2020. IEEE Editorial Style Manual for Authors. Verfügbar unter: http://journals.ieeeauthorcenter.ieee.org/wp-content/uploads/sites/7/IEEE-Editorial-Style-Manual.pdf
 
Krämer. S, Franzky T. 2017. Das Skelettplagiat ist kein Vergehen der Anatomie. Pädagog. Hochschule Freiburg, 2017. Verfügbar unter https://www.plagiatspraevention.uni-konstanz.de/typo3temp/secure_downloads/89992/0/869cb3b985b8c800442ca31ce26950cdee29c04b/Praesentation_Workshop_PH.pdf 
 
ACM 2019. ACM Policy on Plagiarism, Misrepresentation, and Falsification. Verfügbar unter: https://www.acm.org/publications/policies/plagiarism-overview 
 
ACM 2018. Policy against Harassment at ACM Activities. Verfügbar unter: https://www.acm.org/about-acm/policy-against-harassment
 
 
 

Programmierung 1

Empfohlene Vorkenntnisse

Keine

Lehrform Vorlesung/Labor
Lernziele / Kompetenzen
  • Grundlegende Konzepte der prozeduralen sowie der objektorientierten Programmierung und Modellierung kennen und anwenden können
  • Selbständige Erstellung, Inbetriebnahme, Test und Dokumentation von eigenen Programmen in der Programmiersprache Java und mit einer integrierten Entwicklungsumgebung
Dauer 1
SWS 6.0
Aufwand
Lehrveranstaltung 90
Selbststudium / Gruppenarbeit: 150
Workload 240
ECTS 8.0
Voraussetzungen für die Vergabe von LP

Modulprüfung für "Programmierung 1" (K90)
"Praktikum Programmierung 1" muss "m.E." attestiert sein

Modulverantwortlicher

Prof. Dr. rer. nat. Tobias Lauer

Max. Teilnehmer 41
Empf. Semester 1
Haeufigkeit jedes Jahr (WS)
Verwendbarkeit

Angewandte Informatik (Bachelor)

Veranstaltungen

Programmierung 1

Art Vorlesung
Nr. EMI106
SWS 4.0
Lerninhalt

- Prozedurale Programmierung in Java
- Primitive Datentypen
- Kontrollstrukturen (Verzweigung, Schleifen)
- Variablen, Sichtbarkeit
- Rekursion

- Objektorientierte Programmierung mit Java
- Klassen und Objekte
- Pakete
- Vererbung
- Abstrakte Klassen
- Interfaces
- Fehlerbehandlung mit Exceptions

- Test-driven Development
- Unit-Tests mit JUnit

- GUI-Programmierung mit JavaFX

Literatur

Gumm, H.-P., Sommer, M., Einführung in die Informatik, 9. Auflage, München, Oldenbourg Verlag, 2011

Ullenboom, C., Java ist auch eine Insel, 15. Auflage, Rheinwerk Computing, 2020

 

 

 

Praktikum Programmierung 1

Art Labor/Studio
Nr. EMI107
SWS 2.0
Lerninhalt

Teil 1: Implementierung exemplarischer Programme
- Operatoren und Konstanten
- Console Input/Output
- Kontrollstrukturen (Sequenz, Schleife, Abfrage) und strukturierte Programmierung
- Komplexe Datentypen
- Übergabeparameter (Call by Value und Call by Reference)
- File Input/Output mit Comma-Separated-Values Dateien (*.csv)
- Rekursive Algorithmen (Beispiele: Fakultätsberechnung, Towers of Hanoi)
- Sortieren mit Bubblesort
- Dynamisches Memorymanagement und Pointerarithmetik
Teil 2: Realisierung des n-Damen-Problems
- Problemanalyse
- Design (Structure Charts)
- Verwendung von Enumerationen, Strukturen, Arrays und Präprozessor Direktiven
- Erstellung des Userinterfaces
- Implementierung des rekursiven Algorithmus
- Implementierung der Programmlogik
- Speichern der Lösungen als csv-Datei mittels einer DLL
- Einbinden der DLL in die Anwendung
- Test des Systems und Durchführung von Laufzeituntersuchungen
- Dokumentation

Literatur

RZNN Hannover, Standard-C-Programmierung, 2. Auflage, 2011

Kirch, U., Prinz, P., C-Einführung und professionelle Anwendung, 2. Auflage, Heidelberg, Verlagsgruppe Hüthig-Jehle-Rehm, 2007

Erlenkötter, H., C-Programmieren von Anfang an, 19. Auflage, Rowohlt Taschenbuch Verlag, 2011

Gumm, H.-P., Sommer, M., Einführung in die Informatik, 9. Auflage, München, Oldenbourg Verlag, 2011

Programmierung 2

Empfohlene Vorkenntnisse

Modul "Programmierung 1"

Lehrform Vorlesung/Labor
Lernziele / Kompetenzen
  • Die Programmiersprachen C und C++ verstehen und anwenden können
  • Unterschiede zu anderen Programmiersprachen (Java) kennen: Pointer/Referenzen, Speichermanagement
  • Anwendungen in C programmieren können
  • Objektorientierte Softwaresysteme in C++ erstellen können
  • Graphische Benutzerschnittstellen mit objektorientierten Bibliotheken entwickeln können
Dauer 1
SWS 7.0
Aufwand
Lehrveranstaltung 105
Selbststudium / Gruppenarbeit: 255
Workload 360
ECTS 8.0
Voraussetzungen für die Vergabe von LP

Modulprüfung für "Programmierung 2" (K90)
"Praktikum Programmierung 2" muss "m.E." attestiert sein

Modulverantwortlicher

Prof. Dr. Daniel Fischer

Andreas Behr, M.Sc.

Max. Teilnehmer 41
Empf. Semester 2
Haeufigkeit jedes Jahr (SS)
Verwendbarkeit

Angewandte Informatik (Bachelor)

Veranstaltungen

Praktikum Programmierung 2

Art Labor/Studio
Nr. EMI115
SWS 3.0
Lerninhalt

Erstellung von C-Programmen unter Verwendung von
- Pointern und Referenzen
- Programmbibliotheken
- Structs
- Threads

Erstellung von C++-Programmen mit
- Klassen und Objekten
- Vererbung und Polymorphismus
- Exceptions
- Kopierkonstruktoren (tiefe und flache Kopien)
- Überladen von Operatoren
- Templates
- Entwurfsmuster

Literatur

Eilebrecht, K., Starke, G., Patterns kompakt : Entwurfsmuster für effektive Software-Entwicklung, 4. Auflage, Springer Vieweg, 2013

Wolf, J., C++ von A bis Z, 2. Auflage, Bonn, Galileo Press, 2009

Stroustrup, B., The C++ Programming Language, Hanser, 2015

 

Programmierung 2

Art Vorlesung
Nr. EMI114
SWS 4.0
Lerninhalt

- Objektorientierte Konzepte
- UML-Klassendiagramme und -Sequenzdiagramme
Java:
- Klassen und Objekte
- Datentypen (Wert- und Referenztypen)
- Arrays
- Abstraktion, Kapselung, Vererbung und Polymorphismus
- Abstrakte Klassen und Methoden, Interfaces
- Exceptions
- Collections
- Threads
- Klassenbibliothek Swing
- Ein-/Ausgabe
C++:
- Klassen und Objekte
- Abstraktion, Kapselung, Vererbung und Polymorphismus
- Exceptions
- Operatorüberladung
- Kopierkonstruktoren
- Templates (Funktions- und Klassentemplates)
- Memory Management und RTTI
- Realisieriung der Entwurfsmuster Singleton, Observer, Decorator und Kompositum

 

Literatur

Eilebrecht, K., Starke, G., Patterns kompakt : Entwurfsmuster für effektive Software-Entwicklung, 4. Auflage, Springer Vieweg, 2013

Wolf, J., C++ von A bis Z, 2. Auflage, Bonn, Galileo Press, 2009

Stroustrup, B., The C++ Programming Language, Hanser, 2015

Rechnerarchitekturen

Empfohlene Vorkenntnisse

Modul "Technische Informatik"

Lehrform Vorlesung/Labor
Lernziele / Kompetenzen
  • Die Studierenden lernen eine reale Prozessorfamilie am Beispiel der i80X86 und Kompatible kennen und verstehen diese
  • Sie entwickeln Fähigkeiten und Fertigkeiten beim Umgang mit diesen Prozessoren im Labor
  • Die Teilnehmer*innen erwerben Grundwissen zu Berechnungs- und Computermodellen und den Wechselwirkungen zwischen diesen
  • Die Studierenden verstehen die grundlegenden Konzepte zur Durchsatzsteigerung bei Prozessorsystemen, vertiefen ihr Grundwissen durch Fallbeispiele und Vorstellung konkreter Implementierungen
  • Sie entwickeln ein Verständnis zu den unterschiedlichen Ebenen der möglichen Parallelisierung.
Dauer 1
SWS 4.0
Aufwand
Lehrveranstaltung 60
Selbststudium / Gruppenarbeit: 90
Workload 150
ECTS 5.0
Voraussetzungen für die Vergabe von LP

Modulprüfung für "Rechnerarchitekturen" (K60)
"Praktikum Rechnerarchitekturen" muss "m.E." attestiert sein

Modulverantwortlicher

Dipl.-Ing (FH) Stefan Lehmann

Max. Teilnehmer 41
Empf. Semester 2
Haeufigkeit jedes Jahr (SS)
Verwendbarkeit

Angewandte Informatik (Bachelor)

Veranstaltungen

Praktikum Rechnerarchitekturen

Art Labor/Studio
Nr. EMI128
SWS 2.0
Lerninhalt

Das Praktikum besteht aus drei vorlesungsbegleitenden Komplexen

Komplex 1: Einadresscomputer (Nutzung eines Simulationspakets)

  • Systemkomponenten und deren Wirkungsweise,
  • Systemkomponenten und deren Wirkungsweise.


Komplex 2: Mikroprogrammgesteuerte Prozessoren (Nutzung eines Simulationspakets)

  • Studium der internen Ablaufe aus Sicht der Systemkomponenten und der Programmierung,
  • Modifikationen an der Mikroprogrammebene, insbesondere Implementierung neuer Maschinenbefehle.


Komplex 3: Prozessorsystem i8086 (Flight-86 Trainingssystem)

  • Funktionen und Merkmale der CPU,
  • Serielles und paralleles Interface zum Anschluss periphererer Geräte an i80X86 Prozessoren,
  • Interruptbehandlung des Prozessors und Programmierung von Interruptcontrollern,
  • Regelkreis mit Mikroprozessorsteuerung.

 

Literatur

Singh, A., Triebel, W. A., The 8088 and 8086 Microprocessors, 3. Auflage, Prentice Hall, 2000


Die folgenden Dokumente werden den Studenten zu Beginn des Semesters zur Verfügung gestellt.

  • Manuels zu den im Labor verwendeten Geräte und Programmsysteme
  • Beschreibung der zu bearbeiteten Laborprojekte

Rechnerarchitekturen

Art Vorlesung
Nr. EMI127
SWS 2.0
Lerninhalt

Im ersten Teil der Vorlesung wird die Prozessorfamilie i80X86 (und Kompatible) vorgestellt. Dabei liegt der Schwerpunkt auf typischen Konzepten dieser Familie, die auch bei neueren Prozessoren eine weitere Ausprägung erfahren. Dieser Teil gibt auch die notwendige Fundierung des Labors zur Vorlesung.

  • Die Mikroprozessorfamilie i80X86 und Kompatible, CPU-Strukturen, Hauptspeicherorganisation, Adressierungstechniken, Sicherheits- und Schutzkonzepte;
  • Ein-/Ausgabe-Organisation und Anschluss peripherer Geräte bei i80X86, Interfaceschaltkreise und ihre Programmierung;
  • Interruptbehandlung bei i80X86;
  • Bussysteme, synchrone vs. asynchrone Busse, Busarbitration, kommerzielle Bussysteme;


Im zweiten Teil der Vorlesung liegt der Schwerpunkt auf grundsätzlichen Architekturproblemen, insbesondere bezüglich der Parallelisierung an den verschiedenen Ebenen. Dabei stehen Konzepte und Methoden im Vordergrund. An Hand einzelner Beispiele wird auf Implementierungsgesichtspunkte eingegangen und es werden auch entsprechende Lösungen in realen Prozessoren vorgestellt.

  • Berechnungsmodelle, Modellbeschreibungen, Computermodelle John-von-Neumann Computer;
  • Prozessorarchitekturen, Grundkonzepte für konkurrente und parallele Verarbeitung, Befehlssatzarchitekturen;
  • Befehlsebenenparallelität: Berücksichtigung von Daten- und Steuerabhängigkeiten, Grundkonzept der ILP-Prozessoren, Pipelining, Grundkonzept der VLIW-Prozessoren, Grundkonzept der Superskalarprozessoren: Befehlsbereitstellung, Befehlsausführung, Probleme bei Sprungbefehlen und bei Interruptbehandlung;
  • Parallelarchitekturen an der Threadebene: Multithread-, Datenfluss-, Hybridarchitekturen;
  • Parallelarchitekturen an der Prozessebene: Speicherkonzepte bei MIMD-Architekturen, Cache- und Synchronisatioinsprobleme.

 

Literatur

Sima, D., Fountain, T., Kacsuk, P., Advanced Computer Architecture, Addison-Wesley, 1999

Märtin, C., Einführung in die Rechnerarchitektur: Prozessoren und Systeme, Hanser, 2003

Singh, A., Triebel, W.A., The 8088 and 8086 Microprocessors, 3. Auflage, Prentice Hall, 2000

Technische Informatik

Empfohlene Vorkenntnisse

Keine

Lehrform Vorlesung/Labor
Lernziele / Kompetenzen

Die Studierenden können:

  • Grundstruktur und Funktionen der Komponenten eines Computers verstehen,
  • Grundlagen der Transistorelektronik sowie die Spezifik des Schalterbetriebs verstehen,
  • Kombinatorische Schaltungen verstehen, entwerfen, umformen und minimieren,
  • Spezifik und Wesen sequentieller Schaltungen erkennen und verstehen,
  • Grundregeln zum Entwurf von digitalen Schaltungen anwenden,
  • Digitale Schaltungen hinsichtlich Zeitverhaltens beschreiben, den kritischen Pfad erkennen und bezüglich des Zeit und Lastverhalten bewerten,
  • Fähigkeit zum Entwurf einfacher synchroner Schaltwerke wie Zähler und Zustandsautomaten mit systematischen Methoden entwickeln
Dauer 1
SWS 5.0
Aufwand
Lehrveranstaltung 75
Selbststudium / Gruppenarbeit: 75
Workload 150
ECTS 5.0
Voraussetzungen für die Vergabe von LP

Modulprüfung "Technische Informatik" (K60)
"Praktikum Technische Informatik" muss "m.E." attestiert sein

Modulverantwortlicher

Prof. Dr. habil. Peter Neubert

Torsten Beller (Praktikum)

Max. Teilnehmer 41
Empf. Semester 1
Haeufigkeit jedes Jahr (WS)
Verwendbarkeit

Angewandte Informatik (Bachelor)

Veranstaltungen

Technische Informatik

Art Vorlesung
Nr. EMI109
SWS 4.0
Lerninhalt

Die Gliederung der Vorlesung folgt einer strukturierten Betrachtung eines Computersystems. Dabei sind die wesentlichen Ebenen die Hauptkapitel des Vorlesungsstoffes, wobei die Reihenfolge Rücksicht auf das zugehörige Labor nimmt.

Maschinenbefehlsebene:

  • Computergrundstruktur und funktionelle Ebenen,
  • ZVE, Befehlsstruktur und -abarbeitung, Unterbrechungssystem, E/A-System.


Ebene der Bauelemente und Grundschaltungen:

  • Elektrotechnische/elektronische Grundlagen (Ladung, Felder, Spannung, Strom, passive Bauelemente, Wechselstromlehre, Leistung und Energie),
  • Physikalische Grundlagen der Mikroelektronik,
  • Wirkprinzipien der Bipolar- und Feldeffekttransistoren,
  • Transistoren als Schalter,
  • Transistor-Grundschaltungen und spezielle Technologielinien (TTL, CMOS, ECL),
  • Logische Pegel, Kenngrößen und Zeitverhalten bei Schaltvorgängen,
  • Schaltalgebra, Boolesche Funktionen und Rechenregeln,
  • Normalformen, Grundeigenschaften von Schaltnetzen und Schaltwerken,
  • Minimierung von Schaltnetzen mit graphischen und rechnerischen Verfahren,
  • Kombinatorische Netze, statische Logik,
  • Kombinatorische Grundschaltungen (Tor, Knoten, Codewandler, Multiplexeinheiten),
  • Arithmetische Schaltungen (Addierer, Subtrahierer, Multiplizierer, Dividierer),
  • Arithmetisch-logische Einheiten,
  • Sequentielle Schaltungen (Flip-Flop, Register, Teiler, Zähler),
  • Speicherschaltkreise, Speicherarchitekturen, komplexe Logikstrukturen,
  • Dynamische Kenngrößen, Zeitverhalten, kritischer Pfad, Taktfrequenz, Stabilität, Hasards,
  • Grundelemente von Zustandsautomaten und ihr systematischer Entwurf, Zustandsdiagramm,
  • Medwedjew-Automat, Moore-Automat, Mealey-Automat.

Steuerungsebene:

  • Steuer- und Verarbeitungswerke,
  • Festverdrahtete Steuerung,
  • Mikroprogrammsteuerung.


Programmierungsebene:

  • Abstraktions- und Sprachebenen,
  • Assemblerprogrammierung der i80X86 (Übersicht).

 

Literatur

Elschner, H.; Möschwitzer, A.: Einführung in die Elektrotechnik-Elektronik; Verlag Technik Berlin 1985

Schildt, G.-H., Redlein, A., Kahn, D., Einführung in die Technische Informatik, Vienna, Springer Verlag, 2005

Kainka B., Bernstein H., Grundwissen Elektronik, Poing, Franzis Verlag, 2011

Schneider, U., Disterer G., Taschenbuch der Informatik, 7. Auflage, München, Fachbuchverlag Leipzig, 2012

Praktikum Technische Informatik

Art Labor/Studio
Nr. EMI160
SWS 1.0
Lerninhalt

Es sind drei Versuche in einer 2er-Gruppe durchzuführen:

1. Transistor als Schalter, zeitunkritische Schaltungen, Basisgatter, PC- Simulation von Gattern
2. Zeitabhängige Schaltungen, Zähler und arithmetische Operation
3. Wandler, Datenübertragung, Schieberegister

Literatur

Hoffmann, D. W., Grundlagen der Technischen Informatik, 4. Auflage, Hanser, 2014

Heinemann, R., PSPICE : Einführung in die Elektroniksimulation, 7. Auflage, Hanser, 2011

 

 Zurück