Sunteți pe pagina 1din 23

21.03.

2016

Session: 2014 - 2016 | <CS&IT/IUB>

Project Title

Revision History
Date
<date>

Description
<Version 1.0>

Author

Comments

<Noreen Anjum>

<First Revision>

Document Approval
The following Software Requirements Specification has been accepted and approved by the following:
Signature

Printed Name
Dr. Mamoona Asghar

Title
Supervisor, CSIT 21306

Date
<date>

Project Title

Table of Contents

1. Introduction
1.1 Purpose
1.2 Scope
1.3 Definitions, Acronyms, and Abbreviations.
1.4 References
1.5 Overview
2. The Overall Description
2.1 Product Perspective
2.1.1 Operations
2.1.2 Site Adaptation Requirements
2.2 Product Functions
2.3 User Characteristics
2.4 General Constraints
2.5 Assumptions and Dependencies
3. Specific Requirements
3.1 External Interface Requirements
3.1.1 System Interfaces
3.1.2 Interfaces
3.1.3 Hardware Interfaces
3.1.4 Software Interfaces
3.1.5 Communications Interfaces
3.2 Functional Requirements
3.2.1 <Functional Requirement or Feature #1>
3.2.2 <Functional Requirement or Feature #2>
3.3 Use Cases
3.3.1 Use Case #1
3.3.2 Use Case #2
3.4 Classes / Objects
3.4.1 <Class / Object #1>
3.4.2 <Class / Object #2>
3.5 Non-Functional Requirements
3.5.1 Performance
3.5.2 Reliability
3.5.3 Availability
3.5.4 Security
3.5.5 Maintainability
3.5.6 Portability
3.6 Inverse Requirements
3.7 Logical Database Requirements
3.8 Design Constraints

Project Title

3.8.1 Standards Compliance


4. Analysis Models
4.1 Sequence Diagrams
4.2 Data Flow Diagrams (DFD)
4.3 State-Transition Diagrams (STD)
5. Supporting Information
Appendix A Background Research on:
Appendix B Data Dictionary

Project Title

1. Introduction
This document is used to gather and analyze and give an overview inside of the complete
Home Appliances Sales Management System by defining the problems in detail.
This document contain complete requirements, context diagram, generating bill and detail
of a stock and sales management system.
1.1 Purpose
The basic purpose of this system, sales of (HASMS) to particular customer who need the
affordable home appliances item like washing machine, microwave Oven, and
refrigerator etc. And also made the bill of sale item for provide the facilities of seller and
customer parties.
1.2 Scope
(1) This software about sales management of home appliances inside shop but
doesnt provide online sales system.
(2) This Software only deals with cash base system not credit bases.
(3) This software replace manual system of sales.
(4) In this system record of customer stored and maintained according to the
updating.
(5) In this software administrator must login and provide access locally.
(6) This software update stock automatically after sales and also purchase.
(7) It contains affordable hardware and storage not so costly.
1.3 Definitions, Acronyms, and Abbreviations.

Sale:

Stock:
and

Sale is the exchange of commodity for money from seller and buyer.
The goods that are kept on shop or warehouse and available for sale
Distribution.

Purchase:

SRS:

HASMS: Home Appliances Sales Management System.

Software Requirement Specification.

SRS Document 1.0

Page 1 of 9

03/19/16

Project Title

1.4 References
In this subsection:
(1) Provide a complete list of all documents referenced elsewhere in the SRS
(2) Identify each document by title, report number (if applicable), date, and
publishing organization
(3) Specify the sources from which the references can be obtained.
This information can be provided by reference to an appendix or to another document. If
your application uses specific protocols or RFCs, then reference them here so designers
know where to find them.

1.5 Overview
This SRS consists of three sections. First one is introductory about the system over all.
Second subsection about general factors and an overview of this SRS explain general
constraints of system under which would be developed. Third subsection of this SRS is
all about detailed description of the system in the form of functional and non-functional
requirements. And at the end of the third subsection a use case diagram represent
structure of the system.

2. The Overall Description


Making this software first achievement is manage sales data. Many number of items
available at store and which item from these have to be sold out, then stock updated after
sales automatically. In this system keep track of any item thats stock become zero,
system would inform to manager automatically.
Login Screen
Main
Supplier/man
ager

Stock menu

Updat
e

Inform

Manag
e

View

Purchase
menu

Sales menu

Sold

Check
profit/loss

Logout

