(omega-design-my-class)=
# Template

<!--- use table of contents if desired for longer documents  -->
**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)

<!--- use table of contents if desired for longer documents  -->
**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
