System ad Software Architecture Descriptio (SSAD) Diabetes Health Platform Team #6 Jasmie Berry (Cliet) Veerav Naidu (Project Maager) Mukai Nog (Architect) Steve South (IV&V) Vijaya Prabhakara (Quality Focal Poit) Sudeep Suresha (Operatioal Cocept Egieer) Aashiha Priyadarshi Lakshmi Kumar (Prototyper) Vishali Somaskatha (Requiremets Egieer) Vady Somaskatha (Implemeter / Tester) Surabhi Goyal (Architect) 13 October 2017
Versio History Date Author Versio Chages made Ratioale 10/08/17 MN 1.0 Chapters 1,2,5 Draft 10/15/17 VV 1.1 Chapters 3,4 Fialize
Table of Cotets System ad Software Architecture Descriptio (SSAD)... i Versio History... ii Table of Cotets... iii Table of Tables... iv Table of Figures... v 1. Itroductio... 1 1.1 Purpose of the SSAD... 1 1.2 Status of the SSAD... 1 2. System Aalysis... 2 2.1 System Aalysis Overview... 2 2.2 System Aalysis Ratioale... 5 3. Techology-Idepedet Model... 6 3.1 Desig Overview... 6 3.2 Desig Ratioale... 8 4. Techology-Specific System Desig... 9 4.1 Desig Overview... 9 4.2 Desig Ratioale... 10 5. Architectural Styles, Patters ad Frameworks... 11 Table of Tables Table 1: Actors Summary. 2 Table 2: Artifacts ad Iformatio Summary. 3 Table 3: Process Descriptio. 4 Table 4: Typical Course of Actio. 4 Table 5: Alterate Course of Actio. 4 Table 6: Exceptioal Course of Actio. 4 Table 7: Hardware Compoet Descriptio. 7 Table 8: Software Compoet Descriptio. 7 Table 9: Supportig Software Compoet Descriptio. 7 Table 10: Desig Class Descriptio. 8 Table 11: Hardware Compoet Descriptio. 9 Table 12: Software Compoet Descriptio. 9 Table 13: Supportig Software Compoet Descriptio. 10 Table 14: Desig Class Descriptio. 10 Table 15: Architectural Styles, Patters, ad Frameworks. 11
Table of Figures Figure 1: System Cotext Diagram.. 2 Figure 2: Artifacts ad Iformatio Diagram.. 3 Figure 3: Process Diagram.. 4 Figure 4: Coceptual Domai Model 6 Figure 5: Hardware Compoet Class Diagram.. 6 Figure 6: Software Compoet Class Diagram.. 6 Figure 7: Deploymet Diagram.. 6 Figure 8: Supportig Software Compoet Class Diagram.. 7 Figure 9: Desig Class Diagram.. 8 Figure 10: Robustess Diagram.. 8 Figure 11: Sequece Diagram.. 8 Figure 12: Hardware Compoet Class Diagram.. 9 Figure 13: Software Compoet Class Diagram.. 9 Figure 14: Deploymet Diagram.. 9 Figure 15: Supportig Software Compoet Class Diagram.. 9 Figure 16: Desig Class Diagram.. 10 Figure 17: Process Realizatio Diagram.. 10
1. Itroductio 1.1 Purpose of the SSAD The SSAD describes the whole picture of our project, which describes how the user ca iteract with the applicatio ad use all the features available. This report cotais the diagrams that are demostrate the details of each of the feature that is available i the app. It also specifies the architectures of the project, with the focus o the software. 1.2 Status of the SSAD At this time, we have icluded the use case diagram, system cotext diagram.
2. System Aalysis 2.1 System Aalysis Overview The foremost objective of Diabetes Health Platform is to allow the users to eter their blood level ito the app. The app is built i adroid. Whe the users firstly logi, there are a few survey pages that the users ca eter their persoal ifo. After that, the users ca use the app regularly ad eter their diet ad blood ifo ito the app. 2.1.1 System Cotext Figure 1: System Cotext Diagram
Table 1: Actors Summary Actor Descriptio Resposibilities Patiet The user who uses the app 1. Eter the autheticatio 2. Update their profile 3. Record ifo Maitaier The perso to moitor the app after it is operatioal Fix bugs ad admiistrate the database Doctor The professioal who provide assistace to patiets Receive reports from patiet Food API The API provided by USDA Providig all the detailed food ifo CGM The machie that detect the health ifo of patiets Check the health status of the patiet ad provide data to the app 2.1.2 Artifacts & Iformatio <<Artifacts ad Iformatio Diagram>> Figure 2: Artifacts ad Iformatio Diagram Table 2: Artifacts ad Iformatio Summary
Artifact Purpose User Autheticatio Provide the form so the user ca logi or register the app User Profile User s ifo such as ame age, umber User error log All the error messages that are recorded i the cliet side Submissio User submit to the doctor Notificatio User receives whe blood sugar threshold reaches charts The isuli diagram that is geerated food loggig (each diet) User eters for ifo for each meal 2.1.3 Behavior
Figure 3: Process Diagram <<Use-Case Diagram>> 2.1.3.1 Capability Diabetes Health Platform 2.1.3.1.1 Process Diabetes Health Platform 1. User ca logi Idetifier UC01 - User ca logi Purpose The user logi ad use the app Requiremets Autheticatio Developmet Risks Noe Pre-coditios User has coectio to iteret, the database works properly Post-coditios If user is authorized, give the appropriate role for the user to access system; otherwise, user is deied access to the system.
Typical Course of Actio 1 Eter userame ad password 2 Click logi Sed the form to Autheticatio backed to check its valid Logi Alterate Course of Actio: Failure 1 The user eters the data 2 Display error message to users like ivalid userame or password Click OK Redirect to logi page 2. User ca eter the food Idetifier UC02 - User ca eter the food ifo Purpose The user ca clicks the meu to eter the food ifo Requiremets Touch scree adroid phoe Developmet Risks The seior people do t kow how to use touch scree smartphoe. Pre-coditios The user is logied ad fiishes the preferece Post-coditios The diet ifo is etered ito the the app
Typical Course of Actio 1 The user eters the ifo 2 The user clicks the submit butto The app checks the etered cotets, verify the restrictios of wordig. Alterate Course of Actio The system store the cotets ito database, ad shows the user success message. 1 The user eters the ifo 2 The user clicks the submit butto The etered ifo is ot compatible with the requiremets Exceptioal Course of Actio The app prompts error message ad requires the user to re-eter 1 The user eters the ifo 2 The user clicks the submit butto The app experieces critical error ad crashes. 3. User ca eter Survey prefereces Idetifier UC03 - User ca eter survey prefereces
Purpose The user ca clicks the persoalized butto to persoalize Requiremets Touch scree adroid phoe Developmet Risks The users have ot made fial decisios o the prefereces Pre-coditios The user is registerig for the 1st time Post-coditios The user s prefereces are set ad caot be chaged Typical Course of Actio 1 The user selects prefereces 2 The user clicks the save & ext The app process the user s selectios ad sed to the backed program. Alterate Course of Actio The user s prefereces are saved, oce fiished the user ca use the app ormally 1 The user selects prefereces 2 The user clicks the save & ext The etered ifo is ot part of the survey selectios Exceptioal Course of Actio The app prompts error message ad requires the user to re-eter
1 The user selects prefereces 2 The user clicks the save & ext The app experieces critical error ad crashes. 4. User ca persoalize health recommedatio Idetifier UC04 - User ca persoalize health recommedatio Purpose The user ca clicks the persoalized butto to persoalize Requiremets Touch scree adroid phoe Developmet Risks The users have limited health kowledge Pre-coditios The user is logied ad fiishes the preferece Post-coditios The dashboard is persoalized Typical Course of Actio 1 The user selects prefereces 2 The user clicks the submit butto The app process the user s selectios ad sed to the backed program. Alterate Course of Actio The user s prefereces are saved, the UI is refreshed after relauchig the app.
1 The user selects prefereces 2 The user clicks the submit butto The etered ifo is ot compatible with the requiremets Exceptioal Course of Actio The app prompts error message ad requires the user to re-eter 1 The user selects prefereces 2 The user clicks the submit butto The app experieces critical error ad crashes. 5. User ca use the Nutritio & Exercise feature Idetifier UC05 - User ca moitor diet itake & exercise Purpose The user ca track his diet ad exercise balace Requiremets Touch scree adroid phoe Developmet Risks The users have limited health kowledge Pre-coditios The user is logied ad fiishes the preferece Post-coditios The data is etered ito the database Typical Course of Actio
1 The user eter the data 2 The user clicks the submit butto The app process the user s selectios ad sed to the backed program. Alterate Course of Actio The user s prefereces are saved, the app will aalyses user s data ad update user s health status 1 The user selects prefereces 2 The user clicks the submit butto The etered ifo is ot ratioal. Exceptioal Course of Actio The app prompts error message ad requires the user to re-eter 1 The user selects prefereces 2 The user clicks the submit butto The app experieces critical error ad crashes. 2.1.4 Modes of Operatio The system oly has oe mode, o descriptio o this sectio. 2.2 System Aalysis Ratioale
The app targets the groups of people who has eed to measure ad moitor their blood level. The stakeholders are the users. These users will become the members of the members of the system. 3. Techology-Idepedet Model 3.1 Desig Overview 3.1.1 System Structure Figure 4: Coceptual Domai Model The Project is developed usig cliet suggested web templates ad CGM API s. We are omittig this sectio to avoid redudacy with Techology specific system desig i sectio-4 4. Techology-Specific System Desig 4.1 Desig Overview 4.1.1 System Structure
Figure 12: Hardware Compoet Class Diagram Figure 13: Software Compoet Class Diagram
Figure 14: Deploymet Diagram Table 11: Hardware Compoet Descriptio Hardware Compoet Descriptio Adroid Based Mobile Device Adroid versio 5 ad above is supported for user access. Cotiuous Glucose Moitor(CGM) Dexcom CGM will be supported ad itegrated with the applicatio Workstatio Website ca be accessed from the desktop workstatio. Widows, MAC ad Liux latest versios will be supported Firebase Database Firebase database is used to store all the user specific data for up to 3 moths Table 12: Software Compoet Descriptio Software Compoet Descriptio Harexi Website Static website to provide user iformatio o diabetes ad latest techical developmets related to diabetes
Logi Compoet Logi page to allow user to logi or create a ew profile Survey ad Medical History Compoet Series of screes to get complete health backgroud iformatio o the user to persoalize the applicatio Food Recordig Page to allow user to eter the food eate ito database. This calls food API to retrieve data from USDA Computatio Module Module to calculate the required isuli dosage based o all the iput data CGM Coector Module to coect to the CGM ad retrieve patiet s iformatio. This calls CGM API Database Database stored o mobile to store ad retrieve patiet data Notificatio Compoet Compoet to sed otificatio to patiet ad the doctor CGM API CGM API made available by the CGM service provider. This is itegrated with i-house CGM fuctio Food API Food API made available by the USDA restapi fuctioality. This itegrated with local foodsearch fuctio. 4.1.2 Desig Classes 4.1.2.1
Figure 16: Desig Class Diagram Table 14: Desig Class Descriptio Class Type Descriptio Patiet Etity Patiet with Type-2 diabetes. All the Patiet details are recorded i this sectio CGM Compoet Patiet with CGM eabled. The class eables coectio betwee the applicatio ad exteral CGM API DBCoector Compoet Coects to local database to store ad retrieve patiet data FoodAPI Compoet Coects to exteral food API to retrieve the utritioal value of the food cosumed by the patiet
Moitor Compoet This sectio computes the required isuli dosage Display Compoet Seds various otificatios to patiet ad doctors either periodically or based o threshold settigs 4.1.3 Process Realizatio Figure 18:Sequece Diagram 4.2 Desig Ratioale Harexi App will be used by patiets sufferig from Type-2 diabetes. The App is desiged to collect the blood glucose level from patiets through either CGM or maual etry. CGM model Dexcom was suggested by the cliet. We choose to use firebase database as it provides database o mobile platform with rich fuctioality set ad easy itegratio. We also decided to use USDA API s to get food utritioal values. The app will be developed usig Java due to ihouse experiece ad easy itegratio with exteral compoets. The App ca be categorized ito followig compoets: 1. User Persoalizatio: Set of pages to collect data i the frot ed ad store i the database. a. Adroid device screes b. JSON documets. 2. Food Etry: Page to collect the food etry, commuicate with foodapi. Oce selected, store it i database.. Adroid device screes a. restapi ad HTTP
b. JSON 3. CGM Coectivity: Coect to CGM database to retrive data.. restapi ad HTTP 4. Notificatio: Geerate report or alerts usig data from database. SMTP to sed emails to patiet ad doctor 5. Architectural Styles, Patters ad Frameworks Table 15: Architectural Styles, Patters, ad Frameworks Name Descriptio Beefits, Costs, ad Limitatios 3-tier architecture The presetatio layer is the Adroid UI, the logic layer is the Java code, ad the data is i the Firebase. - The user is supposed to have a Adroid device. MVC Models, Views ad Cotrollers - If the applicatio is complex, the model layer will be very complicated. - MVC has separate layers for each specific layers