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

Post on 05-Apr-2015

106 views 0 download

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

1

SWT-Praktikum 2005Gruppe 13Murphy‘s 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

3

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration

4

Offer berechnen

Selbstkosten berechnen

Interne Verhandlungen im Ring

Offer abgeben

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

6

Selbstkosten berechnen

L4L3L2 U1U3U2L4 M D MMR M D M

LN

L1

Auktionsdeadline

Legende

• Move• Load• Unload• DoNothing• Repair

• LoadTask erstellen

7

Selbstkosten berechnen

L4L3L2 U1U3U2M D MMR M D M

LN

L4L1

Auktionsdeadline

Legende

• Move• Load• Unload• DoNothing• Repair

• LoadTask erstellen• unrelevante Tasks ausblenden

CurrentTaskPlan RawTaskPlan

8

Selbstkosten berechnen

U4L2 U1U3L3U2M D

LN

L4L1

Auktionsdeadline

Legende

• Move• Load• Unload• DoNothing• Repair

• LoadTask erstellen• unrelevante Tasks ausblenden

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

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

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

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

13

Offer berechnen

Selbstkosten berechnen

Interne Verhandlungen im Ring

Offer abgeben

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

15

Offer berechnen

Selbstkosten berechnen

Interne Verhandlungen im Ring

Offer abgeben

16

Offer abgeben

Aufschläge berechnenRisikoaufschlag

Berechnung anhand empirischer DatenGewinnaufschlag

Statisch Dynamisch

Berücksichtigung des bisherigen Erfolges des Shuttles

Zusammenhangskomponenten der Topologie

Offer absenden

17

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration

18

Order ausführen

Ausgefallene Connections behandeln:Warten vs. Umfahren

19

Order ausführen

Zeit ist Entscheidungskriterium

warten Umweg fahren

20

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration

21

MurphyCompanyControl zentrales GUI Fenster

Shuttles kaufen und verkaufen

Anzeige aller relevanten Daten

22

ParameterPanel Strategieentscheidungen Einstellungen für

bestimmtes Shuttle Einstellungen für

gesamte Flotte

23

Company Development Überblick über

Kontoentwicklung Einstellungsmöglichkeiten

der Zeitspanne Erste Instanz bei Validierung

von Strategieentscheidungen

24

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration

25

Softwarequalitäten

CheckstylesGut lesbarer Quellcode

Wartbarkeit

Zentraler Buildmanagement Server

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

JUnit Tests

26

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration

27

Ausblick

Shuttle-ControlInterne Wakeupverwaltung

Shuttle-NegotiationVerzögerte Selbstkostenberechnung

Shuttle-ExecutionRaumverteilung

StrategieoptimierungFinden optimierter Default-WerteAnalyse der dynamischen Strategie

28

Inhalt MurphyShuttle

Offer berechnenOrder ausführen

MurphyGUIControlPanelParameterPanelCompany Development

Softwarequalitäten Ausblick Demonstration