Software Engineering I Blog
Lecture: Tuesdays, 12.15 – 13.45, R 1332 and Fridays, 12.15 – 13.45, R -1418
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.
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
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
- 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 firstname.lastname@example.org
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
We prepared a short presentation guide intended for customer presentations. You can find the guide here: Presentation Guide
The SE 1 Google Calendars