Domain Model
Note
This is not a data model. The relationship between the domain model and the data model will be close but the domain model does not directly define the properties of the data model. It is the responsibility of the developer to translate it.
Language Terms
Entities:
Term | Definition |
---|---|
Workout Definition (WD) | A static entity that is a template for a workout (e.g. a running, gym training, etc). |
Workout Activity (WA) | An entity representing a performed workout - an actual instance of a workout that the user performed on a specific date. |
Exercise Definition (ED) | A static entity that represents a single template exercise (e.g. push-ups). |
Exercise Activity (EA) | An entity representing an exercise that was performed as part of a workout activity. |
Workout Routine (WR) | A static entity that groups Workout Activities into a package. The system can recommend the best workout within a routine for the user to complete, based on their current afterburn state. |
Other Terms:
Term | Definition |
---|---|
Max Workout Impact (MWI) | A figure between 0 - 100 representing the maximum ability of a specific workout definition to cause an adaptive response for the user, given contents of the workout and the user's fitness level. |
Actual Workout Impact (AWI) | A figure between 0 - 100 representing the aggregate adaptive response the user gained from completing a workout activity. |
Impact Credit (IC) | The total of the user's actual workout impact gained from workout activities since their last fitness test. Shown on the big bar on the main screen. |
Adaptive Response (AR) | A modelling of the way the user's body adapts after exercise to become stronger and fitter. We model four separate response types. |
Response Stress (RS) | The amount of 'work done' during a workout activity that will stress the users adaptive responses. |
Fitness Level (FL) | A figure from 0 - 50 representing the fitness of the user, as determined by their most recent fitness test. Level 0 is morbidly obese and 50 is elite athlete. |
Cardio Fitness Bias (CFB) | A multiplier that shows how much the user's fitness level leans towards cardiovascular fitness (away from muscular strength). A value < 1.0 shows a bias towards muscular strength (away from cardiovascular fitness). |
Workout Definition (WD)
An entity that defines a 'workout template' that consists of one or more exercises that are completed in order by the user. A new Workout Activity (WA) can only be created based on a WD.
Requirements
- In future there will be multiple types of workout (and therefore WD). For version 1.0, we will only support Interval Training but the domain (and data) model must support the addition of other types in future.
- Interval Training consists of a series of Exercise Definitions with specified time durations that are presented in order, each one starting after the previous one (with a small break countdown in between). Each ED can present a fullscreen video but this is not compulsory. This is the only WD type we have in v1.0.
- Future WD types will include running, cycling and others. These types will consist of single or multiple Exercise Definitions, will require different UI (maps, GPS, etc), will not necessarily use a countdown timer.
Properties
Name | Notes |
---|---|
Type | The type of workout (Interval Training, Running, Cycling, Mixed, etc). This may not be a property in the data model. Maybe subclassing would be more appropriate. |
Title | The title of the workout. |
Description | The user-facing description of the workout. |
Exercises | The list of Exercise Definitions that are included in the workout, plus their duration. |
Break Duration | The duration of the break countdown between exercises. |
Workout Activity (WA)
An entity that represents a single workout performed by the user at a specific point in time. It captures all data about that activity and can be used to calculate Post-exercise Calorie Burn (PCB) in the 24 hour period after completion.
Properties
Name | Notes |
---|---|
Workout Definition Reference | A reference to the WD that this activity was created from. |
Created | The date/time the WA was created. |
Completed | The date/time the WA was completed. |
Exercises | The list of Exercise Activities that were performed in the workout, including their duration. |
The total calories burned during the workout. | |
Completion Heart Rate | The user's HR on completion of the activity. |
Perceived Exertion | The user's perceived exertion level on completion of the activity. |
Intensity | Calculated from the CHR and PE figures at the end of the activity. |
Exercise Definition (ED)
An entity that defines an 'exercise template'. It captures all info relating to a specific exercise. An ED can be included in multiple Workout Definitions and then completed as part of a Workout Activity.
There are multiple exercise behaviours that relate specifically to the different types of workout described in the Workout Definitions section. Specific workout types will consist of exercises that are specific to that type and have specific presentation and storage needs. For example, a 5k run will require specific UI, UX and data that is not appropriate for a timed interval of push-ups. The only behaviour needed for v1.0 is Interval Training Step, which specifies a set duration that is presented to the user via a countdown timer.
Properties
Name | Notes |
---|---|
Behaviour | The behaviour type of the ED - e.g. Interval Training Step. |
Title | The title of the exercise. |
Description | The user-facing description of the exercise. |
Video | An optional video that is shown during the Exercise Activity (and available via the Exercise Library). |
The baseline number of calories that this exercise burns per second. | |
Cardio Effect | The effect that this exercise has on the cardio adaptive response. |
Strength Effect | The effect that this exercise has on the strength adaptive response. |
Metabolic Effect | The effect that this exercise has on the metabolic adaptive response. |
EPOC Effect | The effect that this exercise has on the EPOC adaptive response. |
Exercise Activity (EA)
An entity that represents a single exercise performed by the user as part of a Workout Activity. It captures data about what that exercise was and how many calories the user burned.
Properties
Name | Notes |
---|---|
Exercise Definition Reference | A reference to the ED that this activity was created from. |
Workout Activity Reference | A reference to the WA that this activity is part of. |
Created | The date/time the EA was created. |
Duration | The length of time that this exercise activity was performed for. |