Harbingers FinalProj

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 61

University of Negros Occidental-Recoletos

AY 2021-2022
College of Accountancy, Business, and Computer Studies

TracerForce

by

Colline W. Aspan
Jericho Jarod B. Besa
Elian Joshua C. Bornales
Hurly Zade Christian C. Cabalan
Sven Marv Resuelo

December 30, 2021


Table of Contents

1. Introduction 1

1.1 TracerForce Data Flow Diagram 2

1.2 Scope and Limitations 8

1.3 Assumptions 9

1.4 Application Identity 9

2. Problem Statement 10

3. Project Objectives 11

4. Risk Analysis 13

4.1 Risk Table 13

4.2 Risks Descriptions 14

5. Manual Controls, Policies and Procedures 15

6. Software Abstract 17

6.1 TracerForce Use Case Diagram 17

6.1.1 Register User 17

6.1.2 Scanning of QR Code 18

6.1.3 Contact User 20

6.1.4 Verify User Information 21

6.1.5 Generate Statistic Report 22

6.2 TracerForce Entity Relationship Diagram 23

6.3 TracerForce Data Dictionary 25

7. System Prototype 35

7.1 User Registration User Interface 35


7.2 Individual Case Report User Interface 36

7.3 Employee Login User Interface 38

7.4 Statistics Report Dashboard User Interface 39

7.5 Mobile Web Application Interfaces User Interface 40

8. Hardware Recommendation 41

9. Software Recommendation 42

10. Software Quality and Metrics 45

10.1 Function Point Analysis 45

10.2 Value Added Factors 46

11. Summary of Recommendations 48

References 50

Appendices 52

1. Gantt Chart 52

2. Pert Table 53

3. Curriculum Vitae 55
List of Figures

1 TracerForce Context Data Flow Diagram 2

2 Registration First Level DFD 3

3 Scanning QR Code First Level DFD 4

4 Contact Tracing First Level DFD 5

5 Verify User Information First Level DFD 6

6 Generate Statistics Report First Level DFD 7

7 Application Logo 10

8 TracerForce Use Case Diagram 17

9 TracerForce Entity-Relationship Diagram 18

10 User Registration User Interface 19

11 Individual Case Report User Interface 20

12 Employee Login User Interface 38

13 Statistics Report Dashboard User Interface 39

14 Mobile Web Application Interfaces User Interface 40


List of Tables

1 Summary of Risk Identified 13

2 <Area Name> Risk Summary and Recommendations 0

3 <Area Name> Risk Summary and Recommendations 0

…add if necessary

4 User and User Admins 0

5 System Features 0

6 <Name of System> Use Case Narrative 0

7 <Table Name 1> Data Dictionary 0

8 <Table Name 2> Data Dictionary 0

…add if necessary

9 Project Team Hardware Specifications and Cost 0

10 End-Users Hardware Specifications and Cost 0

11 Function Point Analysis 0

12 Value Added Factors 0

13 Project Team Composition 0


Introduction

The project solution aims to construct an effective and efficient COVID-19 tracing

application as a website-based platform to centralize official data gathered from the national

medical sector. It will focus on the centralization, collation, security, and integrity of official data

gathered nationwide through the application. Its general functionalities include profiling of

individuals, identification of cases and associated follow-up contacts, and collation of RT-PCR

swab test results, while ensuring that data privacy and confidentiality of the cases' personal

information is strictly observed. The solution will also include a monitoring system that audits the

following: (1) nationwide COVID-19 cases, quarantined, deaths and recoveries, (2) quarantine

facilities and their current cases, and (3) hospital admissions. For the public, it will also include

infographics composed of tips and health protocols for their optimal understanding of COVID-19

prevention. The use of effective graphic design principles will ensure optimal delivery of

information through accurate icons and logos, eye-friendly choice of color, and an intuitive website

layout.

1
1.1 TracerForce System Data Flow Diagram

The demonstration for the flow of data between users of the system are illustrated in this

section. The activities involved are registering the user, scanning the user's QR Code, contacting

the user regarding their positive RT-PCR test results, verifying the data provided by the user upon

registration, and the system generating statistics report at specific intervals.

Figure 1. TracerForce System Context Data Flow Diagram.

The context flow diagram starts with the user sending the required personal information

upon registering to the system. This unverified data will then be sent to the Systems Operator to

check the authenticity of the said data. Once the data is verified, the Systems Operator will send

the personal information of the user to the TracerForce System to store, which in turn will generate

a QR Code to be sent to the user. If a user gets a positive flag on their RT-PCR Test for COVID-

19, the Contact Tracer will be requesting the user’s personal information from the TracerForce

2
System. Afterwards, the said Contact Tracer will be sending the results and the user’s assigned

quarantine facility to the system, which will then be given to the Registered User through their

contact details.

1.1.1 Registration First Level DFD

The Registration system allows storage of users’ data for easy access. This makes

users identifiable and simplifies COVID tracking process through data they provide. This system

is also responsible for giving a QR-code for each user to make COVID tracking simpler.

Figure 2. Registration First Level DFD.

Provide a discussion describing the diagram highlighting specific processes included

in the illustration. Make sure that the description or the composition is on the same page as

the figure / diagram.

3
1.1.2 Scanning QR Code First Level DFD

The Scanning QR Code system is intended to make tracking of users easier and

faster. It allows data to be updated in the application by simply scanning and informs the

application of COVID updates efficiently. Data of users are also easily identified for contacting.

1.1.1

Figure 3. Scanning QR Code First Level DFD

Provide a discussion describing the diagram highlighting specific processes

included in the illustration. Make sure that the description or the composition is on

the same page as the figure / diagram.

4
1.1.3 Contact Tracing First Level DFD

The Contract Tracing system shows how users are updated and informed of COVID

developments. It handles showing of test results, list of facilities, and the process involved in

notifying users of updates and assigning them to facilities once they’re marked positive. The

processes involved here are an important system in keeping users safe.

Figure 4. Contact Tracing First Level DFD

Provide a discussion describing the diagram highlighting specific processes

included in the illustration. Make sure that the description or the composition is on

the same page as the figure / diagram.

5
1.1.4 Verify User Information First Level DFD

