Design proposal
This section describes a project milestone. See the schedule for due dates.
Your design proposal builds on your Project Proposal by considering how you will build the system that you describe in that document.
What to include
You should have the following sections, where you address the questions listed. At this stage, answers should be relatively short; you should expect to do further investigation during the implementation phase.
1. Architecture
Assume that you will implement the requirements listed in your Project Proposal.
- Provide a high-level component diagram, showing the structure of your system. You should identify your application, including relevant application components, and any external systems e.g., remote database, cloud service.
- You’ve been provided with a number of architectural styles. Which one do you think suits your application?
- For components outside of your local application, where do you expect them to be hosted? Will they be hosted by some third party? e.g, a cloud service like AWS? A cloud database like MongoDB?
- Are there privacy and security implications to your design? Does being online change how you think about creating an application?
2. Application features
- Are there any features that you do not know how to implement? Identify risks and features that you need to investigate early in your project.
- Sketch out low-fidelity prototypes of your UI/screens, showing basic functionality of your application. Keep these simple! You need to illustrate basic information and screen flow; you don’t need much more detail.
Prototypes can be done in Figma, or some other wireframe tool, or on paper. However, you need to include these diagrams in your actual design document i.e., as screenshots or images.
Where to store this document
Your proposal should be contained in a Wiki page titled Design Proposal
, and linked from the README.md
file of your GitLab project.
How to submit
When complete, submit your Design Proposal for grading.
Login to Learn, navigate to the Submit
> Dropbox
> Design Proposal
page, and submit a link to your top-level project page.
Proposals must be submitted by listed time and date.