02 131202 056 9055984294 30012022 114817pm

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 38

Software Requirement Specification

For

Matrix Factory Management System

(MFMS)

Authors

Diyan Ali Shaikh 02-131202-005

Basil Jamil 02-131202-068

Ibrahim Ahmed Shaikh 02-131202-056


ISO/IEC 33001

DOCUMENT METADATA

Document Distribution List

Name Contribution
Diyan Ali Shaikh Standard Overview, Usability Focus, System
Features
Basil Jamil Functional, Non functional Requirements
Ibrahim Ahmed Shaikh Introduction, External Interface Requirements,
Documentation Metadeta

Modification History

Version No. Initial Date Modification Date Description


0.00.01 28/01/2022 30/01/2022 Draft Reform
Approvals
Version No. Date Approval Status Description
0.00.00 28/01/2022 Denied Draft
0.00.01 30/01/2022 Pending Draft Reform

Table of Contents
Content Page No.
1 Introduction
1.1 Document Scope and Purpose 7
1.2 Background Information 7
1.3 Acronyms and Definitions 8
1.4 Reference Documents 9
1.5 Assumptions 9

2 Standards Overview
2.1 Standards Scope 9
2.2 Architectural and Open System Interaction 9
2.3 Product Functions 10
2.4 User Classes and Characteristics 11
2.5 Operating Environments 12
2.6 Standards Compatibility 13
2.7 Data Dictionary 13
2.8 Constraints and Assumptions 14
2.9 Entity Information and Relation 14

3 Usability Focus
3.1 Actor Profiles 15
3.1.1. Actor 1: Employee 15
3.1.2. Actor 2: Supervisor 15
3.1.3. Actor 3: Logistics Department 16
3.1.4. Actor 4: General Manager 17
3.2 Business Use Cases 18
3.3 Usage Scenarios 19

4 External Interface Requirements


4.1 User Interface 20
4.2 Hardware Interface 20
4.3 Software Interface 20
4.4 Communication Interface 20

5 System Features
5.1 Login Page 21
5.1.1 Description and Priority 21
5.1.2 Stimulus/Response Sequence 21
5.1.3 Functional Requirements 21
5.1.4 Use Cases Narratives 22
5.1.5 Activity Diagram 22
5.2 Generate Reports 23
5.2.1 Description and Priority 23
5.2.2 Stimulus/Response Sequence 23
5.2.3 Functional Requirements 23
5.2.4 Use Cases Narratives 23
5.2.5 Activity Diagram 24
5.3 Graphical Representation 24
5.3.1 Description and Priority 24
5.3.2 Stimulus/Response Sequence 25
5.3.3 Functional Requirements 25
5.3.4 Use Cases Narratives 25
5.3.5 Activity Diagram 26
5.4 View/Add/Update Departmental Information 26
5.4.1 Description and Priority 26
5.4.2 Stimulus/Response Sequence 26
5.4.3 Functional Requirements 27
5.4.4 Use Cases Narratives 27
5.4.5 Activity Diagram 29

6 Functional Requirements
6.1 Functional Requirements 31
6.1.1 General Requirements 31
6.1.2 Domain Specific Requirements 31
6.1.3 Condition Specific Requirements 32

7 Non-Functional Requirements
7.1 Performance Requirements 33
7.2 Safety Requirements 33
7.3 Security Requirements 33
7.4 Software Quality Attributes 33
7.4.1 Quality Requirement 33
7.4.1.1 Portability/Compatibility 33
7.4.1.2 Maintainability 34
7.4.1.3 Availability, Reliability Requirement etc. 34
7.4.2 Business Rule 34
7.4.2.1 Testability Requirements 34
7.4.2.2 Usability Requirements 35
7.4.2.3 Documentation Requirement 35

Appendix A: Glossary 35

Appendix B: Analysis Models 36


B.1 Context Diagram 36
B.2 Feature Tree 37
B.4 Work Break Down Structure 38
___________________________________________________________________