The verifying user information system serves both to identify and to inform. It

makes sure that the data is delivered to the system and keeps users secure. It also makes access to

the system easier through the use of QR-code and is one of the important parts of the application.

Figure 5. Verify User Information First Level DFD

Provide a discussion describing the diagram highlighting specific processes

included in the illustration. Make sure that the description or the composition is on

the same page as the figure / diagram.

6
1.1.5 Generate Statistics Report First Level DFD

Figure 6. Generate Statistics Report First Level DFD

Provide a discussion describing the diagram highlighting specific processes

included in the illustration. Make sure that the description or the composition is on

the same page as the figure / diagram.

7
1.2 Scope and Limitations

It is necessary in incorporating a general perspective of how a system works. This is

necessary in providing a preview of the motives as to why the system was primarily developed.

The TracerForce System is associated with a brief overview of the logical structures formulated in

order to develop the system’s features and capabilities.

1.2.1 Scope

The system is designed for both web and mobile platforms to serve as a solution to

the COVID-19 related problem statement formulated by the development team. It also

includes diagrams that are strictly followed for its design, various policies which revolve

around the ethical perspective of things, and the list of possible risks encountered before

and after deploying the system for public access.

1.2.2 Limitations

The system provides two applications which have a different purpose yet correlate

with one another. However, it is to be of note that there are limits to their functionality &

utilization. Taking the mobile application for instance, there are no extra features solely

aside from its capability to conduct QR code scanning. Furthermore, another hindering

factor is the lack of accommodation for unregistered users. These individuals will not be

logged manually into the system without their QR code information.

8
1.3 Assumption

TracerForce's purpose is to track COVID by identifying users’ and establishments’

behavior to keep users informed of COVID developments. In doing so, certain assumptions are

made with regards to the applications usage for it to accomplish its goal. This mostly have to do

with users’ and establishments’ behavior in utilizing the application; these are:

● Establishments using the TracerForce mobile application should provide their own

mobile phones to be used for scanning. These mobile phones should also connect to

the internet in order to log the registered users entering their establishments into the

database.

● Establishments that offer transportation services such as bus stations and airports must

prepare different scanners for each destination of their respective vehicles to ensure

that the contact tracing process will proceed smoothly.

● Registered users should either bring their phone with the application installed or

anything that carries a copy of their QR codes provided by the application and have it

scanned before going inside any establishments to ensure that their data are properly

recorded.

1.4 Team Identity

The Harbingers, also known as the TracerForce, is a five-cell team of software developers

who aim to contribute to the efforts of reducing the impact of COVID-19 in the Philippines with

the extensive use of digital technology. They specialize in web/mobile software development, and

9
their project solution will be a combination of web/mobile technology. Due to this specialization,

they proposed this project named the TracerForce System.

Figure 7. Application Logo.

● Rounded square teal background. The UI’s color scheme contains teal and a darker

accent, thus the lighter color is used as the background for clarity.

● Rounded dark teal borders. This symbolizes the QR scanning function of the

application. It was originally intended that a white horizontal line would be drawn

across the logo but it was not appealing so it was decided to keep the design as is.

● Dark teal TracerForce logo. This is taken from the letters T and F from “TracerForce,”

which is representative of the whole project and the development team which

alternatively has the same name.

2. Problem Statement

This system is developed to address several issues and concerns with the execution of

current COVID-19 protocols in the nation. Some of these reduce the efficiency of tasks, and some

10
are precursors to crime and can compromise data integrity and privacy. There are three of these

listed below.

2.1 No existing national-scale centralization of data. While provinces like South

Cotabato and Davao del Sur have their own contact tracing systems, other provinces are

adapting their systems for daily operations, which can be an inefficient approach on

handling data available on a national scale.

2.2 Falsification of given information. Due to the lack of definite authentication

protocols in the current contact tracing systems in the country, it is easier for users to

provide false information to bypass contact tracing. Worse, this vulnerability could be used

to initiate cyberattacks involving identity theft, disruption of daily operations, etc.

2.3 Inefficiency of current manual contact tracing protocols. While manual contract

tracing has its own merits, the current protocols in place lend themselves to a more time-

consuming and easily subjective contact tracing procedure. This is because individuals are

asked about their local or foreign travel history, where the limitation of human memory is

a significant factor to consider whether given information can be verified or not.

3. Project Objectives

As mentioned before, the system prioritizes the centralization, collation, security, and

integrity of data related to COVID-19 cases in the nation. As such, the team has formulated three

objectives for the system, with each respectively addressing the issues stated above. Some can

streamline general workflow and improve accuracy, and some can ensure that confidentiality of

user information is of critical priority.

11
3.1 Centralization of data on a national scale. This system aims to gather data

pertaining to COVID-19 cases from around the country in an efficient and systematic

manner. Centralization of data can prove useful especially in maintaining data integrity,

which is crucial in handling personally identifiable information. This also implies the

employment of stronger cybersecurity measures as this approach condenses data into a

single target for threat actors to initiate cyberattacks.

3.2 Definite authentication protocols. Since it ensures that every user of the system

is a human and has a singular set of information, it reduces the risk of cyberattack, identity

theft and falsification of information. This also improves the accuracy of information used

in analytics.

3.3 Use of objective data for contact tracing. This system uses log entries from

establishments that use its mobile QR scanner application to ensure objectivity during

contact tracing and reduce the prevalent risk of human error associated with manual contact

tracing.

12
4. Risk Analysis

The COVID Tracing app, TracerForce, contains necessary requirements for its intended

purpose and with it, certain risks. Developing software also has its own unavoidable problems by

nature. The risks are identified and labeled for clarity and provide an idea for a course of action.

4.1 Risk Table

Risks Category Probability Impact

1. Data Privacy TR 0.2 2

2. Developers PR 0.3 2

3. Employee Resignation PR 0.2 2

4. Life span BR 0.3 2

5. Natural disasters PR 0.1 1

Table 1. Risk Table.

Legends:

Level of Impact Risk Categories

1 – Catastrophic BR – Business Risk (an example is given

2 – Critical only indicate those categories

3 – Marginal with identified risk(s) based on the table presented)

4 - Negligible

