Assignment 7 - Software

This is the final project for the course. You will deliver a functioning proof of concept.

Initial Requirements

  1. Code
    • All code should be easily accessible in repos under the DCSIL organization
    • All repos should be linked to your team in the Learn Software App (Add a new repo here.)
    • All of your repos have been added to Code Climate. Your repo should maintain a minimum “B” average in “maintainability”.
      • This isn’t the best metric to ensure code quality, and in practice, you would use this to help inform a decision, not make a decision. In this case, checking a grade is a simple way for the teaching staff to gauge code quality without spending hours reviewing each repository.
  2. It is required that the software be easily accessible:
    • If it is a web app, we should be able to visit a URL. Provide the teaching staff credentials with which to log in, if necessary
    • If it is a desktop app, we should be able to install it with the Mac/Windows Installer. We can support Mac and Windows applications, Linux-only applications will not be accepted.
    • If it is a mobile app, we should be able to install it with an iOS/Android installer. We can support iOS and Android to mark, there is a doc that can help here. Note: iOS can be a pain to deploy, as you need a certificate. Please record a video of the app in use if you do not have a certificate to available.
    • If your app, or part of your software, does not fit in one of the above categories, then please speak with the instructor before submission
    • If your app is not easily accessible, then you will receive a 0% for the evaluation of the running software
  3. There should be tests. The tests should be sufficiently covering your code.
    • You must implement code coverage on your app and run it in CI.
    • You must upload to Code Climate as well.
    • You must implement the code coverage uploading and code coverage in your CI.
  4. There must be CI, Production, Exception Logging, and any requirements from previous assignments.
  5. The application(s) is/are mostly dynamic. An MVP has been delivered and the main functionality has been entirely implemented. Very little is static (other than docs, and other content that needs to be static).
  6. A demo video is provided to tell the teaching staff about the main flows of the app. Guide us in testing the apps out and seeing the amazing work you’ve done.
  7. The application looks good and has a coherent layout and adheres to at least the WCAG 2.0 checklist Level A in this link.
    • Use this checklist to help you make sure you adhere to all requirements. It is also required


You must also create a release on your repo where the code is located. This will give us a snapshot in time and allow us to grade it.

The release does not need to include pull requests or commits from every member. The body does not even need any content, just ensure it is there and appropriately labeled.

It is suggested to use a folder and multiple files, just like this CSC491 repo, to contain this assignment.

Questions or Concerns?


[Product] Applications, Use Cases, and Dynamic ContentAll applications present in the architecture diagram have a repository and an MVP is implemented.
The product coherently functions (buttons do as expected, a user could reasonably answer questions they want to answer using the app) and achieves the intended goal.
All main use cases/flows have been delivered and are functional.
The majority of the content is functional and dynamic. The app(s) do not rely on hard-coded static data.
Login credentials or registration system provided. Details listed in the release.
[Product] Design & AccessibilityThe application has a consistent look and feel. You didn’t rely on default styles (see below). The flows are not incoherent. This will be a highly subjective area, so feel free to ask for advice before submission (please don’t ask the day before, or day of, submission). Checklist for accessiblity is filled out and submitted in the team repo15.0
[Infrastructure] Test CoverageTests should cover at least 65% of your application and upload to Code Climate.15.0
[Infrastructure] Code QualityAll repositories have at least a “B” Grade on Code Climate.15.0
[Infrastructure] Operational ExcellenceCI, Exceptions, Logging, and all other services listed in the requirements & service.yml example are all setup. Bootstrap script works. Service.yml is uploaded with no errors in the DCSIL team app.5.0
[Assignment Meta] VideoA short video (~1.5 to 3 min) with a short write up (some bullet points explaining the video) has been provided that indicates the flows that have been implemented. This allows the teaching staff to mark and is often highly valued in a production company. Please note any areas which are still under development, or not fully implemented. Keep in mind the majority of the paths should be implemented.5.0


Things you’ll lose marks on

Rating Scale

This scale is used for each line of the rubric above.

Outstanding, Thoughtful and thorough100% of pts
Strong, Provides some thought80% of pts
Acceptable, Simple explanation60% of pts
Insufficient, Little effort was made to give explanations40% of pts
Unacceptable, No effort was made or the section was missing0% of pts