zum Inhalt springen

MN-GM-DATPRO

Basismodul: Datenverarbeitung und Programmieren
Kennnummer

MN-GM-
DATPRO
Workload

180 h
Leistungs-
punkte

6 LP
Studien-
semester

2./(1.)
Semester
Häufigkeit des
Angebots

jährlich
Beginn des
Angebots

jedes SoSe
Dauer

1 Semester
1 Lehrveranstaltungen
a) Vorlesung
b) Übung
c) Projekt
Kontaktzeit
45 h
30 h
 
Selbststudium
15 h
45 h
45 h
2 Ziele des Moduls und zu erwerbende Kompetenzen

Die Studierenden sollen im Teil „Programmieren“ lernen, einfache bis mittelschwierige praktische Problemstellungen aus den Bereichen Mathematik, Physik, Geophysik und Meteorologie in der Programmiersprache Python mit geeigneten Programmiermethoden zu lösen. Daneben sollen die Studierenden im Teil „Datenverarbeitung“ lernen, wie moderne Computer aufgebaut sind und funktionieren.

Den Studierenden sollen die folgende Kompetenzen vermittelt werden:
  • Algorithmisches Denken, Zerlegen von Problemen in einfachere Teilprobleme
  • Algorithmen in der Programmiersprache Python implementieren zu können
  • Standard-Datenverarbeitungsaufgaben (Statistik, Plotten, tabellenorientierte Datenverarbeitung) mit Python durchführen zu können
  • Standardmethoden der Softwareentwicklung (Versionskontrolle, ggfs. Benutzung von CASE-Tools, Erstellen von Dokumentation) zu beherrschen
  • Methodenkompetenzen:
    • Auswahl eines geeigneten Algorithmus
    • Auswahl von geeigneten Datenstrukturen
    • Auswahl der geeigneten Methode zur Parallelisierung von Programmen

Darüber hinaus werden allgemeine Kompetenzen gestärkt, wie z. B. :
  • Durchhaltevermögen
  • Selbständiges Arbeiten
  • Zeitmanagement und Projektplanung
  • Abstraktionsvermögen, konzeptionelles, analytisches und logisches Denken
3 Inhalte des Moduls

Datenverarbeitung
  1. Einführung in Unix
  2. Darstellung von Zahlen und Objekten
  3. Datenaustauschformate
  4. Programmierstrategien und Software Engineering
  5. Rechnerhardware, Netzwerk
  6. Betriebssystem
  7. Multi-Prozessing
  8. Kryptographie
Programmieren (Programmiersprache Python)
  1. Objekte und grundlegende Datentypen
  2. Flusssteuerung
  3. Routinen
  4. Verwendung von Modulen
  5. Objektorientiertes Programmieren
  6. Ausnahmefehler und Assertions
  7. Input und Output
  8. Iteratoren und Generatoren
  9. Wichtige Pythonmodule (z. B. NumPy, Matplotlib, SciPy, Pandas, xarray)
  10. Algorithmen und Datenstrukturen, Rekursion
  11. Parallelisieren
4 Lehr- und Lernformen

Die theoretischen Inhalte werden in der Vorlesung vermittelt. In den Übungen wird das theoretisch Erlernte von den Studierenden unter Anleitung an praktischen Programmierbeispielen umgesetzt. Desweiteren werden in den Übungen Aufgaben gestellt, die dem weiteren Selbststudium zum Vertiefen des Stoffes dienen. In einem (benoteten) Projekt zeigen die Studierenden, dass sie aufwändigere Programmieraufgaben planen, implementieren und dokumentieren können.
5 Modulvoraussetzungen

keine
6 Form der Modulprüfung/Modulabschlussprüfung

Das Modul wird mit einer Projektarbeit abgeschlossen. Für eine gegebene Programmier-Aufgabenstellung sollen die Studierenden die Implementation selbständig planen, durchführen und dokumentieren. Die Projektarbeit hat eine Dauer von 8 Wochen und wird in elektronischer Form abgegeben. Abzugeben sind ein Bericht, der Source Code, einschließlich Dokumentation.
7 Voraussetzungen für die Vergabe von Leistungspunkten

Das Modul ist bestanden, wenn
  1. das Projekt bestanden wurde,
  2. die Übungen bestanden wurden, hierzu ist der Erwerb von 50 % der zu erreichenden Punkte hinreichend.
8 Verwendung des Moduls (in anderen Studiengängen)

Das Modul kann in anderen mathematisch-naturwissenschaftlichen Fächern als Grundlagenmodul zur Vermittlung von Kenntnissen in Datenverarbeitung und Programmieren verwendet werden.
9 Gesamtnote/Fachnote

Gewicht der Modulnote in der Gesamtnote: 6/180 (3,333%)
10 Modulbeauftragte/r

Alexandre Wennmacher
11 Sonstige Informationen

Version: 2023-03-21