INTRODUCTION
This section of the SRS Document provides the main purpose of the document, all
the basic information, the references’ list and the definitions.

1.1. Document Scope and Purpose:


The main purpose of this document is to identify and describe the requirements
for the Matrix Factory Management System. The intended audience of this SRS
Document are the prospective developers, technical assessment, personnel, and
interested end-users.
In this document we describe the requirements related to the Matrix Factory
Management System (MFMS) which will ease the management of machines by
keeping track of the maintenance of them. It will manage the order process and
the refinement process of the “cluster bean” by keeping track of each and every
step. These updates will be made by employees of the respective department and
their respective product on their devices for each step. It will also be managing
the employee status and their presence and also records their working hours. Our
product will automatically generate reports for every business objective.

1.2. Background Information:


This Website is based on ASP.NET with C# include 3.5 .NET framework with the
securities of managing the accounts and the resources. The SQL Server is used as
database. This website is inspired by the already existing factory management
systems for popular factories with the new features included.
1.3. Acronyms and Definitions:
TERMS DEFINITIONS
User User is anyone who uses the MFMS web-
application.
Admin/Administrator Administrator manages, controls and has access to
every information in system.
TLS Transport Layer Security
SSL Secure Socket Layer
ISO/IEC 33001 Name of the standard followed while making this
SRS document.
Security Protocols A security protocol is an abstract or concrete
protocol that performs a security-related function
and applies cryptographic methods.
int int or Integer Data Type is used to store numbers.
String String Data Type is used to store text.
MVC Model View Controller
SQL Standard Query Language
HTTPS Hypertext Transfer Protocol Secure
REST Representational State Transfer
MFMS Matrix Factory Management System
UI User Interface
Information Information includes Order status, Employee
information, Employee status, employee working
hours, stocks information, stocks budget, stocks
costs, supply chain information, vendor
information, customer information and delivery
information.
1.4. Reference Documents:
SRS For DMD
ISO/IEC 33001
ISO/IEC 33001 – Information Technologuy – Process Assessment – Concepts and
Terminolgy
World Wide Web Consortium

1.5. Assumptions:
No Assumptions were made in this document.

STANDARDS OVERVIEW
This section includes the general description and overview related to standards
and the product.

2.1. Standards Scope:


The ISO/IEC 33001 standard includes 2015: ISO/IEC 33001 standards.
Consequently all the related information of the standards such as information
technology, process assessment, concepts and terminology, requirements for
performing process assessment, requirements for process measurement
framework, Requirements for process reference, maturity models, Guide for
process improvement, process measurement framework for assessment of
process capability and process assessment model for software testing.

2.2. Architectural and Open System Interaction Requirements:


Website will be connected to the hardware space connected.
The workstation computers or personal computers must have enough HDD space
to save the cookies and web site information.
2.3. Product Functions:
The minimum product functions that should be implemented in the software
application should be:
 Graphical Representation of Sales, Stock, Supply Chain information with
respect to time.
 Dashboard (Management boards of Supply Chain, Stock, Employee and
Sales).
 Manage the supply chain (Customer, Vendor, Product Information can be
viewed, added, updated and deleted).
 Manage Stock Information (Track, Add, Update or Delete).
 Manage Employee Information (View, Add, Update and Delete) and their
working hours.
 Manage Sales (Track, Create Sales Order, Approval).
2.4. User Classes and Characteristics:
The users of this management system will be the Managers, Supervisors and
Employees.

Graphical Representation of Access Levels

User Class Characteristics


General Manager This class has the admin privileges and has the
greatest access level along with information
related to General Manager.
Supervisor Each Department has their respective
supervisor; This class provides the access level
and saves the supervisor’s department
information.
Employee This class has the employee related
information along with their access levels
(access levels include their department
information which provides them
departmental access).
Supply Chain Management Dept. This class includes the information related to
the supply chain management. It also contains
the employees that are listed under this
department.
Employee Management Dept. This class includes the information related to
the employee management. It also contains
the employees that are listed under this
department.
Sales Management Dept. This class includes the information related to
the sales management. It also contains the
employees that are listed under this
department.
Stock Management Dept. This class includes the information related to
the stock management. It also contains the
employees that are listed under this
department.