13
4.2 Risks Descriptions

4.2.1 Data privacy. In identifying Covid, personally sensitive information is

required; some of which are identification, phone number, location, etc. Security is an

important feature for the system but being able to protect thousands and thousands of data

isn’t always a guarantee. This risk can not only harm the end user but the integrity of the

software.

4.2.2 Developers. Having necessary skills for an urgent project is very important.

The pace of the project is also determined by how well these people can do their job. A

large part of the project’s budget is also dedicated to their salary. Finding the wrong

developers would affect both budget and project greatly.

4.2.3 Employee resignation. Personal circumstances are unavoidable but still

require some consideration. An employee leaving the company is expected to cost an

additional 30% for the vacant position’s salary. Not only would the budget be damaged but

having vacant positions might halt the entire project for a time.

4.2.4 Life span. The application is intended in safeguarding the populace from

Covid by providing and updating them with information with regards to the virus. Doing

so saves the country’s most important resource, its people. With the release of vaccines

and various national efforts, the creation of the application might be too late. It's hard to

tell whether the cost-benefit of the application will justify the efforts spent on it.

14
4.2.5 Natural disasters. The Philippines is not the best country at handling

natural disasters. The environment is also very vulnerable to natural disasters. An

unexpected strong earthquake or typhoon would definitely halt this application’s usage and

development.

5. Manual Control, Policies, and Procedures

In the field of software engineering, it is mutually agreed upon by the company and

the development team that some delegations are performed beyond the borders of the

system. This includes various processes such as forming an agreement with the system’s

policies, and procedures taken by the interactors of the system in order to utilize it

smoothly. Regarding the team’s proposed system, it is to be noted that they are heavily

focused on keeping the information of the users as secure as possible. In order to carry out

the objective, the users must be able to provide their consent to the team in accessing

private information & conform to the different policies stated below:

5.1 Privacy Policy

By interacting with the system, the users must first accept that the three

successive policies below are responsible for the composition of this policy. It

should be observed that the information submitted to the system will include

personal information such as their addresses and contact numbers. This is to ensure

that the system is able to conduct various processes made possible through

information utilization.

15
5.2 Third-Party Control

In accordance with the Privacy Policy stated, the information gathered is

also to be utilized by sources outside of the system. This includes the quarantine

facilities that require the data of the system and quite possibly, the host of the

system’s database (Microsoft). This is for them to generate the reports that are

automatically updated in the system in real-time.

5.3 Contact Tracing Policy

Utilizing the data gathered from the users upon agreeing to the conditions

in the Privacy Policy, they must also conform to the policy that uses their private

information for communicating with the third parties associated and the users

themselves. This is to be observed by every individual involved in the system in

situations such as reporting the results of the users that have recently taken an RT-

PCR test.

5.4 Sign-Up Procedure

In order for the users to interact with the system, there are primary

conditions to be achieved, and that is to fill up the registration forms with the

appropriate information for this system. To accomplish this, the users must first

open the system website and fill out the fields with personal information (i.e. name,

address, contact info, etc.). This will then generate a form which is similar to the

COVID-19 Contact Tracing System (CCTS). Attached with it is a QR code which

16
contains the registered user data for scanning during entry in establishments that

utilize the system’s mobile scanner application.

6. Software Abstracts

In this section, illustrations and diagrams are presented to demonstrate the interaction

between different users of the system. Use Case Diagrams and Activity Diagrams are presented to

illustrate the activities involved while utilizing the TracerForce System. These activities include

registering the user to the system, scanning of the user’s QR Code upon entering an establishment,

contacting a user who received a positive flag in the RT-PCR test for COVID-19, a systems

operator verifying the data input by the user who is trying to register, and generating daily, weekly,

and monthly reports of the COVID-19 cases on each facility.

6.1 Use Case Scenario

6.1.1 Register User

A core functionality of the system. Critically affects the outcomes of other

use cases and is likewise affected by cases of human error like typographical errors

due to human limitation. Supported by verification of user information to handle

misuse of the system via fabricated user information.

17
Use Case Name: Register User
Pre-Condition: The user clicks the “Register” Button from the web application

Post Condition: The user will be registered to the database and will be able to receive QR
Code that contains the necessary information to be identified in the contact
tracing process.

Alternate Flow

Exception Flow

Table 7.1a. Register User.

6.1.2 Scanning of QR Code

Another core functionality of the system. Scenarios which include the

inability of the system to automatically log the users after scanning are very

probable despite having no errors in the QR code detection aspect.

18
Use Case Name: Scanning of QR Code
Pre-Condition: The Registered User must present their QR Code to the Scanner Operator. The
latter should also prepare their mobile scanner to be able to scan the QR Code
presented by the Registered User.

Post Condition: The Registered User can now enter the establishment and their personal
information will be added to the regional database of the establishment.

Alternate Flow

Exception Flow

Table7 1b. Scanning of QR Code

19
6.1.3 Contact User

This is simply a matter of using contact information of registered users, then

sending them information. Easily automated. Can be done through emails and only

cost is load through mobile phone. It however needs to be timely or result in great

risks.

Use Case Name: Contact User

Pre-Condition: The Contact Tracer will be assigned to contact a Registered User who has a
positive result on their RT-PCR Test.

Post Condition: The Registered user in question will be notified regarding their positive test
results and their assigned quarantine facility.

Alternate Flow

Exception Flow

Table 7.1c. Contact User

20
6.1.4 Verify User Information

Verify the user's identity by requiring them to provide a form of

identification, such as biometrics or other relevant mediums available. While also

looking for indications that the identification form is not labeled as a counterfeit

upon inspection.

Use Case Name: Verify User Information


Pre-Condition: The Registered User has finished registering and submitting their information to the
web application.

Post Condition: The Registered User will either receive their QR Code or will be requested to re-enter
their personal information due to the questionable authenticity of the data they entered.

Alternate Flow

Exception Flow

Table 7.1d. Verify User Information

21
6.1.5 Generate Statistic Report

Collates data on a daily, weekly, and monthly basis and generates reports

for each time bracket on corresponding schedules. Affects results of analytical

functions like statistics for national-scale records, quarantine facilities, hospitals.

