Assessment FAQ
Why does the assessment allow me to use relational database if the entire module looks at a non-relational database?
This clause in the assessment is mostly to give flexibility to some of our apprentice students, that may have tight work constraints. I assume most people will use the technologies we cover in class.
Do I have to find a dataset for the assessment?
No, absolutely not. We used a data set in class, as it gave us a quick starting point. However, the problem that you are setting out to solve may not need any external data. For instance, solving the issue of logging something (e.g., meals, work-outs, university deadlines). In short, you won't get any extra marks for pulling in external data, especially it is just for the sake of showing me you can populate the database.
What level of sophistication must I demonstrate for the assessment?
While I am assessing you on you ability to solve a clearly defined problem. To reach the higher grades, you need to ensure that your problem is, and I quote from the grading schema:
"a complex, unfamiliar problem."
While this definition is open to interpretation, I like to place it against a back-drop of complex at a level 5 university standard. For instance, let's say I am trying to solve the issue of students procrastinating (you'd be surprised how often students choose projects in this area). A simple goal tracking, todo style app, would be perfectly reasonable. The solution would need to cover all of the CRUD and user authentication methods we covered in class. Such a solution might get you a B. However, to reach the A grades, I'd like to see something extra, something we may not have covered in class. For instance, some sort of data visualisation. In summary:
B Grade
A good solution (B grade) will incorporate, Create, Read, Update, Delete and user authentication. It will also be functional and solve the problem you defined.
A Grade
An excellent solution (A grade), will incorporate the above; however, uses techniques, services or modules that we have not necessarily covered in the class (e.g. image uploads, more sophisticated authentication, some interesting MongoDB queries and techniques). Don't just throw something in for the sake of it! Every feature in your application must serve a purpose.
Does my solution need to look good?
I am not marking you on the appearance of your application. However, while it may not look sleek, it must be intuitive and usable, think a Volvo car. You may use a CSS framework to speed things up, here are some suggested frameworks:
- https://getbootstrap.com/ - Bootstrap gets the job done, and it's easy to use, we are using this in the practicals
- https://tailwindcss.com/ - I've heard really good things about Tailwinds; however, I've not used it
- https://get.foundation/ - I've not used this framework; however, it looks a little pretty than Bootstrap