swe1/frank m. hoyerprojekt: party-planer - umsetzung 12. märz 2011geändert: 14. märz 2012, fmh...
TRANSCRIPT
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Vorlesung Software-Engineering IStudiengang Informationstechnik im 3. und 4. Semester 2011/2012
Status der UmsetzungProjekt: Party-Planer
Auftraggeber:A. K. Dewdney
Projektteam:Das Semester 2012
Stand:22.4.2012/FMH
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Projektziele• Produktidee
Unterstützungstool zur Planung einer Party durch Simulation des möglichen Verlaufs.• Welche Gäste darf ich einladen, damit es eine harmonische Party wird?• Wo ist der beste Platz für den Tisch mit den Snacks?
• Hauptszenarien• Beliebige Gäste und ihre Beziehungen zueinander verwalten können.• Simulation verschiedenen Konfigurationen von Gästen/Beziehungen.• Möglichkeit zur Auswertung von Simulationen.
• Strategie• Zuneigung und Abneigung von Personen werden in Wunschabständen beschrieben.• Für den aktuellen Standort der Personen und ihrer näheren Umgebung wird jeweils
ein quantitatives Maß an Unbehagen ermittelt.
• Die Personen wechseln immer auf den Platz der ihnen das geringste Unbehagen bereitet.
2
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Hintergrundinfo
3
Prof. Alexander K. Dewdneyhttp://www.csd.uwo.ca/~akd/
Quelle: Spektrum der Wissenschaft, Computer Kurzweil III, 1998; Seite 48-51
Die Originalimplementierung des PRATY-PLANERS stammt von Rich Gold ( 2003)ist aber leider im Web verschollen…
Die Idee basiertauf einem Artikelvon
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Der Artikel
4
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Applikationsbeschreibung• Gesamtsicht
5
Die Gästeliste:
Wunschabstände der Gäste:
Die Party-Simulation: Berge des Unbehagens:
Daten
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Concept-Map
6
2.Darstellung
akt. Sim.Daten
3.Befindlichkeit
RaumDaten
1.Konfiguration
Personen
Daten4.
Steuerung
5.Import/Export Wunsch-
abstände
Raumplanen
Tischpos.
Gäste-liste
Personenbewegen
6.Export
1.Konfig.
5.Import/Export
Historie
7.Statistik
6.Import/Export
<Modul>
<Daten>
Steuerfluss
Datenfluss
8.Testmgm.
Hier bitte die eigene Übersicht einfügen…
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Modulgruppen (und Kanban-Boards)
7
Import/Export
Konfiguration
Daten (RAM)
Dateien
SteuerungTest-
Management
Befindlichkeit Darstellung Statistik
A
B
C
Kontrollfluss
Datenfluss
Folder (GUI)
Hier bitte die eigene Übersicht einfügen…
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Team und Modulaufteilung – Projektgruppe #
8
Team #: – Module 5+6 (Import/Export) A
Team #: – Modul 2 (Darstellung) C
Team #: – Modul 3 (Befindlichkeitsberechung) B
Team #: – Modul 7 (Statistik+Sim.daten) C
Team #: – Module 4+8 (Steuerung, Testumgebung) B
Team #: – Modul 1 (Konfiguration) A
Team Mitglieder Module (Beschreibung) Board
Hier bitte die eigene Übersicht einfügen…
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Releaseplanung
9
Laden/Speichernder Daten aus/in Datei
14. (29.3.2012) 17. (19.4.2012) 19. (3.5.2012) 20. (10.5.2012)
Version 0.8 Version 1.0
11. (8.3.2012)
Version 0.5
Datenschnittstelle (Zugriffe) umgesetzt
Befindlichkeitsberechnung(Gast bewegen) umgesetzt
Ablaufsteuerungumgesetzt
Rahmenapplikationmit Menüaufrufen
Darstellung (Neuzeichnen)umgesetzt (einf. Version!)Statistik umgesetzt(einfache Version)Konfiguration möglich
Darstellung umgesetzt (Animation ?)
Testmgm. umgesetztUNIT-Tests
Statistik (Grafik)
Review
Entwurf !
Hier bitte die eigene Übersicht einfügen…
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Party-Planer: Gesamtablauf
10
Konfiguration Gastbewegen
Darstellungzeichnen Statistik
[für jede Iteration]
[für jeden Gast]
Von Datei ladenoder eingeben:
•Gästeliste•Wunschabstände•Raum, Tisch
•Anzahl Iteration•Simulations- geschwindigkeit
Für alle freienNachbarfelderdie Befindlichkeitberechnen.
Auf das Feld mitder besten Befindlichkeitwechseln
Panikfaktorfür jedenGast über dieIterationen
Durchschnitts-Panikfaktorpro Gast
Durchschnitts-Panikfaktorfür die Party
komplett neuzeichnenoderFiguren animieren.
Ablauf-Steuerung
Simulation bis Anzahl Iterationen erreichtoder <Stop> gedrückt wird.
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Daten (Übersicht)
11
Die Gästeliste:
Wunschabstände der Gäste:Aktuelle Positionen der Gäste:
Raumplanung:- Raumgröße (Länge, Breite)- Tischdaten (Länge, Breite, Pos_x, Pos_y)
Konfiguration der Simulation:-Geschwindigkeit (Verzögerung in Sekunden)-Anzahl der durchzuführenden Iterationen
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Koordinatensystem
12
pW
T T TT T T
B
x
y
0,5
0,25
0,25
0,5
0,5
> 0,5
y
x
B
Das default Rastermaß ist 0,5m.
Die Gäste stehen immer Mitte Feld,d.h. B steht auf x=0,75; y=0,75
Die Maße sind inklusive, d.h. 0,5 ist noch im ersten Feld,> 0,5 bis 1.0 im zweiten Feld.
ID; Name; Beruf; Icon; Start_x; Start_y--------------------------------------------------1; Brigitte; Börsenmaklerin; 1; 3,25; 3,252; Penelope; Prinzessin; 2; 2,25; 0,753; Willi; Gewichtheber; 3; 0,75; 1,25
Gästeliste (Testdaten): Symbole:1 = B2 = P3 = W
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Gästeliste aus dem Original-Artikel
13
ID;Name; Beruf; Icon; Start_x; Start_y--------------------------------------------------1; Brigitte; Börsenmaklerin; 1; 5,75; 5,752; Cäsar; Zahnarzt; 2; 7,25; 6,753; Flora; Fotomodell; 3; 7,25; 6,754; Gero; Geschäftsmann; 4; 5,25; 6,255; Kuno; Künstler; 5; 5,75; 7,756; Penelope; Prinzessin; 6; 3,75; 2,757; Viola; Geigerin; 7; 2,75; 5,758; Willi; Gewichtheber; 8; 2,25; 3,25
Gästeliste (Originaldaten):x
y
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
ID; Name; Beruf; Icon; Start_x; Start_y--------------------------------------------------1; Brigitte; Börsenmaklerin; 1; 5,75; 5,752; Cäsar; Zahnarzt; 2; 7,25; 6,753; Flora; Fotomodell; 3; 7,25; 6,754; Gero; Geschäftsmann; 4; 5,25; 6,255; Kuno; Künstler; 5; 5,75; 7,756; Penelope; Prinzessin; 6; 3,75; 2,757; Viola; Geigerin; 7; 2,75; 5,758; Willi; Gewichtheber; 8; 2,25; 3,25
Relationen zwischen den Daten über Personen-IDs
14
1; 1; 01; 2; 1,21; 3; 2,41; 4; 0,61; 5; 3,61; 6; 1,51; 7; 3,61; 8; 1,21; 9; 0,3
2; 1;2; 2;2; 3;
…
Personendaten (Gästeliste): Wunschabstände:Raum_Breite = 9Raum_Laenge = 14
Tisch_Breite = 1,0Tisch_Laenge = 2,5Tisch_x = 4,25Tisch_y = 3,75
Iterationen = 150Verzoegerung = 1,0
Raumdaten:Itteration; Gast; Pos_x; Pos_y; Behagen-------------------------------------------------------1; 1; 1; 1; 01; 2; 1; 1; 0…150; 1; 4; 5; 3,5150; 2; 3; 6; 2,5150; 3; …
Simulationsergebnis:
*.PPG
*.PPW *.PPK *.PPEDateien:
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Entwurf für Ermittlung der Tischposition
15
Gast1;Gast2;Wunschabstand----------------------------------------1; 0; 0,31; 1; 01; 2; 1,51; 3; 1,2
2; 0; 1,52; 1; 3,32; 2; 02; 3; 4,5
3; 0; 1,53; 1; 2,43; 2; 0,93; 3; 0
Wunschabstände:Raum_Breite = 5Raum_Länge = 4
Tisch_Breite = 1,5Tisch_Länge = 1Tisch_x = 1,5Tisch_y = 2,5
Iterationen = 3Verzoegerung = 1,0Raster = 0,5
Raumdaten:p
W
T T TT T T
B
x
y
0,5
pW
T T TT T T
B
x
y
0,5
Der Tisch wird als Gast/Person mit ID=0 geführtFür die Abstandberechnung kann der Mittelpunkt des Tisches benutzt werden,bei der Kollisionsprüfung aber die gesamte Tischfläche prüfen!
Entwurf 1: alle Positionen (= Felder)
Entwurf 2: nur Mittelpunkt -> einfacher
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Testdaten für Party-Planer (3 Personen & 3 Iterationen)
16
Name; Beruf; Icon; Start_x; Start_y--------------------------------------------------1; Brigitte; Börsenmaklerin; B; 3,25; 3,252; Penelope; Prinzessin; P; 2,25; 0,753; Willi; Gewichtheber; W; 0,75; 1,25
0; Tisch; Snaks; 0; 1,75; 2,5
Gast1;Gast2;Wunschabstand-----------------------------------------1; 0; 0,31; 1; 01; 2; 1,51; 3; 1,2
2; 0; 1,52; 1; 3,32; 2; 02; 3; 4,5
3; 0; 1,53; 1; 2,43; 2; 0,93; 3; 0
Gästeliste: Wunschabstände:Raum_Breite = 5Raum_Länge = 4
Tisch_Breite = 1,5Tisch_Länge = 1Tisch_x = 1,5Tisch_y = 2,5
Iterationen = 3Speed = 1Raster = 0,5
Raumdaten:Iteration; Gast; x; y; Behagen-----------------------------------------0; 1; 3,5; 3,5; ?0; 2; 2,5; 1; ?0; 2; 1; 1,5; ?
1; 1; ?; ?; ?1; 2; ?; ?; ?1; 2; ?; ?; ?
2; 1; ?; ?; ?2; 2; ?; ?; ?2; 2; ?; ?; ?
3; 1; ?; ?; ?3; 2; ?; ?; ?3; 2; ?; ?; ?
Simulationsergebnis:
pW
T T TT T T
B
Iteration 0 (Startaufstellung)
x
y
0,5
0 = Tisch (T)
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Testdaten für Party-Planer (3 Personen & 3 Iterationen)
17
T T TT T T
Iteration 0 (Startaufstellung)
nach Iteration 1 nach Iteration 2
pW
T T TT T T
B
nach Iteration 3
T T TT T T
T T TT T T
B 0 1,5 1,2 0,3P 3,3 0 4,5 1,5W 2,4 0,9 0 1,5
B P W TWunschabstände: Positionen:
x yB 3,25 3,25P 2,25 0,75W 0,75 1,25T 1,75 2,50
B
pW
BB
WW
pp
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Screenshots Version #.# vom ##.##.2012
18
Hier bitte die eigene Übersicht einfügen…
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
MODULEParty-Planer
19
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Modulbeschreibung - Modul 1: Konfiguration• Modulübersicht
Eingabe und Editiermöglichkeit für die Gästeliste, ihre Wunschabstände und Raumdaten (mit Tisch)
• Daten• Personendaten• Raumdaten
• Hauptabläufe• Anlegen und Ändern der Gästeliste• Eingabe der Wunschabstände
• Benutzeroberflächen• Gästeliste• Wunschabstände• Raummaße und Tischmaße/-Position
20
Die Gästeliste:
Wunschabstände der Gäste:
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Modulbeschreibung - Modul 2: Darstellung• Modulübersicht
Darstellung des aktuellen Stands der Simulation.
• Daten• Raumdaten mit Tisch• Personendaten (Label, Icon etc.)• akt. Simulationsdaten (Pos. d. Personen)
• Hauptabläufe• Bewegung einer Person von einer Position
zu einer anderen (evtl. mit Animation).• Kollisionsprüfung.
• Benutzeroberflächesiehe Skizze (vereinfacht)
21
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Modulbeschreibung - Modul 3: Befindlichkeitsberechnung
• ModulübersichtErmittlung des Unbehagens einer Person im Raum in Bezug auf die Positionen anderen Personen und ihres Wunschabstandes zu ihnen.
• Daten• Personendaten (Wunschabstände)• akt. Simulationsdaten (Pos. d. Gäste)
• HauptabläufeBerechnung eines quantitativen Maßes für Unbehagen aufgrund von Abstandwerten.-> Formel
• Benutzeroberflächekeine
22
Wp
W-P
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Modulbeschreibung - Modul 4: Steuerung des Ablaufs• Modulübersicht
Steuerung des gesamten Ablaufs der Simulation.Aufruf der beteiligten Module:• Befindlichkeit• Darstellung
• Daten• Gästeliste• Konfiguration
• HauptabläufeEine Simulation der Party mit den eingeladen Gästen durchführen.
• Benutzeroberflächekeine (-> siehe Darstellungsmodul)
23
Daten
Darstellungsmodul
Befindlichkeitsmodul
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Modulbeschreibung - Modul 5: Import/Export von Konfigurationen
• ModulübersichtSpeichern und Laden aller Konfigurationsdaten.
• Daten• Personendaten• Raumdaten• Simulationskonfiguration
• Hauptabläufe• Speichern aller Daten zu einer Simulation• Laden aller Daten von einer Simulation
• Benutzeroberfläche• Load/Save-Dialog
24
Die Gästeliste:
Wunschabstände der Gäste:
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Datei
Modulbeschreibung - Modul 6: Export von Simulationsverläufen
• ModulübersichtSpeichern des Simulationsverlaufs für eine spätere Darstellung oder Auswertung
• Daten• aktuelle Simulationsdaten
• Hauptabläufe• Speichern einer Simulation
• Benutzeroberflächekeine (siehe Statistikmodul)
25
Sim.Daten
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Modulbeschreibung - Modul 7: Statistik von Simulationsverläufen
• ModulübersichtAuswerten von Simulationsdaten zur Bewertung des Verlaufs.Kann die Party mit diesen Gästen stattfinden?
• Daten• Simulationsdaten
• HauptabläufeBewertung ob eine Simulation positiv war.
• BenutzeroberflächeJa (noch zu spezifizieren)
26
Darstellung verschiedener Bewertungskriterien:-Befindlichkeit der Personen im Partyverlauf-Panik-Status der Snacks
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Modulbeschreibung - Modul 8: Testumgebung• Modulübersicht
Test- und Debug-Umgebung für die gesamte Anwendung
• Datenalle Daten
• Hauptabläufe• Systemtest durchführen (Modultests, Unit-Tests)• Visualisieren der inneren Zustände der Datenspeicher• Manipulation der Datenspeicher
• BenutzeroberflächeJa (noch zu spezifizieren)
27
Wunschabstände der Gäste:
Sim.Daten
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
STRUKTUR FÜR REVIEWVorlage pro Modul
28
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
MODUL <MODULBESCHREIBUNG><Bearbeiter 1>, <Bearbeiter n>
29
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
1. Übersicht - <Modulname>
30
Import/Export
Konfiguration
Daten (RAM)
Dateien
SteuerungTest-
Management
Befindlichkeit Darstellung Statistik
A
B
C
Kontrollfluss
Datenfluss
Folder (GUI)Modul kennzeichnen
Hier bitte die eigene Übersicht einfügen…
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
2. Modulbeschreibung - <Modulname>
31
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
3. Anforderungen - <Modulname>
32
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
4. Schnittstellen - <Modulname>
33
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
5. Strukturbeschreibung - <Modulname>
34
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
6. Beschreibung Kernfunktion - <Modulname>
35
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
7. Aufgaben und Status - <Modulname>
36
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
8. Umsetzung - <Modulname>
37
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
9. Software-Test - <Modulname>
38
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
10. „offene Punkte“ - <Modulname>
39
Problem Lösungsvorschlag/Anmerkung
SWE1/Frank M. Hoyer Projekt: Party-Planer - Umsetzung 12. März 2011 geändert: 14. März 2012, FMH Entwurf
Fragen:
40