Hier finden Sie die Veranstaltungen, die im Studiengang B.Sc. Informatik zu den "Pflichtveranstaltungen" (2015), “Pflichtbereich" (2023) sowie Wahlpflichtbereich (2023).

Inhalt

  • Technologische Grundlagen und Trends der Mikroelektronik
  • Entwurfsflüsse für mikroelektronische Systeme
  • Beschreibung von Hardware-Systemen
  • Charakteristika von Rechnersystemen
  • Architekturen für parallele Ausführung
  • Speichersysteme
  • Heterogene Systems-on-Chip
  • On-Chip und Off-Chip Kommunikationsstrukturen
  • Aufbau eingebetteter Systeme, z.B. im Umfeld von Cyber-Physical Systems


Dies hier ist der Moodle-Kurs zur Vorlesung "Automaten, formale Sprache und Entscheidbarkeit WS23/24". Die erste Vorlesung findet am Freitag, den 20.10.2023, um 8:00 Uhr in Raum  S311/08 statt.

Im Verlauf der nächsten Wochen werden hier die Einschreibung in diesen Kurs freigeschaltet und alle weiteren Informationen rund um AFE veröffentlicht. 

Lehrinhalte des Bachelorpraktikums:
Anwendung des im Rahmen der grundlegenden Veranstaltungen erworbenen Wissens im Kontext eines komplexen Softwareentwicklungsprojektes. Die einzelnen Aufgabenstellungen werden dabei von Fachgebieten der TU Darmstadt gestellt und leisten im Regelfall einen Beitrag zu deren Forschung.
Schwerpunkte des Praktikums sind:
- Planung und Durchführung eines Softwareentwicklungsprojektes
- Anwendung von Softwareentwicklungsprozessen
- Ermittlung und Priorisierung von Anforderungen
- Durchführung systematischer Qualitätssicherung
- Präsentationstechnik
- Teamarbeit

Literatur:
Allgemein:
- Lehrbuch der Softwaretechnik: Softwaremanagement; H. Balzert; Springer
- Design Patterns - Elements of Reusable Object-Oriented Software; E. Gamma, R. Helm, R. Johnson, J. Vlissides; Prentice Hall
- Software Qualität - Testen, Analysieren und Verifizieren von Software; P. Liggesmeyer; Springer
- Writing Effective Use Cases; A. Cockburn; Pearson
- Clean Code: A Handbook of Agile Software Craftsmanship; R. C. Martin; Prentice Hall
Weiterhin ist je nach bearbeiteter Aufgabenstellung weitere Literatur notwendig.

Voraussetzungen:
Empfohlen: Erfolgreicher Abschluss der Veranstaltungen:
- Funktionale und Objektorientierte Programmierkonzepte
- Software Engineering


Für die Teilnahme am BP wird ein Endgerät benötigt, auf dem Software entwickelt werden kann. Sollte dies Probleme darstellen oder andere Fragen offen sein, verwenden Sie bitte das Forum im Moodlekurs oder senden Sie eine Mail an: bp@cs.tu-darmstadt.de

Veranstaltung Betriebssysteme durchgeführt von Prof. Dr.-Ing. Markus Miettinen

Lehrinhalte:
Teil I: Kryptographie

  • Mathematische Grundlagen der Kryptographie
  • Schutzziele: Vertraulichkeit, Integrität, Authentizität
  • Symmetrische und Asymmetrische Kryptographie
  • Hash-Funktionen und Digitale Signaturen
  • Protokolle zum Schlüsseltausch
Teil II: IT-Sicherheit und Zuverlässigkeit
  • Grundlegende Konzepte der IT-Sicherheit
  • Grundkonzepte der Websicherheit
  • Grundkonzepte der Netzwerksicherheit
  • Grundkonzepte der Software-Sicherheit


Erste Veranstaltung: Freitag, 20. Oktober 2023, 11:40
Prüfungsdatum (falls Klausur): Dienstag, 5. März 2024, 17:00

Lehrinhalte
  • Digitaltechnik: digitale Abstraktion und ihre technische Umsetzung, Zahlensysteme, Logikgatter, MOSFET Transistoren und CMOS Gatter, Leistungsaufnahme
  • Kombinatorische Schaltungen: Boole’sche Gleichungen und Algebra, Abbildung auf Gatter, mehrstufige Schaltungen, vierwertige Logik (0,1,X,Z), Minimierung von Ausdrücken, kombinatorische Grundelemente, Zeitverhalten
  • Sequentielle Schaltungen: Latches, Flip-Flops, Entwurf synchroner Schaltungen, endliche Automaten, Zeitverhalten, Parallelität
  • Hardware-Beschreibungssprachen: Modellierung kombinatorischer und sequentieller Schaltungen, Strukturbeschreibungen, Modellierung endlicher Automaten, Datentypen, parametrisierte Module, Testrahmen
  • Grundelemente digitaler Schaltungen: arithmetische Schaltungen, sequentielle Grundelemente, Speicherfelder, Logikfelder

Lehrinhalte:
- Aufbau von Compilern
- Kontextfreie Grammatiken zur Beschreibungen der Syntax von Programmiersprachen
- Lexing- und Parsingverfahren
- Zwischendarstellungen
- Semantische Analyse
- Laufzeitorganisation
- Code-Erzeugung
- Software-Werkzeuge für den Compilerbau
- Implementierungstechniken für Compiler

Literatur:
Literaturempfehlungen werden kontinuierlich aktualisiert, ein Beispiel für verwendete Literatur könnte sein:
Watt/Brown: Programming Language Processors in Java

Voraussetzungen:
Empfohlen: Erfolgreicher Besuch der Vorlesungen “Algorithmen und Datenstrukturen”, “Funktionale und objektorientierte Programmierung” sowie “Rechnerorganisation”, bzw. entsprechende Kenntnisse aus anderen Studiengängen


Die Künstliche Intelligenz (KI) beschäftigt sich mit Algorithmen zur Lösung von Problemen, von denen man gemeinhin annimmt, dass deren Lösung Intelligenz erfordert. Orientierte man sich in den Anfangstagen der Wissenschaft primär an psychologischen Erkenntnissen über das menschliche Denken, hat sich das Gebiet seither zunehmend dahingehend entwickelt, dass in den Problemlösungsansätzen versucht wird, die Stärken des Computers auszunutzen. Im Zuge dieser Vorlesung werden wir einen kurzen Überblick über die zentralen Themen dieser Kernwissenschaft der Informatik geben, insbesondere in die Themen Suche, Planen, Lernen und Schließen. Die historischen und philosophischen Grundlagen werden ebenfalls behandelt.

Prüfungsdatum (falls Klausur): Freitag, 23. Februar 2024, 08:00
Erste Veranstaltung: Montag, 16. Oktober 2023, 13:30
Prüfungsdatum (falls Klausur): Donnerstag, 21. März 2024, 14:00

Website: https://www.mais.informatik.tu-darmstadt.de/moses-wite2023.html

Der Einschreibeschlüssel wird in der ersten Vorlesung kommuniziert.

Software Engineering

Kursinhalte:

  • Anforderungsanalyse und Use Cases
  • Modellierung der Anwendungsgebiets der Software
  • Softwarearchitektur
  • Softwarequalität und -testen
  • Entwurfsprinzipien und Entwurfsmuster
  • Wartung und Evolution von Software und Variabilität
  • Softwareentwicklungsmodelle