Architektur
- Wie kann ich meine Geschäftslogik von anderen Schichten wie
Steuerung und Datenzugriff trennen, um Wiederverwendbarkeit
zu erhöhen?
- Welche Abhängigkeiten habe ich und welche davon brauche ich
tatsächlich? Wie prüfe ich neue Abhängigkeiten und halte
diese auf dem neuesten Stand?
- Wie modelliere ich (relationale) Daten, sodass diese sowohl
konsistent als auch flexibel für zukünftige Änderungen sind?
Programmierung
- Wie kann ich regelmäßige Analysen und Berichte für meine
Daten erstellen und diese für meine Entscheidungen nutzen?
- Welche Möglichkeiten habe ich, verschiedene Systeme durch
einen zentralen Service zu verbinden?
- Wie können Versionsverwaltung und Codereviews dabei helfen
die Qualität meiner Software zu verbessern? Welche Rolle
spielt ein einzelner Commit für die Wartbarkeit des Codes?
Tests
- Welche Faktoren machen meinen Code einfacher testbar?
- Wie kann ich Abhängigkeiten im Test ersetzen ("mocken")?
- Welche Art von Test sollte ich überhaupt schreiben, z.B.
Unittest, Integrationstest, Regressionstest?