Skip to content

Homework 01

Project proposal

NB! This task is shared with asp.net course. If you take both classes, present your work only distributed git repo.
Moodle will be separate, so you need to upload your proposal PDF twice.

All course projects (there will be several) in single git repo. https://gitlab.cs.ttu.ee
Git repo has to be named: icd0021-21-22-s

Every project in its own directory.

Do not commit binaries and platform specific metafiles to git. Use correct .gitignore file.
Combine these as a starter:
https://raw.githubusercontent.com/github/gitignore/master/VisualStudio.gitignore
https://raw.githubusercontent.com/JetBrains/resharper-rider-samples/master/.gitignore

Leg 1

Project proposal

Deadline 20.02.2022 23:59:59

Expected project size:
Minimal 8 entities, not counting many:many in-between tables, logging, translations and identity tables (user, role, user_in_role, etc).

Analysis chapter is mandatory, min one page of why-what disussion.

Some previous works (not necessarily the best examples):

Do not copy over your Database course work as-is. Please add anylsis and screen sketches.

Code

Domain models + MVC WEB CRUD controllers.
User, Role and UserRole are provided by framework. So user creation, login, etc - we use framework provided functionality. Base class for users is IdentityUser - you just inherit from that (or define your own initially).

Documentation

Language: English (preffered) or Estonian.

Full ERD Schema (UML, ....) - including attributes (use vertabelo, qsee, lucidchart, etc).
Project description - what, why, what is your motivation, how will world be better, etc. Basically final thesis intro.
Actual content - minimum one A4.
All visual documents as source and pdf-s in git.
Pdf also uploaded to course moodle (https://moodle.taltech.ee/course/view.php?id=24939).

Add main client positive flow screens sketches (use some prototyping tool - figma, adobe xd, sketch, axure, invision, etc. - digitized pencil and paper is also ok).
For example wolt.ee - Home screen, restoran discovery, order proccess, payment, delivery.

If you dont have your own project idea, inmplement/plan this:
Restaurant food ordering system (like wolt/bolt), non-profit. Restaurants can set up their own data and clients can order and do their own pick-up. Enduser client, Restoran client, Restoran admin interface, System admin.

Project description - using of school written policy is mandatory.

Andres Käver ramblings about final thesis - for some inspiration (in estonian):
Final Thesis Guide EST

English by google translate: Final Thesis Guide ENG

Your project document's need to stay in sync as your project evolves.
When you need to switch a project topic (which is totally ok) - project documentation needs to be rewritten.

Identity ERD

Identity ERD PDF

Identity ERD in Lucidchart