Use Case Name: Generate Statistic Report


Pre-Condition: The event of creating a statistics report will be triggered by a certain time of the day.

Post Condition: Daily Case Reports will be collated into Weekly Case Reports. The latter will then be collated
into Monthly Case Reports.

Alternate Flow

Exception Flow

Table 7.1e. Generate Statistic Report

22
6.2 Entity-Relationship Diagram

TracerForce is an application made to cover a nationwide scope for keeping track

of COVID. In doing so, sufficient data and organization is required. This section

will discuss how the application’s database will be structured.

The application’s database contains ten (10) different tables: Test-Result,

Establishment, Case-Report, Registered-User, QR-Info, Address, Statistic-Report, Login-

History, Personnel, and Facility. These tables serve to handle tracking of users,

establishments and the applications usage. Relationships between these tables are also

established for better implementation of functionalities within the system.

In tracking users, four (4) tables are utilized: Registered-User, Test-Result, Case-

Report and Personnel. These tables handle user data and provide a means to identify and

contact them of their safety with regards to COVID. It also allows the application to find

patterns between users to determine COVID risk levels in certain locations.

Establishments are also tracked by the system using four (4) tables: QR-Info,

Establishment, Facility and Address. Keeping track of where COVID is more likely will

inform the user of what to avoid. This is done through the use of QR-Code, given through

all registered users, to be scanned before entering an establishment.

Lastly, application usage and summary of data is provided through the use of

Login-History and Statistic-Report tables. These tables keep track of user activity mainly

for developers to get an idea of how the application should be further improved. Statistic

Report also provides a summary of COVID cases for both development and user safety

purposes.

23
Figure 9. TracerForce Entity Relationship Diagram.

24
6.3 Data Dictionary

A data dictionary, in Software Engineering context, is a file or a set thereof that

includes a database’s metadata, which hold records about other objects in the database like

their data ownership and relationships, among others. Data dictionaries typically contain

the following information: name, aliases, description, related data items, and range of

values.

Data dictionaries make it possible for developers and the whole team in general to design

the software intricacies and test cases, as well as creating ordered lists from both a subset

or complete items list to keep the system flow and information in check. It is also a useful

feature should one wish to easily locate data items in a description or from a list.

6.3.1 Registered User

In table 6.3a below, the fields in this entity are categories used to determine

the system users, namely the citizens located in different regions of the country. It

includes their personal information such as their names, birthdates, and addresses.

The information is of essence in critical situations that may arise. One instance is

that facilities are able to communicate with the system users through the means of

their contact numbers to inform them of their test results.

Entity Name Registered User

Entity Description This entity contains all the necessary information about the system’s registered users
(i.e., citizens). Connects with Case-Report, Establishment, Facility, Personnel, QR-
Info, and Test-Result entities.

Field Name Description Type Length Format

The key identifier for the


UserID Integer 6 ######
registered user.

25
The name of the user which is
UserName used for searching instead of String 50
the UserID.

BirthDate The user’s date of birth. DateTime 10 mm/dd/yyyy

BloodType The user’s blood type String 1

The address where the user is


Address String 50
currently located.

The user’s contact number in


ContactNumber cases of emergency and/or Integer 11
updates.

The user’s provided email for


Email receiving updates & other String 30
relevant information.

Table 6.3a. Registered User.

6.3.2 Personnel

Similar to the Registered-User, this entity also provides personal

information, but with the system personnel in this matter. It partially includes their

date of birth, blood type, and contact information. This information ensures that

personnel are able to be communicated by the team as to who will monitor the

location history of the different users.

Entity Name Personnel

Entity Description This entity contains all the necessary information about the system personnel. It
connects with the Login-History and Registered-User entities.

Field Name Description Type Length Format

The key identifier for each


PersonnelID Integer 6 ######
personnel of the system.

The label for each


PersonnelName PersonnelID in the form of String 30
their respective names.

The field which contains the


BirthDate DateTime 10
date of birth for the employee.

26
The field which contains the
BloodType String 1
employee’s blood type.

The current location of


Address String 50
residence of the employee.

The employee’s contact


ContactNumber number in cases of emergency Integer 11
and/or updates.

The employee’s provided


Email email for receiving updates & String 30
other relevant information.

Table 6.3b. Personnel.

6.3.3 Case Report

The consolidation of confirmed cases is presented in this entity. Factors

which comprise each case include the name of the patient, the date they were

admitted to the facility, and their test results which resulted in being ‘positive’ for

COVID-19. Multiples of this entity are further consolidated to generate a monthly

statistical report.

Entity Name Case Report

Entity Description This entity contains all the fields describing which patients were admitted to the
different facilities & their date of admission. Connects with the Registered-User,
Statistic-Report, and Test-Result entities.

Field Name Description Type Length Format

The key identifier for a


CaseID Integer 6 ######
confirmed COVID-19 case.

The name of the patient which


PatientName was found to have COVID- String 30
19.

The patient’s date of


DateAdmitted DateTime 10
admission to the facility.

The key identifier of the


TestResultID patient’s test result. Received Integer 6 ######
from the Test-Result entity.

27
Table 6.3c. Case Report.

6.3.4 QR Info

The entity which contains the detected users of the system when they

scanned their unique quick response (QR) codes in various establishments. This

includes the name of the establishment which uses the scanner to identify users who

attempt to enter the premises, the name of the user that scanned their QR code in

the establishment, and the date and time of which the scanning process was done.

Entity Name QR Info

Entity Description This entity contains all the fields describing who was scanned at where in the form
of quick response (QR) information. Connects with the Establishment and
Registered-User entities.

Field Name Description Type Length Format

The key identifier for the QR


QrID Integer 6 ######
info.

The name of the


EstName establishment found in the QR String 30
info.

The date of scanning for the


DateScanned DateTime 10 mm/dd/yyyy
QR info.

The time of scanning for the


Timestamp DateTime 8 hh:mm:ss
QR info.

The name of the user found in


UserName String 50
the QR info.

Table 6.3d. QR Info.

6.3.5 Establishment

This entity describes the details for the establishments which require

scanning the users’ QR information before entering. It includes the name of the

28
establishment, where it is designated, and what type of establishment it is, be it a

