Modulbeschreibung

Ingenieurinformatik II

ECTS-Punkte:
12
Lernziele:

Die Studierenden

  • können Programme in der Sprache C# erstellen.
  • kennen die Konstrukte "delegate" und "event" und können sie einsetzen.
  • kennen die Architektur des .NET Frameworks.
  • können die WinForms-Klassen verwenden und eine Applikation mit einer grafischen Oberfläche bauen.
  • können einen komplexen und leistungsfähigen Mikrocontroller in einem eingebetteten System einsetzen.
  • können Graphen zur Modellierung und zur Beschreibung von Problemen und Methoden in der Informatik einsetzen.
  • können für einen Graphen eine für dessen Realisierung geeignete Datenstruktur auswählen.
  • kennen nebst den linearen Datenstrukturen Liste, Stack, Queue auch Baumstruturen (Suchbäume, AVL-Bäume, Heap, Syntaxbaum, Hash-Tabelle).
  • können die erwähnten Datenstrukturen auch in geeigneter Form realisieren.
  • können technische Probleme analysieren und für deren Lösung geeignete Datenstrukturen und Algorithmen auswählen und auch realisieren.
  • kennen die wichtigsten Typen formaler Sprachen und deren Bedeutung.
  • kennen eine Notation (EBNF) zur Beschreibung der Grammatik formaler Sprachen.
  • können die Syntax einer formalen Sprache (z.B. einer Kommandosprache) so festlegen, dass sie vom Anwender leicht erlernt werden kann und es auch einfach ist einen entsprechenden Interpreter oder Übersetzer dazu zu realisieren.
  • können aufgrund des Sprachtyps und des Sprachumfangs entscheiden, ob sie einen Parser vollständig selbst realisieren oder durch einen geeigneten Parsergenerator erzeugen lassen und entsprechend ergänzen.
  • können die Struktur von Datenbeständen (z.B. Qualitätsdaten in der Produktion) so entwerfen und beschreiben, dass sie leicht erzeugt und auch auf einfache Art wieder weiterverarbeitet werden können.
  • kommen zusammen mit den Inhalten der anderen Profil-Modulen zu einem tiefen Verständnis bezüglich Aufbau und Wirkungsweise des digitalen Rechners und Compilers.
  • können nicht triviale (System-)Fehler in Hardware und Software lokalisieren und beheben.
  • können Datenstrukturen und Algorithmen in einfache und effiziente Programme umsetzen.
  • kennen die Architektur eines repräsentativen Mikrocontrollers.
  • sind in der Lage, Teile des Rechnerkerns sowie einiger Peripheriekomponenten in VHDL zu beschreiben.
  • können einen Rechnerkern (Soft Core) in VHDL durch eigene Teile ergänzen.
  • kennen einen repräsentativen, programmierbaren Baustein (FPGA) und können diesen einsetzen.
  • kennen die Bedeutung des Testens in der Softwareentwicklung.
  • kennen die wichtigsten fachbegriffe und methoden zum Testen.
  • können mit eigenen Testwerkzeugen im Java-Umfeld umgehen.

Kurse in diesem Modul

Testing:
  • Testmethodik
  • Unit-Tests (JUnit)
  • Code Abdeckungsanalyse
  • Loging und Debugging (Log4j, java logging)
Selbststudium mit 0 Lektionen pro Woche
Embedded Systems:
  • Architektur eines 32 Bit-Prozessors
  • Superskalare Achitektur, Pipelining
  • Systembus
  • Treiberentwicklung
  • Grundlagen eines Real-Time Operating System (RTOS)
  • Einsatz in einem ausgewählten Projekt
Klassenunterricht mit 4 Lektionen pro Woche
Compilerbau:
  • Graphen
  • Datenstrukturen & Algorithmen
  • Formale Sprachen
  • Beschreibung der Grammatik formaler Sprachen in EBNF
  • Aufbau eines Parsers zur Erkennung der Struktur eines formal beschriebenen Sachverhalts (Datenbestand, Kommandofolge, Programm, etc.)
  • des Parsers zu einem vollständigen Compiler
  • Entwurf und Realisierung ekrocontroller (z.B. ATmega16 von Atmel) - ein umfangreiches, nicht triviales Projekt zur Konsolidierung der Inhalte der verschiedenen Kurse des Profilmoduls Ingenieurinformatik II.
Klassenunterricht mit 4 Lektionen pro Woche
Rechnerarchitektur:
  • Entwurf und Wirkungsweise eines einfachen Rechners
  • Von Neumann- und Harvard-Architektur
  • Rechen- und Steuerwerk, Speicher, Ein- / Ausgabewerke
  • Interruptstrukturen
Klassenunterricht mit 4 Lektionen pro Woche
C#/ .NET :
  • Typen, Ausdrücke, Deklarationen und Anweisungen
  • Ein- und Ausgabe
  • Klassen und Structs
  • Vererbung und Interfaces
  • Delagtes und Events
  • Namensräume und Assemblies
  • Attribute
  • .NET-Framework
  • WinForms
Selbststudium mit 0 Lektionen pro Woche
Disclaimer

Diese Beschreibung ist rechtlich nicht verbindlich! Weitere Informationen finden Sie in der detaillierten Modulbeschreibung.