Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Friede Rampe Geändert vor über 10 Jahren
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 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
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.