PRODUCT - Vision Doc .docxchung/CS4351... · Web viewprovides the user with a solution for...
Transcript of PRODUCT - Vision Doc .docxchung/CS4351... · Web viewprovides the user with a solution for...
SE 4351.001 Software RequirementsFall 2014
Product Specification(Vision Document)
http://www.utdallas.edu/~axp120531/SE4352/Team Members
Joe Brownjsb100120
Desmond Leedcl102020
Giuseppe Mastrolorenzomxg106320
Michael Raibickmxr110530
Ryan Chenrxc109520
Robert Lockwoodrll092020
Blessing Osakueboo102020
Oscar Reyesoxr110330
Travis Chuntwc101020
Michael Muggermxm121531
Andrew Pohlmannaxp120531
James Williamsjxw110730
Bennilyn Quekbxq120430
Revision History
Date Version Description Author
11/11 1.0 Initial Team 2
11/15 1.1 Added Diagrams Team 2
11/18 1.2 Filled in Sections 1-3 Team 2
11/24 1.3 Cosmetic UpdatesFixed section spelling errors
Added Table of Contents
Team 2
11/26 1.4 Filled in Sections 4-7 Team 2
12/01 1.5 Final Check Management
1 of 35 v1.5
1. Introduction................................................................................................................................4
1.1 Purpose...........................................................................................................................4
1.2 Scope..............................................................................................................................4
1.4 Definitions and Glossary.................................................................................................4
1.5 References......................................................................................................................4
2. Positioning..............................................................................................................................5
2.1 Business Opportunity......................................................................................................5
2.2 Problem Statement...........................................................................................................5
2.3 Product Position Statement.............................................................................................6
3. Stakeholder and User Descriptions........................................................................................7
3.1 Market Demographics.....................................................................................................7
3.2 Stakeholder Summary.....................................................................................................7
3.3 User Summary................................................................................................................9
3.4 User Environment...........................................................................................................9
3.5 Stakeholder Profiles........................................................................................................9
3.5.1 RE Engineer......................................................................................................................9
3.5.2 UI/UX Engineer.............................................................................................................10
3.5.3 Software Architect.........................................................................................................11
3.5.4 Software Developer......................................................................................................12
3.5.5 Project Manager............................................................................................................12
3.6 User Profiles..................................................................................................................13
3.6.1 User...........................................................................................................................13
3.7 Key Stakeholder or User Needs....................................................................................14
3.8 Alternatives and Competition........................................................................................15
4. Product Overview.................................................................................................................16
4.1 Product Perspective Overview......................................................................................16
4.2 Summary of Capabilities...............................................................................................18
4.3 Assumptions and Dependencies...................................................................................21
4.4 Cost and Pricing............................................................................................................21
4.5 Licensing and Installation..............................................................................................21
5. Product Features..................................................................................................................22
5.1 Creating an Object........................................................................................................22
2 of 35 v1.5
5.2 Accessing an Object.....................................................................................................23
5.3 Updating an Object.......................................................................................................24
5.4 Deleting an Object.........................................................................................................25
5.5 Viewing Recently Accessed Objects.............................................................................26
5.6 Viewing Emergency Objects.........................................................................................27
5.7 Searching for Objects....................................................................................................28
6.0 Sequence Diagrams.........................................................................................................29
6.1 Application Initialization.................................................................................................29
6.2 Create or Edit Object.....................................................................................................30
6.3 Deleting an Object.........................................................................................................31
6.4 View Emergency Objects..............................................................................................32
6.5 View Recently Accessed Objects..................................................................................33
6.6 Searching for an Object................................................................................................34
7. Constraints...........................................................................................................................35
3 of 35 v1.5
1. Introduction
1.1 PurposeThe 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.
1.2 ScopeThis 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 GlossaryPlease see the appendix document titled “Glossary.”
1.5 ReferencesPlease see the Appendix document titled “References.”
4 of 35 v1.5
2. Positioning
2.1 Business OpportunityMany 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 StatementThe Problem of communication difficulties caused by
Stage 3 dementia (memory loss)
Affects 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.
5 of 35 v1.5
2.2.1 P-I-G Diagram
2.3 Product Position Statement
For individuals with communication difficulties caused by Stage 3 dementia (memory loss)
Who feel the need to solve their communication issues by mitigating their memory loss problems.
Total Recall provides the efficient access to an object repository that can be filled with objects and information about those objects
6 of 35 v1.5
That provides the user with a solution for communication issues brought on by lack of ability to remember objects, or details about those objects.
Unlike current products that are tailored for specific use case scenarios and are thus inflexible and hard to use in any “non-approved” usage,
Our Product 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 DemographicsThe 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 SummaryName Description Responsibilities
Requirements Engineer
Gathers information to correctly describe and implement the
Must communicate with the Project Manager and software development team to correctly translate what the customer
7 of 35 v1.5
requirements given from 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
Software Architect 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.
Software Developer 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
Project Manager 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.
8 of 35 v1.5
3.3 User SummaryName Description Responsibilities Stakeholder
Patient Primary end user of the system with stage 3 Dementia
Creates objects, references and searches objects, updates objects, deletes objects
Self
3.4 User EnvironmentThe 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 EngineerDescription 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.
Type This individual shall have high understanding of the scope of the project and have great communication and requirements gathering expertise.
Responsibilities 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.
9 of 35 v1.5
Success Criteria 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.
Involvement The RE Engineer will be involved with both the requirements phase as well as the beginning stages of the development phase.
Deliverables Requirements Document
3.5.2 UI/UX EngineerDescription An individual that works with the stakeholders
in order to assist in producing a user-friendly and intuitive user interface for the application.
Type This individual must have high understanding of the scope of the project and have excellent requirements gathering skills.
Responsibilities 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 Criteria 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.
Involvement The UI/UX Engineer is involved in both the requirements phase and the beginning stages
10 of 35 v1.5
of development and implementation.
Deliverables Requirements Document (UI/UX portion)
3.5.3 Software ArchitectDescription An individual that makes decisions on high-
level design and technical standards for the project.
Type The Software Architect must have high knowledge of the scope and requirements of the project.
Responsibilities 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 Criteria 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.
Involvement The Software Architect will be involved with both the requirements phase and the beginning stages of development
Deliverables Framework of the Application
11 of 35 v1.5
3.5.4 Software DeveloperDescription 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.
Type 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.
Responsibilities 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 Criteria 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.
Involvement 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.
Deliverables Final Prototype of the application
3.5.5 Project ManagerDescription This individual is in charge of overseeing the
entire project and the stakeholders involved, both user and non-user.
12 of 35 v1.5
Type This individual shall have complete understanding of the project, including the scope, deliverables, requirements, etc.
Responsibilities 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 Criteria Success is defined by when the PTR team completes the project. Success means the application is completed on or ahead of schedule.
Involvement The Project Manager will be involved with all aspects of the project lifecycle, from requirements gathering to implementation to delivery of the product.
Deliverables Requirements Document, Architecture, Final Prototype
3.6 User Profiles
3.6.1 UserDescription Any individual who has memory loss
(category 3, Mild Dementia)
Type This user will have a basic knowledge of how to operate a mobile device.
13 of 35 v1.5
Responsibilities The user is responsible for knowing how to use the application in order for the best chance of success with the application.
Success Criteria If the user can successfully recall certain objects that they save with the application, the application is considered successful for the user.
Involvement We will have several users using our application to provide us with feedback.
3.7 Key Stakeholder or User Needs
Need Priority Concerns Current Solution
Proposed Solutions
Reliability High Application needs to be able to store a plethora of different types of objects without the possibility of losing data
None Implement data storage to securely store data via Memory Card
Usability High Application needs to be intuitive and simple for any type of user
None Create user-friendly menus, with detailed descriptions and easy-to-use buttons and spinners, etc.
Customizable Moderate Give None Give users a wide
14 of 35 v1.5
to High customizability for users to store, edit, and delete objects
range of options to customize their objects they save that will help them remember the objects easily.
Responsive Moderate In emergency situations, the user needs to be able to make contact with medical personnel immediately
None Implement the buttons so medical personnel can be contacted ASAP through minimal steps (1-3 taps).
3.8 Alternatives and Competition3.8.13.8.2
15 of 35 v1.5
4. Product Overview
4.1 Product Perspective OverviewThis 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.
16 of 35 v1.5
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.
17 of 35 v1.5
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
Customer Benefit Supporting Features
Prioritized emergency contacts
Provides quick ways to contact authorities in the event of an accident
18 of 35 v1.5
Fully customizable objects Wide range of possible objects within the system
Scalable 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
19 of 35 v1.5
4.2.1S-I-G Diagram
20 of 35 v1.5
4.3 Assumptions and DependenciesThe 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 PricingThe 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 InstallationThe 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.
21 of 35 v1.5
5. Product Features
5.1 Creating an Object
22 of 35 v1.5
5.2 Accessing an Object
23 of 35 v1.5
5.3 Updating an Object
24 of 35 v1.5
5.4 Deleting an Object
25 of 35 v1.5
5.5 Viewing Recently Accessed Objects
26 of 35 v1.5
5.6 Viewing Emergency Objects
27 of 35 v1.5
5.7 Searching for Objects
28 of 35 v1.5
6.0 Sequence Diagrams
6.1 Application Initialization
29 of 35 v1.5
6.2 Create or Edit Object
30 of 35 v1.5
6.3 Deleting an Object
31 of 35 v1.5
6.4 View Emergency Objects
32 of 35 v1.5
6.5 View Recently Accessed Objects
33 of 35 v1.5
6.6 Searching for an Object
34 of 35 v1.5
7. Constraints
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.
35 of 35 v1.5