Purcha
se

Profit

Return

Loss

Return

View

Figure # 1: Block Diagram of Complete System (HASMS).


SRS Document 1.0

Page 2 of 9

03/19/16

Project Title

2.1 Product Perspective


This system (HASMS) is totally independent and a stand-alone system. This system is
not a component of another large system. It is self-contained system. Managing sales
system, stock system and purchasing for further sales. This system would become a
reason of change of manual system into computerized system.
The following subsections describe how the software operates inside various constraints.
2.1.1 Operations
This (SRS) consists of the following operations:
(1) This SRS contain different diagrams for describing complete system functionality.
(2) Our system would contain main window from where you can choose different menus like
sales, stock etc.
(3) This system capable of updating record of sale.
(4) This SRS specify that our system would be generating bill of items to be sold.
(5) This SRS also describe that our system would be capable of delete record automatically
which to be sold.
(6) When Owner purchase stock then manager makes software entries.
(7) Our system would perform another functionality of checking current balance i.e. profit or
loss only by owner.
(8) Stock Controls by Owner, its access all up to owner.
(9) Sales controls by supplier/manager.
(10) Customer can be viewed and selected items.

2.1.2 Site Adaptation Requirements


In this section:
(1) Define the requirements for any data or initialization sequences that are specific to a
given site, mission, or operational mode
(2) Specify the site or mission-related features that should be modified to adapt the software
to a particular installation

If any modifications to the customers work area would be required by your system, then
document that here. For instance, A 100Kw backup generator and 10000 BTU air
conditioning system must be installed at the user site prior to software installation.
This could also be software-specific like, New data tables created for this system must
be installed on the companys existing DB server and populated prior to system
activation. Any equipment the customer would need to buy or any software setup that
needs to be done so that your system will install and operate correctly should be
documented here.

SRS Document 1.0

Page 3 of 9

03/19/16

Project Title

2.2 Product Functions


Provide a summary of the major functions that the software will perform. Sometimes the
function summary that is necessary for this part can be taken directly from the section of
the higher-level specification (if one exists) that allocates particular functions to the
software product.
For clarity:
(1) The functions should be organized in a way that makes the list of functions understandable to
the customer or to anyone else reading the document for the first time.
(2) Textual or graphic methods can be used to show the different functions and their
relationships. Such a diagram is not intended to show a design of a product but simply shows
the logical relationships among variables.

AH, finally the real meat of section 2. This describes the functionality of the system in
the language of the customer. What specifically does the system that will be designed
have to do? Drawings are good, but remember this is a description of what the system
needs to do, not how you are going to build it. (That comes in the design document).
2.3 User Characteristics
Describe those general characteristics of the intended users of the product including
educational level, experience, and technical expertise. Do not state specific requirements
but rather provide the reasons why certain specific requirements are later specified in
section 3.
What is it about your potential user base that will impact the design? Their experience
and comfort with technology will drive UI design. Other characteristics might actually
influence internal design of the system.
2.4 General Constraints
Provide a general description of any other items that will limit the developer's options.
These can include:
(1) Regulatory policies
(2) Hardware limitations (for example, signal timing requirements)
(3) Interface to other applications
(4) Parallel operation
(5) Audit functions
(6) Control functions
(7) Higher-order language requirements
(8) Signal handshake protocols (for example, XON-XOFF, ACK-NACK)
(9) Reliability requirements
(10) Criticality of the application
(11) Safety and security considerations
This section captures non-functional requirements in the customers language. A more
formal presentation of these will occur in section 3.
SRS Document 1.0

Page 4 of 9

03/19/16

Project Title

2.5 Assumptions and Dependencies


List each of the factors that affect the requirements stated in the SRS. These factors are
not design constraints on the software but are, rather, any changes to them that can affect
the requirements in the SRS. For example, an assumption might be that a specific
operating system would be available on the hardware designated for the software product.
If, in fact, the operating system were not available, the SRS would then have to change
accordingly.
This section is catch-all for everything else that might influence the design of the system
and that did not fit in any of the categories above.

