Closed waridh closed 10 months ago
I vote that for the UML diagrams, we use plantUML. I spent the time to learn the system, and it is much more efficient and clean than manually drawing it out on flow.io.
The UI is pretty much unchanged, I think we can leave it as is for now. (unless there are major changes to the UI involving tags)
This checkpoint has been completed
Overview
This project part focuses on a working prototype with about half of the requirements. You must have some server connectivity working by this part.
Deliverables
[x] Addressing Feedback: Address any TA feedback on the previous project part.
[x] #90 Your source code will be inspected. The code should conform to Java coding conventions. Your prototype should provide something tangible to the user, supporting about half the requirements. Maintain the source code in your source repository.
[x] #89 For each source code file, you should have a brief introductory comment describing its purpose or role within the application or a design pattern, as well as any currently outstanding issues. Provide Javadoc interface documentation for your model classes and their public methods (at least).
[x] #86 Write runnable tests for your model and control classes. Provide intent tests for the requirements you have done. Deliver the test code to your source repository. If you have test data files, also include those. Test data should be realistic.
[x] #91 Document your object-oriented design using a UML class diagram (or diagrams), including details on key attributes and methods. Add notes as appropriate to clarify. The diagram(s) will likely evolve.
[x] #88 Update the requirements as appropriate. Note which user stories are done at this checkpoint.
[x] #92 Update these diagrams as appropriate.
[x] #87 Maintain a record of what user stories are planned for each weekly sprint at its start, including who is to work on them. For each intermediate week, in the lab, have a sprint review with your TA mentor and all team members present to review the completed user stories.
[x] #93 During your team's assigned lab section after the due date (or possibly at a mutually arranged time), you must demo your working prototype to your TA mentor. All team members have to attend the demo.
[x] Tool use: Regular and consistent use of GitHub by all team members to share files for the project deliverables, to effectively track issues, and to manage tasks.
There must be consistency across the deliverables at this checkpoint.
The evaluation of this project part will also include a component called "relative quality". This is used to differentiate projects that meet the minimum from projects that go "the extra mile".
Restrictions
Use Java, with Android, and Firestore.
Hints
Integrate early and often, even if some parts may have to be stubbed out to return canned data. Think about issues like server connectivity early in the design, rather than trying to retrofit them later.
Code from publicly available sources may be used within reason (i.e., does not essentially solve major sections of the app) and only if their licenses permit so. Always fully cite to give proper credit to the original developers in the source code and in the system documentation. For example, in citing a work, at least state: from whom, the date of publication, license, and URL. Do what is required by its license. When citing generative AI, at least state the tool used, date of generation, relevant prompt(s), and explain your revisions. You do not need to cite standard language or API references.