Home
Smart Fitness Trainer
Contents
1. 48 8 Acceptance Criteria xL Re dete seb iA ee ice tote eit cede Po bed ie eee ireti eee boe ro bee ie ia 49 8 1 OVERVIEW ce cde cda Ee inna c i be toa E e ntc tees 49 8 2 Hardware Testing ete re RR I REIR EEA 49 8 3 Umt Module Tesine ern d A a Ra aio 49 8 4 Component Subsystem Testing ccccccccccssscccsessececeesnecececsseeeceeseeeeceesaeeeceesaeeeceeseeeeeeseeesees 49 8 5 Integration Layer TESNE ernari na aE E AEAEE EREE AAAA A 50 8 6 System Verification TeStihg ii mese er erret te cec ete EEA AAT eet e a 50 97 Test Deliverable S moriani e e P y e e t dee e A e et ote ted 51 9 1 NETON AE ET 51 9 2 Deliverables erat retenta ai a e inet reato eter dee edite 51 10 Test Schedule cr RR ade tue OT C E OI I 53 MEMO T SA O ARAA SAPRA STAN TAEA LA PEATAS ARTAR ASFALT SREDIN EAEE RAEO 53 10 2 Test Schedules a zd eth dele A hti eas eae te REI UE 53 11 Approvals e TRU a e IE REATO RR NRI VA NEIN ER REINES 54 Document Revision History Revision Revision 07 04 2013 Initial Draft Initial Draft 07 12 2013 Peer Review Draft Peer Review Draft 2 0 07 22 2013 Revisions based on review and final Baseline Draft updates List of Figures Figure Title Page 2 1 Architecture Layers 14 2 2 Subsystem Data Flow Diagram 16 2 3 Module Data Flow Diagram 18 3 1 Relational Diagram 24 List of Tables Table Title Page 2 1 Customer Requirements 9 2 2 Packaging Requirements 11 2 3 Performance
2. tests but integrating them causes bugs Movement tracking might pass test for one user and not pass with another user Heart rate monitor might not accurately be monitoring heart rate Table 4 1 Risks Severity Product passes Medium performance test on testing hardware but runs slow on final product hardware System will appear to fail to track movement System will behave sporadically and it will be hard to tell if a test should pass or fail Bugs will be harder Medium to find System will have Medium inconsistent behavior User will not have Medium accurate feedback from system Strategy Make sure all hardware components in testing environment are of lesser or equal quality than final product Make an error condition that notifies the user the camera has lost track of them the user can recalibrate the system While testing print a message every time a user s movement causes the system to react to help pinpoint where any false response is coming from Do regression testing each time a set of modules is integrated Everyone on the team should participate in the movement tracking testing Attach two heart rate monitors to the user while testing and check to see they output the same values 5 Features to Be Tested 5 1 Overview The following features will be tested to ensure that the Smart Fitness Trainer satisfies the requirements from the SRS The descriptions provide the details of the requiremen
3. Event or String representing a selection from the workout menu Action Event or String representing a selection from the statistic menu Function call with no parameters Function call with no parameter Function call with integer array as parameter Function call with OverallStat object FitnessTestResults object and Boolean variable as Expected Output Action Makes the correct Profile subsystem function calls Initializes a workout and outputs a user s workout Displays the details of a user s workout Makes the correct Post Workout Evaluation subsystem function calls with ArrayList of OverallStat objects as parameter Conduct Medical Assessment receive user input values function call to User Data Access subsystem with User object as parameter Function call to User Data Access subsystem with user ID as parameter Function call to User Data Access with integer array as parameter If Boolean value is true it subsystem should make Profile function call with OverallStat object as the parameter If Boolean value is false it should make Generate Workout function call with and integer representing a fitness score as the parameter If the function call specified a graph the subsystem should output an integer array If it did not it should output an OverallStat object Should make call to the Drill Access subsystem with integer and String It should receive an integer array and then make a call the Pro
4. Fitness Test Generate Workout Perform Workout View Statistics Voice Command Recognition System Test Create a User Table 3 17 System Verification Tests Profile Information Fitness Test Information User Movements Fitness Test Score User Workout Goal Drill Specifications User Movements Statistic objects Heart Rate Workout timer Audio giving valid voice command Expected Output Action Profile saved to database and selectable from main menu when system is turned on User is given a score at the end of the fitness test based on how they perform the fitness test drills Workout is generated with up to ten drills based on fitness test score and workout goal User sees updated rep counts timer and workout statistics which accurately reflect how they perform movements of each drill User is able to view statistics from their previous workouts and generate progression graphs to view progress System performs the specified function Medium Medium 4 Risks 4 1 Overview This section identifies the risks involved during the testing phase their impact their severity and the strategy to handle them Each risk will have a severity of high medium or low 4 2 Risk Table Testing environment has faster processing speed than final product RGB D camera loses track of user during testing System responds positively to user movements when it should not Smaller modules pass
5. also test to make sure that the calories burned are of a reasonable number based on the equation used and the user s information 5 2 8 Personalized Workout 5 2 8 1 Risks High 5 2 8 2 Description The SMART Fitness trainer shall generate a personalized workout for the user based on the fitness assessment and workout goal 5 2 8 3 Test Approach We will test this by having a user perform a fitness assessment and have them select a workout goal If a personalized workout has been generated this requirement will have been tested 5 2 9 Workout Instruction 5 2 9 1 Risks Medium gg PO 5 2 9 2 Description The SMART Fitness trainer shall provide both audio and visual instructions to the user on how to perform a drill and what they should be doing at certain times during their workout ex rest period start stop etc 5 2 9 3 Test Approach We will test the audio by verifying that the correct audio audio file is being played during a drill along with the drill s text instructions appearing on the user s display 5 2 10 Lifetime Workout Statistics 5 2 10 1 Risks High 5 2 10 2 Description The SMART Fitness trainer shall record the user s height weight BMI total calories burned minutes worked out and other information about the user which can be displayed in graph form 5 2 10 3 Test Approach We will test this by verifying that all statistics height weight BMI etc are correctly stored in the system databa
6. information to fully describe the process used by our team to perform the testing of the product 9 2 2 Test Cases This deliverable will include a description of each test case used by our team Information provided for each test case will also include e Test Case ID e Test Date e Tester Name e Inputs e Expected Output e Actual Output e Result of Test Pass Fail e Additional Notes If a defect is found in the test case the defect ID and severity will be included in the additional notes section 9 2 3 Defects If a test has a Fail test result there will be a defect description provided The information for each defect will include e Test Case ID e Test Date e Tester Name e Description of Failure e Status e Severity High Medium Low e Effects on development e Additional Notes 9 2 4 Test Code gy PR Any additional code used for testing the final product will also be provided with the end project documentation 10 Test Schedule 10 1 Overview This section contains the schedule for the testing process of the Smart Fitness Trainer system This schedule is also reflected in our MS Project Plan document 10 2 Test Schedule Table 10 1 Test Schedule Task Number Task Planned Start Date Planned Finish Date Project Plan 2 5 Hardware Testing 07 11 13 07 14 13 2 6 Unit Testing 07 15 13 07 20 13 2 Component Testing 07 21 13 07 26 13 7 i 2 8 Integration Testing 07 27 13 08 02 13 2 9
7. requirements are critical to the acceptance of the system a redesign of the system or replacement of the component may be necessary 7 4 2 Medium A failure of a test with a priority level of medium means that at least one medium priority requirement in the System Requirements Specification will not be met Because these requirements are important but not critical to the acceptance of the system a redesign of the system or replacement of the component will probably not be necessary 7 4 2 Low v Jj A failure of a test with a priority level of low means that at least one low priority requirement in the System Requirements Specification will not be met Because these requirements are not very important and not critical to the acceptance of the system a redesign of the system or replacement of the component will not be considered 7 5 Regression Regression testing will be conducted after a stage of testing has been completed and smaller modules are integrated together For instance regression testing will be done when unit testing is completed and the units are integrated together to form components This will ensure that no new bugs are introduced as a result of integration 8 Acceptance Criteria 8 1 Overview The Acceptance Criteria will be used to determine if a test for a particular item is a Pass or a Fail These criteria for each Pass or Fail option has also been divided into five categories Hardware Unit Component In
8. routines as part of the fitness assessment to determine the user s current fitness level After a user has been assessed on their health and performance the system will generate a customized workout program designed specifically for the user When a user is engaging in a workout program the camera will detect the player s movements to verify that the user is performing the correct movements Variables such as number of repetitions number of sets user s heart rate and calories burned will be stored in order to track the user s progress Upon completion of a program all data will be saved into the SMART Trainer for future workouts for the user 1 3 Product Scope The Smart Fitness Trainer system is composed of pieces of hardware that allow an individual to engage in workout related activities at home through the use of RGB D cameras to recognize and analyze user movement The system will be controlled and executed from a component built of several PC components such as a CPU graphics processor RAM etc and will be attached to the RGB D to process and store all video data The system will process the data which in turn will be used to generate a custom workout for an individual A microphone will be used to capture audio and convert to text instructions and a wireless keyboard will also be provided for input 2 References 2 1 Overview This STP document references several other documents that have gone into the creation of the Smart Fitness Tr
9. sure the individual pieces of hardware that make up the system are functional Next we will put together tests for each module in unit testing From unit testing we can test an entire subsystem with component testing All of the components in an entire layer will then be tested in integration testing Finally the entire system as a whole will be tested as a part of system verification testing 3 2 Relational Diagram Relational Diagram Hardware Component Integration System Verification Microsoft Kinect ophone Input Handler Bluetooth Input Input Layer Handler out Controller Workout Instruction Workout Pro Layer Rep Engine Statistic Tracke Overall Stat Tracker Statistic Tracker Smart Fitness Trainer Profile lay User Data Ac Figure 3 1 Relational Diagram A or PR 3 3 Hardware Tests Test ID Module Computer H2 Microsoft Kinect for Windows Zephyr HxM Heart Rate Monitor Keyboard 3 4 3 4 1 Unit Tests Input Layer Unit Tests Test ID Module ul Generate Depth Map UI2 Generate Skeleton UI3 Heart Rate Parser Ul4 Keyboard Table 3 1 Hardware Tests User input via keyboard microphone RGB D camera Audio and video input Bluetooth transmission Keyboard input Expected Output Action Correct feedback to screen Correct processing of Smart Fitness Trainer program Delivers frames and audio input to the computer to be processed Bluetooth tr
10. 2 Non Hazardous Setup 6 3 2 1 Description The Smart Fitness Trainer shall have minimal wire exposure Only power cords and cords which connect the components will be exposed 6 3 3 Health Warning 6 3 3 1 Description The Smart Fitness Trainer shall display a brief health warning as the program boots up This warning s purpose will be to recommend all participants see a doctor before starting a new exercise program 6 4 Other Requirements All other requirements listed here are not to be tested since they are verified by system design and implementation 6 4 1 Workout Calendar 6 4 1 1 Description The Smart Fitness Trainer shall provide the user with a calendar view of their upcoming workouts Each day shall have an icon corresponding to the type of workout for that day The calendar will show all of the workouts for a user over the four week workout plan provided to 6 4 2 Nutrition Diet Plan 6 4 2 1 Description The Smart Fitness Trainer shall provide the user with sample diet nutrition plans based on their fs j1 workout goals 6 4 3 Workout Drills Database 6 4 3 1 Description The Smart Fitness Trainer shall contain a database of workout drills that are categorized by muscle group fitness goal and degree of difficulty 6 4 4 Statistics Database 6 4 4 1 Description The Smart Fitness Trainer shall contain a database of total workout statistics for each user 7 Overall Test Strategy 7 1 Overview This section shall deta
11. Department of Computer Science and Engineering University of Texas at Arlington 4LOOP System Test Plan Team 4Loop Project Smart Fitness Trainer Team Members Thanuja Fernando Andrew Gallagher Thomas Heinen Mark Ragunton Last Updated 07 22 2013 10 51pm 1 j Contents Document REVISION History danesa 4 List oL FIg res oc ERR IER BER ERI 5 Esto Tables ils sce ntc tte te ettet e es ife th o eo A ated eade ee ERA ET ates 6 TIO UC ER 8 1 1 Document Overview 7 3 trei in eec dee oe el a a eee eee ed east 8 1 2 Product OVerViE Wnes E a 8 1 3 Prod ct Scopen sniene A ad a A A A a eo 8 2 References scd a a a a Ev a tre ER aes 9 2 1 OVA EOE ETOO eae 9 2 2 System Requirements Specification ccccccccssccccssssscecesssececseaececsessececsesaececsessececeesaeeecseaeeeeeeaaes 9 2 3 Architecture Design Specitication tort ette tt 13 2 4 Detailed Design Specification ninenin re e a aaea a a aa a a a iaa 18 ESPANA AA 23 3 1 OVERVIEW i caderet ere AREA bt na as es eet 23 3 2 Relational Diagrami ete a a aaa aa a eaa a aes 24 3 3 Hardware Tests ie eto E dai e EE ea dede PRESE Rp tice 25 3 4 Unit FES sue sects cocti dte tette ete te festa tetuer de od etie e e tese e eue tete lectus teta its 25 3 5 Component Tests c eet eee trees ated teste deba uev eee ecu tiie deed e Dn 28 3 6 Integration Teste s en esee 31 3 7 System Verification Tests e dee eet et a meta edet
12. Requirements 11 2 4 Safety Requirements 12 2 5 Maintenance amp Support Requirements 12 2 6 Other Requirements 13 2 7 Subsystem Overview 15 2 8 Subsystem Data Flows 16 2 9 Input Layer Data Flows 18 2 10 Workout Processing Layer Data Flows 19 2 11 Profile Processing Layer Data Flows 20 2 12 Database Management Layer Data Flows 20 2 13 Presentation Layer Data Flows 21 2 14 Module Requirement Mapping 21 3 1 Hardware Tests 25 3 2 Input Layer Unit Tests 25 3 3 Workout Processing Layer Unit Tests 25 3 4 Profile Processing Layer Unit Tests 26 3 5 Database Management Layer Unit Tests 28 3 6 Presentation Layer Unit Tests 28 3 7 Input Layer Component Tests 29 3 8 Workout Processing Layer Component Tests 29 3 9 Profile Processing Layer Component Tests 30 3 10 Database Management Layer Component Tests 31 A A 3 11 Presentation Layer Component Tests 3 12 Input Layer Integration Tests 3 13 Workout Processing Layer Integration Tests 3 14 Profile Processing Layer Integration Tests 3 15 Database Management Layer Integration Tests 3 16 Presentation Layer Integration Tests 3 17 System Verification Tests 4 1 Risks 10 1 Test Schedule 11 1 Approvals 31 32 32 32 33 33 34 35 53 54 1 Introduction 1 1 Document Overview The purpose of the System Test Plan STP document is to describe the testing procedures we will use to ensure that the Smart Fitness Trainer system meets its necessary requirements By following the testing s
13. System Verification Testing 08 03 13 08 08 13 11 Approvals This section provides the approval of this document s presented plan by all necessary individuals who are part of the project Table 11 1 Approvals Name Title Signature Date Mike O Dell Project Supervisor Jeremy Roden Project Sponsor Thomas Heinen Team Lead Thanuja Fernando Team Member Andrew Gallagher Team Member Mark Ragunton Team Member
14. User Skeleton hash map generation based on depth map 3 6 2 Workout Processing Layer Integration Tests Table 3 13 Workout Processing Layer Integration Tests Test ID Expected Action Result IWP1 Action event or string to start Initialization of first drill Medium workout with a Workout object from a workout object as a parameter Load instruction files drill specifications IWP2 Action event string flag to stop Creation of OverallStat Medium workout object for the workout IWP3 Audio Text Instruction Files String Audio File output to Medium Command to show instructions display and speakers IWP4 Boolean value representing rep Updated Statistic object Low result IWP5 Integer heart rate Updated OverallStat Medium New Timer object object User information IWP6 User Skeleton Hash Maps Boolean value Drill Specification Hash Maps representing rep result 3 6 3 Profile Processing Layer Integration Tests Table 3 14 Profile Processing Layer Integration Tests Test ID Expected Action Result IPP1 Action event or string to create User object with new Medium profile user s information IPP2 Action event or string to login A string of user s ID Medium IPP3 X Action event or string to edit User object with user s Medium profile new information IPPA Action event or string to view OverallStat object selected Medium statistics of workout by user IPPS Action event or string to view Integer array of coordinate Medium progress of
15. a eet dei he a eet diea n 34 O 35 4 1 OV6GrVIQWi n uic D ein ene emn rss 35 4 2 RISK Table oett rate AA tts ed ri ct Rn 35 SN A enne ettet nier Ie S RESET RE a Ra SER E e uet Een ee SE ENT ERE Ren 36 5 1 OVerVIe Ws ad enean na REBEL EGNIN 36 5 2 Customer Reqguiremoerits dn need OE EE 36 5 3 Performance Requirements c cssssssscccecessesssnseesececeesesseaeensececeesensaaeaesecueseseauaasaesecuesesesuanaeees 41 5 4 Maintenance and Support REQUuireMents cccsccccccecsssessssesecececessessaeceeeescessesnsaeseeseseessessaaeess 43 5 5 Other Requirements irr tete tede sees 43 6 Features Not to Be Tested 000 ceeccesesseeeseceecceceseeeeaeeecaaeceeaaessaneeeaaeceeaceseaeessaeeseaaeceeaaessaaeeesaeceeaaesenaeeens 44 6 1 eeu 44 y ZA 6 2 Packaging Requiremlients rere an korean Rae e Ee ev Rae e oaa ea una e dado Yr gea eR Rude dn 44 6 3 Safety Requirements da eto de cs meu trie as 45 6 4 Other Requirements ntt tete vectes dete eive eventus 45 7 Overall Test Strategy pe rine esr e ERR ds ERR RENE ce de esie RE SURE 47 7 1 GI X 47 7 2 Configurations Betti ee tee vet ue uvis 47 7 3 Strategy tenore ed ib i db M eir pa ess 47 7 4 MECE c 47 7 5 A
16. ainer system including the SRS ADS and DDS To guarantee that our system has been fully tested and verified all of these documents and their contents must be taken into consideration during the development of the test plan The following sections contain a brief overview of these other documents 2 2 System Requirements Specification In our SRS document we defined all of the requirements that are necessary for our system Thirty nine requirements were defined in this document and broken down into categories Customer Packaging Performance Safety Maintenance and Other We will give a brief description of each requirement and its assigned priority For more information see the System Requirements Specification 2 2 1 Customer Requirements This section describes the requirements which were most important to our project sponsor Many of these requirements are critical for the core functionality of the Smart Fitness Trainer and the project would be considered incomplete if they were not implemented Table 2 1 Customer Requirements SRS Requirement Description Priority 3 1 RGB D Camera Tracking The Smart Fitness trainer shall use a RGB D 1 Critical camera to track the movement of the user Movement Analysis The Smart Fitness Trainer shall analyze the 1 Critical user s movements to determine if the user is performing an exercise correctly Workout Progression The Smart Fitness Trainer shall allow the user 1 Critical Mode to sta
17. and converting speech to text in order to process voice commands This layer utilizes OpenNI to process the major points of a user s skeleton and create a hash map of these values Workout Processing Layer The Workout Processing Layer focuses on initializing a workout and evaluating the user s performance on each drill in the workout It will also need to keep track of user statistics including number of reps performed correct reps completed heart rate and a timer to show how long the user has been working out Profile Processing Layer The Profile Processing Layer is centered on things the user is doing while they are not currently working out This layer allows a user to create log in and edit a profile as well as view statistics from past workouts and create progression graphs This layer also allows the user to view a workout s details and provides a calendar view of the workout It must also tell the workout processing layer when the user wishes to start their workout Database Management Layer The Database Management Layer is concerned with accessing the two databases User Data and Drill Data It will take requests from the Profile Processing Layer convert them to queries and return the requested data to the Profile Processing Layer It will also be in charge of updating information in the database such as an edited profile or a user s new statistics after completing a workout f u _ Presentation Layer The Presentation L
18. ansmission sent to computer to be parsed for heart rate Correct key press sent to computer Table 3 2 Input Layer Unit Tests Input Video Feed Depth Map Bluetooth transmission Bluetooth transmission Expected Output Action Depth Map generated from camera feed Skeleton Hash Map generated from Depth Map Integer representing user s heart rate Key press High Risk High High High Low UI5 Audio Input Audio source Audio output from device Medium l6 U Dictionary Audio output Boolean flag and String value High UI7 Speech Decoder Audio output from audio source 3 4 2 Workout Processing Layer Unit Tests Module User Command Test ID UWP1 String matching the audio output if it was in the dictionary Table 3 3 Workout Processing Layer Unit Tests Input Action Event String Expected Output Action Correct workout related function call depending on value of action event or string UWP2 UWP3 UWP4 UWP5 UWP7 UWP8 UWP9 UPW10 3 4 3 Test ID UPP1 User Workout User Workout Object Start Workout Command Stop Workout Command Current Drill Status Drill Completion Requirement object Statistic Object Finalize Workout OverallStat object Statistic object Text Instruction String Text Instruction Audio Instruction Rep Engine Audio file containing audio instructions User Skeleton Hash Map Correct Drill Instruction Hash Map Boolean resul
19. ayer receives data after it has been processed from either the Profile Processing or Workout Processing layers and displays the information to the screen This layer is in charge of displaying the user interface while the user is navigating the menus and while the user is performing a workout It will also need to send the audio to the user s speakers 2 3 2 Subsystem Overview Layer Name Input Input Input Input Workout Processing Workout Processing Workout Processing Workout Processing Profile Processing Profile Processing Profile Processing Profile Processing Database Management Database Management Table 2 7 Subsystem Overview Subsystem Name RGB D Camera Input Handler Microphone Input Handler Bluetooth Input Handler Voice to Text Movement Comparison Workout Controller Workout Instruction Statistic Tracker Menu Navigation Controller Post Workout Evaluation Profile Workout Generator User Data Access Drill Data Access Description Collect input from RGB D Camera Collect input from microphone Collect input from Bluetooth devices Convent input from microphone to text Determine if user performs a rep of the current drill successfully Initialize the workout and process commands during the workout Provide instructions for the current drill Keep track of user statistics during a workout Process user commands while the user is not performing a workout Allow user to view statistics o
20. e 6 2 1 1 Description Computer hardware shall be delivered in a mini computer The mini computer will include the basic hardware components needed to run the Smart Fitness Trainer software hard drive RAM graphics card processor fans power supply and motherboard The hardware will come pre assembled and enclosed in a micro case 6 2 2 Software 6 2 2 1 Description The Smart Fitness Trainer software shall be pre installed on the mini computer s hard drive 6 2 3 RGB D Camera 6 2 3 1 Description System shall include an RGB D camera Camera will come with a cord to connect with the mini computer 6 2 4 Heart Rate Device 6 2 4 1 Description System shall include a device to keep track of user s heart rate during a work out 6 2 5 Wireless Number Pad 6 2 5 1 Description System shall include a wireless number pad for users to navigate menus and make selections 6 2 6 User Manual 6 2 6 1 Description aj System shall include a user manual with step by step instructions on how to setup and use the Smart Fitness Trainer User manual will include pictures to aid user 6 3 Safety Requirements The safety of items are physical properties that are built to verify that the overall system contains no harm to the user and or to prevent any tampering 6 3 1 Overheating Protection 6 3 1 1 Description The Smart Fitness Trainer shall include fans inside of the mini computer s case to prevent the system from overheating 6 3
21. escription Priority Computer Hardware The Smart Fitness trainer shall use a RGB D 1 Critical camera to track the movement of the user Software The Smart Fitness Trainer shall analyze the 1 Critical user s movements to determine if the user is performing an exercise correctly RGB D Camera The Smart Fitness Trainer shall allow the user 1 Critical to start Progression mode which will take the user through a medical check fitness assessment and allow the user to choose one of 3 fitness goals before generating a personalized workout Heart rate Device The Smart Fitness Trainer shall perform a 1 Critical medical check which will have the user answer commonly asked questions by trainers before starting a new workout Wireless Number Pad The Smart Fitness Trainer shall have the user 1 Critical perform several basic exercises and measure the amount of correctly performed reps to provide a baseline of the user s prior workout experience User Manual The Smart Fitness Trainer shall allow the user 3 Moderate to choose from one of three major workout goals Strength Tone and Cardio 2 2 3 Performance Requirements This section provides a list of requirements detailing the performance of our system The performance requirements will be used to create and implement performance standards such as point cloud calculation times system response times and overall system efficiency Table 2 3 Performance Requirements Requirement De
22. f previous workouts and create progression graphs Allow user to create edit load a user profile Generate a workout based on the user s fitness level and fitness goal Save Load data to from the user database Load data from the drill database Presentation Audio Play audio on the speakers Presentation 2 3 3 Menu Display Inter Subsystem Data Flow Display the user interface on the display SS oe Data Flow Figure 2 2 Subsystem Data Flow Diagram Table 2 8 Subsystem Data Flows Description Raw data from the RGB D camera Raw audio data from microphone Raw unformatted Bluetooth transmission data from the heart rate monitor Raw unformatted Bluetooth transmission data from the wireless number pad Hash maps representing x y z positions of user s major skeletal joints Audio input to be converted to text in Voice to Text subsystem Integer heart rate value to be sent to Statistic Tracker subsystem Text Command to be sent to Workout Controller or Menu Navigation Controller depending on if user is currently performing a workout Number Pad Command to be sent to Workout Controller or Menu Navigation Controller depending on if user is currently performing a workout subsystem postions sent to the movement comparison subse instruction An Command to the statistic tracker to start the timer for a workout used to track Updated rep counts timer
23. file subsystem with integer array as parameter parameters Function call with ArrayList of OverallStat objects as CPP8 Post Workout Evaluation parameter Function call with integer as parameter CPP9 Drill Assembler 3 5 4 Database Management Layer Component Tests Table 3 10 Database Management Layer Component Tests Test ID Module Expected Output Action User object containg user information User Data Access CDB2 Drill Data Access 3 5 5 Presentation Layer Component Tests Array of integers Updates and or creates a user s information in the database Returns a specific drill Table 3 11 Presentation Layer Component Tests Test ID Module Audio File mp3 wave Integers for both the user statistics and drill statistics Strings that represent text instructions Depth Map that will contain the video source 3 6 Integration Tests Expected Output Action Receives the audio files that will be used to output to the user s speakers Create the UI that the user will use to navigate through the system Output the JFrame to the user s display Medium 3 j1 3 6 1 Input Layer Integration Tests Table 3 12 Input Layer Integration Tests Test ID Expected Action Result I1 Audio Source Analysis of audio coming High from source and string value that matches audio if is part of the pre defined dictionary 112 Video Feed Depth Map generation High based on video and
24. graph form The Smart Fitness Trainer shall allow the user to substitute any workout with a quick workout allowing them to select their own drills from the database for the workout The Smart Fitness Trainer shall have an appealing user interface which will be intuitive for the user The Smart Fitness Trainer shall allow the user to create edit or delete a user profile which will be used to log in to progression mode The Smart Fitness Trainer shall allow the user to take pictures of themselves at different points in the workout plan to assess how the workout has impacted their appearance The Smart Fitness Trainer shall accept voice commands for menu interactions and other inputs during workouts The Smart Fitness Trainer shall be able to identify when a user has performed an exercise better than any previous attempts and display a notification of a personal best 1 Critical Personalized Workout 1 Critical Plan Workout Instructions 1 Critical Lifetime Workout Statistics Quick Workout User Interface 1 Critical User Profile User Pictures 3 Moderate Voice Commands Personal Best Recognition 2 2 2 Packaging Requirements This section defines the packaging requirements for the Smart Fitness Trainer system which includes the hardware and software components of the system and any additional things which will be included St i Table 2 2 Packaging Requirements Requirement D
25. h to a word I String matching the audio I10 Depth map H1 Hash map containing x y z coordinate of user s skeleton 112 Valid user command string 2 4 2 2 Workout Processing Layer Data Flows Table 2 10 Workout Processing Layer Data Flows Data Flow Description W6 7 Hash map containing several correct positions of user skeleton for one rep of the current WwW Drill completion requirements Amount of time or amount of reps needed for drill to be W9 Statistics structure from completed workout Data structure containing overall stats for workout 10 11 i 16 17 19 0 Audio file W2 Overall Statistics object WwW WwW Drill Statistic object for completed drill W WwW M WwW i a 2 4 2 3 Profile Processing Layer Data Flows St E Table 2 11 Profile Processing Layer Data Flows Data Flow Description P7 i i P8 P9 P P User generated workout composed of drills P PP10 Function call to edit existing profile PP11 Profile Data Structure User information to be saved PP12 Function call to instantiate menu PP13 Function call to instantiate menu PP19 Integer fitness level PP20 Graph object to be displayed Statistics structure from completed workout to be saved 2 4 2 4 Database Management Layer Data Flows Table 2 12 Database Management Layer Data Flows Data Flow Description D D D Data structure containing user information Drill information which matches the drill
26. h will have the user answer commonly asked questions by trainers before starting a new workout 5 2 4 3 Test Approach We will test this by verifying that all users are required to pass a medical during the creation of the user s Progression mode 5 2 5 Fitness Assessment 5 2 5 1 Risks High 5 2 5 2 Description The SMART Fitness trainer shall have the user perform several basic exercises and measure the amount of correctly performed reps to provide a baseline of the user s prior workout experience 5 2 5 3 Test Approach We will test to make sure that the user is prompted for a fitness assessment before generating a workout We will also verify that the correct drills are loaded for the user during a fitness assessment 5 2 6 Workout Goals 5 2 6 1 Risks Medium gy PO 5 2 6 2 Description The SMART Fitness trainer shall allow the user to choose from one of three major workout goals Strength Tone and Cardio 5 2 6 3 Test Approach We will test this by verifying that users have the option of selecting between three goals Strength Tone and Cardio before their workout session 5 2 7 Workout Statistics 5 2 7 1 Risks High 5 2 7 2 Description The SMART Fitness trainer shall track and display heart beat and calories burned during the current workout in real time 5 2 7 3 Test Approach We will test this by verifying that the correct heart rate and estimated calories burned appear on the user s display We will
27. he user throughout his her workout regimen in order to provide both a progression and statistical based approach for the user 5 3 5 3 Test Approach We will test this by verifying that all saved data can be retrieved 5 4 Maintenance and Support Requirements 5 4 1 Testing 5 4 1 1 Risks 5 4 1 2 Description The Smart Fitness Trainer shall be tested to ensure all of the required functionality is present and working as intended 5 4 1 3 Test Approach We will test this by verifying that all required functionality can be provided 5 5 Other Requirements 5 5 1 Achievements 5 5 1 1 Risks Medium 5 5 1 2 Description The Smart Fitness Trainer shall award the user with achievements for completing certain objectives These achievements will include milestones such as X number of total calories burned completing a four week workout program and several others 5 5 1 3 Test Approach We will test this by having a user objective in place for a test user to achieve If the test user achieves this objective this requirement would have been fulfilled 6 Features Not to Be Tested 6 1 Overview The following features listed are not to be tested since they are verified by system design These features describe the system properties of the product and do not much functionality 6 2 Packaging Requirements All listed items will be visually verified by project members to verify all items are packaged with the system 6 2 1 Computer Hardwar
28. il team 4Loop s approach to testing the Smart Fitness Trainer prototype The testing should ensure that the prototype meets the requirements set forth in the System Requirements Specification document and is consistent with the design in the Architectural Design Specification document and the Detailed Designed Specification 7 2 Configurations Team 4Loop will test configurations in the order of high priority to low priority This means that no configurations of a lower priority will take place until all higher priority configurations have passed testing 7 3 Strategy Testing will be performed in a series of stages The system will be broken down into its smallest units and then each unit will be tested individually When each unit has passed testing the units will be integrated and tested as a whole The following list shows each stage of testing in order e Hardware Testing e Unit Testing e Component Testing e Integration Testing e System Verification Testing 7 4 Metrics The priority of each test will be determined by team 4Loop by associating each test with a requirement in the System Requirements Specification document The tests will have the same priority level as the requirement it is associated with The priority levels are high medium and low 7 4 1 High A failure of a test with a priority level of high means that at least one high priority requirement in the System Requirements Specification will not be met Because these
29. irements This section establishes the maintenance and support requirements for the Smart Fitness Trainer These include the documentation of the code as well as the testing and maintenance Table 2 5 Maintenance and Support Requirements Requirement Description Priority Code Documentation The Smart Fitness Trainer source code shall be 1 Critical well documented to allow future development teams to upgrade and add to the program Testing The Smart Fitness Trainer shall be tested to 1 Critical ensure all of the required functionality is present and working as intended Troubleshooting Team 4Loop shall include a troubleshooting 1 Critical Section section in the user manual to aid future developers and users with maintenance issues Product Extensibility Team 4Loop shall set up the databases and 1 Critical code in a way that future development teams can easily add additional exercises and features to the system Source Code Team 4Loop shall provide the source code 1 Critical with the product to aid future developers and allow the product to be added to easily 2 2 6 Other Requirements This section will include requirements which do not fit in other categories but are required for total completion of the Smart Fitness Trainer Table 2 6 Other Requirements Requirement Description Priority Achievements The Smart Fitness Trainer shall award the user 5 Future with achievements for completing certain objectives Wor
30. is being pointed to D List of drills matching requested criteria 2 3 4 5 7 8 9 2 4 2 5 Presentation Layer Data Flows ee E Table 2 13 Presentation Layer Data Flows Data Flow Description P1 Audio file P2 Video source P3 JFrame containing Depth map 2 4 3 Module Requirements Mapping Table 2 14 Module Requirement Mapping Requirements H eart Rate X X Parser Keyboard X X X X X X I Audio Input X X X X X X X co 2 3 Dictionary X xXx xx X X X 3 o Speech X x x x X X X Decoder Generate Depth X X X Map Generate Skeleton x x ai Profile Processing Layer Menu Controller Profile Menu Controller Statistic Menu Controller Workout Menu Controller Create Profile Current User Info User Stat Viewer User Graph Assembler Calculate Fitness Level Post Workout Save Drill Assembler 3 Test Items 3 1 Overview This section will provide details on the different phases of testing which will occur before completing our final product In the next sections you will see our Relational Diagram which represents the System Test Plan as a flowchart The STP is divided into five separate testing sections hardware unit component integration and system verification Hardware testing will occur first to make
31. it should also send a Workout object If Action Event or String is sent to Statistics Controller it should also send an ArrayList of OverallStat objects Profile Controller Action Event Send User object to Menu String Controller User Object Calls Create Profile Calls Current User Info Workout Action Event Calls User Command module in Controller String Workout Processing layer with Workout Object Workout object as parameters Displays the details of Workout object Statistics Action Event Calls User Stat Viewer with Controller String ArrayList of OverallStat objects ArrayList of are parameters OverallStat objects Create Profile Function call with no Conducts medical assessment parameters gives medical advice Calls User Account Storage module in Database Management layer with User object as parameter Current User Info User Object Calls User Account Storage Integer array of drill module in Database IDs Management layer with User OverallStat object object as parameter Post Workout OverallStat object Calls Current User Info module Medium Save FitnessTestResults with OverallStat object as object parameter Boolean variable Calls Calculate Fitness Level module with FitnessTestResults object as parameter UPP8 Calculate Fitness FitnessTestResults Calls Drill Assembler module Medium Level object with integer as parameter User Stats ArrayList of Calls Graph Assembler module Medium Viewer OverallStat objects with ArrayList of OverallStat objects as pa
32. kout Calendar The Smart Fitness Trainer shall provide the 3 Moderate user with a calendar view of their upcoming workouts Nutrition Diet Plan The Smart Fitness Trainer shall provide the 5 Future user with sample diet nutrition plans based on their workout goals Workout Drills The Smart Fitness Trainer shall contain a 1 Critical Database database of workout drills that are categorized by muscle group fitness goal and degree of difficulty Statistics Database The Smart Fitness Trainer shall contain a database of total workout statistics for each user 2 3 Architecture Design Specification The ADS document provided a high level design of the Smart Fitness Trainer by breaking the whole system down into five separate layers Each layer was also broken into subsystems and data flows to further describe how the system is to be constructed An overview of each architectural layer as well as each subsystem and data flow it contains will be given below For more information see the Architecture Design Specification 2 3 1 Architecture Layer Overview Figure 2 1 Architecture Layers Input Layer The Input Layer receives input from all of the hardware including the RGB D camera microphone heart rate monitor and wireless number pad This layer will be responsible for converting and formatting these inputs to be used by the other layers This will include reading the Bluetooth transmissions and parsing them to get meaningful values
33. ll subsystem in a layer have passed Component Testing that layer as a whole will be tested The given inputs and the expected outputs for Integration Testing are based off documentation in the ADS and DDS documents Pass The layer returns the expected output when given a valid input or returns an error when given an invalid input Fail The layer fails to provide the expected output when given a valid input or fails to provide an error when given an invalid input 8 6 System Verification Testing After each layer in the system has passed Integration Testing the entire Smart Fitness Trainer system will be tested The given inputs and expected outputs for System Verification Testing are based off documentation in the SRS ADS and DDS documents Pass The Smart Fitness Trainer system returns the expected output when given a valid input and meets all related requirements in the SRS document The system returns an error when given an invalid input Fail The Smart Fitness Trainer system fails to provide the expected output when given a valid input or does not meet all related requirements in the SRS document The system fails to provide an error when given an invalid input 9 Test Deliverables 9 1 Overview This section will discuss all of the deliverables included with the end project documentation which pertain to the system testing 9 2 Deliverables 9 2 1 System Test Plan This document will provide the user with the necessary
34. nd or system freezes 5 3 2 Video Processing Time 5 3 2 1 Risks High 5 3 2 2 Description n Jh The Smart Fitness Trainer shall process 640x480 resolution frames at 30 frames second read in from the camera in a timely manner 5 3 2 3 Test Approach We will test this by verifying that the system can output the video source grabbed from the RGB D camera to the user s display without any noticeable lag and or freezes 5 3 3 Video Analysis Tracking 5 3 3 1 Risks High 5 3 3 2 Description The Smart Fitness Trainer shall correctly analyze and track the user s movements in a timely manner in order to provide sufficient system response time and video processing time 5 3 3 3 Test Approach We will test this by verifying that hash maps are formed during video analysis tracking These hash maps will be compared to drill specification hash maps and update rep counts in an adequate amount of time 5 3 4 Background Noise Reduction 5 3 4 1 Risks Low 5 3 4 2 Description The Smart Fitness Trainer shall differentiate between background noise and voice commands given from the current user 5 3 4 3 Test Approach We will test this verifying that the system can interpret voice commands and setting with various sounds 5 3 5 Reliable Data Backup 5 3 5 1 Risks Low 5 3 5 2 Description 2 jJ The SMART Trainer system shall save and backup all data that have been both received and generated for t
35. of the workout by sending out audio text instructions and correct drill movement hash maps Combine OverallStat object and Statistic objects into single OverallStat object to be saved with user information Compare to DrillCompletionRequirement for current drill to see if it is time to move to the next drill Display current text instruction string when command to display is received Medium Medium Play current audio instruction file when command to play is received Compare user skeleton hash maps to correct drill movement hash maps and produce Boolean value based on result CWP8 CWP9 CWP10 3 5 3 Test ID Statistic Tracker Statistic Tracker Statistic Tracker Subsystem Menu Navigation Controller Menu Navigation Controller Menu Navigation Controller Profile Profile Profile Post Workout Evaluation Boolean value Integer Heart Rate User Information Timer Object Function call to reset drill counters Profile Processing Layer Component Tests Update current drill counters Low based on Boolean value received from Movement Comparison Update overall workout counters based on values from heart rate user information and timer Save final information for drill in a Statistic object and reset the current drill counters to zero Medium Table 3 9 Profile Processing Layer Component Tests Action Event or String representing a selection from the profile menu Action
36. overall statistics points IPP6 Action event or string to view Workout object workout IPP7 Action event or string to start Workout object and workout function call to start workout IPP8 OverallStat object as parameter OverallStat object Medium IPP9 FitnessTestResults object Integer fitness score and Medium workout goal string 3 6 4 Database Management Layer Integration Tests Table 3 15 Database Management Layer Integration Tests Test ID Expected Action Result User object containing user Retrieves and sends information Medium information back to the profile processing layer from the database Integer fitness level and String fitness Drills matching the fitness goal Medium goal that are equal to or below the fitness level 3 6 5 Presentation Layer Integration Tests Table 3 16 Presentation Layer Integration Tests Test ID Expected Action Result OverallStat object for the workout Update the Jlabel for the corresponding workout statistics Statistic object Update the Jlabel for the corresponding reps ad statistics for the user Audio instruction files Audio file output to the speakers Text instruction files Update the Jlabel for the corresponding instruction in a user s workout User object with information Update all JLabels for editing and or creating a user IP6 String ID for username Update all Jlabels for the current High user 3 7 System Verification Tests Test ID Profile Perform
37. rameter Calls Menu Display module in Presentation layer with OverallStat object as parameter UPP10 Graph Assembler ArrayList of Calls Menu Display module in Medium OverallStat objects Presentation layer with integer array of data points as parameter UPP11 Drill Assembler Integer representing Calls Drill Retrieval module in fitness score Database Management layer Array of ten integers with fitness level integer and fitness goal String as parameters Calls Current User Info module with array of ten integers representing drill IDs as parameter 3 4 4 Database Management Layer Unit Tests Table 3 5 Database Management Layer Unit Tests Test ID Module Expected Output Action User Account User object Create database queries to Storage containing user edit create a user information User Account String containg the Create database queries to load Retrieval user s name information about a user Drill Retrieval Integer representing Create database queries to fitness score and an retrieve a drill array of integers 3 4 5 Presentation Layer Unit Tests Table 3 6 Presentation Layer Unit Tests Test ID Module Expected Output Action UP1 Menu Display Integers for both the JFrame that will be comprised user statistics and drill of the Menu Display s input statistic s Strings that represent text instructions UP2 Camera Display Depth Map Depth Map Jpanel displaying the video source Audio Feed Audio File Audio outp
38. rt Progression mode which will take the user through a medical check fitness assessment and allow the user to choose one of 3 fitness goals before generating a personalized workout Medical Check The Smart Fitness Trainer shall perform a 1 Critical medical check which will have the user answer commonly asked questions by trainers before starting a new workout Fitness Assessment The Smart Fitness Trainer shall have the user 1 Critical perform several basic exercises and measure the amount of correctly performed reps to provide a baseline of the user s prior workout experience Workout Goals The Smart Fitness Trainer shall allow the user 1 Critical to choose from one of three major workout goals Strength Tone and Cardio Workout Statistics The Smart Fitness Trainer shall track and display heart beat and calories burned during the current workout total performed reps and correctly performed reps The Smart Fitness Trainer shall generate a personalized workout plan for the user based on the fitness assessment and workout goal The Smart Fitness Trainer shall provide both audio and visual instructions to the user on how to perform a drill and what they should be doing at certain times during their workout ex rest period start stop etc The Smart Fitness Trainer shall record the user s height weight BMI total calories burned minutes worked out and other information about the user which can be displayed in
39. scription Priority 5 1 System Response Time The Smart Fitness trainer shall make all 1 Critical calculations on data in a timely manner in order to provide real time feedback 5 2 Video Processing Time The Smart Fitness Trainershall process 1 Critical 640x480 resolution frames at 30 frames second read in from the camera in a timely manner 5 3 Video Analysis Tracking The Smart Fitness Trainershall correctly 1 Critical analyze and track the user s movements in a timely manner in order to provide sufficient system response time and video processing 5 4 Reliable Data Backup The SMART Trainer system shall save and 1 Critical backup all data to the databases provided 2 2 4 Safety Requirements This section describes the safety requirements of the Smart Fitness Trainer The safety of the system and the person using the system are both covered in this section Table 2 4 Safety Requirements Requirement Description Priority 6 1 Overheating Protection The Smart Fitness Trainer shall include fans 1 Critical inside of the mini computer s case to prevent the system from overheating 6 2 Non Hazardous Setup The Smart Fitness Trainer shall have minimal 1 Critical wire exposure Only power cords and cords which connect the components RGB D Camera to computer will be exposed Health Warning The Smart Fitness Trainer shall display a brief 1 Critical health warning as the program boots up 2 2 5 Maintenance and Support Requ
40. se We will test if the information can be displayed in graph form by giving sample coordinate data to ensure a graph is correctly constructed 5 2 11 Quick Workout 5 2 11 1 Risks Medium 5 2 11 2 Description The SMART Fitness trainer shall allow the user to substitute any workout with a quick workout allowing them to select their own drills from the database for the workout 5 2 11 3 Test Approach We will test this by verifying that all users have the option to select Quick Workout from the menu screen 5 2 12 User Interface 5 2 12 1 Risks High sj 5 2 12 2 Description The SMART Fitness trainer shall have an appealing user interface which will be intuitive for the user The interface shall include options such as selecting a profile creating a profile and selecting your workout 5 2 12 3 Test Approach We will test this by verifying that making sure that a minimum number of selectable options appear on each screen 5 2 13 User Profile 5 2 13 1 Risks High 5 2 13 2 Description The SMART Fitness trainer shall allow the user to create edit or delete a user profile which will be used to login to progression mode 5 2 13 3 Test Approach We will test this by verifying that all users have the ability to selection those corresponding options Create Profile Edit Profile etc on the system profile screen 5 2 14 User Pictures 5 2 14 1 Risks Low 5 2 14 2 Description The SMART Fitness trainer shall allo
41. sent back to workout controller depending on what Data structure containing stats from a completed or aborted workout for the Audio files are sent to the audio subsystem in the Presentation layer when the ws String containing text workout instructions are sent the menu display subsystem W9 Values of the tracked statistics are sent to the menu display subsystem in the W10 Request to play an audio feedback file is sent to the audio subsystem in the Command to start performing a workout sent to the workout controller B Data structure containing profile information such as name statistics and user s PP4 Requests to load or save profile information sent to the user data access Requests to get drill information for drills which meet criteria for user based on P1 Audio output sent to speakers P2 Video output of user interface to display 2 4 Detailed Design Specification The DDS document took the information from the ADS document and described it in much more detail by breaking down each subsystem into modules These modules will be shown below as well as a brief description of each data flow between the modules For more information see the Detailed Design Specification 2 4 4 Module Overview Figure 2 3 Module Data Flow Diagram 2 4 2 Data Flow Descriptions 2 4 2 1 Input Layer Data Flows Table 2 9 Input Layer Data Flows Data Flow Description I1 Raw video D Raw audio 7 8 I Audio to attempt to matc
42. t Command to reset counter Drill Stat Tracker Overall Stat Tracker Integer heart rate value Timer object User information Rep Feedback Boolean result Profile Processing Layer Unit Tests Iterate through the User Workout object following all initialization steps for each drill when the Start command is received until the workout is completed or the stop workout command is received Compare incoming statistic object to the Drill Completion Requirement object to determine if drill is complete or not Combine the OverallStat object and each Statistic object into the final OverallStat object Store current drill s text instruction file Store current drill s audio instruction file Compare values between the two hash maps and generate a Boolean value based on whether or not they match for each rep Increment counters for current drill based on Boolean result obtained from rep engine Reset counters to zero when command is received Calculate calories burned based on timer object heart rate and user information Medium Determine to play feedback sound for good bad rep Boolean value by using a random number generator Table 3 4 Profile Processing Layer Unit Tests Module Menu Controller Input Action Event String Risk High Expected Output Action Action Event or String should be sent to the correct menu controller Also if Action Event or String is sent to Workout Controller
43. t while the test approach explains how we will verify its implementation 5 2 Customer Requirements 5 2 1 RGB D Camera Tracking 5 2 1 1 Risk High 5 2 1 2 Description The SMART Fitness trainer shall use an RGB D camera to track the movement of the user 5 2 1 3 Test Approach We will test to make sure that the RGB D Camera is generating a depth map by printing out the depth map to the screen 5 2 2 User Movement Analysis 5 2 2 1 Risk High 5 2 2 2 Description The SMART Fitness Trainer shall analyze the user s movement to determine if the user is performing an exercise correctly 5 2 2 3 Test Approach We will test to make sure that the SMART Fitness Trainer is analyzing the user s movement correctly by displaying the user skeleton object to the screen and seeing if it matches the correct user position 5 2 3 Workout Progression Mode 5 2 3 1 Risk High 5 2 3 2 Description gg PR The SMART Fitness trainer shall allow the user to start Progression mode which will take the user through a medical check fitness assessment and allow the user to choose one of 3 fitness goals before generating a personalized workout 5 2 3 3 Test Approach We will test this by verifying that all users are required to pass a medical check and fitness assessment during the creation of the user s Progression mode 5 2 4 Medical Check 5 2 4 1 Risks High 5 2 4 2 Description The SMART Fitness trainer shall perform a medical check whic
44. tegration and System Verification 8 2 Hardware Testing All of the computer hardware will be tested when the pieces have been assembled into the case All other hardware will be tested individually Pass The hardware unit returns the expected output when given a valid input The hardware unit returns an error when given an invalid input Fail The hardware unit fails to provide the expected output when given a valid input The hardware unit fails to provide an error when given an invalid input 8 3 Unit Module Testing The given inputs and expected outputs are based on the documentation in the DDS document Pass The module returns the expected output when given a valid input or returns an error when given an invalid input Fail The module fails to provide the expected output when given a valid input or fails to provide an error when given an invalid input 8 4 Component Subsystem Testing When all modules in a subsystem have passed Unit Testing that subsystem as a whole will be tested The given inputs and expected outputs are based on the documentation in the ADS and DDS documents Pass The subsystem returns the expected output when given a valid input or returns an error when given an invalid input Fail s jJ The subsystem fails to provide the expected output when given a valid input or fails to provide an error when given an invalid input 8 5 Integration Layer Testing After a
45. trategy in this document we will affirm that our product is usable and has the required functionality present when it is delivered to our customer Jeremy Roden The Detailed Design Specification DDS contained a brief section on Quality Assurance with a broad overview of testing considerations and procedures In this STP document we will pick up where we left off in the DDS by continuing this discussion in much more detail We will provide detailed testing procedures for each module subsystem and layer in the Smart Fitness Trainer system A section of this document will also be dedicated to an overall test strategy including the actual metrics we will use to ensure that the critical requirements from the System Requirements Specification SRS document have been met The testing procedures covered in this document will include hardware unit module subsystem component layer integration and system verification testing 12 Product Overview The Smart Fitness Trainer shall allow individuals to engage in a home work out and be able to track their progression At various points the system shall use image analysis to obtain several key body statistics of the user such as height weight and body mass index through the use of an RGB D camera Before a user is able to engage in a provided workout program an initial readiness assessment will be performed This assessment will require the user to take a medical assessment as well as perform short exercise
46. ut to speaker Medium mp3 wave 3 5 Component Tests 3 5 1 Input Layer Component Tests Ew j Table 3 7 Input Layer Component Tests Test ID Module CI RGB D Camera Input Handler Video Feed Microphone Audio source Input Handler Voice to Text Audio output cl4 Bluetooth Input Handler 3 5 2 Workout Processing Layer Component Tests Test ID CWP1 Workout Controller Workout Controller CWP2 Workout Controller Workout Controller Workout Instruction Workout Instruction Movement Comparison Subsystem Bluetooth transmissions Input ActionEvent String to Start Workout Start Workout function call with Workout object parameter Statistic object OverallStat object Integer containing current rep value or timer value String Text Instructions Command to display instructions Audio file with Audio Instructions Command to play instructions User Skeleton Hash Maps Correct Drill Movement Hash Expected Output Action Generate Depth Map to be displayed and User Skeleton Hash Map to be compared to Drill Specifications Audio output from source String matching audio output if is found in the pre defined dictionary Integer heart rate and Key Press events Medium Table 3 8 Workout Processing Layer Component Tests Expected Output Action Risk Makes the correct Profile Medium subsystem function calls Initializes the first drill
47. w the user to take pictures of themselves at different points in the workout plan to assess how the workout has impacted their appearance 5 2 14 3 Test Approach We will test this by having a test user take a sample picture 5 2 15 Voice Commands 5 2 15 1 Risks Low 5 2 15 2 Description v Jh The Smart Fitness Trainer shall accept voice commands for menu interactions and other inputs during workouts 5 2 15 3 Test Approach We will test this verifying that the system responds to a user s voice command 5 2 16 Personal Best Recognition 5 2 16 1 Risks Medium 5 2 16 2 Description The Smart Fitness Trainer shall be able to identify when a user has performed an exercise better than any previous attempts and display a notification of a personal best 5 2 16 3 Test Approach We will test this by having a test user with a pre completed workout attempt undergo the same exercise routine to make determine whether the user has performed better on the exercise 5 3 Performance Requirements 5 3 1 System Response Time 5 3 1 1 Risks High 5 3 1 2 Description The Smart Fitness Trainer shall calculate all point cloud calculations and send all point cloud transformation data in a timely manner in order to provide real time feedback and statistics to the user 5 3 1 3 Test Approach We will test this verifying that all commands and functions can be performed in an appropriate amount of time in test run through without any lag a
Download Pdf Manuals
Related Search
Related Contents
1 - Storm Bowling Accessori JVC RX-5032VSL User's Manual Manuel d`utilisation XCARLink Bluetooth 取扱説明書 - Bose 油圧ブレーカFシリーズ 油圧ブレーカFシリーズ Orion-MCU User Manual 2.1.4 La bible du team T。URNAMENT AーRーW取扱説明書 離野幌 3E0682 Mains Energizer M150 M300 M500.indb Copyright © All rights reserved.
Failed to retrieve file