Sunteți pe pagina 1din 10

Software Requirements Specication (SRS) Document

for

MUBuddy
Version 1.0 approved

Prepared by John Lilly and Cecil Rappold

Marshall University

September 28, 2011

Software Requirements Specication for MUBuddy

Page 2

Contents
Revision History 1 Introduction 1.1 Purpose . . . . . . . . . . . . . . . . . . . . 1.2 Intended Audience and Reading Suggestions . 1.3 Project Scope . . . . . . . . . . . . . . . . . 1.4 References . . . . . . . . . . . . . . . . . . . Overall Description 2.1 Product Perspective . . . . . . . . . . . 2.2 Product Features . . . . . . . . . . . . 2.3 User Classes and Characteristics . . . . 2.4 Operating Environment . . . . . . . . . 2.5 Design and Implementation Constraints 2.6 User Documentation . . . . . . . . . . 2.7 Assumptions and Dependencies . . . . System Features 3.1 Dynamic Alarm . . . . . . . . . . . . 3.1.1 Description and Priority . . . 3.1.2 Stimulus/Response Sequences 3.1.3 Functional Requirements . . . 3.2 Automatic Sound Prole Toggle . . . 3.2.1 Description and Priority . . . 3.2.2 Stimulus/Response Sequences 3.2.3 Functional Requirements . . . 3.3 Campus Mapping . . . . . . . . . . . 3.3.1 Description and Priority . . . 3.3.2 Stimulus/Response Sequences 3.3.3 Functional Requirements . . . 3.4 Google Calendar Integration . . . . . 3.4.1 Description and Priority . . . 3.4.2 Stimulus/Response Sequences 3.4.3 Functional Requirements . . . 4 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 9

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . .

External Interface Requirements 4.1 User Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Hardware Interfaces . . . . . . . . . . . . . . . . . . . . . . . . .

CS 490: Senior Project I

Fall 2010

Software Requirements Specication for MUBuddy

Page 3

4.3 4.4 5

Software Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . Communications Interfaces . . . . . . . . . . . . . . . . . . . . .

9 9 9 9 9 9 9 10 10

Other Nonfunctional Requirements 5.1 Performance Requirements . . . 5.2 Safety Requirements . . . . . . 5.3 Security Requirements . . . . . 5.4 Software Quality Attributes . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

Appendices A Glossary

CS 490: Senior Project I

Fall 2010

Software Requirements Specication for MUBuddy

Page 4

Revision History
Name John Lilly Date 10/6/11 Reason For Changes Creation Version 1.0

CS 490: Senior Project I

Fall 2010

Software Requirements Specication for MUBuddy

Page 5

1
1.1

Introduction
Purpose

The purpose of this application is to provide a reminder for students to go to class. MUBuddy will have a dynamic alarm system that will remind students that they have class depending on their location. It will silence their phone when they are close to the building to help prevent classroom interruptions. MUBuddy will synchronize with Google Calendar so their class schedules will be available online.

1.2

Intended Audience and Reading Suggestions

This document is intended for the developers and the faculty advisor assigned to the project.

1.3

Project Scope

The MUBuddy is an Android application that features an automatic sound prole silencing feature and a dynamic alarm system. The dynamic alarms and automatic phone silencing system will be based on GPS location of the phone. The phone will automatically change the sound prole to silent or vibrate when it is close to a building. The user will be able to add alarms to the application by entering Course Reference Numbers (CRN) which will automatically add the required information such as class location and meeting times. MUBuddy will synchronize with Google Calendar.

1.4

References

This SRS document references the Vision and Scope document for the MUBuddy application.

2
2.1

Overall Description
Product Perspective

The MUBuddy application is an entirely new project that is not based on any existing product.

CS 490: Senior Project I

Fall 2010

Software Requirements Specication for MUBuddy

Page 6

2.2

Product Features

The main features of MUBuddy include an automatic sound prole changing feature, a dynamic alarm system, synchronization with Google Calendar, and class mapping based on CRN.

2.3

User Classes and Characteristics

This application is intended for college students, particularly Marshall University students.

2.4

Operating Environment

MUBuddy will operate on Android 2.0 and up. Additionally, there will be an enhanced tablet version for tablets running Android version 3.0 and up.

2.5