3. Specific Requirements
This will be the largest and most important section of the SRS. The customer
requirements will be embodied within Section 2, but this section will give the Drequirements that are used to guide the projects software design, implementation, and
testing.
Each requirement in this section should be:
Correct
Traceable (both forward and backward to prior/future artifacts)
Unambiguous
Verifiable (i.e., testable)
Prioritized (with respect to importance and/or stability)
Complete
Consistent
Uniquely identifiable (usually via numbering like 3.4.5.6)
Attention should be paid to the carefully organize the requirements presented in this
section so that they may easily accessed and understood. Furthermore, this SRS is not
the software design document, therefore one should avoid the tendency to over-constrain
(and therefore design) the software project within this SRS.
3.1 External Interface Requirements
3.1.1 System Interfaces
This system (HASMS) have many interfaces. The system that we are going to develop
would be a user login page at first. When admin enter own id and password then he
allowed to use the system. After login into the software (HASMS) there will be a main
menu where you can choose the sales menu, stock information menu, and purchase stock
menu. Our main objective of this system is to maintain sales, purchase and also stock.
This system not provide the online interface. It provide you only a desktop system
interface.

SRS Document 1.0

Page 5 of 9

03/19/16

Project Title

3.1.2 Interfaces
Specify:
(1) The logical characteristics of each interface between the software product and its users.
(2) All the aspects of optimizing the interface with the person who must use the system

This is a description of how the system will interact with its users. Is there a GUI, a
command line or some other type of interface? Are there special interface requirements?
If you are designing for the general student population for instance, what is the impact of
ADA (American with Disabilities Act) on your interface?
3.1.3 Hardware Interfaces
Specify the logical characteristics of each interface between the software product and the
hardware components of the system. This includes configuration characteristics. It also
covers such matters as what devices are to be supported, how they are to be supported
and protocols. This is not a description of hardware requirements in the sense that This
program must run on a Mac with 64M of RAM. This section is for detailing the actual
hardware devices your application will interact with and control. For instance, if you are
controlling X10 type home devices, what is the interface to those devices? Designers
should be able to look at this and know what hardware they need to worry about in the
design. Many business type applications will have no hardware interfaces. If none, just
state The system has no hardware interface requirements If you just delete sections
that are not applicable, then readers do not know if: a. this does not apply or b. you
forgot to include the section in the first place.
3.1.4 Software Interfaces
Specify the use of other required software products and interfaces with other application
systems. For each required software product, include:
(1)
(2)
(3)
(4)
(5)

Name
Mnemonic
Specification number
Version number
Source

For each interface, provide:


(1) Discussion of the purpose of the interfacing software as related to this software product
(2) Definition of the interface in terms of message content and format

Here we document the APIs, versions of software that we do not have to write, but that
our system has to use. For instance if your customer uses SQL Server 7 and you are
required to use that, then you need to specify i.e.
3.1.4.1 Microsoft SQL Server 7

The system must use SQL Server as its database component. Communication with the
DB is through ODBC connections. The system must provide SQL data table definitions
to be provided to the company DBA for setup.
SRS Document 1.0

Page 6 of 9

03/19/16

Project Title

A key point to remember is that you do NOT want to specify software here that you think
would be good to use. This is only for customer-specified systems that you have to
interact with. Choosing SQL Server 7 as a DB without a customer requirement is a
Design choice, not a requirement. This is a subtle but important point to writing good
requirements and not over-constraining the design.
3.1.5 Communications Interfaces
Specify the various interfaces to communications such as local network protocols, etc.
These are protocols you will need to directly interact with. If you happen to use web
services transparently to your application then do not list it here. If you are using a
custom protocol to communicate between systems, then document that protocol here so
designers know what to design. If it is a standard protocol, you can reference an existing
document or RFC.
3.2 Functional Requirements
This section describes specific features of the software project. If desired, some
requirements may be specified in the use-case format and listed in the Use Cases Section.
3.2.1 <Functional Requirement or Feature #1>
3.2.1.1 Introduction
3.2.1.2 Inputs
3.3 Use Cases

This section of given SRS consists of use cases in form of separate actor with
functionalities.
3.3.1 Use Case #1 for login owner

Login

Owner

SRS Document 1.0

Error

Welcome

Page 7 of 9

03/19/16

Project Title

3.3.1.1 Use case components:


(1) ID:
(2) Name:
(3) Description:
will record with

HASMS-1
Login
User will login to prevent unauthorized access and any activity
Name.

(4) Actor:
(5) Pre-condition:
(6) Basic Flow:

Owner/ User
Must be register.
1. User enter name and password.
2. System will generate query.
3. Query send to database.
4. If result is valid move to account
Else
Move to error.

(7) Alternate Flow:

1.system read cookies.


2. Generate query.
3. Send it to database.
4. If result is valid, move to account
Else
Move to error.

