Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Softwarepraktikum WS 2007/08 Vorlesung 01 – Prof. Dr

Ähnliche Präsentationen


Präsentation zum Thema: "Softwarepraktikum WS 2007/08 Vorlesung 01 – Prof. Dr"—  Präsentation transkript:

1 Softwarepraktikum WS 2007/08 Vorlesung 01 – 24. 10. 07 Prof. Dr
Softwarepraktikum WS 2007/08 Vorlesung 01 – Prof. Dr. Reinhard v. Hanxleden AG Echtzeitsysteme/Eingebettete Systeme Institut für Informatik Christian-Albrechts-Universität zu Kiel

2 Vorlesung 01 Einführung, Logistik CVS Rosenkönig - Spielregeln
Gruppeneinteilung

3 Personen Vorlesung: Prof. Dr. Reinhard von Hanxleden Assistenten: Dipl. Inf. Claus Traulsen Dipl. Inf. Kristine Haase Wissenschaftliche Hilfskraft: Oliver Fleischmann

4 Allgemeines Ziel des Praktikums ist der Gewinn praktischer Erfahrungen in der Durchführung eines größeren, zusammenhängenden SW-Projektes Die Bearbeitung erfolgt in Gruppen von jeweils (möglichst) vier Personen Jede Gruppe wird einem Betreuer/einer Betreuerin zugeordnet Die Vorlesung liefert unterstützendes Wissen für die Durchführung des Praktikums Weiterführende Grundlagen zum SW-Engineering allgemein:  Informatik III

5 Aufgabenstellung Projektinhalt: Erstellung einer Client-Server-Applikation in Java, die das Spiel “Rosenkönig” funktionalisiert Server koordiniert Spielzüge, hält Daten bereit, synchronisiert Kommunikation Einzelne Spieler sind Clients Evolution der Funktionalität: Bedienung über Kommandozeile Bedienung per GUI (Java Swing) Automatischer Spieler Abschluss: Wettkampf der Spieler untereinander

6 Ablaufplanung I Das Praktikum ist in 5 Meilensteine gegliedert
UML Klassendiagramm für den prinzipiellen Aufbau und UML Sequenzdiagramme für die Kommunikation (3 Wochen, bis ) Implementierung des Servers sowie der GUI mit menschlichem Spieler (4 Wochen, bis ) Implementierung des Spielers (3 Wochen, bis ) Implementierung des Spieler für einen fremden Server (2 Wochen, bis ) Ausarbeitung und Abschlusspräsentation (2 Wochen, bis )

7 Ablaufplanung II Zu jedem Meilenstein ein Aufgabenzettel
Nach jedem Meilenstein: Vorstellung der Ergebnisse Einzelne Gruppen + Betreuer Individuelle Termine Zusammenfassung der Ergebnisse durch die Betreuer Alle gemeinsam Mittwöchlicher Vorlesungstermin Nach dem 2. und dem 5. Meilenstein Benotete Präsentation Jeweils ca. drei Gruppen gemeinsam + mind. 2 Betreuer

8 Bewertung Scheine sind benotet Kriterien:
Präsentationen (nach 2. und 5. Meilenstein) Qualität von Code und Dokumentation

9 Vorlesung etc. Vorlesung: Mittwochs, 14:15 – 15:45
Betreute Rechnerzeiten: Mittwochs, 16:00 – 18:00, GAP Durchsprache mit Betreuer: 45 min/Woche, Termin nach Vereinbarung

10 Homepage Diese Folien Aufgabenstellungen etc. Weiterführende Links

11 Studierendendatenbank
Anmeldung zu diesem Praktikum Siehe Link auf Homepage

12 Die Mailingliste p-software@informatik.uni-kiel.de
Wird in erster Linie zur Informationsweiterleitung seitens Dozent/Assistent genutzt Anmeldung über https://lists.informatik.uni-kiel.de/mailman/listinfo/p-software Sie sollten sich hier mit account anmelden Falls Sie nicht wissen, wie Sie Mails von diesem Account lesen/weiterleiten, siehe

13 Das Forum http://www.infmath.de/ Wird durch Fachschaft verwaltet
Dient primär dem Informationsaustausch unter Praktikumsteilnehmern Gutes Posting: Ich habe Problem xyz mit Eclipse – weiß jemand eine Lösung? Weniger gutes Posting: Der Source code für den nächsten Meilenstein ist ... Hinweis: Sie sollten sich nicht darauf verlassen, dass der Dozent/die Assistenten regelmäßig das Forum lesen. Bei dringenden Fragestellungen senden Sie bitte eine Mail!

