Version 1.0.0
Gegenstände:
-
ITP - Informationstechnische Projekte (6. Semester)
-
SYP - Systemplanung und Projektentwicklung (6. Semester)
Jahrgänge:
-
3ahitm/2020SS
-
3ahif/2020SS
1. Gesetzlicher Lehrplan lt. Beiblatt zum Zeugnis
1.1. ITP
1.2. SYP
1.2.1. Bildungs- und Lehraufgabe
-
die theoretischen Grundlagen, Rahmenbedingungen, Prozesse, Vorgehensmodelle, Kompetenzen und Rollen im Software Engineering sowohl erklären als auch kontextbezogen interpretieren;
-
die für ein Software-Entwicklungsprojekt geeigneten Methoden und Werkzeuge des Software Engineerings – ausgehend von Beispielen, Fallstudien oder Praxisprojekten – sowohl erklären als auch auswählen und theoriebasiert anwenden;
-
bestehende IKT-Systeme und Geschäftsprozesse analysieren und darstellen um dafür Lösungskonzepte und Umsetzungsstrategien für Software- und Systementwicklungsprojekte zu erarbeiten.
2. Konkretisierung für NOSt-Prüfung (sowohl für SYP als auch ITP)
2.1. Arbeiten mit Git und GitHub
-
Überblick und Architektur
-
Was ist Git? (verteiltes Versionsverwaltungssystem)
-
Was ist ein Versionsverwaltungssystem?
-
Unterschied verteilte und zentrale Versionsverwaltungssysteme (grafische Darstellung)
-
Unterschied Git und GitHub
-
-
Grundlegende Arbeitsabläufe erläutern können:
-
Was ist ein
git add …
? -
Was ist ein commit?
-
Was ist ein push?
-
Was ist ein Softwarebranch?
-
Wofür werden Branches erstellt?
-
Was ist ein merge?
-
Was ist ein Tag?
-
Wofür werden Tags verwendet?
-
Was ist ein Fork?
-
Was ist ein Pull-Request (Beispiel für einen Pull-Request)
-
Einsatzgebiet von GitHub-Templates?
-
-
Grundlegende Arbeitsarbläufe in Git (GitHub) durchführen (sowohl in Konsole als auch IntelliJ Ultimate):
-
Anlegen eines Software-Repositories (Repo)
-
Commit eines Repos
-
Branch eines Repos
-
Merge eines Repos
-
Wie kann man den Branch der lokalen Arbeitkopie wechseln?
-
Durchführen eines Pull-Requests
-
Was ist der Unterschied zwischen einem "normalen Repo" und einem Template?
-
Wie kann man ein GitHub-Template erstellen?
-
Die deutschen Übersetzungen der englischen Begriffe sind zu lernen. |
2.2. Softwarequalitätsmanagement
-
V-Modell darstellen und erläutern
-
Welche Arten von Tests gibt es im V-Modell (Erläuterung)
-
Wo sind die Datenbank-Tests im V-Modell ersichtlich?
-
-
Testen mit jUnit5, AssertJ, AssertJ-DB
-
Erläutern der Architektur des zu testenden Software-Systems (Einschränkung auf JavaFX-Anwendung mit JDBC-Zugriff auf DerbyDb)
-
Teststrategien aufzählen und erläutern
-
CRUD-Funktionalität testen (unter besonderer Beachtung von Referenzen zwischen Objekten)
-
Unidirektionale-Beziehungen / Bidirektionale Beziehungen testen
-
2.3. Dokumentation
2.3.2. Technische Umsetzung
-
Erläuterung von AsciiDoc und AsciiDoctor
-
Unterschied AsciiDoc und Asciidoctor?
-
Ausgabeformate von AsciiDoctor?
-
Warum wird Docker verwendet?
-
Erläuterung des Docker-Skripts in asciidoctor-docker-template
-
Einstellungsmöglichkeiten im Document Header (Präambel)
-
Inhaltsverzeichnis
-
Icon-Font
-
image-dir
-
usw.
-
-
Was ist ein Callout?
-
Wie können Tabellen erstellt werden?
-
Wie werden Bilder eingebunden?
-
Wie werden UML-Diagramme erstellt?
-
Welche Arten von Blocks gibt es?
-
Admonition Blocks
-
Source Code Blocks
-
usw.
-
-
Conditional Directives
-
Einbinden von source code
-
Deployment in gh-Pages
-
Erläutern der grundsätzlichen Funktionsweise
-
Varianten
-
doc-Folder
-
doc-Branch
-
-