1. Ziel
Ziel des Praktikums war es, die Weiterentwicklung der Plattform zu unterstützen und die Qualität durch Tests, nachvollziehbare Änderungen sowie QA-Aktivitäten im Release-Prozess zu erhöhen.
- Stabilere Features durch Testabdeckung und Regression-Absicherung
- Verbesserte Wartbarkeit durch Refactoring und Komponenten-Weiterentwicklung
- Höhere Transparenz durch gepflegte technische Dokumentation
Kontext: Teamarbeit im Scrum-Prozess (Daily, Sprint Planning, Review, Retrospektive) mit sauberem Git-Workflow (Branches, Commits, Review-Prozess).
2. Aufgaben
- Weiterentwicklung und Pflege von Angular-Komponenten (UI, Logik, Bugfixing, Refactoring)
- Implementierung von Unit-Tests zur Absicherung von Komponenten- und Logikpfaden
- Fehleranalyse: Reproduktion → Fix → Regression-Absicherung
- Unterstützung bei CI/CD-bezogenen Tätigkeiten (Build-/Test-/Release-Abläufe im Teamkontext)
- Dokumentation von Änderungen (Funktionsbeschreibung, technische Hinweise, Übergaben)
3. Unit-Tests & Qualitätssicherung
Fokus auf kritische Bereiche, um regressionssichere Änderungen zu ermöglichen und Feedback-Zyklen zu verkürzen.
- Testfälle für Komponentenverhalten, State-Änderungen und relevante Logikpfade
- Regression-Tests für behobene Bugs (Vermeidung von Wiederauftreten)
- Verbesserte Wartbarkeit durch klar strukturierte, reproduzierbare Tests
Einbindung in Teamabläufe rund um CI/CD-, Build- und Release-Pipelines (mitwirkend/unterstützend).
4. Dokumentation & QA im Release-Prozess
- Pflege technischer Dokumentation (Änderungen, Funktionsbeschreibung, Hinweise für Weiterentwicklung)
- QA-Unterstützung: Verifikation von Fixes/Features, Abnahme-Support
- Nachvollziehbarkeit über Git: saubere Commits, Branching, History
5. Methoden & Tools
- Methodik: Agile / Scrum
- Technologien: JavaScript, Angular
- DevOps-Umfeld: GitLab, CI/CD, Docker
- Schwerpunkte: Unit Testing, QA, technische Dokumentation
Struktur der Arbeit
Visualisierung des Arbeitskontexts: Scrum/Agile als Rahmen → Entwicklung & Tests → QA/Release-Ablauf → Dokumentation/Transparenz.
Scrum / Agile
Daily • Planning • Review • Retro
Team-WorkflowSoftware-Entwicklung (Angular)
Features • Bugfixing • Refactoring
Git-Branches & CommitsQualität & Delivery
Unit-Tests • Regression • QA • CI/CD (Build/Test/Release)
Schnelleres FeedbackDokumentation
Änderungen • technische Hinweise • Übergaben
TransparenzMehrwert
Stabilität • Wartbarkeit • klare Nachvollziehbarkeit
Qualität ↑Ergebnis
Stabilere Releases und effizientere Entwicklungsprozesse
Team-ImpactAblauf & Rolle im Entwicklungsprozess
Der Entwicklungsprozess war in einen agilen Scrum-Ablauf eingebettet. Als Praktikant in der Softwareentwicklung war ich aktiv in diesen Prozess eingebunden und arbeitete eng mit Entwicklern und dem Team zusammen.
1. Planung & Abstimmung
Zu Beginn eines Sprints wurden Aufgaben aus dem Product Backlog im Rahmen des Sprint Plannings priorisiert und verteilt. Ich übernahm klar definierte Entwicklungs- und Testaufgaben und klärte offene Punkte frühzeitig im Team.
2. Entwicklung & Umsetzung
Die Umsetzung erfolgte hauptsächlich an bestehenden Angular-Komponenten. Meine Aufgaben umfassten unter anderem:
- Implementierung neuer Features und Erweiterungen
- Bugfixing und Refactoring bestehender Komponenten
- Einhaltung von Coding-Standards und Projektkonventionen
3. Qualitätssicherung durch Unit-Tests
Zur Sicherstellung der Qualität wurden Unit-Tests mit dem Testframework Jasmine implementiert. Diese Tests dienten der Absicherung von Komponentenlogik und zentralen Funktionspfaden innerhalb der Angular-Anwendung.
- Verwendung von
describe,itundexpectzur Definition von Testfällen - Prüfung von Logik, Events und Zustandsänderungen in Komponenten
- Nachbesserung von Tests und Code auf Basis von Testergebnissen
4. Integration in CI/CD- und Release-Abläufe
Änderungen wurden über Git versioniert und in den Team-Workflow integriert. Dabei war ich unterstützend in CI/CD-bezogene Abläufe eingebunden:
- Saubere Commits und Branching nach Projektkonvention
- Überprüfung von Build- und Testläufen innerhalb der CI/CD-Pipelines
- Unterstützung bei Build- und Release-Vorbereitungen
5. Dokumentation & Transparenz
Zur Sicherstellung der Nachvollziehbarkeit dokumentierte ich relevante Änderungen und Erkenntnisse. Dies erleichterte dem Team die Weiterentwicklung und Wartung der Plattform.
- Dokumentation von Funktionsänderungen
- Technische Hinweise für zukünftige Erweiterungen
- Transparenz über Git-History und Projektdokumentation
Zusammenfassend war ich als Praktikant aktiv in Entwicklung, Test und Qualitätssicherung eingebunden und wirkte an einem DevOps-nahen Entwicklungsprozess mit. Durch automatisierte Tests und CI/CD-gestützte Build- und Release-Abläufe leistete ich einen Beitrag zu stabileren und wartbaren Releases und unterstützte das Team entlang der gesamten Entwicklungskette.
6. Mehrwert
- Stabilere Features durch Testabdeckung und Regression-Absicherung
- Verbesserte Wartbarkeit durch kontinuierliche Komponenten-Weiterentwicklung
- Effizientere Entwicklungs- und Releaseprozesse durch CI/CD-unterstützte Abläufe
- Höhere Transparenz im Team durch gepflegte technische Dokumentation