Formalien: Unterschied zwischen den Versionen

Aus Das Sopra Wiki
Zur Navigation springen Zur Suche springen
K (Dietsch verschob Seite Richtlinien nach Formales, ohne dabei eine Weiterleitung anzulegen)
Keine Bearbeitungszusammenfassung
Markierung: 2017-Quelltext-Bearbeitung
 
(80 dazwischenliegende Versionen von 7 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
__TOC__
{{TOCRight}}
Um die regelmäßige Teilnahme und Mitarbeit am Softwarepraktikum nachweisen zu können müssen folgende Voraussetzungen erfüllt sein:
 
== Voraussetzungen ==
== Zulassungsvoraussetzungen ==
Um die regelmäßige Teilnahme und Mitarbeit am Softwarepraktikum nachweisen zu können müssen folgende Voraussetzungen erfüllt sein. Ausnahmen (z.B. bei Krankheit) sind durch die jeweils gültige Prüfungsordnung geregelt.
=== Gruppentreffen ===
=== Gruppentreffen ===
Das Gruppentreffen findet einmal pro Woche (d.h. 1x pro [[Sprint]]) zu einem gemeinsam mit dem Tutor vereinbarten Termin statt. Es dauert 2h und es besteht Anwesenheitspflicht.


Hier soll geklärt werden:
{{BA|LeonH| Wie ist diese regelung im digitalen semester umzusetzten?}}
# Scrum Meeting / Daily Scrum ('''max. 15min''')
{{BA|Vincent| Naja, wie im normalen Semester auch. Das "anwesend" nachzuprüfen ist halt schwer. Aber wer im Treffen nix sagt, nicht sichtbar ist ect. ist halt nicht da.}}
#*  Was wurde seit dem letzten Meeting gemacht?
#*  Was wird bis zum nächsten Meeting gemacht?
#*  Was für Probleme gibt es, die die aktuellen Aufgaben behindern?  
# Sprint Review ('''max. 30min''')
#*  Product Owner sagt, was fertig und was nicht fertig ist.
#*  Team zeigt, was alles fertig geworden ist und beantwortet Fragen zum Fortschritt.
#*  Team erklärt dabei, was es für Probleme gab und wie diese gelöst worden sind.
#*  Product Owner erklärt den aktuellen Stand des Product Backlogs und speziell Änderungen an der Aufwandsabschätzung.
# Sprint Planning ('''max. 60min''')
#*  Was wird im nächsten Sprint gemacht? Product Backlog anschauen, von oben nach unten (PO sollte es geordnet haben). An die Recurring Tasks denken.
#*  Wer erledigt von den ausgewählten Dingen was (Arbeitsverteilung)?
# Sprint Retrospective ('''max. 15min''')
#*  Diskutieren, was im letzten Sprint im Hinblick auf Menschen, Beziehungen, Prozesse, Tools gut bzw. schlecht gelaufen ist.
#*  Wo muss etwas verändert oder verbessert werden, damit besser gearbeitet werden kann?
#*  Plan erstellen, wie diese Änderungen im nächsten Sprint umgesetzt werden können.


=== Wiederkehrende Aufgaben ===
Sie müssen am Gruppentreffen anwesend sein. Das Gruppentreffen findet einmal pro [[Sprint]] zu einem gemeinsam mit dem Tutor vereinbarten Termin statt. Es dauert ca. 2h.
Während des Semesters sind die folgenden wiederkehrenden Aufgaben zusätzlich zu den anderen Aufgaben jede Woche zu erledigen:


* Product Owner (ab Woche 2)
Sie können 1x beim Gruppentreffen abwesend sein. Beim 2. Mal verlieren Sie die Zulassung.
** Pflegen und Anpassen von Requirements und User Stories im Product Backlog.
** Verfeinern von Requirements zu User Stories.
** Requirements nach Entwicklungsreife ordnen.
** Gruppentreffen vorbereiten (was ist fertig, wie war die Aufwandsabschätzung).
* Architektur (ab Woche 3)
** Schnittstellen definieren
** Architekturbeschreibungen pflegen
** Einhaltung der Architektur sicherstellen
* Qualitätssicherung (ab Woche 6)
** Code auf Clean-Code Richtlinien prüfen.
** Code Reviews vorbereiten
** ReSharper Konformität herstellen


=== Kontinuierliche Mitarbeit ===   
=== Kontinuierliche Mitarbeit ===   
Kontinuierliche Mitarbeit wird belegt durch hinreichend viel messbare Aktivität, also Commits im SVN-Repository und im Trac bearbeitete Tasks. Außerdem muss die verbrauchte Zeit und Restzeit in den Tasks im Trac angegeben werden. Sollten Sie in mehreren [[Sprint]]s nicht mitarbeiten, verlieren Sie die Zulassung zum Softwarepraktikum.
Sie müssen ''kontinuierlich'' mitarbeiten.
Kontinuierliche Mitarbeit wird durch hinreichend viel ''messbare'' Aktivität während eines [[Sprint]]s belegt, d.h. durch


=== Nicht-Erfüllung ===
* [[Git#Commit|Commits]] im [[Git|Git]]-Repository und 
Sollten Sie diese Vorausetzungen nicht erfüllen, verlieren Sie die Zulassung zum Softwarepraktikum. Im Detail:
* Aktivität (Tickets, Kommentare, etc.) in [[Gitea]].
* Sie können bis zu 2x nicht kontinuierlich mitarbeiten Beim 3. Mal verlieren Sie die Zulassung.
* Sie können 1x nicht beim Gruppentreffen erscheinen. Beim 2. Mal verlieren Sie die Zulassung.  


Ausnahmen (z.B. bei Krankheit) sind durch die jeweils gültige Prüfungsordnung geregelt.
Sie können in bis zu 2 [[Sprint]]s nicht mitarbeiten. Beim 3. Mal verlieren Sie die Zulassung.
 
Zusätzlich müssen Sie im Durchschnitt pro Sprint Aufgaben mit einer geschätzten Arbeitszeit ([[ETC]]) von 7 Stunden erfolgreich abschließen.  


== Benotung ==
== Benotung ==
Jeder Student erhält eine Abschlussnote, die sich aus zwei Teilen, die jeweils zu 50% einfließen, zusammen setzt:
Jeder Student erhält eine Abschlussnote, die sich aus zwei Teilen, die jeweils zu 50% einfließen, zusammensetzt. Ist eine der beiden Teilnoten 5.0 (nicht bestanden), so ist die Abschlussnote 5.0 (nicht bestanden).
# Endprodukt
 
#* Entspricht das Produkt den Anforderungen?
=== Endprodukt ===
#* Ist das Produkt fehlerfrei (d.h. finden wir bei der Abnahme keine Fehler)?
 
#* Ist die Softwarequalität "gut"? Die Softwarequalität wird wöchentlich gemessen.
Um das Endprodukt zur Bestimmung der entsprechenden Teilnote zu bewerten, betrachten wir die folgenden Kriterien:
# Einzelleistung
 
#* Wurde die zugeteilte Arbeit erfolgreich erledigt?
* Features: Wie gut ist das [[GDD]] umgesetzt (siehe auch [[GDD#Relevanz für die Benotung]]) und erfüllt das Spiel die [[Anforderungen]]?
#* Pro Woche sind max. 5 Punkte zu erreichen
* Artefakte: Wie gut war die Qualität der abgegebenen Artefakte (finales [[GDD]], finale Architektur, Codequalität, Buildfehler, Abstürze beim finalen Spiel)
#* Aus der Summe der Punkte ergibt sich die Teilnote für die Einzelleistung.
* Usability: Wurden die Regeln zur Usability gut umgesetzt? Ist das Erscheinungsbild einheitlich?
* Spaß: Macht das Spiel Spaß?
* Techdemo: Wie viele Spielobjekte welcher Art können in welchem Environment mit wie vielen durchschnittlichen FPS interagieren? Wie stabil läuft die Techdemo?
 
=== Aufgabenorientierte Leistung ===


Ist eine der beiden Teilnoten 5.0 (nicht bestanden), so ist die Abschlussnote 5.0 (nicht bestanden).
* Pro [[Sprint]] bekommt jeder Studierende 5 Punkte
** Ist im Sprint Review eine Aufgabe nach [[DoD|Definition of Done]] nicht abgeschlossen, werden anteilig Punkte abgezogen (beachte [[Ablauf#Aufgabe_schwieriger_als_gedacht|Aufgabe schwieriger als gedacht]]).
* Aus der Summe der Punkte ergibt sich die Teilnote für aufgabenorientierte Leistungen.


== Sonstige Regeln ==
== Abgaben ==
=== Abgaben ===
{{:Abgabe}}
{{:Abgabe}}


=== Präsentationen ===
== Präsentationen ==
{{:Präsentation}}
{{:Präsentation}}


[[Kategorie:Organisation]]
[[Kategorie:Organisation]]

Aktuelle Version vom 30. September 2021, 14:30 Uhr

Zulassungsvoraussetzungen

Um die regelmäßige Teilnahme und Mitarbeit am Softwarepraktikum nachweisen zu können müssen folgende Voraussetzungen erfüllt sein. Ausnahmen (z.B. bei Krankheit) sind durch die jeweils gültige Prüfungsordnung geregelt.

Gruppentreffen

Sie müssen am Gruppentreffen anwesend sein. Das Gruppentreffen findet einmal pro Sprint zu einem gemeinsam mit dem Tutor vereinbarten Termin statt. Es dauert ca. 2h.

Sie können 1x beim Gruppentreffen abwesend sein. Beim 2. Mal verlieren Sie die Zulassung.

Kontinuierliche Mitarbeit

Sie müssen kontinuierlich mitarbeiten. Kontinuierliche Mitarbeit wird durch hinreichend viel messbare Aktivität während eines Sprints belegt, d.h. durch

  • Commits im Git-Repository und
  • Aktivität (Tickets, Kommentare, etc.) in Gitea.

Sie können in bis zu 2 Sprints nicht mitarbeiten. Beim 3. Mal verlieren Sie die Zulassung.

Zusätzlich müssen Sie im Durchschnitt pro Sprint Aufgaben mit einer geschätzten Arbeitszeit (ETC) von 7 Stunden erfolgreich abschließen.

Benotung

Jeder Student erhält eine Abschlussnote, die sich aus zwei Teilen, die jeweils zu 50% einfließen, zusammensetzt. Ist eine der beiden Teilnoten 5.0 (nicht bestanden), so ist die Abschlussnote 5.0 (nicht bestanden).

Endprodukt

Um das Endprodukt zur Bestimmung der entsprechenden Teilnote zu bewerten, betrachten wir die folgenden Kriterien:

  • Features: Wie gut ist das GDD umgesetzt (siehe auch GDD#Relevanz für die Benotung) und erfüllt das Spiel die Anforderungen?
  • Artefakte: Wie gut war die Qualität der abgegebenen Artefakte (finales GDD, finale Architektur, Codequalität, Buildfehler, Abstürze beim finalen Spiel)
  • Usability: Wurden die Regeln zur Usability gut umgesetzt? Ist das Erscheinungsbild einheitlich?
  • Spaß: Macht das Spiel Spaß?
  • Techdemo: Wie viele Spielobjekte welcher Art können in welchem Environment mit wie vielen durchschnittlichen FPS interagieren? Wie stabil läuft die Techdemo?

Aufgabenorientierte Leistung

  • Pro Sprint bekommt jeder Studierende 5 Punkte
  • Aus der Summe der Punkte ergibt sich die Teilnote für aufgabenorientierte Leistungen.

Abgaben

Für alle Abgaben gilt, dass der jeweilige Abgabezeitpunkt eingehalten werden muss. Abgaben, die zu einem späteren als dem von uns angegebenen Zeitpunkt abgegeben werden, werden nicht berücksichtigt! Die letztmöglichen Abgabezeitpunkte stehen in der Roadmap.

Wir unterscheiden bei der Abgabe drei Typen von Artefakten:

  • Die Hausaufgabe,
  • Dokumente (GDD und Dokumentation zu Ihrem Programm)
  • Programme (für das eigentliche Spiel).

Hausaufgabe

Die Abgabe der Hausaufgabe ist direkt auf der Hausaufgaben-Seite beschrieben.

Der Programmier-Teil der Hausaufgabe muss als komplettes Visual Studio Projekt abgegeben werden. Sie sollten dazu einfach das Projekt in das Gruppenrepository unter /abgabe/hausaufgabe/<username>/ comitten.

Dokumente

Das GDD, sowie eine Readme (Tastenbelegung, Hinweise auf Cheats und Debugtasten) und Screenshots zu ihrer Programmabgabe sind Dokumentartefakte.

Erstellung

  • Zur Erstellung des GDDs dürfen Sie beliebige Textverarbeitungsprogramme (Word, LaTeX, ...) verwenden.
  • Achten Sie vor allem auf Effizienz. Wenn Sie sich zuerst LaTeX beibringen müssen, um ein gut aussehendes GDD schreiben zu können, sollten Sie eventuell eher zu einem WYSIWYG-Editor greifen.

Zeit und Ort

Dokumente müssen bis zum Abgabezeitpunkt (siehe Roadmap) im Gruppen-Repository im release Branch im jeweiligen Pfad vorhanden sein. Beachten Sie hierbei die Hinweise zum Arbeiten mit mehreren Branches:

  • Die Hausaufgabe unter /abgabe/hausaufgabe/<benutzername>/
  • Das GDD (beta) unter /abgabe/gdd/beta/gruppe<nummer>-<spielname>.pdf
  • Das GDD (final) unter /abgabe/gdd/final/gruppe<nummer>-<spielname>.pdf
  • Die Screenshots und Readme zu ihrem Spiel (beta) unter /abgabe/programm/beta
  • Die Screenshots und Readme zu ihrem Spiel (final) unter /abgabe/programm/final

Form der Abgabe

Wir akzeptieren NUR GDD-Abgaben im .pdf-Format. Außerdem muss jedes Dokument ein Deckblatt mit folgenden Angaben haben:

  • Die Gruppennummer,
  • die Namen der Studenten der Gruppe,
  • das Datum der Erstellung und
  • der Name des Tutors.

Beachten Sie für die GDD-Abgaben unbedingt den Abschnitt Relevanz für die Benotung im GDD-Artikel.

Programme

Die Abgabe ihres (finalen und beta) Programms wird automatisch vom Jenkins gemacht (die letzte fehlerfrei bauende Version des release Branches vor dem Abgabezeitpunkt). Sie müssen lediglich zu jeder Abgabe mindestens drei Screenshots des Programms im entsprechenden Verzeichnis ihres Repositories hochladen (siehe oben). Die Screenshots der finalen Abgabe müssen im Vollbildmodus gemacht werden. Falls es Cheats oder Debug-Tasten - d.h. Tastenkombinationen, mit denen bestimmte Aktionen durchgeführt werden können, die eigentlich nicht möglich sein sollten - im Spiel gibt, kann zusätzlich zur Abgabe ein Textdokument (README) abgegeben werden, in welchem die Tastenkombinationen aufgeführt und erklärt sind.

Präsentationen

An unseren Präsentationsterminen (siehe Roadmap) haben Sie die Möglichkeit (bzw. müssen Sie) Ihren aktuellen Stand sowohl uns als auch Ihren Kommilitonen vorstellen.

Bei einer Präsentation gelten folgende Regeln:

  1. Es soll immer nur das Spiel (d.h. der aktuelle Stand) gezeigt werden.
  2. Es dürfen keine Folien gezeigt werden.
  3. Die gesamte Gruppe muss anwesend sein.
  4. Die Präsentation darf maximal 10min mit nachfolgenden 5min Fragen dauern.

Sonderregelung für Präsentation 1 (Präsentation des Spielekonzepts, Woche 5, Siehe Roadmap):

  • Bei dieser - und nur bei dieser - Präsentation dürfen Folien gezeigt werden.
  • Beantworten Sie bei dieser Präsentation vor allem die folgenden drei Fragen:
    • Worum geht es im Spiel? Das heißt insbesondere auch: Wie gewinnt man? Wie verliert man?
    • Was ist die zentrale Spielmechanik?
    • Warum macht das Spiel Spaß?
  • Diese Präsentation darf maximal nur 10min mit nachfolgenden 5min Fragen dauern.

Bei der finalen Präsentation muss Ihr Spiel im Vollbildmodus gezeigt werden.

Wir werden im entsprechenden Raum (siehe Roadmap) alles Nötige für die Sound-Ausgabe des Spiels bereitstellen. Bitte beachten Sie auch die technischen Hinweise auf Virtuelles Treffen.

Hinweis: Ihre Gruppe wird jeden Termin vor einer zufällig zusammengestellten Auswahl an anderen Gruppen aus dem Kurs präsentieren, d.h. die Zuschauer haben unter Umständen noch nie etwas von Ihrer Spielidee gehört! Bitte versuchen Sie auch diese Teilnehmer durch eine geeignete Einleitung ihres Vortrags abzuholen.