Your final project for this course will be the planning and implementation of a web information system. The project will be evaluated with respect to the overall idea, implemented functionality, polish, and technical quality. See also ProjectTopicNotes.
As proposals are submitted, project topics will be posted.
The technology evaluation is completed in the project groups (except the overviews and weighting).
- Proposal, Monday July 06 2020, 2%
- Checkpoint Implementation, Friday July 24 2020, 3%
- Final Implementation, Monday August 10 2020, 45%
- Individual Overview, Tuesday August 11 2020, 5% (individual marks)
- Individual Weighting, Thursday August 13 2020 (individually submitted)
- You must use a full-stack web framework as the basis for your implementation. Some examples: Rails, Django, Express, Play. If you have a principled objection to this requirement (most likely that your proposed project isn't a good fit for a standard MVC framework), I am willing to discuss waiving it.
- The project must be deployable with Vagrant and VirtualBox (and Chef/Puppet recipes) or Docker Compose from your codebase. Cloning your code and doing either
docker-compose upmust be enough to get the project running.
- You must use only software that can be (legally) downloaded, installed and used for free.
- You must use a Git repository on our Gitlab server for your code. All group members must use the repository to commit their own contributions. Collaboration on code (pair programming or similar) should be noted in the commit messages.
- You are expected to take the topics discussed in lectures into account when implementing your project.
- It is expected that all group members will complete an approximately equal share of the project, including the implementation. See ProjectWeighting and Admin for more information on expectations.
- All submitted materials must be your own work. Any material copied from another source must be clearly referenced. This applies to writing, images, source code, and anything else submitted.
- There will be a mark penalty for any security problems in the implementation. This includes access to unauthorized information, ability to modify unauthorized information, and data corruption.