14 Versionskontrolle mit CVS Concurrent Versions System Die nachfolgende Präsentation basiert auf Folien von Prof. Dr. Thomas Wilke, CAU Kiel

15 CVS protokolliert die Entwicklung eines Dateibaums eines Projekts (mehrerer Projekte) unterstützt die Zusammenführung von verteilt vorgenommenen Veränderungen vieles mehr

16 Grundlegende Idee auf einem Server: zentrales Lager (repository) mit allen Versionen bei jedem Nutzer: eine Arbeitsversion (working copy) des Dateibaums Kommunikation des Nutzers mit dem Server Auslesen (checkout): aktuelle Version des Dateibaums aus dem Lager abrufen Abgleichen (update): aktuelle Version aus dem Lager in die eigene Arbeitsversion einbringen Ablegen (commit): eigene Arbeitsversion ins Lager übertragen Hinzufügen (add): neue Dateien und Verzeichnisse anlegen

17 Konflikte Normalfall: cvs verschmelzt beim Abgleich die aktuelle Version im Lager mit der Arbeitsversion des Nutzers. Problemfall: Es werden miteinander unvereinbare Abschnitte gefunden. Benachrichtigung des Nutzers Markierung der problematischen Bereiche manuelle Nachbehandlung durch den Nutzer nötig

18 Befehle und Umgebungsvariablen
cvs checkout [<file>|<directory>] cvs update [<file>|<directory>] cvs commit [<file>|<directory>] cvs add <file>|<directory> Umgebungsvariablen CVSROOT: Wurzel des Lagers CVS_RSH: Programm zur Kommunikation mit dem Server (Hier: ssh)

19 Erste Schritte SSH Schlüssel generieren
$ ssh-keygen -t rsa Und öffentlichen Schlüssel an den Betreuer schicken (Datei id_rsa.pub liegt im Verzeichnis .ssh) $ export CVS_RSH =ssh $ export CVSROOT= \ (sopra01 durch eigene Gruppennummer ersetzen) Neues Modul anlegen (genau einmal) $ cvs import [MODULE-NAME] [vendor−tag][release−tag] z.B.: $ cvs import my-code my-login my-release Modul auschecken (jeder in der Gruppe) $ cvs checkout [MODULE-NAME]

20 CVS – Weiterführende Links
(Mini-Tutorial) (Quick Reference Card)

21 Rosenkönig Vorstellung, Spielregeln

22 Spielaufbau Zwei Spieler: Rot und Weiß
9x9 Felder mit Token für die aktuelle Position Beim Start ist der Code in der Mitte maximal 5 Machtkarten pro Spieler Beim Start genau 5 Karten Zusätzlich 4 Heldenkarten Machtkarten: Richtung: Norden, Nord-Osten, Osten, … Länge: 1-3 Kartenstapel enthält jede Kombination

23 Züge Karte nehmen: Ziehen: Aussetzen: Maximal 5 Karten pro Spieler
Nehme oberste Karte vom Stapel und lege sie offen aus Wenn der Stapel leer ist: gemischter Ablagestapel wird der neue Stapel Ziehen: Bewege Token gemäß einer Karte Karte wird abgelegt Das Zielfeld erhält die eigene Farbe Wenn das Zielfeld bereits vom Gegner besetzt ist: Spiele eine Heldenkarte um das Feld zu besetzen Aussetzen: Falls bereits 5 Machtkarten vorhanden sind, von denen keine gezogen werden kann.

24 Wertung Das Spiel ist zu Ende, wenn kein Spieler mehr ziehen kann oder
es wurden 52 Felder besetzt. Für jedes zusammenhängende Gebiet quadriere die Anzahl der enthalten Felder Verbindungen über Eck zählen nicht Die Punkte für alle Felder werden aufaddiert. Gewonnen hat der Spieler mit der höchsten Punktzahl!

25 Organisatorisches Gruppeneinteilung


Herunterladen ppt "Softwarepraktikum WS 2007/08 Vorlesung 01 – Prof. Dr"

Ähnliche Präsentationen


Google-Anzeigen