CS1116/CS5018 Lab 7

Continuous Assessment

Read all these instructions first. Yes, I know they're longer than anything you've ever read before in your whole life — except for the last time.

This final lab sheet, lab 7, is a 'project' that will last until the end of term. It is the continous assessment for CS1116/CS5018. It is worth 25% of the overall grade for the module.

Everyone will come up with their own project.

Your project must involve either server-side programming in Python or client-side programming in JavaScript or both.

Maybe it's something with a database, where users want to run server-side programs to update and query the database. For example, a club or society may wish to keep membership records; a social network will want to store its members, their connections, and so on; a bookshop may wish to keep track of its stock; a busy house-husband may wish to keep a diary of dental appointments, birthdays, and Pilates lessons; a quiz program would store questions, answers, and the scores of its users in a database;… Or maybe you want to write a client-side game (but not Breakout) or a puzzle. Or maybe you want to combine the two. For example, maybe a client-side game records players' scores in a server-side database.

Your chosen scenario can be real (e.g. an actual UCC society) or fictitious (e.g. a shop you've made up). If you are doing something for real, make sure that no issues arise from the fact that your system will be available on the cs1 server for all-and-sundry to view.

Examples from previous students include: database-driven quiz programs, shops (for CDs, DVDs, games, flowers, …), libraries, social networking sites, bulletin boards,…, simplified Mario-style games, top-down racing games, top-down adventure games,…

By now, you should have checked your scenario with me: check it with me now, if you haven't already done so. I will want to be convinced that your chosen scenario is ambitious enough to warrant a 'project' that will last until the end of term. (E.g. a database with just one table, a form for insertion and a form for retrieval is almost certainly not challenging enough: it is little more than what you did for lab 4. Similarly, a web site consisting of just some HTML and CSS is not enough: this is a module about web programming so the focus needs to be on server-side Python or client-side JavaScript or both.) Remember, this is 25% of the marks for this module.

If you submit a project that has not been agreed with me, it will be given a mark of zero.

(Projects must be agreed with me no later than 2pm, Friday 13th March 2020 2pm, Tuesday 24th March 2020.)

Once I have agreed it, you can start designing your database, your forms and your server-side/client-side programs.

Here are some random bits of advice:

Submission