Software Requirements Specification

advertisement
Software Requirements
Specification
for
Mobile Client Query Application
(MCQA)
Version 1.3
Prepared by Dru Luce-Edwards and Jeremy Smith
UVA-Wise Capstone
September 30 , 2010
Software Requirements Specification for MCQA
Page ii
Table of Contents
Table of Contents .......................................................................................................................... ii
Revision History ............................................................................................................................ ii
1. Introduction ..............................................................................................................................1
1.1
1.2
1.3
Purpose ........................................................................................................................................ 1
Product Scope .............................................................................................................................. 1
References ................................................................................................................................... 1
2. Overall Description ..................................................................................................................1
2.1
2.2
2.3
2.4
Product Functions ........................................................................................................................ 1
User Classes and Characteristics ................................................................................................. 1
Operating Environment ............................................................................................................... 1
User Documentation .................................................................................................................... 2
3. Functional Requirements ........................................................................................................2
3.1
3.2
3.3
Mobile Client Requirements (MCR) ........................................................................................... 2
Web Client Requirements (WCR) ............................................................................................... 2
Server Database Requirements (SDR)......................................................................................... 2
4. Nonfunctional Requirements ..................................................................................................3
4.1
4.2
4.3
4.4
4.5
Performance Requirements.......................................................................................................... 3
Safety Requirements .................................................................................................................... 3
Security Requirements................................................................................................................. 3
Software Quality Attributes ......................................................................................................... 3
Business Rules ............................................................................................................................. 3
Appendix A: Glossary....................................................................................................................3
Appendix B: Indexed Requirements ............................................................................................4
Appendix C: To Be Determined List ............................................................................................6
Revision History
Name
Date
Reason For Changes
Version
Wise, UVA
09/17/2010
Initial draft to customer
1.0
Client
09/27/2010
Changes/Comments
1.1
Wise, UVA
09/30/2010
Updates/Revisions
1.2
Wise, UVA
6/26/2011
Updates/Revisions
1.3
Software Requirements Specification for MCQA
Page 1
1. Introduction
1.1 Purpose
The purpose of this document is to enumerate and describe requirements specific to the
Mobile Client Query Application. This Software Requirements Specification (SRS) defines the
requirements for the entire first build of the system.
1.2 Product Scope
The Mobile Client Query Application is a mobile application that our client will use in order to
search and establish locations and ambiguity of storage clients. Mobile Client Query Application
will have a centralized data storage of all client information to speed up the process of cargo
inspection to make shipping more efficient.
1.3 References
This document references the following documents:



http://developers.sun.com/sunstudio/products/archive/whitepapers/java-style.pdf
All mobile client, web client, and server use cases
MCQA.mdl (Rational Rose use case diagram)
2. Overall Description
2.1 Product Functions
The product shall support:



Sending and receiving information about items to a central source
A weighting system for item ambiguity
Geo-visuals for item locations
2.2 User Classes and Characteristics
We anticipate trained cargo inspectors will use the software on a daily basis to assist them with
locating items and updating the item information.
Management will use the software to locate the item and review information about cargo
information.
Technical support personnel will use the web client to fix data errors.
2.3 Operating Environment
The software shall run on any system that the Android mobile platform operates on. The software
shall be tested on the Motorola Droid X. The software shall utilize Google Maps capabilities
through the built in API.
Software Requirements Specification for MCQA
Page 2
2.4 User Documentation
The final deliverable shall include the software document folder(SDF) which contains tutorials on
Git, Rational Rose, DroidDraw, and user manuals for both the mobile client and web client. The
deliverable shall be sent to the customer in the form of a zip folder upon completion of the project.
3. Functional Requirements
This sections details the main features of the system by listing the actions to be taken and
defining the requirements for those features.
3.1 Mobile Client Requirements (MCR)







MCR-01: The software shall provide capability for searching items using item number.
MCR-02: The software shall receive item reports only upon requests.
MCR-03: The software shall display item information including manifest information,
previous locations, and analytic scores.
MCR-04: The software shall be capable of updating item reports using the current
location.
MCR-05: The software shall provide capability of updating item reports by attaching a
picture of the item.
MCR-06: The software shall be capable of updating item reports to classify them as
normal or high priority.
MCR-07: The software shall provide capability for geo-visualization of item location
and past locations.
3.2 Web Client Requirements (WCR)




WCR-01: The application shall allow the user to query item data from the server
database based on the item number.
WCR-02: The application shall have a user log-in feature to authenticate the user.
WCR-03: The application shall be capable of allowing the user to upload alerts to the
server that will be sent to all mobile clients.
WCR-04: The application shall be capable of presenting the server log file of all
changes made.
3.3 Server Database Requirements (SDR)




SDR-01: The software shall contain a design capable of storing all necessary
information regarding items.
SDR-02: The software shall only send data reports upon request from a client system.
SDR-03: The software shall be capable of updating the stored item reports with the
current location sent from the client system.
SDR-04 : The software shall be capable of updating the stored item reports with
photographs sent from the client system.
Software Requirements Specification for MCQA



Page 3
SDR-05: The software shall be capable of updating the stored item reports classifying
them as normal or high priority.
SDR-06: The software shall log all data requests.
SDR-07: The server shall be capable of sending out unsolicited alerts to the client
systems.
4. Nonfunctional Requirements
4.1 Performance Requirements






