App 2: BMI Calculator. - Timxthy/CO453 GitHub Wiki

App02: Body Mass Index Calculator

Description

Your BMI, or Body Mass Index, is a measure of your weight compared to your height. Accurate assessments of obesity are important, as being overweight or obese significantly increases your risk of a variety of medical conditions including type 2 diabetes, heart disease and cancer.

For most adults, BMI gives a good estimate of your weight-related health risks. If your BMI is over 35, your weight is definitely putting your health at risk, regardless of the factors below. However, there are some situations where BMI may underestimate or overestimate these risks in the 25-35 BMI range. The main ones are:

  1. Children
  2. Pregnant women.
  3. Muscle Builders
  4. BAME: Black, Asian and other minority ethnic groups.

Features

  1. Output a heading and a introduction explaining the application
  2. Allow the use a choice of imperial (weight in stones and pounds, height in feet and inches) or metric units (weight in Kg, and height in metres)
  3. Prompts the use to enter their weight and height.
  4. Calculates and displays their BMI value.
    • BMI = (weight in kg) / (height in metres)2
    • BMI = (weight in pounds) x 703 / (height in inches)2
  5. Outputs the WHO (World Health Organisation) weight status as illustrated below
  6. Displays a message explaining to BAME groups their extra risks.
  7. A Mobile Phone App version of the calculator
WHO Weight Status BMI kg/m2
Underweight < 18.50
Normal 18.5 - 24.9
Overweight 25.0 - 29.9
Obese Class I 30.0 - 34.9
Obese Class II 35.0 - 39.9
Obese Class III >= 40.0

Design

UML Activity Diagram

Activity Diagram

UML Class Diagram (10 Marks)

The student should add a full class diagram here

Testing

Console Screen Shots (12 Marks)

BMI Calculator

BMI Calculator

BMI Chart Used

BMI Chart

Black Box OR Unit Tests (48 Marks)

The student should either create a table of Black Box tests which tests the lowest and highest values for each health category and for each unit system (Metric and Imperial) (24 tests) OR should create 24 Unit tests
Alternatively one unit system could be tested using Black Box tests and the other using Unit Tests. This must be shared if working as pair programmers

Evaluation (20 Marks)

The student should add five limitations or useful extensions that could be added to the application

  1. Would have liked to add sound based on your bmi - so youy would get a sad sound if you were over weight - a congratulatory sound if you were healthy and a growl if you were overweight.
  2. Improvement, Extension or limitation
  3. Improvement, Extension or limitation
  4. Improvement, Extension or limitation
  5. Improvement, Extension or limitation
⚠️ **GitHub.com Fallback** ⚠️