Se 4351. 001 Software Requirements

Download 95.17 Kb.
Size95.17 Kb.
SE 4351.001 Software Requirements

Fall 2014

Product Specification

(Vision Document)

Team Members

Joe Brown


Desmond Lee


Giuseppe Mastrolorenzo


Michael Raibick


Ryan Chen


Robert Lockwood


Blessing Osakue


Oscar Reyes


Travis Chun


Michael Mugger


Andrew Pohlmann


James Williams


Bennilyn Quek


Revision History








Team 2



Added Diagrams

Team 2



Filled in Sections 1-3

Team 2



Cosmetic Updates

Fixed section spelling errors

Added Table of Contents

Team 2



Filled in Sections 4-7

Team 2



Final Check


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 8

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 10

3.5.4 Software Developer 11

3.5.5 Project Manager 12

3.6 User Profiles 13

3.6.1 User 13

3.7 Key Stakeholder or User Needs 13

3.8 Alternatives and Competition 14

4. Product Overview 15

4.1 Product Perspective Overview 15

4.2 Summary of Capabilities 17

4.3 Assumptions and Dependencies 20

4.4 Cost and Pricing 20

4.5 Licensing and Installation 20

5. Product Features 21

5.1 Creating an Object 21

5.2 Accessing an Object 22

5.3 Updating an Object 23

5.4 Deleting an Object 24

5.5 Viewing Recently Accessed Objects 25

5.6 Viewing Emergency Objects 26

5.7 Searching for Objects 27

6.0 Sequence Diagrams 28

6.1 Application Initialization 28

6.2 Create or Edit Object 29

6.3 Deleting an Object 30

6.4 View Emergency Objects 31

6.5 View Recently Accessed Objects 32

6.6 Searching for an Object 33

7. Constraints 34

1. Introduction

1.1 Purpose

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.

1.2 Scope

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.”

1.5 References

Please see the Appendix document titled “References.”

2. Positioning

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

The Problem

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.

Total Recall

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,

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 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




Requirements Engineer

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

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.

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 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.


The RE Engineer will be involved with both the requirements phase as well as the beginning stages of the development phase.


Requirements Document

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 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.


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 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.


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 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.


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.


Final Prototype of the application

3.5.5 Project Manager


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 Criteria

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

3.6.1 User


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.

Success Criteria

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.

3.7 Key Stakeholder or User Needs




Current Solution

Proposed Solutions



Application needs to be able to store a plethora of different types of objects without the possibility of losing data


Implement data storage to securely store data via Memory Card



Application needs to be intuitive and simple for any type of user


Create user-friendly menus, with detailed descriptions and easy-to-use buttons and spinners, etc.


Moderate to High

Give customizability for users to store, edit, and delete objects


Give users a wide range of options to customize their objects they save that will help them remember the objects easily.



In emergency situations, the user needs to be able to make contact with medical personnel immediately


Implement the buttons so medical personnel can be contacted ASAP through minimal steps (1-3 taps).

3.8 Alternatives and Competition



4. Product Overview

4.1 Product Perspective Overview

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

Customer Benefit

Supporting Features

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

4.2.1 S-I-G Diagram

4.3 Assumptions and Dependencies

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.

5. Product Features

5.1 Creating an Object

5.2 Accessing an Object

5.3 Updating an Object

5.4 Deleting an Object

5.5 Viewing Recently Accessed Objects

5.6 Viewing Emergency Objects

5.7 Searching for Objects

6.0 Sequence Diagrams

6.1 Application Initialization

6.2 Create or Edit Object

6.3 Deleting an Object

6.4 View Emergency Objects

6.5 View Recently Accessed Objects

6.6 Searching for an Object

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.

Download 95.17 Kb.

Share with your friends:

The database is protected by copyright © 2022
send message

    Main page