1 of 39

KARE Team Final Presentation

CS481.001, Central Washington University, Spring 2023

2 of 39

Table of Contents

  • Project Overview
    • KARE Application, Teams, Client, and Problem Statement
  • Development
    • Mobile Development
      • Requirements, Design, Tools
    • Desktop Development
      • Requirements, Tools, Design
    • Database Development
      • Requirements, Design, Tools, Bugs
  • Application Demonstrations
    • Mobile App
    • Desktop App
  • Conclusion

2

3 of 39

The Project

  • KARE
  • Medically Complex Children
  • Structure for Parents
  • Three Core Components:
    • Mobile
    • Desktop
    • Server

3

4 of 39

Project Teams

Mobile Team

Hunter Berg

Logan Halverson

Conner Kaul

Desktop Team

Zak Kappenman

Megan Phinney

Stephan Schuller

Server Team

Ryan von Fiedler

Ardit Miftaraj

4

5 of 39

Supervisor & Customers

  • Supervisor: Dr. Szilard Vajda
    • Department of Sciences, Computer Science
  • Customers: Dr. Donald Davendra & Dr. Magdalena Bialic-Davendra
    • College of Sciences, Computer Science
    • College of Business, Economics
      • Aid in the Care of MCC
      • Help Parents and Doctors Maintain a Good Record of Care

5

6 of 39

Problem Statement

The transition from hospital care to home care is a difficult one, and KARE seeks to make that process easier.

6

7 of 39

Mobile Application

7

8 of 39

Mobile Tools

  • React Native
    • JavaScript Framework
  • Node JS
    • JavaScript Server Backend
  • Expo
    • Mobile Platform Built on React-Native

8

9 of 39

Mobile Progress

  • Overhauled User Interface & User Design
  • Fixed Various Bugs & Several Features
    • Filter, Status Bar, Logs, Merged Log & Home Care Pages
  • Added Functionality
    • Recurring Scheduled Events, Event Deletion, IP Input, New Data Log Page
  • Improved API Calls
    • Added Deletion Call & Fixed Scheduled Event API
  • Began Offline Implementation
    • Offline Login & Offline API Call Storage

9

10 of 39

Mobile High-Level Design

10

11 of 39

Mobile Low-Level Design

11

12 of 39

Mobile App

12

Schedule

Home Care

Log

13 of 39

Login

  • Server Address Changing
  • Responsive Scaling

13

14 of 39

Schedule

  • Scheduling Repeating Events
  • Filtering, Logging, Deleting Events

14

15 of 39

Home Care - Old

  • Manual Logging
  • Separate Screens

15

16 of 39

Home Care - New

  • Emphasize the Most Important Events
  • Centralize Manual Logging

16

17 of 39

Data Log

  • See Recent Entries
  • Stored for One Week Only

17

18 of 39

Mobile Test Cases

Bugs Fixed As a Result of Test Cases

  • 21 Mobile Development Trello tasks accomplished
  • Interchangeable usage of cancel and back
  • Security issues with scheduled events
  • Schedule filtering not working correctly
  • Scheduled events had no capacity for repetition
  • Scroll functionality not working on Android devices

18

19 of 39

Desktop Application

19

20 of 39

Desktop Requirements

Previous Iteration

  • Data Visualization
  • Data Storage
  • Exporting Graphs and Data
  • Log New Entries

20

21 of 39

Desktop Requirements Cont.

Current Iteration

  • Improve Data Visualization
  • Implement a Log Page
  • Clear the Server of Old Events
  • Testing and Improving
  • Offline Functionality

21

22 of 39

Desktop Tools

Python Packages and Libraries

  • MatPlotLib
  • Pandas
  • PIL
  • Requests
  • PyInstaller
  • TKinter

22

23 of 39

Desktop High-Level Design

23

24 of 39

Desktop Low-Level Design

24

25 of 39

Desktop Low-Level Design Continued

25

26 of 39

Desktop Testing

Stages of Testing

  • Legacy Testing
  • New Requirements Testing
  • “Quality of Life” Testing
  • Final Exploitative Testing

By the Numbers

  • Started with 8 Test Cases
  • Ended with 26 Test Cases
  • Final Test Report 85 Pages

26

27 of 39

Server Component

27

28 of 39

Server Requirements

  • Bug Fixing
  • Stability
  • API Creation
  • Data Normalization
  • Security Fixes

28

29 of 39

Server High-Level Design

29

30 of 39

Server Low-Level Design

30

31 of 39

Server Low-Level Design

31

32 of 39

Database - Entity Relationship Diagram (ERD)

32

33 of 39

Server Tools

  • Nanode 1GB
  • SSL Certification
  • SSH Access
  • Easy to Clone
  • Easy to Transfer

33

34 of 39

Server Tools

  • Linux (Ubuntu 20.04)
  • Node
  • MySQL
  • PHP
  • Systemd

34

35 of 39

Server Bugs

  • Port 80 Resource Contention
  • Data Confusion
  • API Typos
  • SQL Injection Attacks

35

36 of 39

Mobile Demo

Logan will now livestream a mobile demo

36

37 of 39

Desktop Demo

Megan will now livestream a desktop demo

37

38 of 39

Conclusion

  • Rigorous Testing
  • Functionality
  • User Friendly
  • Security
  • Deployment

38

39 of 39

Any Questions?

39