Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University...
-
Upload
hilda-abke -
Category
Documents
-
view
111 -
download
4
Transcript of Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University...
![Page 1: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/1.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Projektmanagement
![Page 2: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/2.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Design-/Architekturbeispiel:
CalenderView
Client ServerCommunication
RESTAPI
ReservationSystem
Persistency
ReservationForm
UserManagement
UserAdministration
BusinessRules
![Page 3: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/3.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
BÖSE
Dogma der 70er und 80er
Ein Baustein eine Verantwortliche
Gut definierte Schnittstellen
Bausteine parallel implementieren
Bausteine einzeln testen
(Schrittweise) Integration der Bausteine
![Page 4: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/4.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel UniversityBÖSE
Design-/Architekturbeispiel: Horizontale WPs
CalenderView
Client ServerCommunication
RESTAPI
ReservationSystem
Persistency
ReservationForm
UserManagement
UserAdministration
BusinessRules
![Page 5: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/5.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Iterative / Agile /XP Vorgehensweise
Eine Funktionalität eine Verantwortliche
keine zusätzlichen Testtreiber
Schnittstellendefinition bei der Entwicklung
Schnittstellenverantwortung beim Schnittstellennutzer
Funktionalitäten durchschneiden Bausteine (vertikal)
parallele Entwicklung an vielen Bausteinen Versionsverwaltung mit optimistischen Sperrkonzepten
![Page 6: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/6.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Design-/Architekturbeispiel: Vertikale WPs
CalenderView
Client ServerCommunication
RESTAPI
ReservationSystem
Persistency
ReservationForm
UserManagement
UserAdministration
BusinessRules
![Page 7: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/7.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Iterativ und testgetrieben
für nächste Anforderung anf {
bis Funktionalität ist gut abgedeckt {
entwerfe Beispielablauf ba {
GUI Pappmodell des Aufruf
GUI Pappmodell des Ergebnis
textuelle Beschreibung der Schritte
}
für wichtige Schritte im Beispielablauf
{
Beispielobjektdiagramm
}
Klassendiagramm anpassen
Architektur anpassen
Tests implementieren
Funktionalität implementieren
Coverage prüfen
}
}
Anforderungsdefinition
Analyse
Design
Implementierung
Qualitäts Sicherung
Projekt Management
![Page 8: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/8.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Projektmeilensteine (alt)
12.11.08: Anforderungsanalyse Dokument
26.11.08: Analyse + Design Dokument
16.12.08: An-/Abmeldefrist OKA (noch 3 Tage)
17.12.08: Technische Dokumentation
14.01.09: 1. Messe
21.01.09: Anforderungsanalyse Integrationsaufgabe
28.01.09: Analyse + Design Integrationsaufgabe
04.02.09: Technische Dokumentation Integrationsaufgabe
11.02.09: 2. Messe
![Page 9: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/9.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Projektmeilensteine (neu)
12.11.08: Anforderungsanalyse Dokument
26.11.08: Projekthandbuch Sprint 2
16.12.08: An-/Abmeldefrist OKA (noch 3 Tage)
17.12.08: Projekthandbuch Sprint 3
14.01.09: 1. Messe
21.01.09: Projekthandbuch Integrationsaufgabe Sprint 1
28.01.09: Projekthandbuch Integrationsaufgabe Sprint 2
04.02.09: Projekthandbuch Integrationsaufgabe Sprint 3
11.02.09: 2. Messe
![Page 10: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/10.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Projekthandbuch
Deckblatt
Name
Autoren
Versionsbezeichner
Projekthandbuch
BeamMan
Gruppe: QuickSoft
Albert Zündorf, [email protected]örn Dreyer, [email protected]
Version: 1.0.20081028.233012
![Page 11: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/11.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Inhalt
Kapitel nach Phasen
Inhaltsverzeichnis
1. Einleitung2. Anforderungen & Analyse3. Design & Architektur4. Implementierung & Test5. Zeitplan und Aufwände
![Page 12: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/12.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Einleitung
Kurzer Überblick
(z.B. Aufgenabstellung)
1. Einleitung
Das Projekt BeamMan stellt eine Web basierte Anwendung zur Organisation der Beamer Ausleihe am Fachbereich 16 zur Verfügung. Fachgebiete die einen Beamer ausleihen wollen, können Beamer, die vom Studienservice und einigen anderen Fachgebieten zur Verfügung gestellt werden, für bestimmte Zeiträume reservieren. Die Ausleiher können ihr eigenes Gerät priorisiert reservieren bzw. Freigabezeiträume definieren.
Das System wird auch benutzt, um die Übergabe des Geräts bei Ausleihe und Wiedergabe so wie den einwandfreien Zustand des Geräts zu protokollieren.
![Page 13: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/13.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Anforderungen
Use Case Diagramme
System
Anforderungen
Benutzer
2. Anforderungen & Analyse
Das Projekt ist in folgende Use Cases gegliedert:
Besitzer
bereit stellen
Sperrzeiten
Reservieren
Ausleihe
Leihender
![Page 14: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/14.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
GUI Pappmodelle
Für jeden Use Case:
Beispielszenarios mit:
GUI Pappmodell
textuelle Ablaufbeschreibung
2. 1 Reservieren
Herr Maier logt sich mit seinem Webbrowser in das BeamMan Reservierungssystem ein und erhält folgende Übersicht:
BeamMan FB 16 Uni Kassel
Mon8:00 10:00 12:00 14:00 16:00
RA Beamer X X
StudServ X X
![Page 15: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/15.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
GUI Pappmodelle
Für jeden Use Case:
Beispielszenarios mit:
GUI Pappmodell
textuelle Ablaufbeschreibung
Herr Maier klickt auf StudServ, Montag 16:00 Uhr. Das System prüft die Verfügbarkeit und trägt die Reservierung für Herrn Maier ein.
BeamMan FB 16 Uni Kassel
Mon8:00 10:00 12:00 14:00 16:00
RA Beamer X X
StudServ X X Maier
![Page 16: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/16.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
GUI Pappmodelle
Für jeden Use Case:
Beispielszenarios mit:
GUI Pappmodell
textuelle Ablaufbeschreibung
BeamMan FB 16 Uni Kassel
Mon8:00 10:00 12:00 14:00 16:00
RA Beamer X X Maier
StudServ X X
![Page 17: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/17.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
textuelle Abläufe
Für aktuellen Use Case:
Beispielszenarios mit:
GUI Pappmodell
textuelle Ablaufbeschreibung
mit Betreuer besprechen
bis jetzt Kundentauglich
…Ablauf: 1. Durch den Klick auf StudServ, Montag 16:00
Uhr wird ein entsprechender Reservierungs-wunsch im Webbrowser zusammengestellt.
2. Der Reservierungswunsch wird an den BeamMan Server übermittelt.
3. Der BeamMan Server greift auf die Datenbank zu und holt sich den Eintrag für den StudServ Beamer und den gewünschten Timeslot.
4. Da der Timeslot noch frei ist, wird die Reservierung für Herrn Maier eingetragen.
5. Die Änderung wird in der Datenbank gespeichert.
6. Die Bestätigung der Reservierung wird an den Webbrowser zurückgemeldet.
7. Der Webbrowser holt sich die neuen Wochendaten und zeigt sie an.
![Page 18: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/18.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Objektdiagramme
Analyse:
Hier Datenmodellentwurf
Für zentrale Schritte:
Objektdiagramm
Ziel:
Datenorganisation muss klar werden
…
3. Der BeamMan Server greift auf die Datenbank
zu und holt sich den Eintrag für den StudServ Beamer und den gewünschten Timeslot.
beamMan
RABeamer: Beamer
StudServ: Beamer
r1: Reservierung
von: Mo 10:00bis: Mo 12:00
r2: Reservierung
von: Mo 12:00bis: Mo 14:00
![Page 19: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/19.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Design
Klassendiagramm ableiten
…3. Design und Architektur
Folgendes Klassendiagramm fasst unseren Datenentwurf zusammen:
BeamMan
Reservierung
von: longbis: long
Beamer
name: String
![Page 20: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/20.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Architektur
Architektur hier Standard
…Folgendes Deploymentdiagramm stellt unsere
Client Server Architektur dar.
dekanatsserver
ReservierungsDatenbank
BeamManService
PC1
WebBrowser
![Page 21: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/21.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
JUnit Tests mit GWT
siehe Anleitung Vorlesungsseite
Szenario dient als Vorlage für die Tests
zuerst kleine Teilfunktionalitäten einzeln testen (und implementieren)
dann Gesamtszenario testen (und implementieren)
Test legt Beispieldaten an
Test führt Beispieloperation des Benutzers durch
Test prüft Reaktion des Systems im Vergleich mit Szenario
![Page 22: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/22.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Coverage Prüfung
Manuell Szenarios durchgehen funktioniert dieser Schritt? Alternative Situation denkbar?
Prüfung der Implementierung mit z.B. ECL Emma Test durchlaufen alle Code Teile? Gut. Wenn nein, Implementierung behandelt Sonderfälle? Sonderfälle in Szenarios und Tests gießen
![Page 23: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/23.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Aufwände
Zeitplan später
Stundenzettel:
arbeit an Use Case xSzenario y
PappmodellLeute, Stunden
TextszenarienLeute, Stunden
ObjektdiagrammeLeute, Stunden
…
Inhaltsverzeichnis
1. Einleitung2. Anforderungen & Analyse3. Design & Architektur4. Implementierung & Test5. Zeitplan und Aufwände
![Page 24: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/24.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
Story Card
![Page 25: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/25.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University
![Page 26: Fachgebiet Software Engineering Übersicht © 22.01.2014 Albert Zündorf, Kassel University Projektmanagement.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d6749795902118bca40/html5/thumbnails/26.jpg)
Fachgebiet Software Engineering Übersicht © 11.04.23 Albert Zündorf, Kassel University