Escolar Documentos
Profissional Documentos
Cultura Documentos
System
SoftwareRequirementSpecification
OnlineInventoryManagementSystem
Version 1.2
10/03/2012
Submitted to:
Md. Shafiul Alam Khan
Assistant Professor
Institute of Information Technology
University Of Dhaka
Submitted by:
Atish Dipongkor BIT0217
Muttakin Ahmed BIT0222
AshrafulHoque BIT0231
SoftwareRequirementsSpecification Page1
OnlineInventoryManagementSystem
RevisionHistory
DocumentApproval
ThefollowingSoftwareRequirementsSpecificationshavebeenacceptedandapprovedbythe
following:
Signature PrintedName Title Date
Assistant Professor
Md. Shafiul Alam
Khan IIT,UniversityofDhaka
Supervisor,Project
Team
SoftwareRequirementsSpecification Page2
OnlineInventoryManagementSystem
Contents
REVISION HISTORY...................................................................................................................................................II
DOCUMENT APPROVAL............................................................................................................................................II
1. INTRODUCTION......................................................................................................................................................1
1.1 PURPOSE 1
1.2 SCOPE 1
1.3 GLOSSARY 2
1.4 REFERENCES 2
2. STAKEHOLDERS.....................................................................................................................................................3
2.1 QUESTIONERS 3
2.2 STAKEHOLDERS POINT OF VIEW 4
2.3 COLLABORATION 4
3. GENERAL DESCRIPTION.......................................................................................................................................5
3.1 PRODUCT PERSPECTIVE 5
3.2 CURRENT SYSTEM ANALYSIS 6
3.3 PRODUCT FUNCTIONS 7
3.4 POTENTIAL USER OF THE OF THE SYSTEM 7
3.5 USER CHARACTERISTICS 8
3.6 ASSUMPTIONS AND DEPENDENCIES 8
4. REQUIREMENT ANALYSIS....................................................................................................................................9
4.1 EXTERNAL INTERFACE REQUIREMENTS 9
4.1.1 User Interfaces 9
4.1.2 Hardware Interfaces 9
4.1.3 Software Interfaces 9
4.1.4 Communications Interfaces 9
4.2 FUNCTIONAL REQUIREMENTS 10
4.2.1 General Functional Requirements 10
4.2.2 Functional Requirements for Production Controller 11
4.2.3 Functional Requirements for Production Supervisor 11
4.2.4 Functional Requirements for Administrator 12
4.2.5 Quality Function Deployment 12
4.3 NON-FUNCTIONAL REQUIREMENTS 14
4.3.1 Performance 14
4.3.2 Releability 14
4.3.3 Availability 14
4.3.4 Security 14
4.3.5 Maintainability 15
4.3.6 Portability 15
4.3.7 Operational Requirement 15
4.3.8 Design Constraints 15
5. ANALYSIS MODELS..............................................................................................................................................15
5.1 SCENARIO BASED MODEL 16
5.1.1 Use Case Diagram 16
5.1.2 Activity Diagram 18
5.1.3 Swim Lane Diagram 19
5.2 FLOW MODEL 20
SoftwareRequirementsSpecification Page3
OnlineInventoryManagementSystem
List of Figure
Figure 1- Current System 6
Figure 2- Use Case Diagram 17
Figure 3- Activity Diagram 18
Figure 4- Swim Lane Diagram 19
Figure 5- Data Flow Diagram (Level 0) 20
Figure 6- Data Flow Diagram (Level 1) 21
Figure 7- Class Diagram 22
Figure 8- CRC Diagram 23
Figure 9- State Representation Diagram 24
Figure 10- Sequence Diagram 25
Figure 11- Collaboration Diagram 26
SoftwareRequirementsSpecification Page4
OnlineInventoryManagementSystem
1. Introduction
In software industry requirement engineering is one of the most important parts of software
engineering process, which one gives us the proper scenarios what the customers want,
analyzing their needs and checking the feasibility what they need, negotiating a reasonable
solution etc. In software industries, a software project begins when a business need is
identified. So the first step is we need to understand the customer needs. Figure out a rough
feasibility analysis, not only the customers need but also with the people who are apparently
involved with the introducing system. In this phase after interacting with our client Sleek
Fashion Ltd., we get some requirements for an inventory management solution.
This paper will be more easeful after communicating with our client with their more specific
requirements. At the same time, in this paper we will focus on Inventory management
module. Again this paper is a partial submission; more detail will be included as per
communicating with the entire stakeholders.
1.1 Purpose
The purpose of this document is to present a detailed description of the Online Inventory
Management System. It will explain the purpose and features of the system, the interfaces of
the system, what the system will do, the constraints under which it must operate and how the
system will react to external stimuli.
In this document we will try introduce our stakeholders along with their respective
viewpoints, describe the existing problem, combining those various view points, balancing
those to reach an ultimate theoretical solution of the identified problems, generating
graphical reviews through unified modeling language (UML) to formulate the problems and
the proposed solution, the project scope and the project schedule. Next we present the
solution including system analysis, the deviation between final and initial design, the function
of our Inventory management system and testing plan. Finally we evaluate our work on
different aspects, present areas of improvement and conclusion.
1.2 Scope
The outcome of the project would be automated inventory management service .The software
will have all common features and functionalities along with some other special facilities.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
This system will help in tracking records so that past records can be verified through them
and one can make decisions based on the past records. This system will complete the work
in a very less time resulting in less time consumption and high level of efficiency.
1.3 Glossary
QC Quality Control
PQ Production Controller
1.4 References
www.agilemodeling.com/artifacts/crcModel.html.
http://en.wikipedia.org/wiki/Unified_Modeling_Language
http://en.wikipedia.org/wiki/Requirements_analysis
http://rfptemplates.technologyevaluation.com/rfp/for/inventory-management-garments.html
http://www.slideshare.net/ahmedhasan/ieee-830-1998-software-requirements-specifications
http://gulnazahmad.hubpages.com/hub/A-Step-by-Step-of-Garment-Manufacturing
1.5 Overview
The next chapter is identifying stakeholders. In this chapter gives an over view who are
directly or indirectly depend on the developing system and what is their point of view.
The next chapter, the General Description section, of this document gives an overview of the
functionality of the product. It describes the informal requirements and is used to establish a
context for the technical requirements specification in the next chapter.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
The Forth chapter, Requirements Specification section, of this document is written primarily
for the developers and describes in technical terms the details of the functionality of the
product.
The fifth chapter, Analysis model section. In this section of this document there are some
model diagrams. List of all these analysis models used in developing specific requirements .
All the sections of the document describe the same software product in its entirety,
2. Stakeholders
The stakeholders of the software project are those people or positions who are directly or
indirectly affected or effected by the project. The stakeholders and users who are most
immediately involved in an Inventory management system can be divided in to four groups,
they are:
2.1 Questioners
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
Different Stakeholders achieve different benefits form a software system. Consequently each
of them has a different point of view. So we have to recognize the requirements from multiple
view point. For this Inventory management system point of view of stakeholders is:
Executives and upper management beholds the people who are concerned with
company management and companys financial states. They always deal with the
profitability and increasing production unit. So their view about the system is how to
utilize the system to gain highest profit.
Production controller is the people who supervise a part of a production unit.
They will interact with our system to input the data of their subordinate workers.
Their view point would be to input that information without any kind of difficulties
and maintain the private accounts of each worker
The production supervisors are the people who act as the subordinates of the
production controllers, and they must have the real interactions with the root
operation. This is not necessary that every supervisor will have distinguished areas
to work with; there can be more than one supervisor to supervise a single activity,
when its a larger one.
The supervisors are responsible to check the given input and the outcomes they
managed to produce. As these information are required for the operation of our
system, production supervisors are identified as one vital stakeholder.
One of the indirect stakeholders of our proposed system is the root level workers of
RMG sector, who use to do the primary level jobs of cutting, printing, and combing
all the parts together, or any other jobs for example. As because of our limitation of
resources, all the workers wont use our system frequently. But, for occasional
possibilities, some of them will use his system, and their illiteracy must be
considered by the system developers.
2.3 Collaboration
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
3. General Description
3.1 Product Perspective
In this modern world of commercialization, garments business has been established as one of
the flourishing in Bangladesh. It has been one of the most flourishing export sectors for our
country, as we have told in background. Now, our project is concerned with this sector. This
is a huge field to cover, as hundreds of manageable aspects can be found to maintain the
highest productivity of textile manufacturing. We choose the inventory management as our
preferred field to work.
To instantiate, this can be specified as a b2b system, from producers to abroad or home
dealers through some intermediate business nodes. The important deals that our RMG sector
are mostly from abroad interests, as stated above. And our goal would be facilitate this whole
process, from collecting raw materials to the finished product shipment.
Unlike the old days, RMG sector of Bangladesh has been implementing a variety of
management software, in order to enhance the productivity, and to satisfy the customers
needs. As these deals are very sensitive to handle, and there are a lot of variables that must be
maintained, the need of online interaction between the buyer and the seller, or even seller to
seller, is a must, and can play a dramatic influence on these deals.
As the whole process has multiple steps to the way to finished goods, a single delay in a
single step can cause delay in the shipment schedule, suppose our delay in cutting can
demolish the required time structure, which can also cause financial damage and bad business
reputation.
The existing systems have been using not for so long, and the maturity level of software
industry in our country is still very low. So, the systems which are being used in recent days
in the garments industry do have a lot of bugs, functional dependencies and design
constraints. Besides, there is still a lacking of a complete solution for managing garments
which is yet to be made. And we have to say, after studying, we find that majority of the
garment industry doesnt use any automated management system, where a large amount of
problems in manual management can be solved in automated system.
The thing is missing all through and which we have been planning to introduce in these kind
of usual management system, is online interface to control the system. Internet has been a
pivotal determiner in every aspects life. We are proposing to introduce internet controlling
module of this system, so that the authority of our client can monitor and manipulate the
system, as well as the database through the internet.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
At the same time, there are technologies being used to manage payroll, appointments,
inventory, and in many other purposes. But as our major concerns will be inventory oriented,
we will focus the most on that.
The given diagram is a scenario of current system. In the present system, when the
administrator sealed the production order then the people related to the production, specially
PQ ,administrators make the total production planning, and according to the plan the make a
check sheet. According to the production planning total production work is divided in to
partial productions. These partial productions are the part of total production. Combining this
entire partial production element total production take place.
But the fact is that in each stage of this partial production face production loses because of
manual updating system. They cannot follow the check sheet properly. So they cannot deliver
their shipment with in due date.
So our client wants a system which can provide automated updating system, accurate
calculation of produced goods, provide proper stock information, send notification if the
shipment wont take place on due date, keep track of partial production, and all Financial
transactions related to production.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
Inventory Management System has some features which are badly needed for a complete
Inventory system of Garment industries. So the features are,
These features are primary requirement of our client for this inventory management system.
This feature list will change in terms of client demand
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
Both users will be able to visit the homepage of the website but only the registered user is
allowed to give input in the system. To work through the system one user should go through
some fixed steps-
The administrator of this inventory system will have right to create product, add items delete
items etc. The application will provide all information of the products. The category will be
tagged with subcategory. Again the subcategories are tagged with different items in the
respective category and rate of the item. Each item will have a specific bar code. The rates
will be tagged to the bar code.
The application will also help to generate reports to get latest update on
Master Entry
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
4. Requirement Analysis
Requirement Analysis presents the requirement specification, software and hardware
requirements for both system developers and system users, process model and data model. In
this section we specify the External Interface Requirements, functional and nonfunctional
requirements of the system.
Server:
Internet Information system
MsSQL server 2008.
MVC 3.
Client:
JavaScript.
OpenSSL.
JavaScript (synchronous/asynchronous) Enable Browser.
4.1.4 Communications Interfaces
All sorts of communications between server and client programs will be using ADO.NET
(ActiveX Data Objects for .NET) is a set of computer software components that programmers
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
can use to access data and data services. It is a part of the base class library that is included
with the Microsoft .NET Framework. It is commonly used by programmers to access and
modify data stored in relational database systems, though it can also access data in non-
relational sources and the messaging will be done by XML format.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
Finishing.
Packing.
These modules contain the database of every worker and supervisor accounts created, as well
as the amount of resources, raw materials and other facilities received from the authority, and
their outcomes must be posted in a regular basis by the person responsible to handle a
specific module, the controller, which is noted in the functional requirements for controllers
below.
An effective database to store important data of every deal.
Every module will have separated record for all the transactions occur.
Limited external accessibility, between a company or between a selected group.
Limited internal accessibility, one module can be maintained and manipulated by
one person or one group of responsible employees.
Login.
Browse desired modules.
Browse desired supervisor portfolio.
Notify the system about the module requirements.
Input product quantity after compiled.
Distribute requirements between the production supervisors.
Supervise inter-work station combination.
View production details with delivery date.
Browse through different production areas.
Balancing the check sheet.
Login.
Get update from the controller.
Setting the goal of the group and updating it on the system.
Input the worker-to-worker data.
Supervise own worker group performance.
Notify the dependent working group supervisors through the system.
Balancing the group input and output.
Submitting the group balance sheet to the responsible controller.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
Login.
Accessibility to the whole system.
Monitoring the total system as well as the database.
Giving the total goal of a deal as the input.
Clarifying the resources.
Distributing the job segments to the controllers.
Getting update information about the production.
Getting update information about production delay.
Getting update information about operation.
Invoice information collection.
Change settings
Quality function deployment is a method to transform user demands into design quality, to
deploy the functions forming quality, and to deploy methods for achieving the design quality
into subsystems and component parts, and ultimately to specific elements of the
manufacturing process.
QFD helps transform customer needs into engineering characteristics for a product or service,
prioritizing each product or service characteristic while simultaneously setting development
targets for product or service.
Normal Requirements,
Expected Requirements, and
Exciting Requirements.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
Normal requirements are those requirements which stakeholders want to be available in the
System. The normal requirements of this proposed application are given below-
The system will perform authorization of users for security purposes. All
the users as well as the administrator must have to perform this part.
If any kind of change will occur, there will be an update option in the
system, using that administrator can change the existing information.
The system will contain user friendly interface that will be designed in a
manner which implements functionalities that are easily accessible by the
users.
The system must ensure database backups, which are as recent and
complete as possible
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
Exciting requirements are those requirements which stakeholders not actually want but these
requirements have to fulfill to make the system interesting. The exciting requirements for our
proposed system are given below-
Production planning with investment and estimated profit will be
calculated through the system.
Normal users and administrators have to login through different login
page which will ensure that, without administrator no one can change
any information of a production as well as the system.
System has the notifying system for any kind of delay occurs in the
given period. But the system can notify the dependent working group
supervisors if the administrators need them.
Administrators can distribute the job segments to the controllers.
4.3.1 Performance
Our proposed inventory management system will be used in Garment industry. There are lot
of internal and external operation which are inter-related with each other for fruit full
production. So the communication among each end system should be tightly scheduled and
the notification should be sent in timely manner.
4.3.2 Reliability
The production process in the garment industries is a combination of different operations,
which generate lots of data. These data lose can cause high damage to a specific module as
well as to the total process. So if the reliability is not confirmed, this lacking will affect the
production performance.
4.3.3 Availability
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
This system will be dedicated to a particular client. So the availability will be restricted of
this system.
4.3.4 Security
This system will deal with huge amount of data. So security is a prime issue of our system.
So the system should be secured from external interfere by providing efficient security to the
entire system.
4.3.5 Maintainability
Software maintenance in software engineering is the modification of a software product after
delivery to correct faults, to improve performance or other attributes. Maintainability of
software is categorized in four classes:
Adaptive dealing with changes and adapting in the software environment.
Perfective accommodating with new or changed user requirements which concern
functional enhancements to the software.
Corrective dealing with errors found and fixing it.
Preventive concerns activities aiming on increasing software maintainability and
prevent problems in the future.
So to maintain our system we will try to concentrate on this four classes.
4.3.5 Portability
Portability is the degree to which software running on one platform can easily be converted
to run on another. Portability is hard to quantify, because it is hard to predict on what other
platforms the software will be required to run. So to make our system portable we have to
use languages, operating systems and tools that are universally available and standardized.
4.3.7 Operational Requirement
The team used MsSQL database to develop and maintain the database
management systems.
Sometime clients do not give the proper information which is needed by the team to design
software, because of company policies. At that situation software project team start their
work without proper overview through the existing system to design new one.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
5. Analysis Models
Analysis model is one of the most important parts of SRS. All the models give us clear view
of the developing system. In this section, here is the list of all analysis models used in
developing specific requirements of the current developing system.
Flow Model
Class Model:
Class Diagram.
CRC Diagram.
Behavioral model:
5.1.1UseCasediagram
In software and systems engineering, a use case is a list of steps, typically defining
interactions between a role or actor and a system, to achieve a goal. The actor can be a human
or an external system.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
Initially after analyzing the requirements of our client we notify two potential actors in our
proposed system. But this can change any time when their requirements are modified.
So in this system normal users are production controllers. They can browse through their
production related modules. They can view all the production details, all the partial
production areas related to their production, can create check sheet according to order
quantity.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
On the other hand admin can change system settings, update operation information, Update
production information etc.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
If we consider the given activity diagram, it will easier for us to find out step-by step
operational workflows of total system. When the process starts it will allow a user to select
his/her own authentication. If the user logged in as an Administrator, the user has the
authority to select operation between change settings of the working module and update
information of the production.
On the other hand if the user logged in as a production controller, after valid authentication
the production controller can give input in the system to ensure the partial production of the
total production. In any state of the production if the delay is occurred, production controller
can notify administration about the delay to handle shipment related issues.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
This is the swim lane view of our proposed system according to present requirements .System
column shows the entire operational function .and administrator and production controller
column shows the task that they will do using the system
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an
information system, modeling its process aspects. Often they are a preliminary step used to
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
create an overview of the system which can later be elaborated. DFDs can also be used for
the visualization of data processing .
A DFD shows what kinds of data will be input to and output from the system, where the data
will come from and go to, and where the data will be stored. It does not show information
about the timing of processes, or information about whether processes will operate in
sequence or in parallel
DFD level 0 , is the representation of the system which can only shows the inputs and outputs
of the system without dealing with any function and file or database issue. In the given figure
this is the data flow diagram (Level 0) for our proposed inventory management system.
Control panel and the planning is two input entity which can give data command to the
system, all the inputs will process in the system and the outputs will view in the display panel
or as notification. And the system also can produce check sheet according to given planning.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
DFD level 1, is the representation of the system which can visualize the relation among the
functions and the file or database with the inputs and outputs. Control panel and planning
entity can give input command to the system, which can process by some functions in this
system like interact with user, configure, and update input, display status. There is a database
related with configure function which one can modify production information. And display
status, notification, check sheet can produce output depend on all the functions which
configure inputs.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
In the above exposed diagram Module is the parent class which has two child classes
Administrator and Production Controller. Order Class deals with all the steps related to
order and maintained by administrator. Store and Shipment class maintained by
production controller.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
A Class Responsibility Collaborator (CRC) model is a collection of standard index cards that
have been divided into three sections,
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
A state diagram is a type of diagram used to describe the behavior of systems. State diagrams
require that the system described is composed of a finite number of states; sometimes, this is
indeed the case, while at other times this is a reasonable abstraction. Many forms of state
diagrams exist, which differ slightly among each other.
In the given figure, this is the state representation diagram for our proposed system. In the
given figure there are four states, first one reading state just read the instructions. Second
one comparing state compares the given command. When the state compare password, if
the password is invalid, total system will be locked for a while. Or if the password is valid it
will move a step ahead to select operation what the system allow an user.
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
SoftwareRequirementsSpecification Page
OnlineInventoryManagementSystem
SoftwareRequirementsSpecification Page