(8) Post-condition: user on account.


(9) Exception:

Disconnection from network.

3.3.2 Use Case # 2 for owner functionality


Purchase
stock

SRS Document 1.0

Page 8 of 9

03/19/16

Project Title

Business
improve

Payment for
stock

Check profit

Check loss

Return stock

Owner

3.3.2.1 Use case components:


(1) ID:

HASMS-2

(2) Name:

owners work

(3) Description:
owner perform these functionalities because he is an in
charge of the stock.
(4) Actor:

Owner/ User

(5) Pre-condition:
activities.

Owner must be have enough stock to manage all these

(6) Basic Flow:


on the software.

1. Owner/user will perform any of above mentioned tasks


2. System will generate query.
3. Query send to database.
4. If result is valid perform any task i.e. purchase stock,

payment for stock etc.


Else
Move to error.
(7) Alternate Flow:

1. Owner want to check profit or loss.


2. Generate query.
3. Send it to database.
4. If result is valid, move to the result.
Else

SRS Document 1.0

Page 9 of 9

03/19/16

Project Title

Move to error.
(8) Post-condition: user on account which he desire.
(9) Exception:

Disconnection from network.

3.3.3 Use Case #3 for Supplier / Manager

Sale goods

Sale report

Reorder item
short

Supplier/Manager
Inform
owner

3.3.3.1 Use case components:


(1) ID:
(2) Name:

HASMS-3
sales and management.

(3) Description:
supplier responsible for sale and generating reports and
inform owner if any item
Short in the stock.
(4) Actor:
(5) Pre-condition:
data to owner.
(6) Basic Flow:
SRS Document 1.0

Supplier / Manager
Supplier sold items and generating reports for owner send
1. Supplier/manager will perform these tasks.
Page 10 of 9

03/19/16

Project Title

2. System will generate query.


3. Query send to database.
4. If result is valid perform any task i.e. sold item,
reorder etc.
Else
Move to error.
(7) Alternate Flow:

1. Manager want to inform owner if items to be short.


2. Generate query.
3. Send it to database.
4. If result is valid, move to the result.
Else
Move to error.

(8) Post-condition: Manager perform his routine wise tasks.


(9) Exception:

Disconnection from network.

3.3.4 Use Case #4 for Customer

Show all
items

Purchase
selected

Customer

SRS Document 1.0

Pay for item

Page 11 of 9

03/19/16

Project Title

3.3.4.1 Use case components:


(1) ID:
(2) Name:
(3) Description:
only selected items.
(4) Actor:
(5) Pre-condition:
(6) Basic Flow:

HASMS-4
sales.
customer can view all items put at the shop and purchase
customer
items must be available at the shop.
1. Customer demand for an item.
2. System will generate query.
3. Query send to database.
4. If result is valid item would be available.
Else
Move to error.

(7) Alternate Flow:

1. Customer want another items may be more than one.


2. Generate query.
3. Send it to database.
4. If result is valid, move to other items.
Else
Move to error.

(8) Post-condition: if customer want to buy then pay for the item.
(9) Exception:

Disconnection from network

3.3.5 Use Case #5 for Distributer


Pay for item

Pay for item

Pay for item

SRS Document 1.0

Page 12 of 9

03/19/16

Project Title

Distributer

3.3.5.1 Use case components:


(1) ID:

HASMS-5

(2) Name:

purchase for stock.

(3) Description:

Distributer distribute appliances at different shops.

(4) Actor:

distributer

(5) Pre-condition:
Dawlance.

distributer must have appliances from Company like Haier,

(6) Basic Flow:

1. Owner purchase items from distributer.


2. Owner will into new software entries.
3. Queries send to database.
4. If all necessary conditions fulfill then entries added

successful.
Else
Move to error.
(7) Alternate Flow:

1. Owner want to purchase Philips product.


2. Then generate query accordingly.
3. Send it to database.
4. If all necessary conditions fulfill then entries added

successful.
Else
Move to error.
(8) Post-condition:
(9) Exception:

owner pay against purchasing.


Disconnection from network.

3.4 Classes / Objects


This section contains major classes of the ------------------------ system.

SRS Document 1.0

Page 13 of 9

03/19/16

Project Title

3.4.1 <Class / Object #1>


3.4.1.1 Attributes
3.4.1.2 Functions

<Reference to functional requirements and/or use cases>