2.5. Operating Environment:


The server-side components of the management system will be operating in a
Linux – Ubuntu Operating System.
The client-side components of the management system will operate in a common
web browser environment using Secure Sockets Layer (SSL) / Transport Layer
Security (TLS) cryptographic protocols at a minimum encryption level of 256 bits.
The minimum set of browsers that must be supported is:
• Google Chrome Version 96-onwards
• Apple Safari Version 15.3-onwards
• Microsoft Internet Explorer Version 10-onwards
• Mozilla Firefox Version 97-onwards

2.6. Standards Compatibility:


ISO/IEC 33001 – Compatibility Standard
 Co-existence: Can perform all the required functions while sharing
components and resources with all the workstation and personal
computers.
 Interoperability: The information exchanged between systems will be
available almost instantly and can be used.

2.7. Data Dictionary:


Entity Contents Attribute Type
Unique ID gmID int
General Manager Manager’s Name Name string
Access Level ALevel int
Date of Birth gmDOB Date
Unique ID svID int
Supervisor Supervisor’s Name Name string
Access Level ALevel int
Date of Birth svDOB Date
Unique ID epID int
Employees Employees’ Name Name string
Access Level ALevel int
Date of Birth epDOB Date
Vendor Unique ID vID int
Vendor’s Name Name string
Unique ID adID int
Admin
Admin’s Name Name string
Access Level ALevel int
Date of Birth epDOB Date
Contractor Unique ID cID int
Contractor’s Name Name String

2.8. Constraints and Assumptions:


The management system will be deployed on a web server that will require
constant internet connection to function. Employees will also be taught how to
use the website effectively and according to the business needs.

2.9. Entity Information & Relation:


 Admin -<manages(supervises)>- Every entity
 Supervisor -<manages(supervises)>- Employees
 General Manager -<manages(supervises)>- Supervisor
 Supervisor -<manages>- Vendor
 General Manager -<manages(supervises)>- Contractor
USABILITY FOCUS
This section shows the external interaction of actors with our system and
different usage scenarios.

3.1. Actor Profile:


3.1.1. Actor 1: Employee
This profile deals with the refinery/tasks process usage scenarios.
USE CASES:
Sign in: The user can continue to the website only and only if he has a
registered account that contains username and password. This username
and password is authorized by the system.
Refinery and Purity Status:
The above mentioned information can be viewed/added/updated by the
employee. And the changes are monitored by the supervisor and general
manager.
Order Status:
The status of the order can be updated accordingly by the employee. And
the changes made to the order status are monitored by the supervisor and
general manager.
Tasks:
Employee can also view the tasks that he has to perform.
Machine Condition:
The machine condition can be updated by the employee to the following
values: Immediate Repair/Good.

3.1.2. Actor 2: Supervisor


This profile deals with every employee usage scenario and has the ability to
manage employee actors.
USE CASES:
Sign in: The user can continue to the website only and only if he has a
registered account that contains username and password. This username
and password is authorized by the system.
Warehouse Status: The supervisor can update the warehouse status,
whether it is full or there is space available.
Report Generation: This actor can also generate reports for the general
manager.
View Generated Report: The reports generated can also be viewed before
emailing to the general manager.
Employee Working Hours: This actor can also update the working hours of
the employees and assign them tasks.

3.1.3. Actor 3: Logistics Department


