2.2 Software Architecture

  • Code

    T.51701

  • Credits

    3

You need to deliver the following items:
•    A shop model that applies design patterns and principles to meet the following must-have requirements in the manual.
•    2 iterations of UML class diagrams: a UML class diagram to visualize their code sketch before implementation and a UML class diagram to visualize the final code structure after the implementation.
•    A report explaining how you apply the design patterns and principles to fulfill the must-have requirements and how you design unit tests for the key functions.
•    An optional code review report.
 
Test Form Werkstuk/Report/Bericht (W)

Test criteria

•    The student uploaded a shop model that applies design patterns and principles to meet the following must-have requirements:
          The items have at least 3 categories: weapon, armor and potion, each category of items have different properties, item properties are displayed in the shop view.
         The shop's items are generated procedurally.
         There is one inventory for the shop and one inventory for the player separately.
         The shop supports at least 3 states: buy, sell, upgrade:
              o    Buy: Buy an item from the shop's inventory and the item is added to the player's inventory.
              o    Sell: Sell an item from the player's inventory and optionally the item is added to the shop's inventory.
              o    Upgrade: Select an item from the player's inventory and upgrade its properties for a price.
         In each state, the shop can switch between a grid view and a list view to display the same inventory at run time.
         The shop supports both mouse and keyboard controls.
•    The student uploaded 2 iterations of UML class diagrams as visual demonstrations of the code sketch before implementation and the final code structure after the implementation.
•    The student uploaded a report explaining how they apply the design patterns and principles to fulfill the must-have requirements and how they design unit tests for the key functions.