1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

28
1 SWT-Praktikum 2005 Gruppe 13 Murphy‘s Train Frederik Eichler Andreas Kumlehn

Transcript of 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

Page 1: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

1

SWT-Praktikum 2005Gruppe 13Murphy‘s Train

Frederik Eichler

Andreas Kumlehn

Page 2: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

2

Das Team

Michael Battenfeld Tools Jendrik Bertram Test Anne Brückner Analyse Frederik Eichler Webauftritt Arthur Haag Reverse Engineering Holger Hagedorn Präsentation Christian Haupt Lastenheft Thomas Kemmerich Projektleitung Andreas Kumlehn Implementierung Dirk Meister Qualität Markus Reketat Pflichtenheft

Page 3: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

3

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration

Page 4: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

4

Offer berechnen

Selbstkosten berechnen

Interne Verhandlungen im Ring

Offer abgeben

Page 5: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

5

Selbstkosten berechnen

Eigenschaften von Load- und UnloadTasksan Stations gebunden

frühesten Startzeitpunkt

spätesten Startzeitpunkt

Alle anderen Tasks können neu berechnet werden

Einsortieren einer neuen Order mit First-Fit-Strategie

Page 6: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

6

Selbstkosten berechnen

L4L3L2 U1U3U2L4 M D MMR M D M

LN

L1

Auktionsdeadline

Legende

• Move• Load• Unload• DoNothing• Repair

• LoadTask erstellen

Page 7: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

7

Selbstkosten berechnen

L4L3L2 U1U3U2M D MMR M D M

LN

L4L1

Auktionsdeadline

Legende

• Move• Load• Unload• DoNothing• Repair

• LoadTask erstellen• unrelevante Tasks ausblenden

Page 8: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

CurrentTaskPlan RawTaskPlan

8

Selbstkosten berechnen

U4L2 U1U3L3U2M D

LN

L4L1

Auktionsdeadline

Legende

• Move• Load• Unload• DoNothing• Repair

• LoadTask erstellen• unrelevante Tasks ausblenden

Page 9: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

CurrentTaskPlan RawTaskPlan

9

Selbstkosten berechnen

L2 U4U1U3L3U2M D

LN

L4L1

Auktionsdeadline

Legende

• Move• Load• Unload• DoNothing• Repair

• LoadTask erstellen• unrelevante Tasks ausblenden• LoadTask versuchen einzufügen

Page 10: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

CurrentTaskPlan RawTaskPlan

10

Selbstkosten berechnen

L2M D

Auktionsdeadline

L4L1 U4U1U3L3U2LNM M M R

Legende

• Move• Load• Unload• DoNothing• Repair

• LoadTask erstellen• unrelevante Tasks ausblenden• LoadTask versuchen einzufügen• TaskPlan vervollständigen• Deadlines prüfen

Page 11: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

CurrentTaskPlan RawTaskPlan

11

Selbstkosten berechnen

L2 U3L3U2M D LN

Auktionsdeadline

L4L1 M M M R U4U1

Legende

• Move• Load• Unload• DoNothing• Repair

• LoadTask erstellen• unrelevante Tasks ausblenden• LoadTask versuchen einzufügen• TaskPlan vervollständigen• Deadlines prüfen• nächtste Position testen

Page 12: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

CurrentTaskPlan RawTaskPlan

12

Selbstkosten berechnen

L2M D

Auktionsdeadline

L4L1 L3LNU2M M M U3 U4U1RUN

Legende

• Move• Load• Unload• DoNothing• Repair

• LoadTask erstellen• unrelevante Tasks ausblenden• LoadTask versuchen einzufügen• TaskPlan vervollständigen• Deadlines prüfen• nächtste Position testen• UnloadTask analog einfügen

Page 13: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

13

Offer berechnen

Selbstkosten berechnen

Interne Verhandlungen im Ring

Offer abgeben

Page 14: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

14

Interne Verhandlungen im Ring Funktion des Masters

Initiiert Negotiation-Prozess für Suche nach den geringsten Selbstkosten

Beendet Suche durch Benachrichtigung des günstigsten Shuttles

Vorteile der gewählten StrukturKein interner Wettbewerb

Gleichmäßige Auslastung der Shuttles

Page 15: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

15

Offer berechnen

Selbstkosten berechnen

Interne Verhandlungen im Ring

Offer abgeben

Page 16: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

16

Offer abgeben

Aufschläge berechnenRisikoaufschlag

Berechnung anhand empirischer DatenGewinnaufschlag

Statisch Dynamisch

Berücksichtigung des bisherigen Erfolges des Shuttles

Zusammenhangskomponenten der Topologie

Offer absenden

Page 17: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

17

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration

Page 18: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

18

Order ausführen

Ausgefallene Connections behandeln:Warten vs. Umfahren

Page 19: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

19

Order ausführen

Zeit ist Entscheidungskriterium

warten Umweg fahren

Page 20: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

20

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration

Page 21: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

21

MurphyCompanyControl zentrales GUI Fenster

Shuttles kaufen und verkaufen

Anzeige aller relevanten Daten

Page 22: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

22

ParameterPanel Strategieentscheidungen Einstellungen für

bestimmtes Shuttle Einstellungen für

gesamte Flotte

Page 23: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

23

Company Development Überblick über

Kontoentwicklung Einstellungsmöglichkeiten

der Zeitspanne Erste Instanz bei Validierung

von Strategieentscheidungen

Page 24: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

24

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration

Page 25: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

25

Softwarequalitäten

CheckstylesGut lesbarer Quellcode

Wartbarkeit

Zentraler Buildmanagement Server

Informiert über Compilier-, Checkstyle- und JUnit-Fehler sowie Coverage

JUnit Tests

Page 26: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

26

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration

Page 27: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

27

Ausblick

Shuttle-ControlInterne Wakeupverwaltung

Shuttle-NegotiationVerzögerte Selbstkostenberechnung

Shuttle-ExecutionRaumverteilung

StrategieoptimierungFinden optimierter Default-WerteAnalyse der dynamischen Strategie

Page 28: 1 SWT-Praktikum 2005 Gruppe 13 Murphys Train Frederik Eichler Andreas Kumlehn.

28

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration