Running Head: LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 1
Lab 2 – iTracker Prototype Specification
Aran Barzanji
Old Dominion University
CS411W
Professor J. Brunelle
March 25, 2019
Version 1
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 2
Table of Contents
1. Introduction..................................................................................................................................31.1 Purpose...................................................................................................................................41.2 Scope......................................................................................................................................71.3 Definitions, Acronyms, Abbreviations..................................................................................81.4 References............................................................................................................................111.5 Overview..............................................................................................................................12
2. General Description...................................................................................................................122.1 Prototype Architecture Description.....................................................................................122.2 Prototype Functional Description........................................................................................152.3 External Interfaces...............................................................................................................16
2.3.1 Hardware Interfaces......................................................................................................162.3.2 Software Interfaces........................................................................................................172.3.3 User Interfaces...............................................................................................................17
List of Figures
Figure 1. Current Process Flow Without iTracker...........................................................................4Figure 2. Solution Process Flow With iTracker..............................................................................5Figure 3. iTracker Prototype Major Functional Components Diagram.........................................13
List of Tables
Table 1. iTracker Competition Matrix.............................................................................................6Table 2. iTracker Features – Real World Product (RWP) vs Prototype........................................14
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 3
Lab 1 – iTracker Prototype Specification
1. Introduction
Scientific research is one of the most important components of a university. Research
programs allow universities to acquire grants, which are vital to developing academic programs.
In 2018, tick researchers in the Biology department at Old Dominion University (ODU) received
$2.5 million dollars from the National Institutes of Health to study tick systems (Saunders,
2018). Enhancing the efficiency of existing research methods at ODU could be of great benefit
to the University; however, one must first consider the major challenges which are involved in
the scientific process.
Empirical data collection is one of the most time-consuming tasks in scientific research.
This is very evident in introductory Biology classes at ODU. Typically, introductory Biology
classes at most universities, including ODU, have a very large student enrollment rate (Cash,
Letargo, Graether, & Jacobs, 2011). This means that there is a large amount of paper forms that
instructors and teaching assistants must collect and analyze in Biology labs. On one hand, this
may be very beneficial – the large class sizes can be utilized to collect data on a large scale for
funded research projects. However, manual data analysis techniques cut into the already limited
instructional time in Biology labs. By taking advantage of electronic forms and decentralized
data entry, iTracker will facilitate more efficient data analysis in real time, while providing
additional time to teach class material.
Often times a large latency exists between the moment that data is collected and entered
into a digital format, to the time that data can be analyzed. The timely support of scientific
hypotheses may be hindered without the utilization of efficient research methods. iTracker is a
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 4
tool that will help to resolve some of these issues by decentralizing the data entry, analysis, and
calculation portions. With immediate processing of raw data, iTracker will allow for expeditious
data analysis, which will foster a much greater appreciation of the scientific process.
1.1 Purpose
Figure 1. shows the current process of scientific research without iTracker. As the figure
shows, the process can greatly benefit from the use of software. The current process is simply too
tedious and can be made much more efficient.
Figure 1. Current Process Flow Without iTracker
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 5
Figure 2 shows how iTracker can help to ease some of the burdens of data collection in
the scientific research process. By allowing for efficient entry of collected data into a
decentralized system, iTracker will allow for a better scientific research process. Increased
efficiency is extremely valuable in the scientific research field, as they may lead to more
grants/funding for the school and it’s researchers.
Figure 2. Solution Process Flow With iTracker
The iTracker application will be web based, primarily due to the versatility that web
applications provide. The most important benefit is that iTracker can be run from most smart
devices, regardless of the operating system supported by the device. Students and instructors will
be authenticated to iTracker using registered and approved credentials. Once logged in, menus
will be shown on screen for students and instructors. Students will be able to input data into an
electronic form which will be made to simulate the forms that they are filling in by hand. The
application will help to facilitate student learning and to remove the burden of data collection by
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 6
streamlining the data collection stage of scientific experimentation. Once the data has been
collected, the application will allow for statistics to be calculated quickly with one button. These
statistics include the mean, median, and standard deviation of a certain set of data. Additionally,
iTracker will provide users with visualization options in the form of graphs and charts. Finally,
the application will allow instructors to provide instructional tools and materials to their students.
Table 1 shows the comparison of iTracker to similar software applications. The table
illustrates the primary advantages that iTracker has over the competition. Most importantly, the
application is science and academically oriented, and allows for decentralized data access and
data visualization.
Table 1.
iTracker Competition Matrix
Table 1.
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 7
1.2 Scope
The iTracker prototype will involve a combination of real and simulated data. The goal of
the prototype will be to implement the majority of the highest priority features. In the Student
user-role, these features are primarily related to creating data forms and calculating statistics.
The ability to view submitted data and to visualize the data in the form of charts will also be a
high priority feature for Students. In the Instructor/Sr. Researcher role, the highest priority
features include administrative tasks, including user management, and viewing submitted student
data. Lower on the priority list of features for both roles will be the educational materials
component.
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 8
1.3 Definitions, Acronyms, Abbreviations
[Super] Administrator: Special user who has all abilities that other users have, plus the ability to
add Instructor/Sr. Researcher users.
Access Times: The time period which a certain user can access a certain material
(form/educational materials).
Analysis: The detailed examination of scientific observations, which can help to lead to a
conclusion.
C#: Object-oriented programming language developed by Microsoft like Java and C++ that is
well suited for web applications such as iTracker.
Educational Materials: PowerPoint presentations, videos, and tutorials that an Instructor user can
upload, and a Student user can view inside of iTracker.
Form: Data collection form used to gather the results of scientific observations.
Graphical User Interface (GUI): Everything that users can see and interact within the iTracker
application, including login pages, data forms, and statistics results pages.
Guest: A user who is not yet registered/approved as a Student user by an Instructor user; has
fewer privileges than Student users.
HTML: Hypertext Markup Language, used to present and stylize web pages.
Instructor: A type of user that has all the privileges of a Student user, plus the ability to view and
manage Student User’s data, upload educational materials, and approve/deny Guest user
applications to become Student users.
JavaScript: An object-oriented programming language that is often used in web development to
create interactive effects on web pages.
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 9
Mean: The statistical average of a set of data calculated by summing all the data in the set and
dividing it by the number of items in the set.
Median: In a set of data that is ordered, the exact middle number of the set. If there is no exact
middle, the median is then the two middle numbers divided by 2.
MSSQL: Microsoft SQL Server, a relational database created by Microsoft that is like Oracle but
uses T-SQL instead of PL/SQL.
Observation: The process of monitoring certain entities for use in scientific research applications.
Outlier Data: Data that has been flagged by iTracker as possibly being invalid when compared to
known viable/valid data; may be caused by experimental or user error.
PHP: Hypertext preprocessor, web programming/scripting language that is particularly suited for
the development of a web application such as iTracker.
Processing: The transforming of raw data into a usable form that allows for more efficient
analysis.
Sr. Researcher: See Instructor; is part of the same user group as Instructor users and has the same
application permissions and abilities but may be a lab teaching assistant instead of a
professor.
Standard Deviation: A measure of the amount of variation that the values in a set of data have.
Student: The main type of user in the iTracker application who is part of a lab section and has an
Instructor user.
Survey Data: The data that has been collected as part of the research observation process.
Tick Questing: A behavior in ticks that involves waiting, usually on a tree branch, leaf, or blade
of grass, for a warm body to come into proximity so that it can latch onto the warm body.
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 10
Viable Data: Student data that has not been flagged by iTracker as being outlier data; is
considered valid and trustworthy.
Virtual Machine (VM): A virtual computer.
Visualization: The representation of data to allow for easier drawing of conclusions in scientific
experiments.
WebView Wrapper: An Android extension that allows web pages to be displayed inside an
Android mobile application.
Windows Server: An operating system developed by Microsoft for server applications; can
utilize MSSQL.
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 11
1.4 References
Android Developers. (n.d.). Retrieved September 21, 2018, from Android Developers Web site:
https://developer.android.com/guide/webapps/webview/
Barzanji, Aran. 2019. Lab 1 – iTracker Product Description. Old Dominion University,
CS411W, Professional Workforce Development II, Spring 2019. Retrieved March 19,
2019, from Web Site:
https://www.cs.odu.edu/~411yello/labs/lab1/abarz001_lab1v2.docx.
Cash, C. B., Letargo, J., Graether, S., & Jacobs, S. (2011). An Analysis of the Perceptions and
Resources of Large University Classes. Life Sciences Education, 10(2), 164-174.
doi:10.3897/bdj.4.e7720.figure2f
David Gauthier. (n.d.). Retrieved September 25, 2018, from ODU People Directory Web site:
https://www.odu.edu/directory/people/d/dgauthie/
Dr. Holly Gaff. (n.d.). Retrieved September 25, 2018, from Dr. Holly Gaff - Tick Research Team
Web site: https://sites.wp.odu.edu/hgaff/
Jessa, T. (2010, September 19). What are the Steps of the Scientific Method. Retrieved January
21, 2019, from Universe Today Web site: https://www.universetoday.com/74036/what-
are-the-steps-of-the-scientific-method/
Microsoft SQL Server vs. Oracle: The Same, But Different? (2016, October 26). Retrieved
September 25, 2018, from Segue Technologies Web site:
https://www.seguetech.com/microsoft-sql-server-vs-oracle-same-different/
ODU Tick Team. (n.d.). Retrieved September 25, 2018, from ODU Tick Team Web site:
https://sites.wp.odu.edu/tick-team/
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 12
Saunders, N. (2018). ODU Tick Researchers Receive $2.5 Million from the National Institutes of
Health. Retrieved October 11, 2018, from News @ ODU Web site:
https://www.odu.edu/news/2018/5/tick_research/
1.5 Overview
The rest of this document gives a general description of the iTracker prototype. This
includes the prototype architecture, prototype functional description, and a discussion of the
external interfaces (hardware, software, and user) involved in the prototype application.
2. General Description
iTracker is a web based application which will help students and instructors conduct
scientific research in a more efficient manner.
2.1 Prototype Architecture Description
The prototype software will run on an ODU Computer Science virtual machine and
utilize several web-centered languages to perform all of the necessary tasks. The virtual machine
will run WAMP (Windows, Apache, MySQL, and PHP) for the purposes of running a web
application. Windows Server 2016 will be the operating system for the virtual machine, while
Apache will serve as the web server, and MySQL will facilitate database needs. PHP will be the
primary language for programming the iTracker prototype. Since this web application will be
comprised of the main iTracker website (which hosts the iTracker documentation), HTML, CSS,
and JS will be used to stylize the front end of the web application to make the transition from the
main iTracker website to the web application feel seamless. Figure 3 shows the prototype major
functional components diagram. Real and simulated data is fed into the iTracker web application.
From there, PHP performs all of the necessary calculations and interacts with the internal
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 13
database to perform user authentication and registration tasks, while preparing a web page for
output to the user.
Figure 3. iTracker Prototype Major Functional Components Diagram
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 14
For the purposes of a prototype, the highest priority features will be able to be applied directly to
a real-world application. The two most important features are the entry of data into an electronic
form/calculation of statistics (mean, median, and standard deviation) based on the entered data.
Lower priority features will make use of simulated data, to simulate a real-world application.
Features that involve instructional materials are of the lower priority.
Table 2 shows the features that will be fully or partially implemented in the iTracker
prototype. Fully implemented features are ones that will involve real world data, while partially
implemented features will make use of simulated data. This is necessary due to certain time and
permission restrictions.
Table 2.
iTracker Features – Real World Product (RWP) vs Prototype
Table 2.
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 15
2.2 Prototype Functional Description
When a user (student or instructor) first navigates to the iTracker prototype, they will be
presented with a home page, made up of a general description of the prototype application and a
navigation bar. The navigation bar will include an About page, which will tell the user more
about the iTracker software. User management options will also be included on the navigation
bar for registering new users, and then for logging those users in.
Upon the initiation of a login request, the iTracker application will send the username and
password form data to the virtual machine’s PHP back-end. From here, PHP will interact with
the internal MySQL database to perform a user authentication operation. All student users must
be registered and approved by a higher-level user (instructor or administrator). A similar
sequence occurs when a user attempts to register a new user, however, the form data is put into a
moderation queue for later review by an instructor or administrator user.
After a user has been properly authenticated, new menu options will appear on the page.
These options will be different based on the type of user that is logged in (student,
instructor/administrators). Administrators and instructors will be able to see Calculate, Research,
Options, Students, and Awaiting Approval menu buttons, along with the previously mentioned
About button. A logout button replaces the login and register menu buttons now that the user has
been authenticated.
The Awaiting Approval page will encapsulate a list of pending registered users.
Administrators and instructors are able to approve or deny the user registration requests here.
The Students page will contain a list of the usernames of all registered students, along with their
ID number, class, and four actions for each user. These four actions are Update user, Delete user,
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 16
Grant Administrator Privileges to the user, and User Data, which will present the user’s entered
survey data.
The Options page will allow instructors, teaching assistants, and administrators to add
new items to the list of questions presented in a new form to students. It will also allow these
users to update the graph’s X axis and Y axis.
The Research page will show a list of all survey forms. This will include the name of the
survey, the date it was created, data sets inside of the survey, and options to update or delete the
survey.
The Calculate page will perform all of the mathematical calculations on the survey data
sets. These are the mean, median, and standard deviation. Also included on this page is a graph
with a X and Y axis, which will provide a visual representation of the data set observation points.
A student user will have the same abilities on all of the previously mentioned pages,
however, this user will only be presented with Calculate, Research, About, and Logout menu
options. This is done to restrict access to survey manipulation operations to teaching assistants,
instructors, and administrators.
2.3 External Interfaces
The iTracker prototype will rely on an ODU Computer Science virtual machine server.
Several hardware and software interfaces are required to make full use of iTracker.
2.3.1 Hardware Interfaces
From a user’s perspective, some type of internet connected device is required to access
iTracker. This may be a computer running Mac OS, Windows, or some type of Unix distro.
Users may also access the site using a smartphone which Android, iOS, or even Windows Phone
OS. Since iTracker is a web application, there are a large number of devices that are supported.
LAB 2 – ITRACKER PROTOTYPE SPECIFICATION 17
From the application’s perspective, a single server capable of virtualization is sufficient
for hosting the entire web application.
2.3.2 Software Interfaces
Numerous software interfaces are involved in running iTracker. Apache will be used as
the web server, MySQL will be used to create databases, and PHP will be used to do the bulk of
the calculations and data visualization. HTML, CSS, and JavaScript will also be used to generate
web pages that a user can utilize to use all of iTracker’s features. Finally, a modern web browser,
preferably Google Chrome, Mozilla Firefox, or Apple’s Safari, will be necessary to access the
iTracker application.
2.3.3 User Interfaces
Users will need an internet connected of their choice to access iTracker. As discussed
previously, there is a wide range of devices (computers, smartphones) that are supported here.
Thus, it is essentially the user’s preference which device they would like to use to connect to
iTracker.