代写 C++ game UML software Dungeon Crawler Specification Part 1: Design

Dungeon Crawler Specification Part 1: Design

1. Introduction
This document specifies the requirements for the first assignment of the Software Development with C++ course, SP5 2019. This assignment will develop your skills by allowing you to put into practice what has been taught in class during the first 5 weeks of the course.
The assignment will require you to design, implement, test, and debug a text-based Roguelike dungeon crawler game using object-oriented methods and the application of appropriate design patterns. In addition, it will require you to use version control to keep track of your implementation as you progress through the assignment and to document your classes appropriately using Doxygen comments. The work in this assignment is to be performed individually and will be submitted via LearnOnline in two parts:
• Design: a UML Class Diagram will be due at the end of Week 4—due by 25 August 2019 11:59 PM.
• Implementation: the C++ implementation will be due at the end of Week 8—due by 22 September 2019 11:59 PM. 
This document describes only the first part of the assignment, the Design. Refer to section Submission Details for specific instructions on submitting the UML Class Diagram.
If any parts of this specification appear unclear, please ensure you seek clarification.

1. Introduction
1.1. Learning Outcomes
After completing this assignment, you will have learnt to:
• Design a class hierarchy using UML
• Apply Object-Oriented principles (encapsulation, reuse, etc.) and Design Patterns to the software design
• Implement the software design in C++ using class inheritance and polymorphism features
• Write well-behaved constructors and destructors for C++ classes
• Use C++ pointers (including smart pointers) and dynamic memory allocation and management
• Use stream I/O and manipulators for formatted input and output
• Write code adhering to coding standards, guidelines and good programming practices