Project Part 2 Feedback - CMPUT301W13T03/classproject GitHub Wiki
Feedback
Requirement Specification -- Satisfactory (2)
- UC2: database and cache are different things. Database is for you to store all the local recipes. Cache is for caching some number of recipes online. So the user can view them offline. The description is incorrect.
- UC4: 'System saves recipe to User's cache and publishes recipe to database', publish to web, not database. You'd better understand what is cache and what is database and what is webservice.
- The above problems show that you did not understand the requirement well. Without clear definition of the requirement, you cannot design and develop the software properly.
- Test cases are included. Description is clear.
User Interface Mockups and Storyboard -- Excellent (3)
- Good.
OOA -- Satisfactory (0) -> Good (1)
- What is 'VirtualPantry'? -> Clarified.
- Empty diamond arrow indicates aggregation which is a strong association.
- The viewer class is too simple. You only need one viewer class? You don't need to put every detailed activity classes into the diagram. But for the viewer classes, you need at least put the important ones.
- 'RecipeManager' needs to be associated with 'Recipe'. Cache is to cache the recipes on the internet so that the users can view some of them offline. Besides, you still need to save the local recipes created by the user using local storage, like database. The database is for storing all the local recipes, cache is for storing some number of recipes on the internet.
- The viewer classes and model classes need to be improved.
- Updated: with all the discussion about the feedback, I've known the basic idea behind your design. Now I understand how you would like to organize and implement M, V, C classes. Two points to remember: more details in UML diagram, clarify confusing words about cache, database, webservice. Good luck with next part! :)
Release Planning -- Satisfactory (0) -> Good (1)
- You mentioned 9 use cases. But there are only 8 in the release planning. So, you don't plan to implement 9th.?
- 'Save Recipe from Database' is confusing. Database is for saving the recipes locally. How do you save it 'from' database?
- UC6, 7, 8 are all related to create a new recipe. Without implementing them correctly, how to you confirm that you've implemented creating recipes correctly? Besides, you need to test if the recipes have been saved to database correctly. So, I suggest you to do it first.
- The planning needs to be better organized.
- Updated: thank you for clarifying the planning you have. So, suggestion is that you can put some description with your plan to make it more reasonable to readers. Thanks.