---
# System prepended metadata

title: Design Document

---

# Design Document

**Author**: Team 020 (Mark MacArdle, Abhay Swaroop, Amer Shabou)

## 1 Design Considerations

### 1.1 Assumptions

- One user will be using this app, login page or authentication will not be needed.
- The app doesn't communicate with any external server or DB.
- The user can use the app whether they are currently employed or not.


### 1.2 Constraints

The app doesn't use any external servers or DBs, so it will only rely on the phone storage capacity.

### 1.3 System Environment

The app will run on devices with Android version 10+ (Minimum API level 29)

## 2 Architectural Design

*The architecture provides the high-level design view of a system and provides a basis for more detailed design work. These subsections describe the top-level components of the system you are building and their relationships.*

### 2.1 Component Diagram

*This section should provide and describe a diagram that shows the various components and how they are connected. This diagram shows the logical/functional components of the system, where each component represents a cluster of related functionality. In the case of simple systems, where there is a single component, this diagram may be unnecessary; in these cases, simply state so and concisely state why.*

### 2.2 Deployment Diagram

*This section should describe how the different components will be deployed on actual hardware devices. Similar to the previous subsection, this diagram may be unnecessary for simple systems; in these cases, simply state so and concisely state why.*

## 3 Low-Level Design

*Describe the low-level design for each of the system components identified in the previous section. For each component, you should provide details in the following UML diagrams to show its internal structure.*

### 3.1 Class Diagram

*In the case of an OO design, the internal structure of a software component would typically be expressed as a UML class diagram that represents the static class structure for the component and their relationships.*

### 3.2 Other Diagrams

*<u>Optionally</u>, you can decide to describe some dynamic aspects of your system using one or more behavioral diagrams, such as sequence and state diagrams.*

## 4 User Interface Design
*For GUI-based systems, this section should provide the specific format/layout of the user interface of the system (e.g., in the form of graphical mockups).*

DesignDocumentTemplate.md
Displaying DesignDocumentTemplate.md.