3.4.2 <Class / Object #2>

3.5 Non-Functional Requirements


Non-functional requirements emergent properties relate to the behavior of the system that
we are going to develop as its operational environment. This system of (HASMS) have
appropriate non-functional requirements. Usability, reliability, performance, database
requirements, availability, security, maintainability, portability, and design constraints all
these non-functional requirements performed by our system.
3.5.1 Usability
3.5.1.1 Graphical User Interface

This system provide icons and toolbars for better understanding.


This system provide a uniform look and feel between all the forms of
application.
This system provide an image of each product in the catalog.
3.5.2 Performance
3.5.2.1 Response time
This requirement provide acceptable response time for the system functionality.
At the load time, system response within five seconds, otherwise within two
seconds.
And database queries response time within six to seven seconds.
3.5.2.2 Capacity
All jobs scheduled by the number of capacity of nodes. In (HASMS) no upper limit to
inherit jobs.
3.5.2.3 Cost
Under all circumstances, all cost charged by the user to achieve better
performance.

SRS Document 1.0

Page 14 of 9

03/19/16

Project Title

3.5.3 Reliability / Availability


These requirements reliability and availability totally about system state, if our
system would be down then its recovery would be in two minutes.

3.5.4 Security
To protect the system from unauthorized users, we set the username and password.
If user name and password will be incorrect then user cant access system.

3.5.5 Maintainability
Maintainability also called flexibility.
3.5.5.1 Maximum bug rate
There will be a maximum time of 1 bug in 1/100 part of one second.
3.5.5.2 Maximum time to repair
If any error and bugs occur in our system, there will be sufficient time to remove it.

3.5.6 Supportability
3.5.6.1 Naming convention
Coding of all project in our software written as specified naming convention.
3.5.6.2 Coding standards
All code in this system will be written by the GNU General Purpose License.

3.6 Inverse Requirements


State any *useful* inverse requirements.
3.7 Logical Database Requirements
This section specifies the logical requirements for any information that is to be placed
into a database. This may include:

Types of information used by various functions


Frequency of use
Accessing capabilities
Data entities and their relationships
Integrity constraints
Data retention requirements

If the customer provided you with data models, those can be presented here. ER
diagrams (or static class diagrams) can be useful here to show complex data relationships.
Remember a diagram is worth a thousand words of confusing text.

SRS Document 1.0

Page 15 of 9

03/19/16

Project Title

3.8 Design Constraints


Specify design constraints that can be imposed by other standards, hardware limitations,
etc.
3.8.1 Standards Compliance
Specify the requirements derived from existing standards or regulations. They might
include:
(1) Report format
(2) Data naming
(3) Accounting procedures
(4) Audit Tracing
For example, this could specify the requirement for software to trace processing activity.
Such traces are needed for some applications to meet minimum regulatory or financial
standards. An audit trace requirement may, for example, state that all changes to a
payroll database must be recorded in a trace file with before and after values.

4. Analysis Models:
System models are used in this SRS for developing an abstract view
of HASMS. Analysis of
This SRS described by drawing sequence diagrams of the system. It
represent individual
System diagrammatically (in sequence form) not complete system as a
whole.

4.1 Sequence Diagram for Owner:

SRS Document 1.0

Page 16 of 9

03/19/16

Project Title

Owner
Current condition

View information

Contact
Distributer

Stock

Purchase Stock

Check quality

report from stock info

Demand to distributer

pay for purchase

Return bad quality

login
If correct id & password
Else incorrect

check stock info


error message

4.2 Sequence Diagram for Supplier / Manager:


In this sequence diagram show all working of supplier.

Supplier / Manager

SRS Document 1.0

Sale goods

DB connection

Reorder items

Page 17 of 9

Contact owner

03/19/16

Project Title

Demand goods

generate reports

Another items

if item short

inform owner

4.3 Sequence Diagram for customer:

Customer

View / show
items
View all items

Selected items

Purchase only
select

Record saved

Some to be selected
Payment of interchanging
Save
record into database

4.4 Sequence Diagram for distributer:

SRS Document 1.0

Page 18 of 9

03/19/16

Project Title

Distributer

Dalliance

Haier

Philips

Demand for dalliance

Demand for Haier

Demand for Philips

5. Supporting Information
Appendix A Background Research on:
Topic 1
Topic 2
Topic 3

Topic n
Appendix B Data Dictionary

SRS Document 1.0

Page 19 of 9

03/19/16