Lectures
Slides will be made available after lectures or shortly before them.
Assignments:
- Implementation and Unit Testing.
The final demo moved to Monday May 12 (week 11), EAB-IT, 2pm-4pm. The timetable for teams is unchanged.
Teams 1-8 implement and test specification B (revised on Feb 25 to remove inconsistency in the initial strength and in the number of time units per step in labyrinth).
Teams 9-16 implement and test specification A (revised on Feb 25 to remove inconsistency in the initial strength and in the number of time units per step in labyrinth).
The starting code for the game is available here.
- System testing (Hand-in Friday 9rd May 2014; week 10 (the midnight at the end of Friday)).
- Demo 2, Monday May 12 (week 11), EAB-IT, 2pm-4pm. Details in the System testing document.
This demo covers implementation and unit testing you have submitted at the end of week 8. It indirectly assesses
how well you documented your code: if you did not do that well, in the weeks since the submission you may forget the details and may find it difficult to answer detailed questions. With good design documentation and comments in the code, answering questions
should not be very hard.
Totals for each category in the marks uploaded to Codebase can be found here.
Other materials
- Genesys coding standards and a
checklist.
-
A demo application using
DataNucleus for storage of objects is available here together with a few tests.
-
XXM plugin is a tool that can be used to create diagrams describing the intended behaviour of the software you develop.
It is an Eclipse plugin can be downloaded here.
It works with a newer version of Eclipse than 3.4. A guide to using it can be found here.
-
In relation to Git:
- when you do a commit, it goes to local repository, when you push it is published for an entire team to see it.
-
push fails ("non-fast-forward") if someone pushed a newer version than the one you are changing. You need to do a "pull" and perhaps re-test the code, followed by a commit and then a push.
- assignments are supposed to be committed to project team directories, such as
git@git.crossover-project.org.uk:crossover-team{num}/project
-
When you create a new repository and add directories and files, you are expected to use Git "add" command from the menu. This may fail if your project is stored on drive H. In this case, you can create a directory on the desktop and add files there, subsequently doing a commit and a push. Everything seems to work fine if you then clone the project into your eclipse directory on drive H.
-
How to start:
One of the team members can create a new Git repository in the project directory (if you are using Eclipse, the one containing bin and src directories). If Git asks you whether you want to "Make it Bare", do not tick the box. Add all the files except class files, then commit and push it into the repository. You may be asked for your name and email address. For a hypothetic team 20, you would want to push branch master to git@git.crossover-project.org.uk:crossover-team20/project
After that, other teams could clone the project and work on it. Eclipse permits you to "import" an existing project. After you do a clone via Git, you can select File->Import->General->Existing Projects into Workspace, then select the directory into which you have cloned.
Eclipse will then load the project.
Email me (replace _ in the email address with @)