The actors in this profile deal with the delivery and vendor management.
USE CASES:
Sign in: The user can continue to the website only and only if he has a
registered account that contains username and password. This username
and password is authorized by the system.
Warehouse Status: The supervisor can update the warehouse status,
whether it is full or there is space available.
Order Information: This actor can view all the information related to orders
and can be altered to the needs of the actor.
Delivery Status: Delivery status can be updated accordingly by this actor.
Delivery information: All the information related to delivery including the
vehicles to be used can be viewed by this actor and can also be updated.
Vendor Information: All the vendor related information can be viewed and
updated accordingly by the actor.
3.1.4. Actor 4: General Manager
This profile deals with each and every usage scenario of all the other actors
and has the ability to manage other actors (Admin Privileges).
USE CASES:
Contractor Information: The contractor information can only be viewed,
added and updated by this actor.
Authorization: This actor has the ability to create accounts for the
employee and supervisors.
**This actor has access to all the other use cases**
3.2. Business Use Case:
3.3. Usage Scenarios:
 Add/View/Update refinery and purity status
 Update/View order status
 View Tasks to perform
 View/Update machine condition
 Sign in
 Update/view warehouse status
 Generate/view reports
 Update employee working hours
 Assign employee their tasks
 Update/view order information
 Update/view delivery status
 Update/view vendor information
 Add/Update/View contractor information
 Create/Delete accounts of staff

EXTERNAL INTERFACE REQUIREMENTS


4.1. User Interfaces:
When the website is opened the user will be shown the login page. Where he
needs to log in to further access the website. Once logged in, there will be 5 pages
available at the home page on the left hand side of the web-page and on the right
hand side a graph will be present to track the stocks profits/losses over time.
There will be a search bar on the top right corner of the UI where entered
information can be searched. Web-page will be responsive for each device.

4.2. Hardware Interfaces:


This web-application can be accessed by any device that has an active internet
connection and a web browser. All components related to server-side will be
executed on server-class computers. Whereas, the client-side components will be
able to be executed on workstation-class and personal-class computers.

4.3. Software Interfaces:


The software interface should follow the Model-View-Controller (MVC) model for
rendering and modeling data objects, and the web application will be coded in
Javascript.

4.4. Communication Interfaces:


Different reports generated will be emailed to the respective individual
electronically.
Communication between the server and client should utilize a REST-compliant
web service and must be served over HTTP Secure (HTTPS).

SYSTEM FEATURES
5.1. Login Page:
5.1.1. Description and Priority:
Login page allows only certified users to enter the website.
 Username
 Password

5.1.2. Stimulus/Response Sequences:


Stimulus Response
User wants to log in to his account. System verifies the credibility and logs
the user in to his account.
User forgot his account password. System verifies the email and sends the
updated password to the user.

5.1.3. Functional Requirements:


 If users type in their username and password and click login the users’
credentials are validated and if correct they are logged in.
 If they are incorrect they get an error message that displays “Either the
username of password entered is incorrect”.
 If the user has forgotten their password they click "Forgot Password?"
which takes them to a password recovery screen. 
 On recovery screen, the system prompts the user to enter the e-mail
address, if the email address belongs to the registered user then the
updated password is sent to the user.

5.1.4. Use case Narratives:


Basic Flow of events:
 User enters his username and password.
 System validates the username and password.
 System allows user access to the website.
Alternative Flows:
 Either username of password entered are incorrect.
 Prompt to retrieve password.
 Validate the email and phone number to provide the updated password.
5.1.5. Activity Diagram:

5.2. Generate Reports:


5.2.1. Description and Priority:
Report generation is present for each dashboard available and
reports can be generated by users with certain access levels.
 Generate Reports
 E-mail generated reports

5.2.2. Stimulus/Response Sequences:


Stimulus Response
User wants to generate reports of a System verifies the access level of the
certain department from dashboard. user and then generates the report.
User wants to e-mail the generated System verifies that the report has been
report. generated and then e-mails them to the
specified user.

5.2.3. Functional Requirements:


 Each department’s dashboard has their respective report generator button
which accumulates all the information from the dashboard and summarizes
it into a report.
 The report also has the ability to be emailed to specified users of the
system.

5.2.4. Use case Narratives:


Basic Flow of events:
 User generates a report.
 System verifies the access level and generates the report.
 User wants to email the generated report.
 System emails the generated report to the specified user.
Alternate Flow:
 User does not have the access.
 Report to be emailed does not exist.