business store, a mall, etc. This is to ensure who has been permitted inside and

locate who are within the vicinity of a confirmed COVID-19 patient.

Entity Name Establishment

Entity Description This entity contains all the fields describing the information about the establishments
which use the system in keeping track of the different users. Connects with the
Address and QR-Info entities.

Field Name Description Type Length Format

The key identifier of the


EstID Integer 6 ######
establishment.

The location of the


Address String 50
establishment.

The name of the


EstName String 30
establishment.

The type of the establishment


EstType String 10
(business store, mall, etc.)

Table 6.3e. Establishment.

6.3.6 Test Result

This entity describes the physical state of the user. Associated with it are

the possible symptoms that the user experienced, the severity of the user’s

condition, and the dates which represent the time they came in contact with the

virus. This is essential in generating the results from the RT-PCR test into a more

concrete aspect for the users.

Entity Name Test Result

Entity Description This entity contains the fields describing the user’s RT-PCR test results. It connects
to the Case-Report and Registered-User entities.

Field Name Description Type Length Format

29
The key identifier of the test
TestResultID Integer 6 ######
result.

The date of the test result


Date DateTime 10 mm/dd/yyyy
being shown.

The condition of the patient


ConditionStatus String 9
based on the test result.

The symptoms present in the


Symptoms String 100
patient.

The physical signs visible in


PhysicalSigns String 100
the patient.

The result of the RT-PCR


Flag String 6
Test. (Positive or Negative)

The date wherein the patient


DiseaseOnset came in contact with the virus DateTime 10 mm/dd/yyyy
prior to any visible symptoms.

The key identifier of the test


UserID Integer 6 ######
result’s receiver.

Table 6.3f. Test Result.

30
6.3.7 Facility

This entity describes the different facilities and their limit in the amount of

admittable patients. The personnel are able to determine if a facility is fully

occupied through the means of the entity being able to display the appropriate

message necessary.

Entity Name Facility

Entity Description This entity contains fields describing the capacity of a facility with regards to how
many patients it can store. Connects with the Address, Registered-User, and Statistic-
Report entities.

Field Name Description Type Length Format

The key identifier of the


FacilityID Integer 6 ######
quarantine facility.

The total number of rooms in


TotalRooms Integer 2
the facility.

The number of occupied


OccupiedRooms Integer 2
rooms in the facility.

The number of available


AvailableRooms Integer 2
rooms in the facility.

Address The location of the facility. String 50

The type of the facility


FacilityType String 10
(school, hotel, etc.).

Table 6.3g. Facility.

31
6.3.8 Address

This entity keeps track of where the user resides for easy and manageable

tracking should they be confirmed positive later on. It keeps note of detailed

information such as their address ID, street name, city, zip code, barangay/purok,

and such. This is also used in determining the location of the establishments.

Entity Name Address

Entity Description This entity contains the factors which make up the location of the places where the users are
required to scan their QR information. Connects with the Establishment & Facility entities.

Field Name Description Type Length Format

AddressID The key identifier for the address. Integer 6 ######

The name of the street in the


Street String 30
address.

City The name of the city in the address. String 15

The 3 or 4-digit unique zip code of


ZipCode Integer 4 ####
the address.

The name of the province in the


Province String 20
address.

The name of the region the address


Region Integer 2 ##
is located.

The name of the barangay in the


Barangay String 20
address.

The name of the purok in the


Purok String 20
address.

Table 6.3h. Address.

32
6.3.9 Statistic Report

This entity is represented as a condensed form of multiple case reports

within a certain timespan, whether it be weekly, monthly, or yearly. Facilities are

responsible for generating these reports. This is interpreted as the information that

is released to the general public.

Entity Name Statistic Report

Entity Description This entity is generated by the different facilities. It gathers & consolidates all the
case reports generated within a certain timespan. Connects to the Facility & Case-
Report entities.

Field Name Description Type Length Format

The key identifier for the


ReportID Integer 6 ######
report.

The type of report generated.


ReportType String 10
(weekly, monthly, yearly)

The total number of


TotalCases confirmed cases listed in the Integer 3
report.

The key identifier of the


facility which generated the
FacilityID Integer 6 ######
report. Received from the
Facility entity.

Table 6.3i. Statistic Report.

33
6.3.10 Login History

This entity is a list of successful logins by the personnel during their shifts

in monitoring & managing the system. What is recorded in this history log are the

following: the name of the personnel, the date & time of their login, and their

location during the process. It is then determinable who is keeping track and

updating the records in the system.

Entity Name Login History

Entity Description This entity records the logins of the system’s personnel during their shifts. Connects
to the Personnel entity.

Field Name Description Type Length Format

The key identifier for the


LoginID Integer 6 ######
login history.

The name of the personnel


PersonnelName String 50
that logged in.

The date & time that the mm/dd/yyyy


LoginTimestamp DateTime 10
personnel logged in. hh:mm:ss

The location where the


ServerLocation String 15
personnel logged in.

Table 6.3j. Login History.

34
7. System Prototype

A prototype is a rough output that serves as a culmination of all the planning and

implementations of the development team. The factors taken into account are the functionalities

& rich user experience. The latter can be achieved through the means of face value, namely the

user interfaces (UI) of the system. The following are the developed interfaces of the proposed

TracerForce system:

7.1 User Registration

Figure 1. User Registration Interface.

The user registration interface is the screen wherein new users will be directed to so that

they may be able to make their own accounts, and thus, a new QR code within the database.

Requirements are the basic information needed to identify a person and differentiate them from

35
other records such as a unique portrait picture, their complete name with the middle initial being

an optional field, their birthdate in mm/dd/yyyy format, their blood type for medical reasons, their

complete address separated into segments for easier and more efficient querying, their mobile

number for contacting purposes, and their email address should they have one for a secondary

means of reaching out to them if ever there are alerts worthy of their notification. The interface is

kept minimal to ensure that even those who are not so computer literate in the elderly generation

won’t have a hard time figuring out what to put in each input field.

7.2 Individual Case Report

Figure 2. Individual Case Report Interface with a positive COVID patient.

36
Figure 3. Individual Case Report Interface with a negative COVID patient.