Design and Implementation Constraints

The application will be battery intensive and only available in the English language.

2.6

User Documentation

Simple user instructions will be embedded into the application.

2.7

Assumptions and Dependencies

MUBuddy is dependent on the system having an active mobile data connection and an internal GPS.

3
3.1

System Features
Dynamic Alarm
Description and Priority

3.1.1

An alarm function of priority 9 will change the time it reminds the user for class depending on their distance from the building based on GPS location.

CS 490: Senior Project I

Fall 2010

Software Requirements Specication for MUBuddy

Page 7

3.1.2

Stimulus/Response Sequences

1. User enters a CRN at the start of the semester. 2. The CRN is passed to the database and the relevant information is extracted. 3. MUBuddy shows a the class with its meeting time and location. 4. The user checks to make sure the displayed course matches the course they are enrolled in and accepts. 3.1.3 Functional Requirements

This feature will require an active mobile data connection to initially download the database information.

3.2
3.2.1

Automatic Sound Prole Toggle


Description and Priority

This feature of priority 8 will automatically toggle the sound prole to vibrate or silent depending on the user preference when the user is near the building. 3.2.2 Stimulus/Response Sequences

This feature is fully automated. 3.2.3 Functional Requirements

This feature required GPS to determine the users distance from the building.

3.3
3.3.1

Campus Mapping
Description and Priority

This feature of priority 7 will automatically generate a map with the building based on the users schedule. 3.3.2 Stimulus/Response Sequences

1. User enters course schedule that is required for the dynamic alarm feature. 2. A list of courses are displayed. 3. User selects course and the building location is mapped.

CS 490: Senior Project I

Fall 2010

Software Requirements Specication for MUBuddy

Page 8

3.3.3

Functional Requirements

This feature requires the phone to have an active mobile data connection and an internal GPS to pull coordinates four times per hour.

3.4
3.4.1

Google Calendar Integration


Description and Priority

This feature of priority 6 will synchronize with Google Calendar. 3.4.2 Stimulus/Response Sequences

1. User enters course schedule. 2. Syncs with Google Calendar. 3.4.3 Functional Requirements

This feature requires the phone to have an active mobile data connection to upload to Google Calendar.

4
4.1

External Interface Requirements


User Interfaces

For the phone version, there will be a list of classes that the user entered at the beginning of the semester. When a user clicks on a class, they will be show a map of Marshall Universitys campus with a marker indicating the building where the class is located. The user will press the back button and be taken back to the list of classes. When the user presses the menu button, an option will be shown to add another class or go to a settings page that will allow them to change the automatic sound prole setting to vibrate or silent. The only error message that will be displayed is if the user enters an incorrect CRN number. The tablet version will be the same as the phone version except the list of classes will be on the left of the screen and the map indicating the location of the class will be shown on the right of the screen. If the user selects a class, they will not be taken to another page. The map on the right of the screen will be updated to show the location of the selected class

CS 490: Senior Project I

Fall 2010

Software Requirements Specication for MUBuddy

Page 9

4.2

Hardware Interfaces

The supported devices are Android devices running Android version 2.0 and up. The tablet version of the application will support Android version 3.0 and up.

4.3

Software Interfaces

The application will only be compatible with the Android operating system and will use a database stored on the devices memory in the form of a text document. There will be a service constantly running to keep track of the time and location of the user to remind them of their classes.

4.4

Communications Interfaces

There will need to be an HTTP connection to initially download the class information and to calculate how far the user is from campus. An HTTP connection will be required for synchronizing with Google Calendar. The application will use GPS to calculate the location of the user.

5
5.1

Other Nonfunctional Requirements


Performance Requirements

There are no performance requirements.

5.2

Safety Requirements

The user should never use this application while driving.

5.3

Security Requirements

The location of the user will not be stored anywhere for later analysis. The location will be used to calculated the distance from campus then discarded.

5.4

Software Quality Attributes

The application will possibly be available through the Android Marketplace.

CS 490: Senior Project I

Fall 2010

Software Requirements Specication for MUBuddy

Page 10

Appendices A Glossary

CRN: Course Reference Number, a four digit number Marshall University uses to uniquely identify each course. GPS: Global Positioning System

CS 490: Senior Project I

Fall 2010