(omega-design-my-class)= # Template **Table of Contents** 1. [Overview](#1-overview) 2. [Requirements](#2-requirements) 3. [Algorithmic Formulation](#3-algorithmic-formulation) 4. [Design](#4-design) 5. [Verification and Testing](#5-verification-and-testing) **Table of Contents** 1. [Overview](#1-overview) 2. [Requirements](#2-requirements) 3. [Algorithmic Formulation](#3-algorithmic-formulation) 4. [Design](#4-design) 5. [Verification and Testing](#5-verification-and-testing) ## 1 Overview A short overview of the functionality this provides. ## 2 Requirements ### 2.1 Requirement: xxx State requirement clearly and simply, followed by justification. Avoid getting into design or implementation details ### 2.2 Requirement: yyy State requirement clearly and simply, followed by justification. Avoid getting into design or implementation details ### 2.3 Desired: zzz Clear statement of desired feature and reason for including (e.g. design needs to take this into account for future capability). ## 3 Algorithmic Formulation Describe any algorithms or point to references that are important for implementation You can include math in Latex format like his: $$ (a + b)^2 &= (a + b)(a + b) \\ &= a^2 + 2ab + b^2 $$ ## 4 Design You can include code blocks like this: ```c++ int var = value; ``` ### 4.1 Data types and parameters #### 4.1.1 Parameters List and define any configuration parameters or public constants. #### 4.1.2 Class/structs/data types Describe any public data types and/or the class definition ### 4.2 Methods List and describe all public methods and their interfaces (actual code for interface that would be in header file). Describe typical use cases. ## 5 Verification and Testing ### 5.1 Test xxx Describe test including conditions for pass/fail List which requirements it tests: - tests requirement xxx ### 5.2 Test yyy Describe test including conditions for pass/fail List which requirements it tests: - tests requirement zzz