SOFTWARETECHNIK - PRAKTIKUM 2000 Gruppe 5 Nummer 5.

Slides:



Advertisements
Ähnliche Präsentationen
programmiert April-Juni 2003 von Knut Riechmann
Advertisements

Eine Präsentation für das Proseminar
Objektorientierte Programmierung
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Was ist Refactoring? Bevor man die Integration angeht, mag es angebracht sein, den.
Threads Richard Göbel.
Java: Objektorientierte Programmierung
Wie überwacht man Objekte im "Alltag" ?. Indem man "Wanzen" an diese anbringt.
Ein Beispiel in Java.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 6 Model-View-Controler als Grundlage für Nutzerschnittstellen Sommersemester 2003 Lars Bernard.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 5 Polymorphismus Sommersemester 2003 Lars Bernard.
Sommersemester 2004 Jan Drewnak Entwicklung und Einsatz von Geosoftware I Praktikum Sitzung X1 Sitzung X1: Packages & Wiederholung.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 7 User Interfaces in Java Sommersemester 2003 Lars Bernard.
Dynamische Webseiten mit PHP Oder: LAMP - The open way.
Dynamische Webseiten mit PHP
Java-Kurs - 7. Übung Besprechung der Hausaufgabe Referenzvariablen
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Klassenhierarchie Person Kunde Goldkunde Lieferant Object.
Präsentation der KernelPanic-Group
Universität Paderborn - Softwaretechnikpraktikum im SS Gruppe 11 1 Softwaretechnikpraktikum im SS2001 Projektleiter:Prof. Dr. Wilhelm Schäfer Gruppenleiter:Dr.
SWTPRA 2000 Programm Robots.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
EDV Parallelprogrammierung1 Parallelprogrammierung mit JAVA.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
Einführung in die Programmierung Datensammlung
WI Projekt: Programmiertechniken
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Distributed Multimedia Control Steuerung und Überwachung von Präsentationen in Netzwerken.
Softwaretechnikpraktikum Sommersemester 2005 Gruppe 05 Die Familie 1.Präsentation Anforderungsdefinition 31. Mai 2005.
Sommersemester 2004 Jan Drewnak Entwicklung und Einsatz von Geosoftware I Praktikum Sitzung 6 Sitzung 6: Model-View-Controller als Grundlage.
Sommersemester 2004 Jan Drewnak Entwicklung und Einsatz von Geosoftware I Praktikum Sitzung 7 Sitzung 7: User Interfaces in Java.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Delphi II - OOP IFB Fortbildung
University of Applied Sciences Übung Objektorientierte Programmierung II Dipl.-Inf. (FH) Markus Vogler.
Applets Java für’s Web.
Software Engineering 1 6. Übung
Institut für Informationssysteme und Softwaretechnik Prof. Dr. Burkhard FreitagUniversität PassauTel. (0851) Direktor94030.
Übungen zum Vortrag „Backtracking mit Heuristiken“
Entwurfs- und Implementationsdiagramme
Grundlagen der Programmierung
Gruppe: Gewinnt Überblick 1.0 (Martin Kapfhammer)
Hauptseminar Web Engineering – Semantic Web Dominik Pretzsch.
Chipkarten Projekt Die Multi-Abo-Karte WS 2002 / 2003.
..:: MULTI – ABO – KARTE ::.. Projektstudium Chipkarten SS 2003 Vortragende: Katrin Kampfmann, Alexander Lamprati (PM)
Wirtschaftsinformatik-Projekt WS 2012/2013
Objektorientiertes Konstruieren
Aufgaben Version 1: Es soll eine Wetterstation mit folgenden zwei Anzeigen implementiert werden: Aktuelle Wetterbedingungen mit Temperatur und.
Programmieren - wie einsteigen ?
HMS Hotel Management Software
TDD mit MSTest Stefan Lieser Web:
TDD mit MSTest Stefan Lieser
Stefan Lieser Web:
Fred 2.0 Projektvorstellung Christoph Müller
Fred 2.0 Projektvorstellung Christoph Müller
Letzte Chance!!! Exceptions Thread, Runnable Synchronized Wait, notify, notifyAll Thread States Semaphoren JCSP Swing JOMP Linearizability History Amdahl‘s.
Polymorphie (Vielgestaltigkeit). Wenn eine Methode, wie z.B. print für verschiedene Programmteile steht (und z.B. einmal Objekte verschiedener Klassen.
3. Beschreibung von Abläufen durch Algorithmen 3.4 Zufall
IT Kleinprojekt abwickeln (Modul 306)
TDD mit MSTest Stefan Lieser Web:
Einführung in die Programmierung mit Java
Greenstone. Theoretischer Teil Entstehung: Entwickelt vom New Zealand Digital Library Project an der Universität von Waikato Kooperation mit der UNESCO.
Abschluss Implementierungsphase
M adlmayr B ernhard S oftware E ngineering - WS 12 P rojektvorschlag M eilian A hmad R izal K aiser D aniel G ruppe 3 – T eam 7.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Praktikum Mobile Web 2.0 – 2.Teil Wolfgang Wörndl, Robert Eigner.
Rechen- und Kommunikationszentrum (RZ) Entwicklung einer Web- Oberfläche mit Apache Wicket am Beispiel des IdentityAdmins Seminarvortrag Melanie.
Das Entwurfsmuster Model-View-Controller
4. Modellieren und Diagrammarten
3. Die Datenstruktur Graph 3.2 Repräsentation von Graphen
 Präsentation transkript:

SOFTWARETECHNIK - PRAKTIKUM 2000 Gruppe 5 Nummer 5

SOFTWARETECHNIK - PRAKTIKUM Das Team Universität - Paderborn 1 Frank Baumeister Khai Tam Dang Alexander Gepting Paul Kaufmann Manh Tuong Mai Moussa Remmo Rita Steinmetz Claudius Stern Badr Tamzarti Christian Wagner Carsten Reckord Arena und GUI Arena und GUI Arena und GUI Web-Design ArenaTeamkoordination Robot und Strategie 1 Einleitung Gruppe 5 Im Softwaretechnikpraktikum 2000 geht es darum, ein Variante des Open-Source Spiels Realtimebattle zu entwerfen. Das Projekt ist dabei in vier Hauptphasen aufgeteilt, die sich dem Reengineering, Redesign, Implementierung und dem Testen widmen. Die folgenden Folien präsentieren den bisherigen Projektverlauf. Stand:

SOFTWARETECHNIK - PRAKTIKUM 2000 Universität - Paderborn 2 3 Die Aufgabenstellung Gruppe 5 Entwicklung einer abgeänderten Version des Open-Source Spiels Realtimebattle Realtimebattle Roboter treten in einem Spielfeld (Arena) gegeneinander an Roboter sammeln Karten und suchen nach dem Ausgang Karten ergeben Punkte, der Roboter mit der größten Punktzahl gewinnt Das Betreten des Ausgangs führt zum Spielende Roboter haben die Möglichkeit, Karten untereinander zu tauschen Stand:

SOFTWARETECHNIK - PRAKTIKUM 2000 Universität - Paderborn 3 Gruppe 5 Pro Runde stehen einem Roboter 20s Rechenzeit zu, wobei kein Threading erlaubt ist. Ein Verstoß führt zur Disqualifikation! Ein Roboter kann über die Arena nur das unmittelbar vor ihm liegende Feld abfragen. 4 Reengineering Das Verhalten der Roboter wird von externen Beobachtern überwacht 4.1 Der Roboter Stand: Die Arena Die Arena verfügt lediglich über ein statisches Layout, darf also während des Spiels nicht verändert werden. Die Arena verfügt mindestens über folgende Funktionalität: - Hinzufügen und Disqualifikation eines Roboters. - Start und Stop des Spiels. Die neu implementierte run-Methode steuert den gesamten Ablauf des Spiels. Die Bewertungsfunktion für die Karten darf kein absichtliches Warten enthalten.

SOFTWARETECHNIK - PRAKTIKUM 2000 Universität - Paderborn 4 Gruppe Sequenzdiagramm run-Methode Stand: :ArenaGUI action:Action :Arena:Math iteratorOfRobots:Iterator robot:Robot robotArray:Robot[ ] New run() random () New Give robotArray your data data Change order robot=getRobotArray [i] action=getCommand() doAction(robot) setEnergy(robot.energy-1) ! stop() Exchange Cards

SOFTWARETECHNIK - PRAKTIKUM 2000 Universität - Paderborn 5 Gruppe 5 Anlegen einer detaillierten Karte Karten aufsammeln und bewerten Karten tauschen (aus jedem Zustand heraus möglich) Die Karten evaluieren Stand: Anpassbare und flexible Strategie 5.1 Pflichtenheft Roboter Umgebung erkunden (Spiral-Erkundungsmuster) 5 Das Pflichtenheft

SOFTWARETECHNIK - PRAKTIKUM 2000 Universität - Paderborn 6 Gruppe State-Chart zur Roboter-Strategie Die Strategie basiert auf einem DFA Stand:

SOFTWARETECHNIK - PRAKTIKUM 2000 Universität - Paderborn 7 Gruppe Pflichtenheft Arena & GUI Roboter hinzufügen/löschen Roboterstatus und Logmeldungen ausgeben Spiel starten/stoppen Arena laden Programm beenden Stand: Der Arena-Builder erzeugt das Spielfeld der Arena aus einer Beschreibungsdatei

SOFTWARETECHNIK - PRAKTIKUM 2000 Universität - Paderborn 8 Gruppe Klassendiagramm zur Roboter-Strategie Stand: MapManager MapObject MapItem 1 1..* x:int y:int StrategyManager getCommand() RunningMode getCommand() Mode1ModeN Robot 1 getCommand() strategy. getCommand() strategyrobot... 6 Die Redesign-Phase

SOFTWARETECHNIK - PRAKTIKUM 2000 Universität - Paderborn 9 Gruppe 5 Die Oberfläche der Arena ist in Java mit der Swing-Bibliothek zu implementieren. Stand: Screenshots Arena

SOFTWARETECHNIK - PRAKTIKUM 2000 Universität - Paderborn 10 Gruppe 5 DrawLine ArenaGUI -rootField:Field +println:void +print:void +refresh:void +quit:void Arena +rootField:Field ArenaBuilder -fin:FileInputStream +parseFile:boolean GUIWindow StatusWindowRobotInfo MenuPanel -robots:Jbutton -stop:Jbutton -quit:Jbutton -go:Jbutton -load:JButton FileDialog DrawCircle 6.3 Klassendiagramm Arena & GUI Stand: Field ArenaField

SOFTWARETECHNIK - PRAKTIKUM 2000 Universität - Paderborn 11 Gruppe 5 7 Zusammenfassung Das grundlegende Design der Arena steht fest (siehe Screenshot). Die Strategie des Roboters wurde ebenfalls vorgestellt. Sie wird sich grundsätzlich nicht mehr ändern. 8 Ein Ausblick Reengineering.- und Redesign-Phase sind abgeschlossen Abgabe des Pflichtenheftes Übergang in die Implementierungsphase (Grundlage bildet das Pflichtenheft) Anschließende Testphase und Abgabe des Projektes Stand: