nus-cs2113-AY2324S2 / pe-dev-response

0 stars 0 forks source link

No UML Class Diagram present in the DG #1696

Open nus-pe-bot opened 2 months ago

nus-pe-bot commented 2 months ago

Note from the teaching team: This bug was reported during the Part II (Evaluating Documents) stage of the PE. You may reject this bug if it is not related to the quality of documentation.


There is an absence of Class diagrams in the developer guide. Addition of class diagrams for each class, showing the inheritance, methods and class variables should be added for developers to understand the structure of the individual classes better.


[original: nus-cs2113-AY2324S2/pe-interim#1505] [original labels: type.DocumentationBug severity.High]

itsmejr257 commented 2 months ago

Team's Response

Thank you for your suggestion. We do acknowledge that class diagrams may be useful to further aid in the explanation of the structure of our individual classes. However for v2.1, we did not believe that class diagrams were necessary and of higher priority in the DG. This is due to the fact that the design of the application is fairly simple and easily explained in words, which we have done in our DG. E.g. the explanation of the relation between command and commandcreator, where we included and explained their association and their class attributes and methods in words. Many of the other classes also share this sentiment, where their structure could be explained in a straightforward sentence, etc ExpenseList holds multiple Expenses, SavingList holds multiple Savings.

The only feature which we believed to have necessitated a class diagram was the Recurring Expenses Feature. Given that RecurringExpenseLists holds multiple ExpenseList and still uses RecurringExpenseList, we believed that this feature necessitated a class diagram to show the associations between the RecurringExpenseLists, ExpenseList , RecurringExpenseList and Expense class, which we have created in section 3.7.7.

If you were to view our code, you would notice that there were many methods used from different classes for a single feature. Hence, our priority in v2.1 was to explain this part clearly as seen in our Implementation section, where all features clearly show a sequence diagram to clarify the potentially hard to follow code flow. As such, class diagrams, which we did not see as a higher priority than sequence diagrams were not a huge focus. Therefore, we have classified this as NotInScope and classified the Severity under Medium.

Duplicate status (if any):

--