1. Introduction This Software Requirements Specification document pos software

Document Sample
1. Introduction This Software Requirements Specification document pos software Powered By Docstoc
					1. Introduction

       This Software Requirements Specification document is designed for the R&R
       Scheduler Project sponsored by Solano Family and Children's Services. The
       project is being undertaken by Gnosis, a Senior Project development team from
       California State University, Sacramento. The Gnosis development team is
       comprised of undergraduate students pursuing a degree in Computer Science. The
       project will be two semesters long, and is designed to help team members gain
       “real-world” experience in software development. The successful completion of
       the project is defined as the delivery of the desired software product.

The project sponsor and team members are as follows:


  Solano Family & Children's Services
  421 Executive Court North
  Fairfield, CA 94534-4019
  (707) 863-3950
  Fax: (707) 863-3975

  Vicki James (Office Manager of SFCS)
  Kathy Lago (Manager of R&R department)
  Kurt Galvez (Executive Director)


  Sterling Schulkins (
  Akshat Srivastava (
  Ferras Almoumen (
  Kevin Maris (
  Justin Rogers (

  Team Website:

1.1 Purpose

  The purpose of the Software Design Specification document is to act as a working
  document that provides a basis of communications between Gnosis and Solano
  Family & Children's Services regarding the design of the system. The SDS shall
  provide a baseline for the design that the system implementation shall satisfy.
1.2 Scope

This document will cover the following areas in depth: detailed functions, external,
internal, and user interface. However, information regarding actual implementation
and testing of R&R scheduler Software is not covered in this document

1.3 Definitions, Acronyms and Abbreviations

       1.3.1 Definitions

              HTML. Used in the creation of web pages, HTML is an international
              standard whose specifications are maintained by the World Wide Web
              Consortium (HTML).

              DBMS. Database Management System, a software operating environment
              that manages and stores relational databases (DBMS).

              mySQL®. An open source DBMS that is used mainly in conjunction with
              the web programming language PHP (MySQL).

              PHP. An open source scripting language used in conjunction with HTML
              to create dynamic web interfaces (PHP).

              Prototype. A model created to show preliminary design and partial
              functionality to the client during the development lifecycle.

              WAMP. Windows Apache MySQL and PHP. It is a software environment
              analogous to LAMP (Linux Apache MySQL and PHP). Its function is to
              provide the entire gamut of functionality for dynamic web capabilities and
              database management.

              SQL. A query language used for requesting information from a database

       1.3.2 Acronyms

              CSUS. California State University, Sacramento

              DBMS. Database Management System

              HTML. Hypertext Markup Language

              PHP.      Pre Hypertext Processor

              R&R          Resource and Referral Department
               POS.      Project Overview Specification

               SDS. Software Development Specification

               SRS. Software Requirements Specification

               STR. Software Test Report

               SQL. Structured Query Language

               STS. Software Testing Specification

               UM. User Manual

               WAMP. Windows Apache MySQL PHP

1.4 References

Buckley, Bob. Project Overview Specification. Course home page. March. 2008-May
2008. Dept. of Engineering and Computer Science, California State University,
Sacramento. 22 March. 2008 <>.

“DBMS.” Webopedia. 2008. Jupitermedia Corporation. 22 March 2008.

“HTML.” Mozilla Development Center. 2008. Mozilla. 22 March 2008.

“MySQL.” Webopedia. 2008. Jupitermedia Corporation. 22 March 2008.

“PHP.” Webopedia. 2008. Jupitermedia Corporation. 22 March 2008.

“SQL.” Webopedia. 2008. Jupitermedia Corporation. 22 March 2008.

1.5 Overview of Contents

The content of this document is divided into nine sections. Section 1 is an introduction,
which explains the purpose, scope, definitions, acronyms, abbreviations, references, and
provides an overview of the content of this document. Section 2 is about the architectural
design of the system which describes what functionality is assigned to what subsystems,
where the data will be stored, and how much communication is required through the user
interface, between subsystems and with the database. Section 3 is Interface Design and it
specifies the look, feel and behavior of that portion of the system that is visible to the
user. This section provides the design specifications for the team’s design prototype.
Section 4 is Database Schema and provides the translation of the informational model
contained in the Software Requirement Specification into a relational database. Section 5
is Component Design Specifications which contains the detailed description for the
design the software. Section 6 is Performance Analysis; it layouts the details on any
performance issues or constraints that may have arisen during the design and
implementation phase. Next section contains a summary of the computer resources
required to build, operate and maintain the software. Section 8 shows a software
requirements traceability matrix that relates the design components and the requirement
elements by relating the paragraph numbers in this document to the paragraph numbers in
the Software Requirements Specification Document. And lastly, Section 9 contains the
sign-off sheet that is used to indicate approval of and agreement to the design
specifications contained in this document.

2. Architecture Design
       This section will provide the design details of the hardware and software
architecture of the application.

2.1 Hardware Architecture
       The application will utilize a one tier hardware architecture where a single
user system will access information stored within the same system.

                                                    (What should I put here?)
                                Figure 1. 1-Tier Architecture

2.1.1 Constraints
      Platform: Cross Platform. Will use a WAMP interface to run on Windows
      Operating system: Linux, Windows 98/2000/2003/ME/XP/Vista
      Hardware: the computer must have a minimum of 800x600 screen
       resolution with 256 colors; the computer must have at least 256 MB of RAM;
       the computer must have a CD-ROM or a DVD-ROM for installing the software
       and 10MB of hard drive space.
      Software: the server on which the software will be installed should have
       WAMP installed on it, along with any web browser to view the webpage.
2.2 Software Design Architecture
       The application may be conceptually broken into three design layers which
consist of the Presentation Layer, the Business Logic Layer, and the Data
Management Layer.

2.2.1 Presentation Layer
        This layer will facilitate the user interface requirements and features, which
will receive mouse and keyboard input.

2.2.2 Business Logic Layer
       This layer will describe the actions within class scheduling which include
adding attendees, deleting attendees, adding classes, adding instructors for classes,
appending sections, and posting conflict alerts to the Graphical User Interface within
the Presentation Layer.

2.2.3 Data Management Layer
      This layer will maintain the database and the currently existing relationships
between administrator, employees, attendees, classes that have been created by the
employees or administrator.