This issue is an adaptation of the instructions given in the Project Overview of our course website, to make the marking scheme more clear and to give you an independent way to track remaining requirements.
Feel free to link relevant issues you create to this issue. Close the issue when you have met all requirements (or, when the deadline has been reached -- in this case, comment which requirements you have not met).
(65) Functionality Requirements
Meet the business logic requirements as per your design proposal
Meet the technical and functional requirements set by the teacher (see below)
Use a declarative UI approach (Compose) with separation of concerns between display and data (e.g., MVVM approach)
Apply the key techniques taught in class for state management (including ViewModel), user authentication, navigation, coroutines & flow, Material 3 design, layout, etc.
Persist data provided by the user (Local storage or remote database)
Include a user login/register capability with associated serverless authentication (e.g., Firebase)
Implement a navigation approach that allows user to move to different screens and that works with device back button (e.g., NavBar, but other approaches are possible)
Prevent access to some UI elements and associated access based on whether user is logged in or not.
Include an “About Us” screen that describes your team and the motivation for the app.
Include at least one information screen in addition to the About Us screen.
Include at least three functional screens (not including login/landing/about-us/info)
The user should be able to perform all interactions with the application by starting the app and then navigating appropriately within the app.
User inputs should be handled appropriately (e.g., hide password, some minimal form of validation)
The application should not hang or crash
Include 1 “advanced feature” suggested in class.
See the "Advanced Feature" issue I created in your repository for more information.
(20) Aesthetic/Styling/Layout
All screens use Material design and share a common look and feel.
How well did your app meet the soft requirements and your design aesthetics? Does it have a good aesthetic design?
See the "Material Design & Style Refactor" issue I created in your repository for more information
(20) Usability/Design
Is your app usable? How useful is the app? Are instructions to the user clear (where needed)? Does the app provide a cohesive experience?
The principles learned in the Assignment 4 codelab have been applied to your project
See the "Accessibility" issue I created in your repository for more information.
(20) Code quality
Kotlin/Compose best practises and uniform style are applied
See the "Enforce coding quality and style requirements using Spotless" issue I created in your repository for more information
Important source code files must be appropriately documented meaningfully.
See the "Comments and Attributions" issue I created in your repository for more information
Source code project name/package name is appropriate (not EmptyActivity or Assignment2 or similar)
See the "Project/Package name" issue I created in your repository for more information
title: (Overall) Functional Requirements milestone: Milestone 4b Requirements label: question
Functional requirements
(125 marks available out of 250 total)
This issue is an adaptation of the instructions given in the Project Overview of our course website, to make the marking scheme more clear and to give you an independent way to track remaining requirements.
Feel free to link relevant issues you create to this issue. Close the issue when you have met all requirements (or, when the deadline has been reached -- in this case, comment which requirements you have not met).
(65) Functionality Requirements
(20) Aesthetic/Styling/Layout
(20) Usability/Design
(20) Code quality