SQE-1 : The software shall use a rewritable data storage to handle reloads after
crashes and will be limited to 20 megabytes in order to reduce space used.
SQRE-1 : The software shall have a crash recovery system so that no unsent data
will be lost.
SQM-1 : The software modules shall be limited to 30 statements
SQF-1 : The software shall implement Live Software Updates.
SQU-2 : The software shall resend data every TBD seconds, if no response from
server, for a maximum of TBD times.
SQE-3 : The software shall operate for a minimum of 4 hour on a standard factory
configured mobile platform.
4.2 Safety Requirements

SQU-1 : The software shall include an operations manual.
4.3 Security Requirements


SQI-2 : The web item shall have user logins to validate permission levels.
SQIP-2 : The software shall use XML for item to server communications to validate.
4.4 Software Quality Attributes



SQP-1 : The software data shall be accessible on any platform that supports JAVA
virtual machines 6.0 or Google Android OS versions 2.2.
SQP-2 : The project shall include a web client.
SQC-2 : The Software Shall follow the Java Coding Style Guide as based on the
http://developers.sun.com/sunstudio/products/archive/whitepapers/java-style.pdf site.
4.5 Business Rules


SQIP-1 : The software shall use SQLite.
SQRE-2 : The project shall be written in Java.
Appendix A: Glossary
Acronym
SRS
GUI
API
MCQA
MCR
WCR
SDR
Definition
Software Requirements Specification
Graphic User Interface
Application Programming Interface
Mobile Client Query Application
Mobile Client Requirement
Web Client Requirement
Server/Database Requirement
Software Requirements Specification for MCQA
SDF
SQE
SQC
SQRE
SQI
SQU
SQM
SQF
SQT
SQP
SQIP
OCR
GPS
DBMS
Page 4
Software Document Folder
Software Quality Efficiency
Software Quality Correctness
Software Quality Reliability
Software Quality Reliability
Software Quality Usability
Software Quality Maintainability
Software Quality Flexibility
Software Quality Testability
Software Quality Portability
Software Quality Interoperability
Optical Character Recognition
Global Positioning System
Database Management System
Appendix B: Indexed Requirements
Mobile Client Requirements
 MCR-01: The software shall provide capability for searching items using item number.
 MCR-02: The software shall receive item reports only upon requests.
 MCR-03: The software shall display item information including manifest information,
previous locations, and analytic scores.
 MCR-04: The software shall be capable of updating item reports using the current
location.
 MCR-05: The software shall provide capability of updating item reports by attaching a
picture of the item.
 MCR-06: The software shall be capable of updating item reports to classify them as
normal or high priority.
 MCR-07: The software shall provide capability for geo-visualization of item location
and past locations.
Web Client Requirements
 WCR-01: The application shall allow the user to query item data from the server
database based on the item number.
 WCR-02: The application shall have a user log-in feature to authenticate the user.
 WCR-03: The application shall be capable of allowing the user to upload alerts to the
server that will be sent to all mobile clients.
 WCR-04: The application shall be capable of presenting the server log file of all
changes made.
Server Database Requirements
 SDR-01: The software shall contain a design capable of storing all necessary
information regarding items.
 SDR-02: The software shall only send data reports upon request from a client system.
Software Requirements Specification for MCQA





Page 5
SDR-03: The software shall be capable of updating the stored item reports with the
current location sent from the client system.
SDR-04 : The software shall be capable of updating the stored item reports with
photographs sent from the client system.
SDR-05: The software shall be capable of updating the stored item reports classifying
them as normal or high priority.
SDR-06: The software shall log all data requests.
SDR-07: The server shall be capable of sending out unsolicited alerts to the client
systems.
Product Operation Requirements
Correctness
 SQC-1 : The project shall include unit tests and system tests.
Reliability
 SQRE-1 : The software shall have a crash recovery system so that no unsent data
will be lost.
 SQRE-2 : The project shall be written in Java.
Efficiency
 SQE-1 : The software shall use a rewritable data storage to handle reloads after
crashes and will be limited to 20 megabytes in order to reduce space used.
 SQE-2 : The software shall operate for a minimum of 4 hour on a standard factory
configured mobile platform.
Integrity
 SQI-1 : The web client shall have user logins to validate permission levels.
Usability
 SQU-1 : The software shall include an operations manual.
 SQU-2 : The software shall resend data every TBD seconds, if no response from
server, for a maximum of TBD times.
Product Revision Requirements
Maintainability
 SQM-1 : The software modules shall be limited to 30 statements
 SQM-2 : The software and all supporting documents shall be contained in the
Software Document Folder.
 SQM-3 : The software shall implement standardized error messaging, GUI layouts,
and hardware interfacing based on a TBD format.
Flexibility
 SQF-1 : The software shall implement Live Software Updates.
Testability
 SQT-1 : The software shall implement diagnostic logging on the server and client
applications.
Product Transition Requirements
Software Requirements Specification for MCQA
Page 6
Portability
 SQP-1 : The software data shall be accessible on any platform that supports JAVA
virtual machines 6.0 or Google Android OS versions 2.2.
 SQP-2 : The project shall include a web client.
Interoperability
 SQIP-1 : The software shall use SQLite.
 SQIP-2 : The software shall use XML for client to server communications to
validate.
 SQIP-3 : Software shall connect to a central database through a TBD connection
protocol.
Appendix C: To Be Determined List
Quick References to TBD Items
SQM-3 : The software shall implement standardized error messaging, GUI layouts, and
hardware interfacing based on a TBD format.
SQIP-3 : Software shall connect to a central database through a TBD connection protocol.
SQU-2 : The software shall resend data every TBD seconds, if no response from server, for
a maximum of TBD times.
SQE-2 : Pictures shall be resized if picture resolution is high then the recommended
maximum send amount, which is TBD.
Download