Skip to content

Software Engineering I Blog

Timings

Lecture: Tuesdays, 12.15 – 13.45, R 1332 and Fridays, 12.15 – 13.45, R -1418

Short description

This course teaches software development for large projects. We learn how to organize a software development team and distribute work among team members. This includes project planning, version control (SVN), Scrum, test driven development, presentations, usage of frameworks and documentation.

Intended Audience

Students of computer science, 5th term.

Description of the Task

The Students will be arranged in Teams of 6-8 programmers. Each Team will create a Graphical Client (e.g. with GWT, Processing, JMonkey,…) and an Artificial Intelligence Client (AIC) for the “CreepSmash” tower defence simulation. To ease the forming of the team a tutor will supervise the initial meetings and push the group into the right direction.

CreepSmash Google Group

To better collect and share information around this project, we created a google group: SE1 CreepSmash Google Group

Examination rules

To make the grading system as transparent as possible we decided to publish our assessment criteria here. The final grade of each team member will be calculated as follows:

  • 20% Presence (10% team- and 10% individual effort, see “About individual- and team time” section for more information)
  • 20% Agilo
    • Stories
    • Tasks
    • Burndown charts
  • 25% SVN (SVN statistics)
  • At least 1000 tested contributing method body lines of code.

  • 15% release presentations
  • Each release ends with the presentation of the results.
    Present the new features which you developed within the last 4 weeks
    50% content. We assess how efficient you’ve worked within the last 4 weeks. Efficency is meant as the relation between the planned and realized features. However you’ll not get a bad grade if you have good arguments why the planned features didn’t get into the product.
    50% presentation style.

    IMPORTANT: The presentation will be held by SM and PO. Each one is expected to prepare a 10 minute presentation!

    You will get feedback at the end of each presentation!

  • 20% release documentation (same grade for SM/PO)
    The release documentation must contain a summary of all Requirements and User Stories along with appropriate diagrams (e.g. Use-Case-, Sequence-, Object-, Classdiagrams,…). The chosen diagram type is up to you but it should harmonize with the story you try to explain.

    An example of how such a document can look like can be found here: Release Documentation Example

    IMPORTANT: The deadline for the documentation is Friday evening 18:00 after the release ending! It has to be sent digitally (PDF-file) to ceo@wasp-enterprises.de

Agilo HowTo

We use the Agilo software to manage our project with Scrum. To start as fast as possible we made a “Agilo HowTo” which summarizes the most important things and outlines the big picture. The HowTo can be downloaded here: Agilo HowTo

Presentation guide

We prepared a short presentation guide intended for customer presentations. You can find the guide here: Presentation Guide

The SE 1 Google Calendars

SE 1 Abschlussturnier

Der Termin für unser SE 1 Abschlussturnier steht fest:

Wann: Montag den 03.09.2012 ab 13 Uhr
Wo: SE Labor

Für das Turnier haben wir folgende Karten ausgewählt:

map_asteroid
map_fastlane
map_raceways
map_summer

In welcher Reihenfolge die Karten gespielt werden, wird am Turniertag bekannt gegeben. Stellt sicher, dass eure KI’s und Clients mit diesen Karten keine Probleme haben!

Tagged , ,

Anforderungen für Release 3 verfügbar

Soeben erreichte mich vom Kunden die Nachricht, dass die Anforderungen für Release 3 verfügbar sind: http://wasp-enterprises.de/2012/06/26/anforderungen-release-3/

Tagged , ,

CreepSmash Server v1.0.3: Die Änderungen

Hi Leute,

soeben ist v1.0.3 des CreepSmash Servers online gegangen. Neben kleineren Bugfixes, hier die wichtigsten Änderungen im Überblick:

  • Maps haben nun auch ein Versionsfeld. Hierdurch können die Eigentümer (=Teams) neue Versionen ihrer Karten hochladen. Die Versionsnummer ist eine einfache Zahl, die immer um 1 erhöht werden sollte.
  • Die Ausgabe von LIST MAPS wurde um ein Versionsfeld erweitert:
     MAP NAME=map_stairsvector CREATOR=SE VERSION=1
  • Das vom Server unterstützte Kartenformat wurde leicht geändert. Hinzugekommen sind folgende Felder:
    # VERSION
    VERSION: 1
    # OWNER
    OWNER: SE

    Das OWNER Feld kann natürlich nicht selbst gesetzt werden und wird daher beim upload ignoriert. Es wird vom Server automatisch bei erfolgreichem Upload anhand der Logindaten bestimmt.

Die Beschreibung des Kartenformats wurde entsprechend angepasst. Falls es zu Problemen kommen sollte, konsultiert bitte die Google Group.

Tagged , ,

Info zum JSON Protokoll

Der CreepSmash Server versteht mehrere Derivate des JSON Protkolls. Zwei kurze Beispiele welche Syntax unserer Server versteht:

1.) In dieser Syntax sind alle unsere Beispiele in der Erklärung unserer Befehle aufgeführt.

{"@action":"CREATE_TOWER",
"properties":{
"entry":{
"key":"towertype",
"value":"ROCKET"},
"entry":{
"key":"cell",
"value":"Cell@d54a23"
}}}

2.) Diese Syntax versteht der Server ebenfalls:

{"@action":"CREATE_TOWER",
"properties":{
"entry":[
{
"key":"towertype",
"value":"ROCKET"
},
{
"key":"cell",
"value":"Cell@d54a23"
}]}}

Beide Beispiele führen den gleichen Befehl aus und resultieren im gleichen Ergebnis. Zumindest die zweite Syntax sollte mit den üblichen JSON-Bibliotheken erzeugbar sein.

Wichtig:

Erfolgreiche JSON-Befehle resultieren nicht in einem OK oder einer vergleichbaren Bestätigung. Nur wenn dieser Befehl Veränderungen im Modell bewirkt, werden diese Änderungsevents an euch gesendet.

Tagged , ,

Anforderungen für Release 2 sind online

Soeben wurden wir von dem Kunden Wasp Enterprises informiert, dass die Anforderungen zu Release 2 verfügbar sind: Release 2 Kundenanforderung

Tagged , ,

HowTo Tag in SVN

Release 1 rückt näher und damit das Anlegen eines Tags keine Probleme macht, haben wir einen kurzen Screencast gemacht, der das Vorgehen verdeutlicht: HowTo Tag in SVN Screencast

Tagged , , , ,

Agilo HowTo aktualisiert

Das Agilo HowTo wurde auf v0.3 aktualisiert: Agilo HowTo v0.3.

Im Abschnitt “Rollen im Team” wurde für den Product Owner die Information hinzugefügt, dass er dem Scrum Master bei der Erstellung der Dokumentation helfen soll.

Tagged , , ,

SE1 Lecture 09: Effort Estimation

SE1 summer term 2012 – Lecture 09: Effort Estimation screencast

EstimationCorrelationExample.xlsx Spreadsheet computing confidence intervals.

Tagged , , ,

SE1 Lecture 08: Agile Processes continued

SE1 summer term 2012 – Lecture 08: Agile Processes continued screencast

Tagged , , , ,

SE1 Lecture 07: Rational Unified Process versus Extreme Programming

SE1 summer term 2012 – Lecture 07: Rational Unified Process versus Extreme Programming screencast

SE1_K07_Vorgehensmodelle.ppt

Tagged , , ,