Software Requirements Specification

wispsyndicateSécurité

23 févr. 2014 (il y a 3 années et 1 mois)

121 vue(s)



Software Requirements
Specification

for

Strength Training Application





B2D Solutions

Eric Berg

Josh Dodd


February 14, 2008

Software

Requirements Specification for Strength Training Application


Page
ii


Table of Contents

Table of Contents

................................
................................
................................
..........................

ii

Revision History

................................
................................
................................
...........................

iii

1.

Introduction

................................
................................
................................
..............................
1

1.1

Purpose

................................
................................
................................
................................
........

1

1.2

Software Context

................................
................................
................................
.........................

1

1.3

Project Scope

................................
................................
................................
...............................

1

1.4

References

................................
................................
................................
................................
...

1

2.

Overall Description

................................
................................
................................
..................
3

2.1

Product Perspective

................................
................................
................................
.....................

3

2.2

User Classes and Characteristics

................................
................................
................................
.

3

2.2.1

Administration

................................
................................
................................
........................

3

2.2.2

Coache
s/Trainers

................................
................................
................................
.....................

4

2.2.3

Players

................................
................................
................................
................................
.....

4

2.3

Operating Environment

................................
................................
................................
...............

4

2.4

Design and Implementation Constraints

................................
................................
.....................

4

2.4.1

Economic
................................
................................
................................
................................
.

4

2.4.2

Ethical and Legal

................................
................................
................................
....................

4

2.4.3

Health and Safety

................................
................................
................................
....................

4

2.4.4

Manufacturability

................................
................................
................................
....................

4

2.4.5

Political

................................
................................
................................
................................
...

4

2.4.6

Social

................................
................................
................................
................................
.......

5

2.4.7

Sustainability

................................
................................
................................
...........................

5

2.5

User Documentation

................................
................................
................................
....................

5

3.

Product Functions

................................
................................
................................
....................
6

3.1

General Functions
................................
................................
................................
........................

6

3.1.1

Login

................................
................................
................................
................................
.......

6

3.1.2

Add New User

................................
................................
................................
.........................

6

3.1.3

Remove User

................................
................................
................................
...........................

7

3.1.4

Logout

................................
................................
................................
................................
.....

7

3.1.5

View Users

................................
................................
................................
..............................

7

3.1.6

Edit Users

................................
................................
................................
................................

8

3.2

Create Workout Functions
................................
................................
................................
...........

8

3.2.1

Add Player

................................
................................
................................
...............................

8

3.2.2

Add Exercise

................................
................................
................................
...........................

8

3.2.3

Add Routine

................................
................................
................................
............................

9

3.2.4

Add Schedule

................................
................................
................................
..........................

9

3.2.5

Print Workout

................................
................................
................................
........................

10

3.3

Data Functions

................................
................................
................................
...........................

10

3.3.1

Add Player

................................
................................
................................
.............................

10

3.3.2

Remove Player

................................
................................
................................
......................

11

3.3.3

View Player

................................
................................
................................
...........................

11

3.3.4

Edit Player

................................
................................
................................
.............................

11

3.3.5

Add Exercise

................................
................................
................................
.........................

12

3.3.6

Remove Exercise

................................
................................
................................
...................

12

3.3.7

View Exercise

................................
................................
................................
.......................

12

3.3.8

Edit Exercise

................................
................................
................................
.........................

13

3.3.9

Add Routine

................................
................................
................................
..........................

13

3.3.10

Remove Routine

................................
................................
................................
....................

13

3.3.11

View Routine

................................
................................
................................
........................

14

3.3.12

Edit Routine

................................
................................
................................
..........................

14

Software

Requirements Specification for Strength Training Application


Page
iii


4.

External Interfa
ce Requirements

................................
................................
.........................
15

4.1

User Interfaces

................................
................................
................................
...........................

15

4.2

Hardware Interfaces

................................
................................
................................
..................

15

4.3

Software Interfaces

................................
................................
................................
....................

15

5.

Validation Criteria

................................
................................
................................
.................
16

5.1

General Functions
................................
................................
................................
......................

16

5.1.1

Login

................................
................................
................................
................................
.....

16

5.1.2

Logout

................................
................................
................................
................................
...

16

5.1.3

Add New User

................................
................................
................................
.......................

16

5.1.4

Remove User

................................
................................
................................
.........................

17

5.1.5

View Users

................................
................................
................................
............................

18

5.1.6

Edit Users

................................
................................
................................
..............................

19

5.2

Create Workout Functions
................................
................................
................................
.........

19

5.2.1

Add Player

................................
................................
................................
.............................

19

5.2.2

Add Schedule

................................
................................
................................
........................

19

5.2.3

Add Routine

................................
................................
................................
..........................

20

5.2.4

Add Exercise

................................
................................
................................
.........................

20

5.2.5

Print Workout

................................
................................
................................
........................

20

5.3

Data Functions

................................
................................
................................
...........................

21

5.3.1

Add Player

................................
................................
................................
.............................

21

5.3.2

Remove Player

................................
................................
................................
......................

21

5.3.3

View Player

................................
................................
................................
...........................

22

5.3.4

Edit Player

................................
................................
................................
.............................

22

5.3.5

Add Exercise

................................
................................
................................
.........................

22

5.3.6

Remove Exercise

................................
................................
................................
...................

23

5.3.7

View Exercise

................................
................................
................................
.......................