The individual case report interface features the individual details of a person concerning

their travel history as well as the general information that they have put upon the creation of their

account, like their picture and the province or municipality under which they reside. They will also

have their test results featured on the page to notify the facilities of the exact details concerning

their illness. The section features information found in the Test Results entity, and is laid out in a

more digestible manner, separated according to the information they provide. The travel history

next to it simply updates with each scan made on the patient’s QR code. This would help in the

easy tracking of their activities and provide an estimate as to how many more would be affected

should the patent be proven and tested positive.

37
7.3 Employee Log In

Figure 4. Employee Login Interface.

The employee login interface is the screen wherein the Contact Tracer and System Operator

can log in their credentials to access the records of the patients and their test results. For the reason

that the public is restricted access to these records, the system will be making use of employee IDs

to log in along with a designated password to ensure security and data integrity.

38
7.4 Statistics Report Dashboard

Figure 5. Statistics Reports Dashboard Interface.

The Statistics Reports Dashboard Interface lists down information taken from various

facilities concerning the test results of COVID patients. Each entry has an ID for easier

identification, as well as the number of total cases, the facility where the testing took place in, and

the summary of the severe, serious, and mild cases in their average amount. For easier query, there

are also filters on the top of the screen, wherein the admin can sort the records by weekly, monthly,

or yearly in the Report Type category. Date inputs are also utilized to further narrow down searches

if needed be.

39
7.5 Mobile Web Application Interfaces

Figure 6. The Loading and Scanner Screen for the Mobile Web Application Interface.

The mobile version of the web application TraceForce features a scanner which scans the

QR code of all the individuals passing by into an establishment. After scanning their QR code, the

TraceForce Mobile App will directly send the info to the database, where it will become part of

the overall records. The scanner interface features the scanner at the center of the screen as well as

the current location of the establishment for travel history purposes as well.

40
8. Hardware Recommendation

In this section, hardware requirements, their specifications and costs are discussed. Every

software has specific goals and serves particular purposes. Each goal and purpose translate a

process or several processes that the software aims to solve or to automate. To deliver the right

efficiency and quality of the software, the hardware needed for the software to run optimally should

be defined.

8.1 Hardware Recommendations for Project Development

Description Specification Cost (Php)

Intel Core i5 . Exceptional in performance 64-bit, six-core, 2.5 GHz ₱ 9,899.00


for home and business PCs, with up to 6 minimum per core (If your
cores for creativity and multitasking. dataset size is significantly
larger than the medium dataset,
we recommend 4 cores).

Minimum of 8GB RAM is ₱ 2,999.00


8GB RAM. To smoothly run the software needed because of the rising
via browser, a sufficient amount of RAM demand of browsers using up a
is needed. lot of memory space.

Seagate Barracuda ST500DM002 For storing and organizing files ₱ 2,298.00


500GB. A storage space for files, apps and that are important for
folders development, such as images,
code and other resources.

Mechanical keyboard, ₱ 1,500.00


Mechanical Keyboard. A typing Standard QWERTY keyboard.
hardware capable of inputting letters and
shortcut commands.

Logitech Mouse. A hand-held pointing 2.4 GHz Wireless connection, ₱ 135.00


device that detects two-dimensional Wireless range of 10 meters (33
motion relative to a surface. This motion is feet). 1000 dpi. 1 x AA Battery.
typically translated into the motion of a Replaceable batteries
pointer on a display, which allows a
smooth control of the graphical user
interface of a computer.

41
Memory size of 2GB RAM, ₱ 3,000.00
NVIDIA GeForce GTX 1050. A with 700 MHz GPU clock.
specialized electronic circuit designed to Memory Type DDR3.
rapidly manipulate and alter memory to
accelerate the creation of images in a frame
buffer intended for output to a display
device.

21.5” monitor. IPS Screen, ₱ 4,000 .00


PC Monitor. A computer monitor is an standard 1080p
output device that displays information in FHD(1920x1080), HDMI/DP
pictorial form. Connection

Kingston A400 Solid-State Drive SSD. A 2.5” SSD, SATA 0.3 port. Up ₱ 1,750 .00
solid-state storage device that uses an to 500 mb / s read rate and 350
integrated circuit. mb or s write rate

Gigabyte GA-H110M-S2 Motherboard. Chosen based on the specified ₱ 4,000.00


A printed circuit board containing the CPU, GPU, and RAM of the
principal components of a computer or project.
other device, with connectors into which
other circuit boards can be slotted.

Total Hardware Cost for Project Development: ₱ 29,581 .00

8.2 Hardware Recommendations for Project Deployment

Description Specification Cost (Php)

Processors. performs basic arithmetic, Qualcomm Snapdragon 845, ₱ 0.00


logic, controlling, and input/output (I/O) Kirin 810, Exynos 8895 2.3
operations specified by the instructions in GHz Octa-core Processor or
the program. better

RAM Memory. Part of the device in ₱ 0.00


which data or program instructions can be 4GB of RAM Minimum
stored for retrieval

Total Hardware Cost for Project Deployment: ₱ 0.00

9. Software Recommendation

In the field of software development, it is necessary to find the appropriate tools to be used

in developing different projects. Projects which do not require web-based features are developed

42
using tools that do not contain features for web connection while projects that do require it use

these tools. And by the tools stated, it is meant as the software used for project development. With

this information in mind, and the case that the application to be developed will be used in multiple

platforms, the recommended software tools to be included below appeals to the development of

the application in each supported platform along with the appropriate software needed for the

deployment phase.

9.1 Software Recommendations for Project Development

Description Specification Cost (Php)

Microsoft Windows 10. It is a major Operating System (OS). The ₱ 14,999 per unit
release of the Windows NT operating Pro edition caters business and (5) = ₱ 74,995
system developed by Microsoft and the professional environments.
successor to Windows 8.1.

Linux. A Unix-like, open source and 2nd Operating System (OS). ₱ 0.00
community-developed operating system Kali and Ubuntu versions are
(OS) for computers, servers, mainframes, chosen for development.
mobile devices and embedded devices. It
is supported on almost every major
computer platform, including x86, ARM
and SPARC, making it one of the most
widely supported operating systems

