SRS Template
SRS Template
Requirement Specifications
For <<App Name>>
Version: 0.7
Date:
Date:
____________________
Date:
____________________
Date:
1. Introduction 5
1.1 Purpose 5
1.2 Overview 5
1.4 Abbreviations 5
1.5 References 6
2.2 Workflow 8
4. Mockups Screen 34
5. Non-Functional Requirements 36
6. Other Requirements 40
6.4 Pagination 41
7. Integration 44
8. Data Migration 44
9. Appendices 45
❖ Define the scope of business objectives, business functions, and organizational units covered,
❖ Identify the business processes that the solution must facilitate,
❖ Facilitate a common understanding of what the functional requirements are for all parties involved,
❖ Establish a basis for defining the acceptance tests for the solution to confirm that what is delivered meets
requirements.
The purpose of the document is to collect and analyse all assorted ideas that have come up to define the system,
its requirements with respect to consumers. Also, we shall predict and sort out how we hope this product will be
used in order to gain a better understanding of the project, outline concepts that may be developed later, and
document ideas that are being considered, but may be discarded as the product develops.
1.2 Overview
<Describe the purpose & scope of the system>
1.4 Abbreviations
<Template only: List out all Acronym used in this documents and sort them alphabetically.>
Acronym Reference
UC Use Case
BR Business Rules
ET Email Template
MSG Message
<<Field>> Convention for value of this field, specifically use in the context of Email Template
<Value> Convention for mentioning special value, i.e. <Today>, <Current User>
TBU To be Updated
1.5 References
<Template only: List any other documents or Web addresses to which this SRS refers. These may include user
interface style guides, contracts, standards, system requirements specifications, use case documents, or a vision
and scope document. Provide enough information so that the reader could access a copy of each reference,
including title, author, version number, date, and source or location.
List any version information relating to external Tools, Plugins or Platforms that the system uses or is built upon.
If no, put N/A>
Title of Tools, Plugins or Link to the Tools, Plugins or Version information of the Tools, Plugins or
Platforms Platforms Website. Platforms that the systems uses or is built upon.
2. High Level Requirements
This section describes the general overview of the system functions or business processes which are depicted in
different diagrams. It shows the types of users, their granted permissions to perform specific system functions
and the sequence required to complete a business workflow (if any). As the section name implies, it is high-level
which means not detailed enough. For detailed requirement specification, please see Use Case Specifications
section below.
Figure 1:
Description:
# Object Description
Object
1 NRF <Purpose of this object, what kind of information storing in this object>
2 OOE
Actor
2 OOE
External System
1 SAP <Purpose of this system, how to integrate to this system>
2.2 Workflow
This section shows the flow of tasks or steps taken by each user of the system in order to complete a business
process. The user’s actions are shown in each business process stage of the system along with the conditions
under which it can move to the next stage or revert to the previous.
Figure 2:
Workflow Explanation:
Figure 4:
# UC Name Description
2
3
4
2.7 Site Map
The site map describes the way for navigating through the system.
<Template only: Note: Only need to draw up to 3 levels from the Home page to reduce the complexity and make
the map readable.>
Figure 5:
Let’s submit Link to the screen description Who has permission to view this page
My Suggestions
…
3. Use Case Specifications
This section covers the system’s functional requirements which details what the system must do in terms of
input, behavior and the expected output. It elicits the interaction between the actor(s) and the system, the
system’s behavior and the results of their interactions.
Trigger: User accesses to the Companies view to create, view, update or delete Country.
Activity Flows
Business Rules
From Companies view, user selects existing Company then clicks to open the selected
Company in detailed page (refer to <<link to screen>>).
Activities Flow
Business Rules
❖ If the value of any mandatory fields is blank, system will show an error message
for the required fields as MSG 1 You must specify a value for this required field.
After all validation rules passed, system will perform the following actions:
❖ General Users, Application Admin can view all Requests excluding draft Requests
of other users. They can view draft Requests created by themselves.
Activities Flow
Business Rules
The system will load the Request list view based on screen <<link to screen>>.
Business Rules
❖ In case both From Date and To Date of Date Submitted are inputted, if [From Date] is
later than [To Date], system will show error message MSG 8 Invalid Date combination.
❖ When user clicks Search button, system will retrieve all requests which satisfy all
following conditions:
⮚ If user does not enter any criteria, system will show all Requests on the result
view.
⮚ If user enter any criteria, system will show all returned Requests as per following
table:
If the [Request Title] field is System will retrieve all records without
blank filtering by Request Title. Otherwise, filter
only records whose Request Title matches
inputted [Request Title].
If the [Request Type] field is System will retrieve all records without
“All” filtering by Request Type. Otherwise, filter
only records whose Request Type matches
inputted [Request Type].
If the [Status] field is “All” System will retrieve all records without
filtering Status. Otherwise, filter only
records whose Status matches inputted
[Status].
❖ In case there is no item matches the search criteria, system displays an message MSG
9 No information found! on the Search Results view. Otherwise, system shows all
returned Requests on the result view.
Activities Flow
Business Rules
Depending on the current status of the Request at the point of editing, system will
validate based on the existing rules Requested under each of the use-case.
❖ The Request’s status is “Draft” and the Requester is working on it, system will
perform following validation rules:
⮚ If the value of any mandatory fields is blank, system will show an error
message for the required fields as MSG 1 You must specify a value for this
required field.
⮚ <<Other validation rules>>
❖ The Request’s status is “Pending Approval”, system will perform following
validation rules:
⮚ System will show an error message for the required fields as MSG 1 You must
specify a value for this required field. if the value of any mandatory and any
of following fields are blank:
o [Final Approver].
o [Implementer].
⮚ <<Other validation rules>>
(5) BR 15 Updating Rules:
Activities Flow
Business Rules
The system shows confirmation message MSG 7 Are you sure you want to delete this
item?
Actor: ❖ Requester
❖ Application Admin
Activities Flow
Business Rules
Step BR Code Description
❖ If the value of any mandatory fields is blank, system will show an error message for
the required fields: MSG 1 You must specify a value for this required field.
❖ After all validation rules are passed, system performs the following actions
The system sends an email notification email according to the following template:
Actor: ❖ Approver
❖ Application Admin
Trigger: User selects to approve a Request.
Activities Flow
Business Rules
❖ System will show an error message as MSG 1 You must specify a value for this
required field. if any of following fields is blank:
⮚ [Implementer]
After user clicks on “OK” button, system performs the following actions
Actor: ❖ Approver
❖ Application Admin
Trigger: User selects to reject the Request.
Business Rules
❖ System will show the error message MSG 1 You must specify a value for this required
field. under field [Reason for Rejecting] if it is blank.
❖ System will show a confirmation message as <TBU> if validate successfully.
(6) BR 28 Rejecting Rules:
Upon user selecting to reject the current request, the system perform the following
processing:
Actor System
Pre-conditions N/A
Activities Flow
Business Rules
BR Code Description
BR 30 Sending Notification Email Rule: Tasks that need to be done by [Assigned To]:
System sends notification email for the Request under following conditions:
System sends notification email for the Request under following conditions:
BR Code Description
CBR1
4. Mockups Screen
This section contains the screens and their respective attributes associated with one or more use cases defined in Use Case Specifications section above.
<Screenshot>
# Component Description
4 Radio Button
Performance requirements refer to the capability of the software to provide the required performance relative
to the amount of resources used, under stated conditions
❖ Workload percentage at peak i.e. In standard workload, the CPU usage shall be less
time. than 50%, leaving 50% for background jobs.
Workload
❖ Workload percentage at off-
peak time.
Scalability Ease of Scalability.
Safety Requirement refers to the aspects of a solution that protects solution contents or solution components
from accidental or malicious access, use, modification, destruction, or disclosure.
Password and message encryption i.e. The system needs to follow standard encryption
Privacy
algorithm called DES (Data Encryption Standard).
Authenticati ❖ Success rate in i.e. The application shall identify all of its client
on authentication. applications before allowing them to use its capabilities.
❖ Resistance to known attacks.
i.e. The application shall ensure that the name of the
❖ Probability/time/resources to
detect an attack. employee in the official human resource and payroll
❖ Percentage of useful services databases exactly matches the name printed on the
still available during an employee’s social security card.
attack.
i.e. At least 99% of intrusions shall be detected within 10
❖ Percentage of successful
attacks. seconds.
❖ Lifespan of a password, of a
session.
❖ Encryption level.
5.4
Software Quality Attributes (optional)
< Template only: Specify any additional quality characteristics for the product that will be important to either the
customers or the developers. Some to consider are: adaptability, availability, correctness, flexibility,
interoperability, maintainability, portability, reliability, reusability, robustness, testability, and usability. Write
these to be specific, quantitative, and verifiable when possible. At the least, clarify the relative preferences for
various attributes, such as ease of use over ease of learning.>
Usability: Ease with which a user can learn to use the solution.
❖ Color-blind users
Accessibility ❖ Voice-over for hearing
impaired users
❖ Time zone adaptation. The webpage must support 03 languages: English,
❖ Support multiple Chinese, Korean.
Internationalisation currencies.
❖ Support multiple
languages.
❖ Maximum number of i.e. Assure maximum 04 clicks to complete a
clicks to complete any transaction.
operation.
i.e. Four out of five users shall be able to book a guest
❖ Learnability.
❖ Efficiency. within 5 minutes after a 2-hour introduction to the
❖ Memorability. system.
Ease of Use ❖ Error Avoidance. i.e. Novice users shall perform tasks X and Y in 15
❖ User Satisfaction. minutes. Experienced users shall perform tasks X and Y
in 2 minutes.
Reliability: Ability of a solution or component to perform its required functions under stated conditions.
Percentage of time available i.e. The system must be available 98% of time on a
monthly basis.
Backup Backup frequency Backup must be triggered every three days at 12:00AM.
Functional Suitability: Degree to which the solution functions meet user needs
Compliance: Regulatory, financial, or legal constraints which can vary based on the context or jurisdiction.
⮚ .
⮚ Where Description Text is the placeholder.
⮚ “Wrong entry / Entry required” is the message content.
Error Message ❖ Pop-Up contains only message content and a button “Close”.
❖ Clicking outside of the pop-up does not close it, only button “Close” on the pop-up
does.
❖ After closing popup, return to the current screen.
❖ Message is displayed when there is error in validation.
Confirmation ❖ Pop-Up contains only message content and two buttons “Yes”, “No”.
Message ❖ Clicking outside of the pop-up does not close it, only button “Yes” or “No” does.
❖ After closing popup, performs the corresponding function or action, which is
described specifically in each place using the Pop-up Confirmation Message.
❖ Message is displayed when there needs a confirmation of action.
Informing Message ❖ Pop-Up contains only message content and will disappear after 10s.
❖ Message is displayed after the system successfully performs a certain function or
action.
Standard platform ❖ Any standard platform message can be presented here.
Message
❖ Is unsorted by default.
6.4 Pagination
<Template only: Parts of this segment will vary depends on pagination settings used by the current system.
Please check and update accordingly>
Unless stated otherwise, pagination-related behavior in all views of the system will follow the following
specifications:
❖ When user performs a new search (both completely new and searching within the current search results),
refresh table, go back to page 1.
❖ When user changes the pagination setting (number of items to show per page), refresh table, go back to
page 1.
❖ When user is in page 1, disable buttons of “<<” and “<”
❖ When user is in the last page, disable buttons of “>>” and “>”
❖ Otherwise, enable all buttons.
❖ Button “<” and “>” move the pagination backward or forward by 1.
❖ Button “<<” or “>>” move the pagination to page 1 or the last page.
❖ If there is 1 page, still display the pagination with 1 page.
❖ On the most left position, the system displays all records found that satisfied the current condition (display
all or searched or filtered, etc…).
❖ User can input the number of pagination they want to go to, next to the total number of pagination.
❖ Sample:
Unless stated otherwise, search-related behavior in all views of the system will follow the following
specifications:
❖ Search field is a Free Text (single line of text) field, thus it follows this field’s common properties.
❖ Search behavior follows “contain” logic, where the system searches all presenting columns for records that
have value containing the keyed in value.
❖ Searched results are presented by refreshing the table listing information and the system updates pagination
information accordingly.
❖ If keyed in value is blank, the system will reset to the default view information.
Unless stated otherwise, Bulk Action behavior in all views of the system will follow the following specifications:
❖ In the table listing, the first column will always be a checkbox columns allowing user to select records/items
to apply Bulk Action.
❖ Selecting the checkbox on Column Header will select all checkboxes only on the current pagination of the
table listing.
❖ Upon jumping between pagination, the selected state of checkboxes is kept.
❖ Users can select Bulk Action from the Dropdown list or available bulk action buttons (depending on the
system) to apply to the selected items.
❖ For Dropdown list Bulk Action:
⮚ Bulk Action is the default option, which performs nothing when apply.
⮚ Value list contains:
▪ Bulk Action.
▪ Export.
▪ Delete.
❖ For available bulk action buttons:
⮚ These buttons are enable only when at least 1 checkbox is selected.
⮚ Button includes:
▪ Delete.
▪ Export.
7. Integration
<Template only: Describe external system(s) which integrates with the system>
8. Data Migration
<Template only: Describe data migration scope and requirements.
In case SRS for data migration in a separated SRS, note down this point: e.g. Detailed requirements for Data
Migration part will be described on separated SRS. The data migration SRS and the functional SRS will be a couple
of documents to fulfil the whole requirements for SSS migration.>
4. MSG 4 Are you sure, you want to send the item(s) to the site Recycle Bin? Confirmation
Message
5. MSG 5 You must specify a unique value for this field. In-line Error
Message
6. MSG 6 Invalid Email Address. Error Message
7. MSG 7 Are you sure you want to delete this item? Confirmation
Message
8. MSG 8 Invalid Date combination. Error Message
Send to Evaluator
CC Suggester(s)
Subject [Prefix] SSS: A new Suggestion <<Suggestion Code>> has been submitted for your evaluation.
The Suggestion <<Suggestion Code>> - <<Suggestion Title>> has been submitted for your
evaluation.
Sincerely,
SSS Admin