5.2.5. Activity Diagram:

5.3. Graphical Representation:


5.3.1. Description and Priority:
Graphical Representation displays (the ups and downs of the sales,
stock and supply chain over time) in a graph format to users of level
supervisor and above.
 Sales.
 Stocks.
 Supply Chain.
5.3.2. Stimulus/Response Sequences:
Stimulus Response
User prompts the system to view the System verifies the access level of the
graphical information. user and then displays the web-page
with graphical information in them.

5.3.3. Functional Requirements:


 Graph will have all the sales, stocks and supply chain information with
respect to budgets and costs over time (x-axis and y-axis).
 The information related to budget and costs will represent the vertical axis.
 The information related to time will represent the horizontal axis.

5.3.4. Use case Narratives:


Basic Flow of events:
 User visits the dashboard containing the graphical information.
 System displays the graph.
Alternate Flow:
 User does not have access to view the graph.

5.3.5. Activity Diagram:


5.4. View/Add/Update Departmental Information:
5.4.1. Description and Priority:
Users can view their respective departmental information. And, users
with certain access can update the departmental information.
Where information (see appendix A) is stated collectively and can be
divided into following subsets of information:
Order status, Employee information, Employee status, employee
working hours, stocks information, stocks budget, stocks costs, supply chain
information, vendor information, customer information, delivery
information.
And Departments include the following:
Sales Management, Stocks Management, Supply Chain Management,
Employee Management, Logistics Department.

5.4.2. Stimulus/Response Sequences:


Stimulus Response
User prompts the system to display the System verifies the access level of the
information. user and then displays the web-page
with information in them.
User prompts the system to add certain System verifies the access level of the
information. user and then adds the information in
both the dashboard and the SQL server
database.
User prompts the system to update System verifies the access level of the
certain information. user and then updates the information
and makes respective changes in the
database.

5.4.3. Functional Requirements:


 There must be a dashboard web-based UI for each department available.
 The system must organize and display the information in a web-based UI
page to the user whenever prompted.
 The information must be saved in a SQL server database.
 The information must be dynamic which can be updated/added anytime by
the specified users with access.

5.4.4. Use case Narratives:


Collective Event:
Basic Flow of events:
 User with respective access tries to View/Add/Update Delivery information,
order information, contractor information, employee information.
 System allows changes in accordance to the access level of the user.
 System makes changes to the information.
Alternative Flows:
 System does not allow changes.
 System does not find the existing information and can not update.
 System asks to add the information if it does not already exist.
View Event:
Basic Flow of events:
 User wants to view the information in dashboard.
 System verifies the access level and displays the information.
Alternate Flow:
 User does not have the access.

Update Event:
Basic Flow of events:
 User wants to update the information present in the dashboard.
 System verifies the access level and updates the information in SQL server
database.
 Updates the dashboard with the latest information.
Alternate Flow:
 User does not have the access.
 Information is static and can not be updated.

Add Event:
Basic Flow of events:
 User wants to add the information in the dashboard.
 System verifies the access level and adds the information in SQL server
database.
 Updates the dashboard with the latest information.
Alternate Flow:
 User does not have the access.
5.4.5. Activity Diagram:
View Event:

Update Event:

Add Event:
FUNCTIONAL REQUIREMENTS
6.1. Functional Requirements:
6.1.1. General Requirements:
SM – 1: Stock status can be updated in real time by the workers.
EM – 3: Tasks permissions and access levels can be set, updated and viewed.
EM – 4: Employees’ working, presence and absence status is tracked.
DB – 1: Information; Sales, Machine, Employee, Order and Client’s information
are saved in the Database.
DB – 2: Remote data base server access by the employees, supervisor and general
manager, through an Access Control List (ACL).
MF – 7: Order information is to be saved along with client’s information to
maintain record of orders.
MF – 9: Update the status of products during the refinement process.
MF – 13: Warehouse management; Track and update shipments and products
present in the warehouse.
LE – 1: Only the staff that has been provided access on their respective devices
can use the locally hosted website.