Microsoft Visual Studio 2022. The IDE for Multiplatform ₱ 0.00


chosen IDE because of its wide array of Development. The
available tools for the development of Community Edition is chosen
different platforms. because the paid options do
not have a large gap with the
paid variants of the software.

Android Studio. A Java-driven type of Alternative IDE & used for ₱ 0.00
developing environment which Mobile Development. There
specifically targets the mobile field. are no costs because it is open
source

Apache XAMPP. An open-source web Offline Database ₱ 0.00


server solution equipped with Apache’s Development &
HTTPS Server, MariaDB database, and a Configuration
script interpreter for languages PHP and
Perl.

MeisterTask. A software designed for Project Management. The ₱ 545.78 per


providing assistance to the team through Business subscription plan month
the means of project & task management. caters to the software dev team

43
by providing the tools found in
the Pro plan and new features
such as mitigation of the
project tasks to the different
groups within the team.

Figma. A collaborative development tool UI Designing & Prototyping. ₱ 2243.43 per


used for prototyping the desired output The Organization plan user/month
through its features of UI designing. provides security & enhanced
experience for development
teams in designing.

Total Software Cost for Project Development: ₱ 77,784.21 (1st


month)
₱ 2789.21 per
succeeding
month

9.2 Software Recommendations for Project Deployment

Description Specification Cost (Php)

Github. A repository service used for Git Repository & Version ₱ 250.00 per
software development & version control Control. The Team pricing month
using the functionalities of Git. plan consists of features
available to the public for free,
but with added options for
better software management.

Microsoft Azure. It is a service that Cloud Computing Services ₱ 117,550.00


enables databases to be stored in the cloud & Database Backup. The S9 per month
hosted by Microsoft themselves. option available with 1.6k
database transaction units
(DTU) & a storage capacity
that reaches up to 1TB is
observed to be sufficient.

TracerForce Scanner. A QR code QR Code Scanner ₱ 0.00


scanner simultaneously developed along
with the development team’s web
application.

Total Software Cost for Project Deployment: ₱ 117,800.00 per


month

44
10. Software Quality Metrics

Good software is built based on numerous factors. This includes the objectives and the

drastic measures taken as to how these are accomplished. According to Bieman (1997), these

measures are grown out of two needs. The first one stated is the need for software development

process management, such that the product is sufficient enough for deployment upon meeting the

benchmark requirements based on the available resources on hand for instance. The second need

is utilized in the field of research, wherein the topic of focus is based on the definition and

measurement of the different software attributes. This is to provide a better understanding of the

concept of software engineering.

10.1 Function Point Analysis

TracerForce is a simple COVID-19 tracer application meant for everybody's use to be

deployed nationwide. The scale of the application lends it to many inherent problems that need to

be scrutinized. Furthermore, all functionalities must be delivered properly and efficiently to keep

everybody informed. These requirements introduce some complexity and risks to the completion

of the project. This section endeavors to analyze how much effort is needed for the project to be

delivered properly.

The application mainly makes use of taking external data and turning them into information

to determine COVID-19 response and risks. External inputs mainly refer to the input required of

the users for the application to do its tasks. There is a total of sixty (60) required external input,

mainly concerning user data, for the application to properly track of COVID-19. External outputs

will have four (4) and will take the form of messages, covid dashboard, sending updates and

assigning risk levels. Inquiries just deal with taking QR codes, identifying location and login.
45
Internal Logical Files are just the tables being kept track in the database which totals to ten (10).

External interface files mainly use COVID-19 data from outside sources such as covid cases, doses

given, covid history and covid status by region.

Parameter Count Simple Average Complex Total

External Inputs (EI) 60 3 4 6 240

External Outputs (EO) 4 4 5 7 20

External Inquiries (EQ) 3 3 4 6 12

Internal Logical Files (ILF) 10 7 10 15 100

External Interface Files (EIF) 4 5 7 10 28

Count Total: 81 400

Table #. Function Point Analysis weighted as Average.

10.2 Value Adjustment Factors

This section identifies the estimated system requirements and cost of

TracerForce by taking into account the fourteen (14) General System Characteristics (GSC)

to evaluate the application. This will be done by calculating the Value Adjustment Factor

(VAF) using the values obtained in the GSC framed as VAF questions. The VAF will then

be used to calculate the Function Point (FP).

VAF Questions Count

1. How many communication facilities are there to aid in the transfer or exchange of
5
information with the application or system?

46
2. How are distributed data and processing functions handled? 5

3. Did the user require response time or throughput? 4

4. How heavily used is the current hardware platform where the application will be
2
executed?

5. How frequently are transactions executed daily, weekly, monthly, etc.? 5

6. What percentage of the information is entered online? 5

7. Was the application designed for end-user efficiency? 4

8. How many ILFs are updated by online transaction? 4

9. Does the application have extensive logical or mathematical processing? 3

10. Was the application developed to meet one or many user’s needs? 3

11. How difficult is conversion and installation? 2

12. How effective and/or automated are start-up, back-up, and recovery procedures? 5

13. Was the application specifically designed, developed, and supported to be installed at
5
multiple sites for multiple organizations?

14. Was the application specifically designed, developed, and supported to facilitate
4
change?

Legend:
1 – Not Present / No Influence 1 – Insignificant 2 – Moderate 3 – Average 4 – Significant 5-
Essential

Adding all the GSC values gives us the Total Degree of Influence or TDI. TDI is

used for the calculation of the VAF using the formula:

VAF = 0.65 + (0.01* TDI)

The application after evaluating the GSC has a TDI value of 60. This is mainly

due to the scale of the application and the potential harm it may cause if it isn’t

47
implemented properly. Everything must be very well considered and accounted for.

Calculating the VAF using the formula we get:

VAF = 0.65 + (0.01 *60)

VAF = 1.25

We then calculate the Function Point using the VAF and the total in FPA:

Function point (F.P) = 1.25 * 400

F.P. = 500

The Function Point, five hundred (500), tells that the application’s system requires

at least that much functionality required in its implementation. It also tells how much work

is required to see its completion. The application, based on the Function Point, can be

expected to require that much hours to be spent on its development.

48
11. Summary of Recommendations

