Strength Req

Embed Size (px)

Citation preview

  • 8/15/2019 Strength Req

    1/33

    Software RequirementsSpecification

    for 

    Strength Training Application

     

    B2D Solutions

    Eric Berg

    Josh Dodd

    Februar !"# 2$$%

  • 8/15/2019 Strength Req

    2/33

    Software  Requirements Specification for Strength Training Application Page ii

    Table of Contents

    Table of Contents...........................................................................................................................ii

    Revision History............................................................................................................................iii

    1. Introduction..............................................................................................................................11.1 Purpose.......................................................................................................................................11.2 Software Context........................................................................................................................11.3 Project Scope..............................................................................................................................11.4 References..................................................................................................................................1

    2. Overall Description..................................................................................................................32.1 Product Perspective....................................................................................................................32.2 User Classes and Characteristics................................................................................................3

    2.2.1 Administration....................................................................................................................... 32.2.2 Coaches/Trainers....................................................................................................................42.2.3 Players....................................................................................................................................4

    2.3 Operating Environment..............................................................................................................42.4 Design and Implementation Constraints.....................................................................................4

    2.4.1 Economic...............................................................................................................................42.4.2 Ethical and Legal...................................................................................................................42.4.3 Health and Safety...................................................................................................................42.4.4 Manufacturability...................................................................................................................42.4.5 Political.................................................................................................................................. 42.4.6 Social..................................................................................................................................... 52.4.7 Sustainability..........................................................................................................................5

    2.5 User Documentation...................................................................................................................5

    3. Product Functions....................................................................................................................63.1 General Functions.......................................................................................................................6

    3.1.1 Login......................................................................................................................................63.1.2 Add New User........................................................................................................................63.1.3 Remove User..........................................................................................................................7

    3.1.4 Logout....................................................................................................................................73.1.5 View Users.............................................................................................................................73.1.6 Edit Users...............................................................................................................................8

    3.2 Create Workout Functions..........................................................................................................83.2.1 Add Player............................................................................................................................. 83.2.2 Add Exercise..........................................................................................................................83.2.3 Add Routine...........................................................................................................................93.2.4 Add Schedule.........................................................................................................................93.2.5 Print Workout.......................................................................................................................10

    3.3 Data Functions..........................................................................................................................103.3.1 Add Player........................................................................................................................... 103.3.2 Remove Player.................................................................................................................... .113.3.3 View Player..........................................................................................................................11

    3.3.4 Edit Player............................................................................................................................113.3.5 Add Exercise........................................................................................................................123.3.6 Remove Exercise..................................................................................................................123.3.7 View Exercise..................................................................................................................... .123.3.8 Edit Exercise........................................................................................................................ 133.3.9 Add Routine.........................................................................................................................133.3.10 Remove Routine...................................................................................................................133.3.11 View Routine.................................................................................................................. .....143.3.12 Edit Routine........................................................................................................................ .14

  • 8/15/2019 Strength Req

    3/33

    Software  Requirements Specification for Strength Training Application Page iii

    4. External Interface Requirements.........................................................................................154.1 User Interfaces..........................................................................................................................154.2 Hardware Interfaces..................................................................................................................154.3 Software Interfaces...................................................................................................................15

    5. Validation Criteria.................................................................................................................165.1 General Functions.....................................................................................................................16

    5.1.1 Login....................................................................................................................................165.1.2 Logout..................................................................................................................................165.1.3 Add New User......................................................................................................................165.1.4 Remove User........................................................................................................................175.1.5 View Users...........................................................................................................................185.1.6 Edit Users............................................................................................................................. 19

    5.2 Create Workout Functions........................................................................................................195.2.1 Add Player........................................................................................................................... 195.2.2 Add Schedule....................................................................................................................... 195.2.3 Add Routine.........................................................................................................................205.2.4 Add Exercise........................................................................................................................205.2.5 Print Workout.......................................................................................................................20

    5.3 Data Functions..........................................................................................................................21

    5.3.1 Add Player........................................................................................................................... 215.3.2 Remove Player.................................................................................................................... .215.3.3 View Player..........................................................................................................................225.3.4 Edit Player............................................................................................................................225.3.5 Add Exercise........................................................................................................................225.3.6 Remove Exercise..................................................................................................................235.3.7 View Exercise..................................................................................................................... .235.3.8 Edit Exercise........................................................................................................................ 245.3.9 Add Routine.........................................................................................................................245.3.10 Remove Routine...................................................................................................................245.3.11 View Routine.................................................................................................................. .....245.3.12 Edit Routine........................................................................................................................ .25

    Appendix A: Analysis Models.....................................................................................................26

    Appendix B: Issues List...............................................................................................................27

    Revision History

    Name Date Reason For Changes Version

    Eric Berg 2-08-08 Document Initially Created 0.1

    Josh Dodd/Eric Berg 2-14-08 Final Document 1.0

  • 8/15/2019 Strength Req

    4/33

    Software  Requirements Specification for Strength Training Application Page iv

    1. Introduction

    1.1 Purpose

    The objective is to build a software system that is user friendly and accurately generates andstores data that assists strength coaches in managing their strength program. The softwaresystem should be very customizable to allow strength coaches maximum freedom to theirspecific programs. The system should generate workout schedules for individual athletesand provide an analysis of each individual athlete’s performance. The system shouldlogically organize data, and dynamically update data that is linked, as set up by theindividual user. In addition, a stand-alone touch screen interface should be implementedthat has restricted access to be used by athletes, trainers, or other allowed users that providesindividual performance and data analysis. This interface will use biometric authentication toverify user identity.

    1.2 Software Context

    This application is intended to be used by strength trainers and athletes of all levels. It willprovide the ability to track individual performance and historical milestones, test the currentlevel of performance of the athlete, as well as project and set-up future training routinesbased on the 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 replace theexisting program applications and provide the end user with a user friendly application toaid 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, strength training has become morecomplex in recent times. With the increased amount of knowledge of anatomy andphysiology of the human body comes an increased amount of data that needs to be storedand analyzed for each individual athlete. In order to effectively train athletes, an efficientmethod of tracking and managing this data is needed. Currently the West VirginiaUniversity Strength and Conditioning Staff use outdated software to manage all athletes thatthey 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 forboth strength coaches and athletes. This new system should provide many basic functionssuch as: a user-friendly interface, useful data analysis and organization, and usercustomization. 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.[3] http://homepages.dcc.ufmg.br/~rodolfo/es-1-03/IEEE-Std-830-1998.pdf 

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

  • 8/15/2019 Strength Req

    5/33

    Software  Requirements Specification for Strength Training Application Page v

    [4] Pressman, Roger S. Software Engineering, A Practitioner’s Approach. Boston:McGraw-Hill Custom Publishing, 2005.

    2. Overall Description

    2.1 Product Perspective

    The history of strength training can be traced back to the times of the Ancient Greeks, whenathletes would do such things as carry calves or other dumbbell like weights in order to

  • 8/15/2019 Strength Req

    6/33

    Software  Requirements Specification for Strength Training Application Page vi

    increase strength. With the advancements of today’s technology, strength training hasbecome 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 instrength, endurance, size of a group of muscles. In strength training terms, an exercise is amotion 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 of an exercise. Tempo refers to the amount of time betweenreps and sets and exercise.

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

    Software systems in the past have failed to provide an efficient program that consistentlyfollows this basic lifecycle of a workout routine. The most successful software developed inthe 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 hasnot offered any software updates in recent years.With advances in recent advances in research and technology, strength training has becomemore complex in recent times. With the increased amount of knowledge of anatomy andphysiology of the human body comes an increased amount of data that needs to be storedand analyzed for each individual athlete. In order to effectively train athletes, an efficientmethod of tracking and managing this data is needed. Currently the West VirginiaUniversity Strength and Conditioning Staff use outdated software to manage all athletes thatthey 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 forboth strength coaches and athletes.

    2.2 User Classes and Characteristics

    The users of the system are:

    • Administration

    • Coaches/Trainers

    • Players

    2.2.1 Administration

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

    2.2.2 Coaches/Trainers

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

  • 8/15/2019 Strength Req

    7/33

    Software  Requirements Specification for Strength Training Application Page vii

    2.2.3 Players

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

    2.3 Operating Environment

    This application will be designed to run on a Windows XP platform. The system shouldprovide a minimum of 256 Kb of RAM. The system should also provide a DVD-R drive forcreating backups of player information. The system should also provide a printer to allowtrainers 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

    • The 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.

    • Components for the system should be readily available from national distributors.

    2.4.5 Political

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

    2.4.6 Social

  • 8/15/2019 Strength Req

    8/33

    Software  Requirements Specification for Strength Training Application Page viii

    • The user interface should provide visual menus to the user.

    • All text and images in the user 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 theadministrators and coaches/trainers access levels. It is understood that the system interfaceand use training of the athletes will be provided by the coaches and trainer users.

    3. Product Functions

    3.1 General Functions

    3.1.1 Login

  • 8/15/2019 Strength Req

    9/33

    Software  Requirements Specification for Strength Training Application Page ix

    3.1.1.1 Description

    This function is a general login function for all users. The user will be prompted for hisbiometric information via the fingerprint scanner, which will then be validated from thecontents of the user template database. The login function will determine the permissions foruser type.

    3.1.1.2 Stimulus/Response Sequences1. User provides user name and password2. User name and password are paired and verified3. If user name/password is not verified, event is logged and an error message is displayed4. 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 pairingthat matches corresponding database 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 personalinformation, user type, and a login name. The user will them be required to create abiometric fingerprint template. On submit, the function will check for duplicate entries inthe database and insert the new user into the specific table in database. Only administratorswill have permissions to add users (Coach/Trainer or Player) to the system.

    3.1.2.2 Stimulus/Response Sequences

    1. Administrator enters all fields.2. Username and biometric template are paired3. If username is not verified an error message is displayed4. All other required information is verified.

    5. If information is not verified an error message is displayed6. 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 databaseentry, as well as other information that is validated.

    3.1.3 Remove User

    3.1.3.1 Description

    This function will remove 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 thedatabase. Only administrators will have permissions to remove users from the system.

  • 8/15/2019 Strength Req

    10/33

    Software  Requirements Specification for Strength Training Application Page x

    3.1.3.2 Stimulus/Response Sequences

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

    2. Database is searched for inputted values.3. If user is found, administrator is prompted to remove.4. If remove = true, user is removed, 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 matchingdatabase entry, as well as an inputted remove value of true.

    3.1.4 Logout

    3.1.4.1 Description

    This function is a general log out function for all users. When the user logs out, allinformation collected during the session will be saved and the user information will no

    longer be accessible without a successful re-login. Also, the logout function willautomatically 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 database3. 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 Description

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

    3.1.5.2 Stimulus/Response Sequences

    1. User indicates view.2. User enters the desired search criteria3. 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.

    3.1.6 Edit Users

    3.1.6.1 Description

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

  • 8/15/2019 Strength Req

    11/33

    Software  Requirements Specification for Strength Training Application Page xi

    3.1.6.2 Stimulus/Response Sequences

    1. User indicates edit record.2. User enters the username of the record in which to edit3. 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 the 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 the player name willbe the following attributes: height, weight, sport, position. Only coaches and/or athletictrainers 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 position3. 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 andassigned a certain position on a valid sports team. Also, proper messaging and proceduresshould 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 adatabase and can be sorted by specific muscle group. Only coaches and/or athletic trainersare allowed permission to add or remove exercises from a routine.

    3.2.2.2 Stimulus/Response Sequences

    1. Coach or athletic trainer enters exercise name or selects exercise from muscle grouplistings.

    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 ‘ Added’ message is displayed

    and that exercise is added to the routine.

  • 8/15/2019 Strength Req

    12/33

    Software  Requirements Specification for Strength Training Application Page xii

    3.2.2.3 Functional Requirements

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

    3.2.3 Add Routine

    3.2.3.1 Description

    This function will add a routine to the current schedule. All routines are stored in thedatabase 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 aschedule.

    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 enter another routine.4. If the entered exercise is found, the ‘ Added’ message is displayed andthat 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. Also, propermessaging 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 permissionto 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 ‘ Added’ message will be

    displayed and that schedule will be added to the current workout.5. If an unwanted schedule needs to be removed from the workout, the user may simply

    select that schedule and ‘delete’ it from the workout.

    3.2.4.3 Functional Requirements

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

    3.2.5 Print Workout

  • 8/15/2019 Strength Req

    13/33

    Software  Requirements Specification for Strength Training Application Page xiii

    3.2.5.1 Description

    This function will print the current workout. All workouts are stored in the database and canbe 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 displayed 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 thesystem. In this case, the player user is not set up with any access permissions and is notallowed/granted permission to any part of the system. It is a means for coaches/trainers toset up workouts for players who they manage, in cases were there is no interaction betweenthe 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 new player.

    5. Display successful message to user.

    3.3.1.3 Functional Requirements

    None

    3.3.2 Remove Player

    3.3.2.1 Description

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

  • 8/15/2019 Strength Req

    14/33

    Software  Requirements Specification for Strength Training Application Page xiv

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

    3.3.2.2 Stimulus/Response Sequences

    1. Prompt user player name.2. Search database for 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 users 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 playerprogresses through the system.

    3.3.4.2 Stimulus/Response Sequences

    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

    3.3.4.3 Functional Requirements

    None

    3.3.5 Add Exercise

  • 8/15/2019 Strength Req

    15/33

    Software  Requirements Specification for Strength Training Application Page xv

    3.3.5.1 Description

    This function is implemented by Coach/Trainer user groups as a way to add an exercise tothe system. In this case, the user must have privileges to add exercises to the database. Onsubmit 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 successful 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 thissituation, 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, thenthey 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 exercise lists. In this instance, the useris 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 error message.4. Display exercise profile to the user.

    3.3.7.3 Functional Requirements

    None

    3.3.8 Edit Exercise

  • 8/15/2019 Strength Req

    16/33

    Software  Requirements Specification for Strength Training Application Page xvi

    3.3..1 Description

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

    3.3..2 Stimulus/Response Sequences

    1. Prompt user 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..3 Functional Requirements

    None

    3.3.9 Add Routine

    3.3.!.1 Description

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

    3.3.!.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.!.3 Functional RequirementsNone

    3.3.10 Remove Routine

    3.3.1".1 Description

    This function is used by Coaches/Trainers to remove routines from the system. In thissituation, the routine can only be removed by the by an administrator with privileges to doso.

    3.3.1".2 Stimulus/Response Sequences

    1. Prompt user routine id.2. Remove routine from the system.

    3.3.1".3 Functional Requirements

    None

    3.3.11 View Routine

  • 8/15/2019 Strength Req

    17/33

    Software  Requirements Specification for Strength Training Application Page xvii

    3.3.11.1Description

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

    3.3.11.2Stimulus/Response Sequences

    1. Display routines to the user.

    3.3.11.3Functional RequirementsNone

    3.3.12 Edit Routine

    3.3.12.1 Description

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

    3.3.12.2 Stimulus/Response Sequences

    1. Prompt user for routine id.

    2. Search 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

    4. External Interface Requirements

    4.1 User 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 foundby the application, the user will be granted access to the application. Once the user is usingthe application, interaction will be done via the keyboard as well as the mouse.

  • 8/15/2019 Strength Req

    18/33

    Software  Requirements Specification for Strength Training Application Page xviii

    4.2 Hardware Interfaces

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

    4.3 Software Interfaces

    The application will store all data in a database, which the application will have to access toperform the desired user-requested function.

    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 hisbiometric information via the fingerprint scanner, which will then be validated from thecontents of the user template database. The login function will determine the permissions foruser type.

    Description of input

    Username Password Expected Results

    Valid Username,Valid Biometric

    Valid Valid Successfully logged in.

  • 8/15/2019 Strength Req

    19/33

    Software  Requirements Specification for Strength Training Application Page xix

    Valid Username,Invalid Biometric

    Valid InvalidError: Invalid

    Username/Password Pair.Invalid Username,Valid Biometric

    Invalid ValidError: Invalid

    Username/Password Pair.Invalid Username,Invalid Biometric

    Invalid InvalidError: Invalid

    Username/Password Pair.

    5.1.2 Logout

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

    Description of input Logout Button Expected Results

    Logout Button Valid ValidYou have been successfully

    logged out.

    5.1.3 Add New User

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

    Descriptionof Input

    Username BiometricTemplate

    FirstName

    LastName

    UserType

    UserClass

    Position Height Weight ExpecteResults

    All Data

    Valid

    Valid Valid Valid Valid Valid Valid Valid Valid Valid New

    UserAddedInvalidUsername

    Invalid Valid Valid Valid Valid Valid Valid Valid Valid ErrorMessag

    InvalidBiometricTemplate

    Valid Invalid Valid Valid Valid Valid Valid Valid Valid ErrorMessag

    InvalidFirst Name

    Valid Valid Invalid Valid Valid Valid Valid Valid Valid ErrorMessag

    InvalidLast Name

    Valid Valid Valid Invalid Valid Valid Valid Valid Valid ErrorMessag

    InvalidUser Type

    Valid Valid Valid Valid Invalid Valid Valid Valid Valid ErrorMessag

    InvalidUser Class

    Valid Valid Valid Valid Valid Invalid Valid Valid Valid ErrorMessag

    InvalidPosition

    Valid Valid Valid Valid Valid Valid Invalid Valid Valid ErrorMessag

    InvalidHeight

    Valid Valid Valid Valid Valid Valid Valid Invalid Valid ErrorMessag

    InvalidWeight

    Valid Valid Valid Valid Valid Valid Valid Valid Invalid ErrorMessag

  • 8/15/2019 Strength Req

    20/33

    Software  Requirements Specification for Strength Training Application Page xx

    5.1.4 Remove User

    This function will remove 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 thedatabase. Only administrators will have permissions to remove users from the system.

    Description of Input Username First Name Last Name Expected ResultsValid Username,Valid

    First Name, Valid LastName

    Valid Valid Valid User Successfully

    Removed from theSystem

    Valid Username,Invalid First Name,Valid Last Name

    Valid Invalid Valid User Not FoundError Message

    Valid Username,ValidFirst Name, Invalid

    Last Name

    Valid Valid Invalid User Not FoundError Message

    Valid Username,Invalid First Name,Invalid Last Name

    Valid Invalid Invalid User Not FoundError Message

    Invalid Username,

    Invalid First Name,Valid Last Name

    Invalid Invalid Valid User Not Found

    Error Message

    InvalidUsername,Valid FirstName, Invalid Last

    Name

    Invalid Valid Invalid User Not FoundError Message

    InvalidUsername,Valid First

    Name, Valid LastName

    Invalid Valid Valid User Not FoundError Message

    Invalid Username,Invalid First Name,Invalid Last Name

    Invalid Invalid Invalid User Not FoundError Message

  • 8/15/2019 Strength Req

    21/33

    Software  Requirements Specification for Strength Training Application Page xxi

    5.1.5 View Users

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

    Description of Input User Class User Type Position Expected ResultsValid User Class,Valid

    User Type, ValidPosition

    Valid Valid Valid User RecordsDisplayed

    Valid User

    Class,Invalid UserType, Valid Position

    Valid Invalid Valid Unable to locate

    matching recordsError Message

    Valid User Class,ValidUser Type, Invalid

    Position

    Valid Valid Invalid Unable to locatematching records

    Error MessageValid User Class,

    Invalid User Type,Invalid Position

    Valid Invalid Invalid Unable to locatematching records

    Error MessageInvalid User Class,Invalid User Type,

    Valid Position

    Invalid Invalid Valid Unable to locatematching records

    Error MessageInvalid User

    Class,Valid UserType, Invalid Position

    Invalid Valid Invalid Unable to locate

    matching recordsError MessageInvalid User

    Class,Valid UserType, Valid Position

    Invalid Valid Valid Unable to locatematching records

    Error MessageInvalid User Class,Invalid User Type,

    Invalid Position

    Invalid Invalid Invalid Unable to locatematching 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.

    Description of input Username Expected ResultsValid Username Valid Record Opened for Editing

    Invalid Username Invalid Error: Record does not exist.

  • 8/15/2019 Strength Req

    22/33

    Software  Requirements Specification for Strength Training Application Page xxii

    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 willbe the following attributes: height, weight, sport, position. Only coaches and/or athletictrainers will have permission to add or remove players from a workout.

    Description of input

    PlayerName

    Player Position Expected Results

    Valid PlayerName, Valid

    Position

    Valid Valid Player added to workout

    Valid PlayerName, Invalid

    PositionValid Invalid

    Error: Invalid PlayerName/Position Pair.

    Invalid PlayerName, Valid

    PositionInvalid Valid Error: Invalid Player Name

    Invalid PlayerName, Invalid

    PositionInvalid Invalid Error: Invalid Player Name

    5.2.2 Add Schedule

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

    Description of input Schedule Id Expected ResultsValid 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 routine to the current schedule. All routines are stored in thedatabase 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 aschedule.

    Description of input Routine Id Expected ResultsValid Routine Id Valid Routine added to schedule

    Invalid Routine ID Invalid Error: Invalid routine name

  • 8/15/2019 Strength Req

    23/33

    Software  Requirements Specification for Strength Training Application Page xxiii

    5.2.4 Add Exercise

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

    Description of input

    ExerciseName

    Muscle Group Expected Results

    Valid ExerciseName, Valid

    Muscle GroupValid Valid Exercise Added to Routine

    Invalid ExerciseName, Valid

    Muscle GroupInvalid Valid

    Error: Exercise name not indatabase

    Valid ExerciseName, InvalidMuscle Group

    Valid InvalidError: Invalid exercise

    name/muscle group pair

    Invalid ExerciseName, InvalidMuscle Group

    Invalid InvalidError: 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 canbe organized by player name or player position. All users (coaches/athletic trainers/players)

    have permission to print workouts.

    Description of input Print Button Expected ResultsValid Print Valid Print Successful

    Invalid Print Invalid Error: Print Failed

  • 8/15/2019 Strength Req

    24/33

    Software  Requirements Specification for Strength Training Application Page xxiv

    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 thesystem. In this case, the player user is not set up with any access permissions and is notallowed/granted permission to any part of the system. It is a means for coaches/trainers toset up workouts for players who they manage, in cases were there is no interactionbetween the player user and the system.

    Description of Input

    First Name Last Name Position Height Weight ExpectedResults

    All DataValid

    Valid Valid Valid Valid Valid New PlayerAdded

    DuplicateFirst/LastName Pair

    Duplicate Duplicate Valid Valid Valid Duplicate PlayerError Message

    InvalidPosition

    Valid Valid Invalid Valid Valid Error Message

    InvalidHeight

    Valid Valid Valid Invalid Valid Error Message

    InvalidWeight

    Valid Valid Valid Valid Invalid Error Message

    5.3.2 Remove Player

    This function is used by Coaches/Trainers to remove players from the system. In thissituation, the player can only be removed by the user if the player themselves are not usersof the system. If the player has been added to the system by an administrator with userprivileges, 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 Player Removed from Database

    InvalidCombination

    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, theuser 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 Valid Player Removed from Database

  • 8/15/2019 Strength Req

    25/33

    Software  Requirements Specification for Strength Training Application Page xxv

    Valid Last NameInvalid

    CombinationInvalid Invalid Error: Player Not in Database

    5.3.4 Edit Player

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

    Descriptionof Input

    First Name Last Name UserClass

    Position Height Weight ExpectedResults

    All DataValid

    Valid Valid Valid Valid Valid Valid New PlayerAdded

    InvalidFirst/LastName Pair

    Invalid Invalid Valid Valid Valid Valid Player Not inDatabase ErrorMessage

    InvalidUser Class

    Valid Valid Invalid Valid Valid Valid Error Message

    InvalidPosition

    Valid Valid Valid Invalid Valid Valid Error Message

    InvalidHeight

    Valid Valid Valid Valid Invalid Valid Error Message

    InvalidWeight

    Valid Valid Valid Valid Valid Invalid Error Message

    5.3.5 Add Exercise

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

    submit the database will be updated.

    Descriptionof Input

    ExerciseName

    MuscleGroup

    Type ExpectedResults

    All DataValid

    Valid Valid Valid New ExerciseAdded

    InvalidName

    Valid Valid Invalid Error Message

    InvalidMuscleGroup

    Valid Valid Valid Error Message

    InvalidType

    Valid Valid Valid Error Message

  • 8/15/2019 Strength Req

    26/33

    Software  Requirements Specification for Strength Training Application Page xxvi

    5.3.6 Remove Exercise

    This function is used by Coaches/Trainers to remove exercises from the system. In thissituation, 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, thenthey can only be removed by an administrator

    Description of input

    ExerciseName

    Expected Results

    Valid Name ValidExercise Removed from

    DatabaseInvalid

    CombinationInvalid 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, theuser is allowed to access an exercise file even if the exercise has user permissions.

    Descriptionof Input

    ExerciseName

    MuscleGroup

    Type ExpectedResults

    All DataValid

    Valid Valid Valid Exercisedisplayed

    InvalidName

    Valid Valid Invalid Error Message

    InvalidMuscleGroup

    Valid Valid Valid Error Message

    InvalidType

    Valid Valid Valid Error Message

    5.3.8 Edit Exercise

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

    Descriptionof Input

    ExerciseName

    MuscleGroup

    Type ExpectedResults

    All DataValid

    Valid Valid Valid Exercisedisplayed

    Invalid

    Name

    Valid Valid Invalid Error Message

    InvalidMuscleGroup

    Valid Valid Valid Error Message

    InvalidType

    Valid Valid Valid Error Message

  • 8/15/2019 Strength Req

    27/33

    Software  Requirements Specification for Strength Training Application Page xxvii

    5.3.9 Add Routine

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

    Descriptionof Input Sets Repetitions Percentage ExpectedResultsAll DataValid

    Valid Valid Valid New RoutineAdded

    InvalidSets

    Valid Valid Invalid Error Message

    InvalidRepetitions

    Valid Valid Valid Error Message

    InvalidPercentage

    Valid Valid Valid Error Message

    5.3.10 Remove Routine

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

    5.3.11 View Routine

    This function is used by Coach/Trainer users to view routine. There is no user input forthis 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 appropriateprivileges.

    Descriptionof Input

    Sets Repetitions Percentage ExpectedResults

    All DataValid

    Valid Valid Valid New RoutineAdded

    InvalidSets

    Valid Valid Invalid Error Message

    Invalid

    Repetitions

    Valid Valid Valid Error Message

    InvalidPercentage

    Valid Valid Valid Error Message

  • 8/15/2019 Strength Req

    28/33

    Software  Requirements Specification for Strength Training Application Page xxviii

    Appendix A: Analysis Models

    System Design

  • 8/15/2019 Strength Req

    29/33

    Software  Requirements Specification for Strength Training Application Page xxix

    System Use Case

  • 8/15/2019 Strength Req

    30/33

    Software  Requirements Specification for Strength Training Application Page xxx

    System Access Use Case

  • 8/15/2019 Strength Req

    31/33

    Software  Requirements Specification for Strength Training Application Page xxxi

    Create Workout Use Case

  • 8/15/2019 Strength Req

    32/33

    Software  Requirements Specification for Strength Training Application Page xxxii

    Data Use Case

  • 8/15/2019 Strength Req

    33/33

    Software  Requirements Specification for Strength Training Application Page xxxiii

    Appendix B: Issues List

    None