23

5.3.8

Edit Exercise

................................
................................
................................
.........................

24

5.3.9

Add Routine

................................
................................
................................
..........................

24

5.3.10

Remove Routine

................................
................................
................................
....................

24

5.3.11

View Routine

................................
................................
................................
........................

24

5.3.12

Edit Routine

................................
................................
................................
..........................

25

Appendix A: Analysis Models

................................
................................
................................
.....
26

Appendix B: Issues List

................................
................................
................................
...............
31



Revision History

Name

Date

Reason For Changes

Ve
rsion

Eric Berg

2
-
08
-
08

Document Initially Created

0.1

Josh Dodd/Eric Berg

2
-
14
-
08

Final Document

1.0



Software

Requirements Specification for Strength Training Application

Page
1


1.

Introduction

1.1

Purpose

The
objective is to build a software system that is user friendly and accurately generates and
stores data that assists streng
th coaches in managing their strength program. The software
system should be very customizable to allow strength coaches maximum freedom to their
specific programs. The system should generate workout schedules for individual athletes
and provide an analy
sis of each individual athlete’s performance. The system should
logically organize data, and dynamically update data that is linked, as set up by the
individual user. In addition, a stand
-
alone touch screen interface should be implemented that
has restric
ted access to be used by athletes, trainers, or other allowed users that provides
individual performance and data analysis. This interface will use biometric authentication to
verify user identity.

1.2

Software Context

This application is intended to be used
by strength trainers and athletes of all levels. It will
provide the ability to track individual performance and historical milestones, test the current
level of performance of the athlete, as well as project and set
-
up future training routines
based on th
e current information. It will also provide the ability, if so desired, to track
specific groups of athletes based on several specific commonalities, i.e. positions, teams,
sports etc.
This strength training software program is intended to completely repla
ce the
existing program applications and provide the end user with a user friendly application to aid
in the training of several athletes in various and broad ranges of competitive sports.

1.3

Project Scope