6.1.2. Domain Specific Requirements:


EM – 2: Payrolls are be generated by finance department and the receipts can be
printed by the employees.
EM – 1: Employee Information; Their certifications, vaccination cards, ID cards
and CNIC cards can be viewed and updated by users with access.
SaM – 1: Graph tracker which tracks the yearly, monthly and daily sales. Makes it
easy to understand profits and losses.
SaM – 2: Sales Order Creation; Sales Order can be created by sales person and can
be approved by the General Manager.
SaM – 3: Travel Management; The costs for travelling from warehouse to
customers are tracked along with the costs.
MF – 11: Generate Reports for completed orders and processes of refinement and
then email them to General Manager.
MF – 15: Shipment Management; manage the vehicles to be used for delivery, the
time, date of delivery and the orders.
LE – 3: Sign in / Sign up credentials for staff must be provided by the IT
department of the factory.
LE – 4: Reports generated will be emailed to the head of the respective
department.

6.1.3. Condition Specific Requirements:


MF – 14: Machines are categorized according to different operations performed
by them on the products.
LE – 2: User must not update the orders to the refinement process that are not
currently present in the warehouse.
If a person is absent update the attendance according to this and ask him to enter
the reason.
NON-FUNCTIONAL REQUIREMENTS

7.1. Performance Requirements:


SC – 2: Management system reduces the overall time by 50% in comparison with
the previous management process.

7.2. Safety Requirements:


 Software must not crash the system or damage any hardware.
 The system shall not allow to receive order if it reaches the maximum
amount of orders inn a day. Which was determined by the organization.
 BO – 1: Keep track of every machine’s condition and maintenance and
reduce machine failure by 50%.

7.3. Security Requirements:


 User shall provide Staff ID and password verification protection to protect
from unauthorized use of the system.
 All external communications between the system's data server and user
must be encrypted.
 The minimum cryptographic protocols encryption level of software should
be in 256 bits.

7.4. Software Quality Attributes:


7.4.1. Quality Requirements:
7.4.1.1. Portability/Compatibility:
 The minimum set of browsers that must be supported is:
• Google Chrome Version 96-onwards
• Apple Safari Version 15.3-onwards
• Microsoft Internet Explorer Version 10-onwards
• Mozilla Firefox Version 97-
 The server-side components of the management system will be operating
in a Linux – Ubuntu Operating System.
 The client-side components of the management system will operate in a
common web browser environment using Secure Sockets Layer (SSL) /
Transport Layer Security (TLS).

7.4.1.2. Maintainability:
 The web-application will keep record of all the updates in case the update
that takes place has faults so that the previous verion can be re-rolled.

7.4.1.3. Availability, Reliability Requirements, etc:


 Crashing of software or website during critical times must be less than 1%.
 BO – 2: Keep track of faulty products and their removal to maintain good
product quality by 99%.
 BO – 4: Improve the order & sales management of the products up to 99%
by keeping track of orders’ time, date of delivery and client’s identity.
 SC – 1: 95% of the staff can utilize the management system effectively.
 SM – 3: Purity status of the stock is logged and set as either greater than
equal to 90% or less than 90%.

7.4.2. Business Rules:


7.4.2.1. Testability Requirements:
 Keep track of every machine’s condition every week and make maintain it if
machine failure percentage is increased by 20%.
 The software should store data within 5 seconds of the user confirming the
order, 90% of the time.
7.4.2.2. Usability Requirements:
 GUI will be user and newbie friendly with support of different languages.
Usability Measurements:
 99% of the user staff must be able to use the website on atleast second try.

7.4.2.3. Documentation Requirements:


 Every requirement must be documented.

APENDIX A: GLOSSARY
SM: Success Metrics
EM: Employee Management
DB: Database
MF: Major Features
SaM: Sales Management
SC: Success Criteria
BO: Business Objective
APENDIX B: ANALYSIS MODELS
Context Diagram
Feature Tree Diagram
Work Breakdown Structure:

You might also like