The purpose of this document is to collect, analyze the features and define the high level needs of the Helping Old People Easily System (HOPE). This document is concerned with the stakeholder’s needs, the users and why those needs exist. The product overview and the high level features are also covered in the Vision document. Any further details about the HOPE System are listed in Use-Case and supplementary specifications.
This Vision Document applies to the HOPE System which will be developed by the Project Total Recall team. The HOPE is a software application which runs on a mobile device. The HOPE app aims to be a help to any person suffering of category 3 Dementia, by maintaining lists of people, locations and things. These lists can be expanded, updated or deleted the application’s owner.
1.4 Definitions and Glossary
Please see the appendix document titled “Glossary.”
Please see the Appendix document titled “References.”
2.1 Business Opportunity
Many applications like Evernote and Pocket are designed to help users ‘bookmark’ and take notes to record things a user believes to be valuable. But neither of the applications are actually designed to make recalling items simple. This project caters to an underrepresented audience in the Android market. An audience that struggles with memory loss which inhibits their ability to communicate effectively.
2.2 Problem Statement
of communication difficulties caused by Stage 3 dementia (memory loss)
many individuals regardless of age, race, or gender.
The impact of which is
serious communication issues that constrain personal relationships, everyday activities, working ability, or any other activity that requires communication.
A successful solution would be
an application that eliminates communication difficulties by providing a repository of objects that the user would want to or like to remember.
2.2.1 P-I-G Diagram
2.3 Product Position Statement
individuals with communication difficulties caused by Stage 3 dementia (memory loss)
feel the need to solve their communication issues by mitigating their memory loss problems.
provides the efficient access to an object repository that can be filled with objects and information about those objects
provides the user with a solution for communication issues brought on by lack of ability to remember objects, or details about those objects.
current products that are tailored for specific use case scenarios and are thus inflexible and hard to use in any “non-approved” usage,
is an object repository platform that is open-ended and flexible as a solution for communication problems brought on by memory loss.
3. Stakeholder and User Descriptions
3.1 Market Demographics
The target market segment includes smart phone users that have mild dementia or memory loss living in cities that are more urban and modern with internet access to their phones. The users are anticipated to be customers that use their phones for personal use that can help guide them through their everyday lives. Most smart phones range from $500 - $800 without a contract and around $100-$300 with a contract. With access to this application from the Google Play Store, many users can utilize our services through their own phone without having to purchase anything else in addition.
3.2 Stakeholder Summary
Gathers information to correctly describe and implement the requirements given from the customer
Must communicate with the Project Manager and software development team to correctly translate what the customer needs to requirements that both parties can understand and implement
User Interface Engineer
Creates the interface that the user will directly use to accomplish the tasks of the application
Create a user-friendly interface that is easy to use and navigate, while also providing all of the functionality specified in the requirements
Creates and understands the infrastructure of the application and communicates with all stakeholder to ensure all requirements are met
Create and understand a high level architecture of the application so that both the technical software development team can understand as well as the customer can understand the architecture. Must also understand technical details to know the system as a whole.
Develops the code implementation for the interface used in the application
Communicates and coordinates with the project manager and other software developers to ensure that tasks are being met on time and making sure the work stays relevant to the goals of the application
Manages everyone involved with the development process
Ensures that the development team is on time with the completion of tasks and makes sure that all testing is completed correctly and thoroughly.
3.3 User Summary
Primary end user of the system with stage 3 Dementia
Creates objects, references and searches objects, updates objects, deletes objects
3.4 User Environment
The application will be developed as an Android application for a mobile device. The operating system will be the latest version of android (kitkat). The user will be expected to own and be familiar with navigation on an Android device.
The application will also interact with the camera portion of the android device
3.5 Stakeholder Profiles
3.5.1 RE Engineer
An individual that is works with the stakeholders and acts as a bridge between them and the development team to help with gathering the necessary knowledge for building a successful application.
This individual shall have high understanding of the scope of the project and have great communication and requirements gathering expertise.
Responsible for gathering the requirements as stated by the stakeholders. After gathering these requirements, RE Engineer is responsible for transferring these requirements to the development team for interpretation.
Success is defined for the RE Engineer as being able to completely gather all the necessary requirements as defined by the stakeholders and being able to clearly describe them to the development team.
The RE Engineer will be involved with both the requirements phase as well as the beginning stages of the development phase.
3.5.2 UI/UX Engineer
An individual that works with the stakeholders in order to assist in producing a user-friendly and intuitive user interface for the application.
This individual must have high understanding of the scope of the project and have excellent requirements gathering skills.
The UI/UX Engineer is responsible for gathering information from the stakeholders in order to help create a user interface that is easy to use and understand.
Success is defined by how intuitive the final UI is on the application. No issues with navigating throughout the application equals success for the UI/UX Engineer.
The UI/UX Engineer is involved in both the requirements phase and the beginning stages of development and implementation.
Requirements Document (UI/UX portion)
3.5.3 Software Architect
An individual that makes decisions on high-level design and technical standards for the project.
The Software Architect must have high knowledge of the scope and requirements of the project.
The Software Architect must work with the requirements team in order to create high level class definitions and associations of the system in order to pass off to the development team for implementation.
Success is defined by how well the high-level decisions affect the application as a whole. If the high-level decisions of the application make implementation easier for the developers and help satisfy the requirements for the stakeholders, then the Software Architect was successful.
The Software Architect will be involved with both the requirements phase and the beginning stages of development
Framework of the Application
3.5.4 Software Developer
This individual will work with the requirements team, building and implementing the code to create the application based on the requirements gathered by the RE team.
The Software Developer shall have high technical skills in Java and Android programming. They should also have a high understanding of the scope and requirements of the project.
The Software Developer is responsible for building and maintaining the code for the application, making sure that the application works as how the stakeholders expect it to.
Success is defined by how well the application is built. A well-implemented application that satisfies all the stakeholder’s requirements means success for the Software Developer.
The Software Developer will mainly spend their time in the development process, but may possibly be involved in the requirements gathering phase if they need further understanding of stakeholder needs.
This individual is in charge of overseeing the entire project and the stakeholders involved, both user and non-user.
This individual shall have complete understanding of the project, including the scope, deliverables, requirements, etc.
The Project Manager is responsible for keeping the PTR (Project Total Recall) team on task. From scheduling team meetings to internal deadlines, the Project Manager makes sure every team member is doing their duty to complete the application on time.
Success is defined by when the PTR team completes the project. Success means the application is completed on or ahead of schedule.
The Project Manager will be involved with all aspects of the project lifecycle, from requirements gathering to implementation to delivery of the product.
Requirements Document, Architecture, Final Prototype
3.6 User Profiles
Any individual who has memory loss (category 3, Mild Dementia)
This user will have a basic knowledge of how to operate a mobile device.
The user is responsible for knowing how to use the application in order for the best chance of success with the application.
If the user can successfully recall certain objects that they save with the application, the application is considered successful for the user.
We will have several users using our application to provide us with feedback.
This application is almost entirely self-contained. Everything takes place within the user’s Android device. This is the internal architecture of the system:
The application layer encompasses the vast majority of the system and communicates with several external services through APIs. The application layer interfaces with the Android system’s camera and gallery services in order to load images and icons into the system. Most importantly, the application layer interacts with the external DBMS through the DBMS interface to persist all objects if the user elects to save them.
The system shall enable the user to create, edit, delete, and view specific types of objects. System supported types of objects are Person, Place, or Thing objects. The user can designate these as Emergency objects for the purposes of direct access if desired. The system persists all objects in the external database if the user saves the object.
Each Person, Place, or Thing object has specific attributes that enable the user to store important information about that object. The system adds the additional capability of allowing the user to define meaning and substance to each object through the addition of an image attachment and an icon. The user can also be as descriptive as they desire about the object by detailing specific textual description in the Note attribute.
4.2 Summary of Capabilities
Prioritized emergency contacts
Provides quick ways to contact authorities in the event of an accident
Fully customizable objects
Wide range of possible objects within the system
System can contain as many objects as the Android device memory allows
Lists for recently-viewed objects
System tracks objects which have been viewed recently for ease of access
Robust search capabilities
All attribute of every object are searchable to provide accurate searching
The software will operate on an Android device with the following minimum hardware specifications:
Software version 4.4.2, API 19
2048 MB RAM
200 MB internal storage
The database will be stored on the Android device. This ensures that users will not need a consistent 4G or WiFi connection in order to use the application.
4.4 Cost and Pricing
The system will be distributed through the Android store for free. This is done for two main reasons. First, the Android store requires a licensing process in order to monetize an application, which could create a period of time in which the product is ready but cannot be released. Second, a free application is more likely to be selected for usage than a new one that costs money. By not charging anything, we can increase our early user base.
4.5 Licensing and Installation
The Android store will need to approve of the application before it can be distributed. The application needs a fully completed application package (APK). The APK requires developers to modify the existing code into a signed release version of the application. The system will need API release keys for the onboard camera application to ensure legal connectivity. Promotional materials must be prepared, such as screenshots and working graphics. The application will then be uploaded to the App Marketplace for release. The system will be directly installed on the Android devices through the App Marketplace. It will be downloaded through the user’s internet connection and then installed.
For this system to function correctly we shall assume that the user suffers from Stage 3 (“Mild”) Dementia or less which will allow said user to be the only person responsible for operating the application. The system that the application will run on shall be an Android device with software version 4.4.2 or higher and contain the necessary hardware components to satisfy the functional needs of said application such as a camera.