With recent advances in research and technology, str
ength training has become more
complex in recent times. With the increased amount of knowledge of anatomy and
physiology of the human body comes an increased amount of data that needs to be stored
and analyzed for each individual athlete. In order to eff
ectively train athletes, an efficient
method of tracking and managing this data is needed. Currently the West Virginia
University Strength and Conditioning Staff use outdated software to manage all athletes that
they train. This software has many issues
with efficiency,
ease of use and dependability
]
1
[
.
A new system is greatly needed to properly manage data and provide maximum results for
both strength coaches and athletes.
This new system should provide many basic functions
such as:

a user
-
friendly interface, useful data analysis and organization, and user
customization. It also needs to provide secure user authentication and access level
restrictions, as well as
linked databases.

1.4

References

[1]

http://www.power51.com/

[2]

Ford, Ralph M., and Chris S. Coulston.
Design for Electrical and Computer



Engineers
. Boston: McGraw
-
Hill Custom Publishing, 2005.

Software

Requirements Specification for Strength Training Application

Page
2


[3]

http
://homepages.dcc.ufmg.br/~rodolfo/es
-
1
-
03/IEEE
-
Std
-
830
-
1998.pdf

[4]

Pressman, Roger S.
Software Engineering, A Practitioner’s Approach.

Boston:
McGraw
-
Hill Custom Publishing, 2005.










































Software

Requirements Specification for Strength Training Application

Page
3


2.

Overall Description

2.1

Product Persp
ective

The history of strength training can be traced back to the times of the Ancient Greeks, when
athletes would do such things as carry calves or other dumbbell like weights in order to
increase strength. With the advancements of today’s technology, st
rength training has
become a complex science. Basic principles of strength training involve a manipulation of
the number of repetitions, sets, tempo, exercises and force to cause desired changes in
strength, endurance, size of a group of muscles. In stre
ngth training terms, an exercise is a
motion or group of motions of joints or muscles that target and challenge specific muscles.
A repetition, or rep, is one complete cycle of on an exercise. A set is a complete cycle of a
predetermined number of reps o
f an exercise. Tempo refers to the amount of time between
reps and sets and exercise.


Strength training programs are based on an individual’s one rep max. A one rep max is the
performed or calculated maximum weight that an individual can successfully
lift for one
repetition. A work out schedule is for an athlete consists of a specific number of weeks that
contain progressive routines of exercises for each determined training day. The amount of
weight to be lifted by the athlete is calculated as a per
centage of the one rep max for each
specific exercise.


Software systems in the past have failed to provide an efficient program that consistently
follows this basic lifecycle of a workout routine. The most successful software developed in
the strength
training fields is a program called Power 5.1. This software does provide a way
to manage athletes and workout, but is extremely outdated for the systems of today, and has
not offered any software updates in recent years.

With advances in recent advances
in research and technology, strength training has become
more complex in recent times. With the increased amount of knowledge of anatomy and
physiology of the human body comes an increased amount of data that needs to be stored
and analyzed for each indiv
idual athlete. In order to effectively train athletes, an efficient
method of tracking and managing this data is needed. Currently the West Virginia
University Strength and Conditioning Staff use outdated software to manage all athletes that
they train.

This software has many issues with efficiency, ease of use and dependability[1].
A new system is greatly needed to properly manage data and provide maximum results for
both strength coaches and athletes.

2.2

User Classes and Characteristics

The users of th
e system are:



Administration



Coaches/Trainers



Players


2.2.1

Administration

The administration will be assumed to have good data management skills and have access to
all data within the system.

Software

Requirements Specification for Strength Training Application

Page
4


2.2.2

Coaches/Trainers

Coaches and trainers will have access to all worko
ut data fields, but will have limited access
to user and privilege data information.


2.2.3

Players

Players will only be able to view workouts. Players are not able to edit or remove any
information within the system.

2.3

Operating Environment

This application will

be designed to run on a Windows XP platform. The system should
provide a minimum of 256 Kb of RAM.

The system should also provide a DVD
-
R drive for
creating backups of player information. The system should also provide a printer to allow
trainers to print

workout schedules for the athletes.

2.4

Design and Implementation Constraints

2.4.1

Economic



The final sales cost should be competitive with other typing products and specialized numeric
keypad devices that are on the market at the time of sale.

2.4.2

Ethical and Legal



T
he system should not interfere with the operation of the personal computer to which it is
attached.



Only administrators will be allowed to access data



System will protect user’s identity with 128
-
bit encryption

2.4.3

Health and Safety



The system must not expose
the user to electrical shock.

2.4.4

Manufacturability



The system software should be distributed on a CD
-
ROM disc.



System software updates should be distributed via the Internet.



The system software should be compatible with Microsoft operating systems.



Component
s for the system should be readily available from national distributors.

2.4.5

Political

Software

Requirements Specification for Strength Training Application

Page
5




The system software should comply with the Digital Millennium Copyright Act.

2.4.6

Social



The user interface should provide visual menus to the user.



All text and images in the us
er interface should be externalized in order to allow for
localization.



The system should provide visual and audible notifications to the user when a error occurs.

2.4.7

Sustainability



System updates will be offered via internet.

2.5

User Documentation

The strength
training application end users will be provided a user’s manual for both the
administrators and coaches/trainers access levels. It is understood that the system interface
and use training of the athletes will be provided by the coaches and trainer users.
























Software

Requirements Specification for Strength Training Application

Page
6


3.

Product Functions

3.1

General Functions

3.1.1

Login

3.1.1.1

Description

This function is a general login function for all users. The user will be prompted for his
biometric information via the fingerprint scanner, which will then be validated from the

contents of the user template database. The login function will determine the permissions for
user type.

3.1.1.2

Stimulus/Response Sequences

1.

User

provides user name and password

2.

User name and password are paired and

verified

3.

If
user name/password is

not verified
, event is logged an
d an

error message is displayed

4.

User

is logged in and a welcome message is displayed.

3.1.1.3

Functional Requirements

For a successful login, the function requires a user name and biometric information pairing
that matches corresponding databa
se template
.

3.1.2

Add New User

3.1.2.1

Description

This function will register new users into the system. The administrator will input personal
information, user type, and a login name. The user will them be required to create a
biometric fingerprint template. On sub
mit, the function will check for duplicate entries in
the database and insert the new user into the specific table in database. Only administrators
will have permissions to add users (Coach/Trainer or Player) to the system.

3.1.2.2

Stimulus/Response Sequences

1.

Adm
inistrator

enters
all fields.

2.

Username and
biometric template are

pair
ed


3.

If username
is

not verified

an error message is displayed

4.

All other required information is verified.

5.

If
information is

not verified

an error message is displayed

6.

User

is
added

and
a welcome message is displayed.

3.1.2.3

Functional Requirements

For a successful registration, the function requires a username that has no matching database
entry, as well as other information that is validated.





Software

Requirements Specification for Strength Training Application

Page
7


3.1.3

Remove User

3.1.3.1

Description

This function will remo
ve a user from the database, as well as all of the user’s information.
The function will accept input from the administrator and locate the user to remove in the
database. Only administrators will have permissions to remove users from the system.

3.1.3.2

Stimulu
s/Response Sequences

1.

Prompt administrator for username as well as first and last name of user of which to
perform the search.

2.

Database is searched for inputted values.


3.

I
f u
ser is found, administrator is prompted to remove.

4.

If remove = true, user is remove
d, otherwise, return to 1.

5.

If
user is not found, not found

message is displayed
.

3.1.3.3

Functional Requirements

For a successful removal, the function requires searchable values that have a matching
database entry, as well as an inputted remove value of true.

3.1.4

Log
out

3.1.4.1

Description

This function is a general log out function for all users. When the user logs out, all
information collected during the session will be saved and the user information will no
longer be accessible without a successful re
-
login. Also, the l
ogout function will
automatically be executed if the user is idle over a period of time.

3.1.4.2

Stimulus/Response Sequences

1.

User indicates logout.

2.

User is marked as logged out in database

3.

Logout message displayed.

3.1.4.3

Functional Requirements

For a successful logout,
user must invoke the logout function by clicking logout.

3.1.5

View Users

3.1.5.1

Descripti
on

This function is an administrator function to view all users of the system. It will list all users
that are currently enrolled in the system that match the defined search crit
eria.

3.1.5.2

Stimulus/Response Sequences

1.

User indicates view.

2.

User enters the desired search criteria

3.

If no matching records found, error message displayed.

4.

Displays all match records to the User.

3.1.5.3

Functional Requirements

For a successful
search
, user must invoke
the
search

function by clicking
search
.

Software

Requirements Specification for Strength Training Application

Page
8


3.1.6

Edit Users

3.1.6.1

Description

This function is an administrative function for editing user information. The function is
used to update user information on file as they progress through the system.

3.1.6.2

Stimulus/Response Sequenc
es

1.

User indicates edit record.

2.

User enters the username of the record in which to edit

3.

If record not found in database, error message displayed to user.

4.

Prompts user to enter the information in the data fields in which to change.

5.

Displays the record with t
he updated information to the user.

3.1.6.3

Functional Requirements

For a successful
edit
, user must invoke the
edit

function by clicking
edit
.

3.2

Create Workout
Functions

3.2.1

Add Player

3.2.1.1

Description

This function will add a player to the current workout. Included with t
he player name will
be the following attributes: height, weight, sport, position. Only coaches and/or athletic
trainers will have permission to add or remove players from a workout.

3.2.1.2

Stimulus/Response Sequences

1.

Coach/athletic trainer enters desired player
name or position.

2.

Database is searched for player name or position

3.

If player name or position is not found, the appropriate message is displayed and the user
is asked to enter a new player/position.

4.

If player name or position is found, the player is added
to the current workout and the
‘Player Added’ message is displayed.

3.2.1.3

Functional Requirements

For a successful player addition to a workout, the player must already be in the database and
assigned a certain position on a valid sports team. Also, proper mess
aging and procedures
should be implemented if an invalid entry is issued.

3.2.2

Add Exercise

3.2.2.1

Description

This function will add an exercise to the current routine. All exercises are stored in a
database and can be sorted by specific muscle group. Only coaches
and/or athletic trainers
are allowed permission to add or remove exercises from a routine.

Software

Requirements Specification for Strength Training Application

Page
9


3.2.2.2

Stimulus/Response Sequences

1.

Coach or athletic trainer enters exercise name or selects exercise from muscle group
listings.

2.

Database is searched to validate exercise
name.

3.

If exercise does not exist, the ‘Exercise Not Found’ message is displayed and the user is
asked to enter another exercise.

4.

If the entered exercise is found, the ‘<Exercise_Name> Added’ message is displayed and
that exercise is added to the routine.

3.2.2.3

F
unctional Requirements

For a successful exercise addition, the exercise must be in the database and preferably listed
under a certain muscle group. Also, proper messaging and procedures should be
implemented if an invalid entry is issued.

3.2.3

Add Routine

3.2.3.1

Desc
ription

This function will add a routine to the current schedule. All routines are stored in the
database and include the following attributes: repetitions, sets, and percentage of maximum.
Only coaches and/or athletic trainers have permission to add or
remove routines from a
schedule.

3.2.3.2

Stimulus/Response Sequences

1.

Coach or athletic trainer enters routine name.

2.

Database is searched to validate routine name.

3.

If routine does not exist, the ‘Routine Not Found’ message is displayed and the user is
asked to ente
r another routine.

4.

If the entered exercise is found, the ‘<Routine_Name> Added’ message is displayed and
that routine is added to the current schedule.

3.2.3.3

Functional Requirements

For a successful routine addition, the routine name must be in the database. Al
so, proper
messaging and procedures should be implemented if an invalid entry is issued.

3.2.4

Add Schedule

3.2.4.1

Description

This function will add a schedule to the current workout. All schedules are stored in a
database and organized by name. Only coaches and/or
athletic trainers are given permission
to add or remove schedules from a workout.

3.2.4.2

Stimulus/Response Sequences

1.

Coach or athletic trainer enters schedule name.

2.

Database is searched to validate the entered schedule name.

3.

If the schedule name does not exist,
the ‘Schedule Not Found’ message will be displayed
and the user will be asked to enter a new schedule.

4.

If the schedule name does exist, the ‘<Schedule_Name> Added’ message will be
displayed and that schedule will be added to the current workout.

5.

If an unwa
nted schedule needs to be removed from the workout, the user may simply
select that schedule and ‘delete’ it from the workout.

Software

Requirements Specification for Strength Training Application

Page
10


3.2.4.3

Functional Requirements

For a successful schedule addition, the schedule name must be in the database and valid.
Also, proper me
ssaging and procedures should be implemented if an invalid entry is issued.

3.2.5

Print Workout

3.2.5.1

Description

This function will print the current workout. All workouts are stored in the database and can
be organized by player name or player position. All users
(coaches/athletic trainers/players)
have permission to print workouts.

3.2.5.2

Stimulus/Response Sequences

1.

Player, coach, or athletic trainer has a workout document open and selects ‘Print’

2.

If document prints successfully, the ‘Print Successful’ message is display
ed and the user
is returned to viewing the workout document.

3.

If the document fails to print, the ‘Print Failed’ message is displayed and the user is
returned to viewing the workout document.

3.2.5.3

Functional Requirements

For a successful workout print, the user
must have a valid workout document loaded from
the database. Proper messages should be displayed upon a successful or unsuccessful print
command.

3.3

Data
Functions

3.3.1

Add Player

3.3.1.1

Description and Priority

This function is implemented by Coach/Trainer user groups
as a way to add players to the
system. In this case, the player user is not set up with any access permissions and is not
allowed/granted permission to any part of the system. It is a means for coaches/trainers to set
up workouts for players who they manag
e, in cases were there is no interaction between the
player user and the system.

3.3.1.2

Stimulus/Response Sequences

1.

Prompt user player information.

2.

Search database duplicate player.

3.

Print error message if player already exists.

4.

Add the player to the database if n
ew player.

5.

Display successful message to user.

3.3.1.3

Functional Requirements

None




Software

Requirements Specification for Strength Training Application

Page
11


3.3.2

Remove Player

3.3.2.1

Description

This function is used by Coaches/Trainers to remove players from the system. In this
situation, the player can only be removed by the user if the playe
r themselves are not users of
the system. If the player has been added to the system by an administrator with user
privileges, then they can only be removed by an administrator.

3.3.2.2

Stimulus/Response Sequences

1. Prompt user player name.

2. Search database f
or player.

3. If player not found, display error message.

4. If player found and has user permissions, display error message.

5. Remove player from the system.

3.3.2.3

Functional Requirements

None

3.3.3

View Player

3.3.3.1

Description

This function is used by Coach/Trainer u
sers to view player statistics. In this instance, the
user is allowed to access a player file even if the player has user permissions.

3.3.3.2

Stimulus/Response Sequences

1. Prompt user for player name.

2. Search database for name.

3. If player name not found,
display error message.

4. Display player profile to the user.



3.3.3.3

Functional Requirements

None

3.3.4

Edit Player

3.3.4.1

Description

This function will allow Coach/Trainer users to edit a players profile as the player progresses
through the system.

3.3.4.2

Stimulus/Response Seque
nces

1. Prompt user for player name.

2. Search database for player profile.

3. If player not found in database, display error message to user.

4. If invalid parameters entered, display error message to user.

5. Update player profile in the database.

6
. Display successful message to user

Software

Requirements Specification for Strength Training Application

Page
12


3.3.4.3

Functional Requirements

None

3.3.5

Add Exercise

3.3.5.1

Description

This function is implemented by Coach/Trainer user groups as a way to add an exercise to
the system. In this case, the user must have privileges to add exercises to

the database.

On
submit the database will be updated.

3.3.5.2

Stimulus/Response Sequences

1.

Prompt user for exercise information.

2.

Search database duplicate exercise.

3.

Print error message if already exists.

4.

Add the exercise to the database if new exercise.

5.

Display su
ccessful message to user.

3.3.5.3

Functional Requirements

None

3.3.6

Remove Exercise

3.3.6.1

Description

This function is used by Coaches/Trainers to remove exercises from the system. In this
situation, the exercise can only be removed by the user if the user has appropriate pr
ivileges.
If the exercise has been added to the system by an administrator with user privileges, then
they can only be removed by an administrator.

3.3.6.2

Stimulus/Response Sequences

1. Prompt user exercise name.

2. Search database for exercise.

3. If exercise

not found, display error message.

4. If exercise found and has user permissions, display error message.

5. Remove exercise from the system.

3.3.6.3

Functional Requirements

None

3.3.7

View Exercise

3.3.7.1

Description

This function is used by Coach/Trainer users to view exerc
ise lists. In this instance, the user
is allowed to access an exercise file even if the exercise has user permissions.

3.3.7.2

Stimulus/Response Sequences

1. Prompt user for exercise name.

2. Search database for name.

3. If exercise name not found, display erro
r message.

Software

Requirements Specification for Strength Training Application

Page
13


4. Display exercise profile to the user.

3.3.7.3

Functional Requirements

None

3.3.8

Edit Exercise

3.3.8.1

Description

This function will allow Coach/Trainer users to edit an exercise. On submit the database will
be updated.

3.3.8.2

Stimulus/Response Sequences

1. Prompt use
r for exercise name.

2. Search database for exercise profile.

3. If exercise not found in database, display error message to user.

4. If invalid parameters entered, display error message to user.

5. Update exercise profile in the database.

6. Display
successful message to user

3.3.8.3

Functional Requirements

None

3.3.9

Add Routine

3.3.9.1

Description

This function is implemented by Coach/Trainer user groups as a way to add routine to the
system. In order to add a routine to the database, the logged in user must have privile
ges to
do so. On submit the routine will be added to the system.

3.3.9.2

Stimulus/Response Sequences

1.

Prompt user routine information.

2.

Search database duplicate routine.

3.

Print error message if routine already exists.

4.

Add the routine to the database if new routine.

5.

Display successful message to user.

3.3.9.3

Functional Requirements

None

3.3.10

Remove Routine

3.3.10.1

Description

This function is used by Coaches/Trainers to remove routines from the system. In this
situation, the routine can only be removed by the by an administrator with pri
vileges to do
so.

3.3.10.2

Stimulus/Response Sequences

1. Prompt user routine id.

Software

Requirements Specification for Strength Training Application

Page
14


2. Remove routine from the system.

3.3.10.3

Functional Requirements

None

3.3.11

View Routine

3.3.11.1

Description

This function is used by Coach/Trainer users to view routine.

3.3.11.2

Stimulus/Response Sequences

1.

Display routines to the user.

3.3.11.3

Functional Requirements

None

3.3.12

Edit Routine

3.3.12.1

Description

This function will allow Coach/Trainer users to edit a routine. User must have appropriate
privileges
.

3.3.12.2

Stimulus/Response Sequences

1. Prompt user for routine id.

2. Se
arch database for routine profile.

3. If invalid parameters entered, display error message to user.

4. Update routine profile in the database.

5. Display successful message to user

3.3.12.3

Functional Requirements

None











Software

Requirements Specification for Strength Training Application

Page
15


4.

External Interface Requirements

4.1

U
ser Interfaces

System users will interface with the application via the keyboard.

To access the application,
they will have to enter their username and password. Once a positive match has been found
by the application, the user will be granted access to t
he application. Once the user is using
the application, interaction will be done via the keyboard as well as the mouse.

4.2

Hardware Interfaces

The system will use current system drivers for the mouse, keypad and printer. The
application will not be concerned
with how the operating system interfaces with these
components, it is just required that they exist and are functional to use all the features of the
application.

4.3

Software Interfaces

The application will store all data in a database, which the application

will have to access to
perform the desired user
-
requested function.





















Software

Requirements Specification for Strength Training Application

Page
16


5.

Validation Criteria

5.1

General
Functions

5.1.1

Login

This function is a general login function for all users. The user will be prompted for his
biometric information via the f
ingerprint scanner, which will then be validated from the
contents of the user template database. The login function will determine the permissions for
user type.


Description of
input

Username

Password

Expected Results

Valid Username,
Valid Biometric

Val
id

Valid

Successfully logged in.

Valid Username,

Invalid Biometric

Valid

Invalid

Error: Invalid
Username/Password Pair.

Invalid Username,

Valid Biometric

Invalid

Valid

Error: Invalid
Username/Password Pair.

Invalid Username,

Invalid Biometric

Invalid

In
valid

Error: Invalid
Username/Password Pair.



5.1.2

Logout

This function is a general log out function for all users. When the user logs out, all
information collected during the session will be saved and the user information will no
longer be accessible with
out a successful re
-
login. Also, the logout function will
automatically be executed if the user is idle over a period of time.


Description of input

Logout Button

Expected Results

Logout Button Valid

Valid

You have been successfully
logged out.


5.1.3

Add New

User

This function will register new users into the system. The administrator will input personal
information, user type, and a login name. The user will them be required to create a
biometric fingerprint template. On submit, the function will check for

duplicate entries in
the database and insert the new user into the specific table in database. Only administrators
will have permissions to add users (Coach/Trainer or Player) to the system

Description
of Input

Username

Biometric
Template

First

Name

Last

Name

User

Type

User

Class

Positio
n

Height

Weight

Expected

Results

All Data
Valid

Valid

Valid

Valid

Valid

Valid

Valid

Valid

Valid

Valid

New
User
Added

Invalid
Username

Inv
alid

Valid

Valid

Valid

Valid

Valid

Valid

Valid

Valid

Error
Message

Software

Requirements Specification for Strength Training Application

Page
17


Invalid

Biomet
ric
Template

Valid

Inv
alid

Valid

Valid

Valid

Valid

Valid

Valid

Valid

Error
Message

Invalid
First Name

Valid

Valid

Inv
alid

Valid

Valid

Valid

Valid

Valid

Valid

Error
Message

Invalid
Last Name

Valid

Valid

Valid

Inv
alid

Valid

Valid

Valid

Valid

Valid

Error
Me
ssage

Invalid
User Type

Valid

Valid

Valid

Valid

Inv
alid

Valid

Valid

Valid

Valid

Error
Message

Invalid
User Class

Valid

Valid

Valid

Valid

Valid

Inv
alid

Valid

Valid

Valid

Error
Message

Invalid
Position

Valid

Valid

Valid

Valid

Valid

Valid

Inv
alid

Valid

Val
id

Error
Message

Invalid
Height

Valid

Valid

Valid

Valid

Valid

Valid

Valid

Inv
alid

Valid

Error
Message

Invalid
Weight

Valid

Valid

Valid

Valid

Valid

Valid

Valid

Valid

Inv
alid

Error
Message












5.1.4

Remove User

This function will remove a user from the d
atabase, as well as all of the user’s information.
The function will accept input from the administrator and locate the user to remove in the
database. Only administrators will have permissions to remove users from the system.


Description of Input

Usern
ame

First Name

Last Name

Expected Results

Valid Username,Valid
First Name, Valid Last
Name

Valid

Valid

Valid

User Successfully
Removed from the
System

Valid Username,
Invalid First Name,
Valid Last Name

Valid

Invalid

Valid

User Not Found
Error Message

V
alid Username,Valid
First Name, Invalid
Last Name

Valid

Valid

Invalid

User Not Found
Error Message

Valid Username,
Invalid First Name,
Invalid Last Name

Valid

Invalid

Invalid

User Not Found
Error Message

Invalid Username,
Invalid First Name,
Valid Last N
ame

Invalid

Invalid

Valid

User Not Found
Error Message

Invalid
Username,Valid First
Invalid

Valid

Invalid

User Not Found
Error Message

Software

Requirements Specification for Strength Training Application

Page
18


Name, Invalid Last
Name

Invalid
Username,Valid First
Name, Valid Last
Name

Invalid

Valid

Valid

User Not Found
Error Mes
sage

Invalid Username,
Invalid First Name,
Invalid Last Name

Invalid

Invalid

Invalid

User Not Found
Error Message


















5.1.5

View Users

This function is an administrator function to view all users of the system. It will list all users
that are cur
rently enrolled in the system that match the defined search criteria.


Description of Input

User Class

User Type

Position

Expected Results

Valid User Class,Valid
User Type, Valid
Position

Valid

Valid

Valid

User Records
Displayed

Valid User
Class,Invalid
User
Type, Valid Position

Valid

Invalid

Valid

Unable to locate
matching records
Error Message

Valid User Class,Valid
User Type, Invalid
Position

Valid

Valid

Invalid

Unable to locate
matching records
Error Message

Valid User Class,
Invalid User Type,
Inva
lid Position

Valid

Invalid

Invalid

Unable to locate
matching records
Error Message

Invalid User Class,
Invalid User Type,
Valid Position

Invalid

Invalid

Valid

Unable to locate
matching records
Error Message

Invalid User
Class,Valid User Type,
Invalid Pos
ition

Invalid

Valid

Invalid

Unable to locate
matching records
Error Message

Invalid User
Class,Valid User Type,
Invalid

Valid

Valid

Unable to locate
matching records
Software

Requirements Specification for Strength Training Application

Page
19


Valid Position

Error Message

Invalid User Class,
Invalid User Type,
Invalid Position

Inv
alid

Invalid

Invalid

Unable to locate
matching records
Error Message


5.1.6

Edit Users

This function is an administrative function for editing user information. The function is
used to update user information on file as they progress through the system.


Descr
iption of input

Username

Expected Results

Valid Username

Valid

Record Opened for Editing

Invalid Username

Invalid

Error: Record does not exist.









5.2

Create Workout Functions

5.2.1

Add Player

This function will add a player to the current workout. Included

with the player name will
be the following attributes: height, weight, sport, position. Only coaches and/or athletic
trainers will have permission to add or remove players from a workout.


Description of
input

Player Name

Player Position

Expected Results

Valid Player
Name, Valid
Position

Valid

Valid

Player added to workout

Valid Player
Name, Invalid
Position

Valid

Invalid

Error: Invalid Player
Name/Position Pair.

Invalid Player
Name, Valid
Position

Invalid

Valid

Error: Invalid Player Name

Invalid Play
er
Name, Invalid
Position

Invalid

Invalid

Error: Invalid Player Name


5.2.2

Add Schedule

Software

Requirements Specification for Strength Training Application

Page
20


This function will add a schedule to the current workout. All schedules are stored in a
database and organized by name. Only coaches and/or athletic trainers are given pe
rmission
to add or remove schedules from a workout.


Description of input

Schedule Id

Expected Results

Valid Schedule Id

Valid

Schedule added to workout

Invalid Schedule Id

Invalid

Error: Invalid schedule name


5.2.3

Add Routine

This function will add a rout
ine to the current schedule. All routines are stored in the
database and include the following attributes: repetitions, sets, and percentage of maximum.
Only coaches and/or athletic trainers have permission to add or remove routines from a
schedule.


Des
cription of input

Routine Id

Expected Results

Valid Routine Id

Valid

Routine added to schedule

Invalid Routine ID

Invalid

Error: Invalid routine name






5.2.4

Add Exercise

This function will add an exercise to the current routine. All exercises are stored
in a
database and can be sorted by specific muscle group. Only coaches and/or athletic trainers
are allowed permission to add or remove exercises from a routine.


Description of
input

Exercise
Name

Muscle Group

Expected Results

Valid Exercise
Name, Valid

Muscle Group

Valid

Valid

Exercise Added to Routine

Invalid Exercise
Name, Valid
Muscle Group

Invalid

Valid

Error: Exercise name not in
database

Valid Exercise
Name, Invalid
Muscle Group

Valid

Invalid

Error: Invalid exercise
name/muscle group pair

Inval
id Exercise
Name, Invalid
Muscle Group

Invalid

Invalid

Error: Exercise name not in
database


5.2.5

Print Workout

This function will print the current workout. All workouts are stored in the database and can
be organized by player name or player position. All
users (coaches/athletic trainers/players)
have permission to print workouts.


Software

Requirements Specification for Strength Training Application

Page
21


Description of input

Print Button

Expected Results

Valid Print

Valid

Print Successful

Invalid Print

Invalid

Error: Print Failed


















5.3

Data Functions

5.3.1

Add Player

This

function is implemented by Coach/Trainer user groups as a way to add players to the
system. In this case, the player user is not set up with any access permissions and is not
allowed/granted permission to any part of the system. It is a means for coaches/
trainers to
set up workouts for players who they manage, in cases were there is no interaction between
the player user and the system.


Description
of Input

First Name

Last Name

Position

Height

Weight

Expected
Results

All Data
Valid

Valid

Valid

Valid

Vali
d

Valid

New Player
Added

Duplicate
First/Last
Name Pair

Duplicate

Duplicate

Valid

Valid

Valid

Duplicate Player
Error Message

Invalid
Position

Valid

Valid

Inv
alid

Valid

Valid

Error Message

Invalid
Height

Valid

Valid

Valid

Inv
alid

Valid

Error Message

Inv
alid
Weight

Valid

Valid

Valid

Valid

Inv
alid

Error Message


5.3.2

Remove Player

This function is used by Coaches/Trainers to remove players from the system. In this
situation, the player can only be removed by the user if the player themselves are not users
Software

Requirements Specification for Strength Training Application

Page
22


of t
he system. If the player has been added to the system by an administrator with user
privileges, then they can only be removed by an administrator.


Description of
input

First Name

Last Name

Expected Results

Valid First Name,
Valid Last Name

Valid

Valid

Pl
ayer Removed from Database

Invalid
Combination

Invalid

Invalid

Error: Player Not in Database





5.3.3

View Player

This function is used by Coach/Trainer users to view player statistics. In this instance, the
user is allowed to access a player file even if the

player has user permissions.


Description of
input

First Name

Last Name

Expected Results

Valid First Name,
Valid Last Name

Valid

Valid

Player Removed from Database

Invalid
Combination

Invalid

Invalid

Error: Player Not in Database


5.3.4

Edit Player

This func
tion will allow Coach/Trainer users to edit a players profile as the player
progresses through the system.


Description
of Input

First Name

Last Name

User
Class

Position

Height

Weight

Expected
Results

All Data
Valid

Valid

Valid

Valid

Valid

Valid

Valid

Ne
w Player
Added

Invalid
First/Last
Name Pair

Invalid

Invalid

Valid

Valid

Valid

Valid

Player Not in
Database Error
Message

Invalid
User Class

Valid

Valid

Invalid

Valid

Valid

Valid

Error Message

Invalid
Position

Valid

Valid

Valid

Inv
alid

Valid

Valid

Error

Message

Invalid
Height

Valid

Valid

Valid

Valid

Inv
alid

Valid

Error Message

Invalid
Weight

Valid

Valid

Valid

Valid

Valid

Inv
alid

Error Message


5.3.5

Add Exercise

Software

Requirements Specification for Strength Training Application

Page
23


This function is implemented by Coach/Trainer user groups as a way to add an exercise to
the sys
tem. In this case, the user must have privileges to add exercises to the database.

On
submit the database will be updated.


Description
of Input

Exercise
Name

Muscle
Group

Type

Expected
Results

All Data
Valid

Valid

Valid

Valid

New Exercise
Added

Invalid
Name

Valid

Valid

Inv
alid

Error Message

Invalid
Muscle
Group

Valid

Valid

Valid

Error Message

Invalid
Type

Valid

Valid

Valid

Error Message









5.3.6

Remove Exercise

This function is used by Coaches/Trainers to remove exercises from the system. In this
situa
tion, the exercise can only be removed by the user if the user has appropriate privileges.
If the exercise has been added to the system by an administrator with user privileges, then
they can only be removed by an administrator


Description of
input

Exerci
se
Name

Expected Results

Valid Name

Valid

Exercise Removed from
Database

Invalid
Combination

Invalid

Error: Exercise Not in Database


5.3.7

View Exercise

This function is used by Coach/Trainer users to view exercise lists. In this instance, the
user is allowe
d to access an exercise file even if the exercise has user permissions.


Description
of Input

Exercise
Name

Muscle
Group

Type

Expected
Results

All Data
Valid

Valid

Valid

Valid

Exercise
displayed

Invalid
Name

Valid

Valid

Inv
alid

Error Message

Invalid
Mus
cle
Group

Valid

Valid

Valid

Error Message

Software

Requirements Specification for Strength Training Application

Page
24


Invalid
Type

Valid

Valid

Valid

Error Message



5.3.8

Edit Exercise

This function will allow Coach/Trainer users to edit an exercise. On submit the database
will be updated.


Description
of Input

Exercise
Name

Muscle
Gr
oup

Type

Expected
Results

All Data
Valid

Valid

Valid

Valid

Exercise
displayed

Invalid
Name

Valid

Valid

Inv
alid

Error Message

Invalid
Muscle
Group

Valid

Valid

Valid

Error Message

Invalid
Type

Valid

Valid

Valid

Error Message




5.3.9

Add Routine

This function

is implemented by Coach/Trainer user groups as a way to add routine to the
system. In order to add a routine to the database, the logged in user must have privileges to
do so. On submit the routine will be added to the system.


Description
of Input

Sets

R
epetitions

Percentage

Expected
Results

All Data
Valid

Valid

Valid

Valid

New Routine
Added

Invalid
Sets

Valid

Valid

Inv
alid

Error Message

Invalid
Repetitions

Valid

Valid

Valid

Error Message

Invalid
Percentage

Valid

Valid

Valid

Error Message


5.3.10

Remove Rou
tine

This function is used by Coaches/Trainers to remove routines from the system. In this
situation, the routine can only be removed by the by an administrator with privileges to do
so. All routines returned to the user so an invalid set id is not able t
o be inputted.


5.3.11

View Routine


Software

Requirements Specification for Strength Training Application

Page
25


This function is used by Coach/Trainer users to view routine. There is no user input for
this function. When the function is invoked, routines are displayed to the screen.


5.3.12

Edit Routine

This function will allow Coach/Trainer
users to edit a routine. User must have appropriate
privileges.


Description
of Input

Sets

Repetitions

Percentage

Expected
Results

All Data
Valid

Valid

Valid

Valid

New Routine
Added

Invalid
Sets

Valid

Valid

Inv
alid

Error Message

Invalid
Repetitions

Va
lid

Valid

Valid

Error Message

Invalid
Percentage

Valid

Valid

Valid

Error Message

































Software

Requirements Specification for Strength Training Application

Page
26


Appendix A
: Analysis Models

System Design



















































Software

Requirements Specification for Strength Training Application

Page
27



System Use Case





















































Software

Requirements Specification for Strength Training Application

Page
28




System Access Use Case




















































Software

Requirements Specification for Strength Training Application

Page
29



Create Workout Use Case





















































Software

Requirements Specification for Strength Training Application

Page
30


Data Use Case






















































Software

Requirements Specification for Strength Training Application

Page
31




Appendix
B
: Issues List

None