Organization Device Tracker Computer Science Capstone Proposal
Organization Device Tracker Computer Science Capstone Proposal
Organization Device Tracker Computer Science Capstone Proposal
Executive Summary
Organization Device Tracker Capstone Report 2
The objective of the application is to provide a solution to the client Signal Service Inc
issues with data management of the devices that are provided to the office staff and field
technicians of the organization. Data about these devices is not keep up to date and this has
caused a few issues for Signal Service Inc. These issues with data management has lead Signal
Service Inc to purchase addition devices that were not necessary during staff changes. There has
also been an issue with devices becoming outdated, damaged or slow which has caused
productivity decline from field and office staff.
The Organization Device Tracker aims to be the solution to this data management issues.
The goal of the project is to provide a web application that will allow Signal Service Inc a secure
and easy to use location to store data about their organizations devices. This application will
allow Signal Service Inc to keep data about their devices up to date to allow management to
easily view how many devices that the organization has during staff changes. By doing this
Signal Service Inc will see a decline in purchases of additional devices as well as keeping stock
of the status of the organizations devices.
There are three main features of the web application. The first feature will be to store the
data of the devices. This data will include the manufacture of the device, operating system and
hardware specifications along with any other data the Signal Service Inc requests to be stored
within the application. The second feature is to keep notes on the status of the devices. These
notes can include reported issues with devices or requests for repairs or replacement of devices
after they have been damaged. The last main feature of the application is to provide a secure
place for the data to be stored by requiring a login in order to view and edit data. Due to the
nature of this application Signal Service Inc may request additional features to the application. If
this occurs then the team will document the feature request and discuss extending the scope of
work with Signal Service Inc.
The scope of work for this application software project is to provide a completed
application with the three main features by October 8th, 2019. This scope may be extended by
the team during discussions with Signal Service Inc if Signal Service Inc requests additional
features. The application development will begin on August 28th, 2019 with biweekly meetings
with Signal Service Inc management to review the progress of the application and to provide
feedback for the development team on the application.
This application is a requested solution for Signal Service Inc. The application can be
adjusted to assist other organizations with similar issues however the Organization Device
Tracker is being developed as a specialized application for Signal Service Inc.
Our team expects this application project to provide us with experience in software
development and project management. Signal Service Inc expects the application to provide
them with a solution to their device data management issues to reduce excessive purchases of
devices and provide a location to keep track of device status and active issues with devices in the
field.
Table of Contents
● Introduction (Page 4)
● Stakeholders (Page 6)
Introduction
The use of computer hardware is increasing every year. Small businesses are finding
themselves with more computer hardware requirements to run their business. Computer
Organization Device Tracker Capstone Report 4
hardware ranging from cell phones to tablets, and laptops are used in everyday business. Often,
these companies find themselves with an extensive amount of computer hardware and become
lost in this sea of technology. Since these companies typically don't have their own IT
department to handle the manual cataloging of devices, our project aims to provide the business
One of these companies is Signal Service Inc. The company does not have a dedicated IT
department in order to manage all of the devices that the organization provides for the staff. The
manager, Sarah Wilson, had been using a basic Excel worksheet in order to try to keep all of the
devices tracked and organized. However this document was out of date and stored somewhere
within the companies shared storage drive. Sarah was finding it difficult to locate the document
and had requested a solution that will provide a simple to use interface that is easy to navigate
and access.
In order to assist Signal Service Inc, our project, Organization Device Tracker, was
created as a web application to provide a simple inventory management solution to track the
number for the devices currently owned by the company. Further data on each device can be
found within the application, such as device system specification, and to whom the device was
given. The application requires an authorized user to login to view and manage the inventory
data. The inventory data is entered through an entry process that requests different information
for each device. Companies can manage their computer hardware rapidly and easily with our
project. By having easy access from anywhere to edit the device inventory, company managers
will be able to make informed decisions on device purchases during times when there are
changes to staff.
Project Objectives
Organization Device Tracker Capstone Report 5
There were a few goals for this project. The first goal was to create an application that
could be used by Signal Service Inc to easily and efficiently keep track of device inventory data.
Our second goal was to gather experience developing an application for a client and delivering
the application by a deadline. In order to achieve our first goal we completed the following
objectives.
First we had to analyze the hosting options for the application that was developed for the
client. This task involved doing research on hosting options in order to find the best option for
our project and the client. Next we created a schedule with project milestones in order to keep on
task with completing the project. This schedule included listing tasks that need to be completed
and who within the development group completed these tasks. A few of these tasks were to
develop the GUI that is being used by the customer, develop the server environment, develop the
server software application that will run the application functions. The schedule also listed the
These features are a login screen with password verification, data included staff member
that the device is assigned to, tracking the data for each device and being able to attach notes to
each device for expanded details on the status of the device. If we are able to complete all of
these features before the deadline then we will continue development to include the following
features, providing device history to show what devices have been repaired, replaced or retired.
Support for multiple login users with different permissions within the application. Scanning
through the details within the systems and checking for any major security risks for the
Stakeholders
Organization Device Tracker Capstone Report 6
The main stakeholders are Signal Service Inc andany future staff tasked with managing
the inventory of the organizations provided devices.Signal Service Inc. aims to obtain an easy to
use and maintain web application to assist with the management of the device inventory. With
this application the information about how many devices that Signal Service Inc currently has
along with which staff member the devices have been provided to. This application will also
assist any new staff member who is placed in charge of managing the devices within the
organization.
Signal Service Inc stands to lose having an easy to access location for all of the data
about the companies’ devices. The company will also have to devote work time to have a staff
member take down all of the information for the devices and input them into the Excel
workbook. This will most likely become out of date due to the lack of a dedicated IT department
and the process of gathering all of the devices information and inputting them into an Excel
Our goal is to provide ODT as a solution to change the cycle of work by providing an
application that is easy to use and maintain. By providing something that is quick to update it
will be more likely that the data is maintained and updated regularly during device swaps and
repairs. In order to make sure that this application is easy to use we will request Signal Service
Inc to test the application during development to request feedback on application features.
Environmental Scan
The task of inventory management is something that all corporations and businesses must
address. Keeping track of what you have in your inventory can be very important yet time
consuming. Software applications have been developed to improve the efficiency of managing
Organization Device Tracker Capstone Report 7
an inventory. Many of these software applications for inventory management exists today. Most
of them even exists in the Fortune 500 companies. For example, it can be useful to track internal
inventory movement. If Google gave each of their employee one laptop to use under the
company’s finances, then they would need to know the serial number for each of their laptops.
Without a management system to track this, they would not be able to predict how many laptops
The lack of asset management could cause overspending and result in major financial
damage to the company. Besides the internal use of asset tracking, another of these software
solutions is the tracking of inventory space and stock levels. Brightpearl is a platform "designed
for retail/warehouses to manage their orders, inventory, real-time accounting, reporting, and
customer data." (REFERENCE 1) it’s main use is to assist with keeping track of warehouse
inventory and mainly used by retail warehouses. The platform itself currently has at least eighty-
four retail partners. "Before Brightpearl, we were using NetSuite (REFERENCE 2), which was
really difficult to configure and manage. Every change was a complex task and a project. Trying
to do anything took way too long. Not one for wasting time, I began my search for software
which would fit and suit my business better." (REFERENCE 3) According to reviews about the
project will not work as in a large scale as Brightpearl. However, it can provide a simple, secure
and innovative way to manage inventory systems. Our project allows users to manage
Functional Decomposition
Our client requested that the application be easy to use and wanted the application to
store data about devices within their organization in a secure local location. They also requested
Organization Device Tracker Capstone Report 8
that the application should be able to keep track of which devices are assigned to which
employees. To provide a solution that best meets these requests, the application was designed
with three main features. First was to develop to be accessed using a login system to provide
secure access to the organizations device data. To develop this feature we used a gem bcrypt to
assist with the creation of a secure password within the user database. We then developed a login
page for the application. The second feature for the application was to provide a place to store
data on the devices within the organization. To provide this feature we developed an ER diagram
(Appendix A) for us to present to the client as the possible database configuration. During the
presentation of the possible database configuration the client requested an additional data field to
hold the name of the employee who currently has the device assigned to them. After this meeting
we added this new data field to the project. The third feature was to link the devices information
to the employee information to allow for the application to track who had each device or if the
device is in inventory. This was completed using the relational models within the Rails
environment to provide relationships between the staff database, the device database and the
notes database.
One major risk on this project will be based on how much data we will be able to enter
into our application. Our main concern was if there is too much data stored, the application
would crash or miscalculations would happen. Another risk is the client requesting more features
that we would be unable to complete within the scope timeframe. If this happened then we would
have to discuss extending the timeframe for the project with the client. Our application has a
security risk involved with the data that is being collected could be accessed by an unauthorized
Organization Device Tracker Capstone Report 9
user. In order to mitigate this risk our team researched and developed a secure login feature that
allows our client peace of mind that the data will be stored securely.
A dependency is the server located onsite at the main office of the client If the server is
not able to host the software application then we will need to research a backup hosting solution
for the application. The client does have a cloud based Google server that is currently being used
for another web application. This makes this cloud based server the second choice for
deployment of our application with the clients and IT administrator’s permission. Otherwise the
application will need to be hosted to a web server and the client will need to be provided a
Another dependency that the application has is that the development of the software goes
forward without delays. If the software development experienced extensive delays it could lead
to the application being delivered to the client in a late or incomplete state. This outcome is
something that our team strived to prevent from happening, however if this outcome does happen
Required Resources
The first resources that we used was a development system. An Amazon Web Services
account was used for development and testing. Github repository was used to manage the project
and code for the application. The server to host the application was provided by the client as the
client requested that the application be useable on their server. They have a local server and a
server hosted with Google servers available for us to work with. The client stated that they prefer
Methodology
Organization Device Tracker Capstone Report 10
Through the use of the Agile methodology we were able to complete this project by the
deadline. The Agile methodology is a type of project management technique that is used within
software development and allows teams to react to the unpredictable nature of developing
software. (Reference 4) The Agile methodology will allow us to work quickly while cooperating
with Signal Service Inc to insure that the project is progressing towards the way that the client
envisioned. I will plan on having a short weekly meeting with the client to provide an update on
how the project is progressing as well as gathering feedback from the client on the direction that
the project should progress. Using the Agile methodology will allow for us to quickly shift our
development focus based on the feedback that the client provides us.
We needed to research solutions on how we would host the web server for the
application, what software languages we could use to develop the server application and the web
client application and how we should divide the development tasks between us. We decided on
these topics before we began development on the application. Once development had begun we
implemented Scrum in order to assist with keeping our project on task and our development
efficient. Scrum is the process of developing software in incremental iterations. The defined
Implementing Scrum into our methodology had us keep daily meetings with the
development team to gather information on which tasks for the application were currently being
worked on, which tasks had been completed and which tasks were being held up because of
dependencies. This continued for two weeks, which was considered to be our sprint. At the end
of each sprint, the product was in a demo-able state for the client to use and provide feedback.
Once the client review had been completed we would then have a meeting to evaluate the next
Organization Device Tracker Capstone Report 11
sprint and begin working on tasks to complete the next two week sprint. We repeated this cycle
By using the Agile methodology and Scrum together we were able to complete our
project without encountering any large scale delays during development and deliver an
application that provides a service for our client that we are proud of.
Ethical Consideration
For our project there are two main ethical concerns. The two main ethical concerns are
keeping the collected data secure and tracking which devices are assigned to each employee of
the company. Since our project is an inventory system which involves data collection, our first
ethical concern is to make sure that collected information will be kept secure and will only be
used for inner business use. As with any system that collects data there is an ethical
responsibility to keep the data from being stolen or viewed by individuals without the proper
authority. To mitigate future information breaches within our project, we will suggest hosting the
information locally on a server machine situated behind a controlled access door. We will also be
programming a login system for the inventory application that requires the use of a username and
a password in order to view and modify the data. By installing the server application on a
physically isolated server and requiring the use of a username and password in order to view the
Another ethical concern for our project is that the company is tracking which staff
members have which devices. This tracking could be seen as being invasive towards the staff
members. It could also be seen as discriminating against the field technicians as they are
provided with multiple devices and they take these devices home whereas the majority of office
Organization Device Tracker Capstone Report 12
employees do not take any company devices home. In order to mitigate this ethical concern we
will be gathering information for every device that the company provides for both the field
technicians and the office staff. As for the ethical concern about the company being viewed as
invasive towards the employees this concern is outside of our scope to be able to provide a
solution for. We can provide advice about how to describe our project to everyone within the
Legal Consideration
Our legal concerns for the project are the software license for the software language that
we are using and the application we will develop. We have decided on using on Ruby on Rails
which is an open source programming language. We decided to use the MIT software copyright
license and have added the license to the GitHub repository that will be used during the project.
The MIT license will allow our project to be a free use software as long as the license file is
included with the software distribution. This MIT license has been modified to include our
Milestones
The milestones for the project are outlined for us to keep track of the progress being
made on the project during development. These milestones will be broken into smaller tasks. Of
the larger milestones we had the mapping milestone. This was where we discuss the project
scope with the client and provide details on the features that were to be included with the final
deliverable for the project. The next milestone was the development of the application features.
During development the client was kept up to date with the progress of the application during a
biweekly meeting. During the development the testing milestone were also worked on. This is
due to the software application was developed using a Test Driven Development method.
Organization Device Tracker Capstone Report 13
The last two milestones were the client’s approval and then the launch of the application.
The client’s approval milestone was completed when the client approved that the application
provided the three main requested features to their satisfaction. We did not consider the launch of
the application to be completed until the client had an answer for all of the questions within the
post deployment questionnaire. The milestones for the project are defined in more detail in
Appendix B.
Timeline
The timeline for the project was outlined in Appendix C prior to the start of the project.
Together our team worked on development and kept roughly within the proposed timeline during
the first half of development. We began to have some difficulty keeping the final testing for the
project timeline on time due to difficulty with scheduling a meeting with the client. This reduced
the time for the client to test the final implementation of the application. Due to this Sean
discussed with the client continued communication outside of the time scoped out for this project
in order to insure that the application will be the solution that the client envisioned. Therefore we
conclude that our timeline was developed without taking into consideration the possibility of
rescheduled meeting with the client. In order to combat these possible rescheduled meetings
client meetings should be added to the timeline with a date range for the meeting to take place in
Usability Testing
Our usability testing and evaluation of the application went well. In order to facilitate the
usability testing we installed the application on a local server for the client to use over a few
days. Once the application was installed and confirmed to be running on the server, the client
was provided with a user guide and was shown how to access the application from their office
Organization Device Tracker Capstone Report 14
computer. We then scheduled a meeting with the client to return and go through the
During this meeting we discussed the application and how it was working for the client.
The client seemed to be happy that the application was working as intended with being able to
add items to the list of devices as well as being able to link the devices to staff members and
notes for the devices. Going through the questionnaire answers that the client had written they
said that the application is working for their organization but there is room for improvement. The
client stated that the application has some sections that could be improved. The client requested
some changes to how the device and staff databases are linked. The feature that was requested
was to have the data from the staff database be shown within the device creation form. We
discussed this feature with them and will work on providing this feature outside the timescope of
the project.
Overall the client was happy that the application provided the features that were within
the initial scope of the project. However there is room for improvement on the application which
we will continue to discuss with our client for future versions of the application.
Final Implementation
The final deliverables for this project were to provide the client, Signal Service Inc with a
functional web application that can be used to keep track of their device inventory. This
application was delivered with all three of the following features fully implemented. The first
feature was to view, edit and remove data about the devices for the organization. The second
feature was to provide a secure login system to access the devices data. The last major feature
was to provide an option to save notes to describe issues about devices. There was also an added
feature to add, view and delete details about the staff members name and role within the
Organization Device Tracker Capstone Report 15
company. This information allows the organization to know when a device has been assigned to
a staff member.
The web application was deployed on their local server with local access. The client at
this time has not requested that they would would like to have offsite access but we have
discussed this would be a feature would require additional work outside of the initial scope of the
project to provide. This feature would need to be discussed with the client’s IT department
before deployment. The client was happy that the onsite server was able to run the application so
that there would be no additional cost to the client in order to run our application.
A document was distributed to the client that describes how to use the software
application. This user guide document details all of the different features and provide instructions
Conclusion
Our client Signal Service requested a solution for their organizations device management
following the purchase of hardware that was unnecessary. The lack of an inventory management
procedure was partially to blame for this purchase. Signal Service requested an application that
can provide their inventory manager a place to store information about the organization’s
devices. The Organization Device Tracker was developed to provide a solution for Signal
Development of the application was done using an Agile development method. During
development there were biweekly meetings scheduled with the client to keep them informed of
the progress of the application. During these meetings the current build of the application would
be shown to the client for feedback to provide direction to the development of the application.
Organization Device Tracker Capstone Report 16
The application was designed as a web application using Ruby on Rails. The GUI design
was developed using HTML, CSS and Bootstrap. The three main features that was developed for
the application was a login system that requires an email address and password, store data on the
organizations devices and to keep notes on individual devices. The development time for this
application was two months, the duration of the CST 499 2019 course at California State
University Monterey Bay. Besides the timeframe there was no addition budget for the project.
The project development went relatively on schedule, with the GUI taking quite a bit
more time to develop than anticipated and there was some difficulty in the development of the
login feature. By the end the application has the three features that were proposed with room for
improvement in the ease of use for the application. These improvements will be pursued during
additional development time that has been discussed with the client. The client has stated that the
application will work for their needs at this time and will provide additional feedback in the
Project Reflection
This project gave us a great opportunity to work on a project defined by our team and
work within a timeframe deadline. During development communication was key in order to have
efficient development on the application. We had some struggles with keeping within our
timeline of events defined prior to the start of the development process due to other
There were some difficulties during development that we were able to work through
during communication. There was one instance where the application design using Bootstrap
was showing up differently when run between our two development consoles. In order to try and
mitigate this type of issue a future having a centralized development location would assist with
Organization Device Tracker Capstone Report 17
more streamlined development. We were able to keep our source code managed through the use
of GitHub so we did not have too much issues with version management during development.
anticipated and design of the GUI of the application took exceedingly more time to develop.
While working on the GUI for the project we ended up beginning with using css and was having
issues with formatting during this time. Appendix F shows a before and after image for the
formatting of the project. The after image uses Bootstrap in order to assist with the formatting of
the CSS. This was a good learning experience for us to keep in mind when estimating time for
projects in the future. In order to avoid this in the future we could begin GUI development at the
beginning of the application development through the use of paper prototyping or some other
Moving forward we will take what we have learned from this project to improve our
skills when developing future projects. We found this project to be a great learning experience
for the challenges of project management and development for software projects. We will
continue to strive to work hard on our future projects and deliver solutions for our next client.
Organization Device Tracker Capstone Report 18
References
REFERENCE 1: https://reviews.financesonline.com/p/brightpearl/
REFERENCE 2: http://www.netsuite.com/portal/home.shtml
REFERENCE 3: https://www.brightpearl.com/expertise/customer-stories/vesternet
REFERENCE 4: https://linchpinseo.com/the-agile-method/
REFERENCE 5: https://www.scrum.org/about
Organization Device Tracker Capstone Report 19
Appendex
Appendix A
Appendix B
● Mapping
○ Define the features of the project and confirm features with the client that they
○ Confirm that the server located at the client’s site is capable of hosting the project
application.
● Developing
○ Device database
■ This milestone will be completed once the database for the devices has
■ This milestone will be completed once the database for the notes has been
○ User login
■ The milestone will be complete once the database has been developed and
○ Note feature
■ The development of the feature to add notes to the devices. There will
● Testing
○ Test driven development during the development process followed by the client
● Client Approval
○ Confirm with the client that the project has been developed to their satisfaction.
● Launch
Appendix C
8/30 Confirm that the local server at 9/25 Meet with Client to provide an
application
9/5 Learn Ruby and Rails 9/30 Develop feature to store notes
9/12 Develop Device Database Schema 10/7 Install server application at client
site
9/16 Develop User Database Schema 10/11 Meet with client for project review
Appendix D
This is a list of questions that will be requested of the client to answer once the application has
been deployed to the client. These are the initial questions and more could be added in the future.
● Does the application meet your expectations? If no explain how the application can be
● Is there any difficulty with using the application? If yes, please describe the process that
is difficult to complete.
● Is there any additional features that you would like to have added to the application?
● Is there any graphical changes you would like to have done to the application?
Appendix E
https://www.usability.gov/how-to-and-tools/methods/running-usability-tests.html
Appendix F
Before
After
Organization Device Tracker Capstone Report 23