So far, hardware and software recommendations are indicated according to the needs of

the project, which involve tools for web and mobile software development and deployment. With

regards to development, a mid-range desktop computer build can prove sufficient in handling these

tasks on their own, but may require different units of the same build for each participating

specialist. Moreover, a powerful server that can handle database operations on a national scale is

an essential component of the system. To log QR instances, a QR scanner tailored for the

TracerForce system will be deployed for use in real time, where quality of service is paramount to

ensure accuracy and integrity of log information. The scanner must have an encrypted connection

to the server across the Internet to reduce the risk of interception from potential threat actors.

Recommendations to improve the TracerForce system is an essential part to improving its

services and operations for the benefit of its users. After all, recommendations in research exist to

give guidance to derive beneficial results and formulate resolutions to arising issues

(MarvelousEssay, 2021). Thus, there is a need to indicate them to derive potentially better

solutions from the current system or for use in related scenarios:

1. To keep track of the user’s foreign travel history, a login session can be implemented,

where they can record their current location every time their QR codes are scanned using

their smartphone’s GPS. However, this method is manual and requires an Internet

connection to commit changes to the database.

2. The structure of this system can be used to deal with outbreaks of infectious diseases other

than COVID-19 in the country.

49
References

Android for Developers. (2021). CameraX overview | Android developers.

https://developer.android.com/training/camerax

Bieman, J. M. (1997). Software Metrics: A Rigorous & Practical Approach. IBM Systems

Journal, 36(4), 594.

Example of Recommendation in Research Paper | Marvelous Essays Blog. (2019, April 3).

Buy an Essay Online from the Best Essay Writing Service; MarvelousEssay.org.

https://marvelousessay.org/blog/example-of-recommendation-in-research-paper.html

Figma. (n.d.). Pricing for Figma's free, professional, and organization plans.

https://www.figma.com/pricing

Google Developers. (2016, January 2). QR Codes | Google developers. Google Chart.

https://developers.google.com/chart/infographics/docs/qr_codes

Haije, E. G. (2021, March 1). Top 20 Best project management software: An overview.

Mopinion.

https://mopinion.com/top-20-best-project-management-software-an-overview

Lilkendey, J. (2021). How to create a QR code scanner app in Android. Learn to Droid.

https://learntodroid.com/how-to-create-a-qr-code-scanner-app-in-android

Microsoft. (2019, August 6). Visual studio 2019. Visual Studio.

https://visualstudio.microsoft.com/vs

50
Microsoft. (n.d.). Buy Windows 10 pro for business – Microsoft. Microsoft Store.

https://www.microsoft.com/en-ph/d/windows-10-

pro/df77x4d43rkt?activetab=pivot%3aoverviewtab

Singh, T. (2021, April 8). Data dictionaries in software engineering. GeeksforGeeks.

https://www.geeksforgeeks.org/data-dictionaries-in-software-engineering/

13 Emerging Issues With Current COVID-19 Contact Tracing Solutions. (2020, May 27).

Vulcan Post; https://www.facebook.com/Vulcanpost. https://vulcanpost.com/699968/issues-

with-covid-19-contact-tracing-solutions/

51
Appendix A

Gantt Chart

52
Appendix B

PERT Table

Code Task Name Predecessor(s) OT MT PT ET ES EF LS LF SL

A Requirement Gathering none 5 6 7 6 0 6 4 10 4

B Requirement Analysis A 5 6 7 6 6 12 10 16 4

C Design A, B 8 12 14 12 12 24 16 28 4

D Coding C 25 29 31 29 24 53 28 57 4

E Unit Testing C, D 3 5 7 5 53 58 57 62 4

F Acceptance Testing C, D 3 5 7 5 53 58 57 62 4

G Discuss Changes with E, F 7 10 14 10 58 68 62 72 4


Client

H Modify Initial Design E, F 5 6 7 6 58 64 66 72 8

I Implement Design G, H 16 19 21 19 68 87 72 93 4
Modifications

J Second Unit Testing I 2 3 3 3 87 90 93 96 6

K Second Acceptance I 2 3 3 3 87 90 93 96 6
Testing

L Discuss Updated J, K 7 10 14 10 90 100 96 106 6


Changes

M Formulate Final Design J, K 5 5 7 5 90 95 101 106 9

N Implement Final Changes L, M 18 20 21 20 100 120 106 126 6


and Features

O Third Unit Testing N 5 7 7 7 120 127 126 133 6

P Third Acceptance Testing N 5 7 7 7 120 127 126 133 6

Q Final Unit Testing P 6 7 7 7 127 134 133 140 6

R Final Acceptance Testing P 6 7 7 7 127 134 133 140 6

53
S Data Encoding Q, R 7 10 14 10 134 144 140 150 6

T Training of Personnel S 5 6 7 6 144 150 144 150 0

U Deployment S 5 6 7 6 144 150 144 150 0

54
Appendix C

Curriculum Vitae

Name : Colline W. Aspan

Program of Study : Bachelor of Science in Information Technology

Date of Birth : November 13, 2000

Contact Details : 09288977406; aspan.colline@gmail.com

Areas of Interest : Programming, Web Development

Name : Jericho Jarod B. Besa

Program of Study : Bachelor of Science in Computer Science

Date of Birth : July 20, 2001

Contact Details : 09338569070; jarodbesa@gmail.com

Programming, Mobile Development,


Areas of Interest :
Software Emulation

Name : Elian Joshua C. Bornales

Program of Study : Bachelor of Science in Information Technology

Date of Birth : October 4, 2000

Contact Details : 09471014576; joshbornales7241@gmail.com

Areas of Interest : Programming, Web Development, Graphic Design

55
Name : Hurly Zade Christian C. Cabalan

Program of Study : Bachelor of Science in Computer Science

Date of Birth : November 01, 1999

Contact Details : 09123456789; hurlyzx@email.com

Areas of Interest : Programming, Database, Networking

Name : Sven Marv Resuelo

Program of Study : Bachelor of Science in Information Technology

Date of Birth : November 14, 2000

Contact Details : 09995559929; ayasenana@gmail.com

Areas of Interest : Programming, Web Development

56

You might also like