The lectures will mostly be a real time demonstration of the software process you should use. Pre-reading (below) is what you're supposed to read before the lecture. Slides will be published after.
*) = published.
# | Content | Pre-reading | Slides |
1 | Course Presentation, SE overview | Git Basics, Git Branching, Software development process, Agile development, Iterative development | *Intro, *S1 |
2 | Requirement elicitation | Requierements Elicitation, Use case | *S2 |
3 | Analysis | Domain Model, How to Make a Domain Model (a bit too detailed, get the general idea) | *S3 |
4 | Design and Implementation | Test driven development, Sequence diagrams | *S4 |
5 | Design | No reading | *S5 |
6 | Services, Exceptions and Misc | No reading | *S6 |
Below is the running case for the course.
Will be referenced during lectures (not a fully functional application). Code published after lecture.
Description | Artifact |
Use cases (initial) | *UC: Move *UC: EndTurn |
Requirements and analysis document after a few versions (not in sync with running code below) | *Monopoly RAD |
System design document after first few use cases running (not in sync with running code below) | *Monopoly SDD |
First running use cases (as tests) | *Monopoly 0.1 |
Some more UCs (as tests) | *Monopoly 0.2 |
Full MVC application | *Monopoly 0.3 |
Services and Exceptions | *Monopoly 0.4 |
Some minimal code samples
Non OO | OO | |
libGdx (Gradle) | libgdx | libgdx OO |
JMonkey engine (Maven) | jme3 | jme3 OO |