0% found this document useful (0 votes)
20 views79 pages

NC - Module 6 - SRS Documentation - v1.3

Uploaded by

Nguyễn Đức
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views79 pages

NC - Module 6 - SRS Documentation - v1.3

Uploaded by

Nguyễn Đức
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 79

Module 6

software requirement specification


Business Analysis Fundamentals

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not
share it without our permission or consent

1
LEARNING PATH

Module 2:
Module 1: Assess Needs & Module 3: Module 4:
BA Overview Manage UI UX for BA Elicit BA information
Requirements

Module 6:
Module 5: Module 7: Module 8:
Software
Analyze & Model Agile Business Non Functional
Requirement
Requirements Analysts Requirements
Specification

Module 9: Module 10:


Take Home Case Final Case Study
Studies Demo & Wrap-up

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 2
01 Working with Use Case

02 Working with Use Case Model

AGENDA 03 Introduction to SRS

04 SRS Writing Process

05 Test Plan & Test Cases

3
WE ARE HERE

1 2 3 4 5 6

Assess Needs Plan BA Work Identify & Conduct Recap and Perform
& Current State and Approach Evaluate Facilitated Summarize Analysis &
Analysis Stakeholders Workshops MoM & Follow- Modelling
up Actions

11 10 9 8 7

Document Demonstrate Mock up Build Data Use SQL to


Reqts (SRS, Wireframes to software and Model & Data perform Data
Use Case, User validate reqts prototypes Dictionary Analysis
Stories)

12 14 15 16 17
13

Demonstrate Suppport Conduct Support User Support Data Go-Live


Partially-Built System End-User Acceptance Migration & (Future
Software Integration Training Testing Cutover State)
Testing Strategy

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 4
01 Working with Use Case

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 5
Use Case
A description of how users interact with systems.
Use Case Attributes

✓ They are process-driven

✓ They are goal-centric

✓ They are user-focused

Use Cases

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 7
When to use ”Use Case”

✓ When your product is characterized by user-system interaction

✓ Not when you have a data-driven product (Big Data, Reporting System,
Dashboard & Chart)

✓ Not when you are buying an off-the-shelf product (ERP, CRM, HRM…)

✓ Usually, use cases are not stand-alone but rather complement other
requirement documentation

Use Cases Search for Compare Buy Return


product Products Product Product

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 8
Use Case Components
✓ Use Case ID & Title

✓ Description

✓ Actor

✓ Basic Flow

✓ Alternative Flows

✓ Exception Flows

✓ Precondition

✓ Post Condition

✓ Triggers

✓ Business Rules

✓ UI Design

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 9
Use Case Components – ID & Title
✓ Use Case ID & Title
✓ Every Use Case needs to have an ID (unique identifier) and a Title to
✓ Description use as a shorthand in documentation and conversation

✓ Actor ✓ Title starts with a Verb and Noun Phase

✓ Basic Flow ✓ Naming convention: UC-XXX: Title where XXX represents digits

✓ Alternative Flows ✓ Example: UC-001: Submit a Medical Claim

✓ Exception Flows

✓ Precondition

✓ Post Condition

✓ Triggers

✓ Business Rules

✓ UI Design

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 10
Use Case Components – Description
✓ Use Case ID & Title
✓ Every Use Case needs to have a Description
✓ Description
✓ A description is to give a reader an overview and objective that use
✓ Actor case is trying to achieve

✓ Basic Flow

✓ Alternative Flows Set up Brokerage This use case describes the process by which a New
Account Accounts representative creates a brokerage account and
✓ Exception Flows procures the necessary account approvals.

Create E-Mail This use case covers how marketing managers set up e-
✓ Precondition Campaign: mail campaigns in the system

✓ Post Condition

✓ Triggers

✓ Business Rules

✓ UI Design

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 11
Use Case Components – Actor
✓ Use Case ID & Title
✓ An Actor is someone or something that performs an action in a use
✓ Description case.

✓ Actor ✓ A use case can have any number of person and system actors

✓ Basic Flow ✓ You can discover new actors at any point during the use case
development process
✓ Alternative Flows

✓ Exception Flows Set up This use case describes the process by which a New
Brokerage Accounts representative creates a brokerage
✓ Precondition Account account and procures the necessary account
approvals.
✓ Post Condition Create E-Mail This use case covers how marketing managers set
Campaign: up e-mail campaigns in the system
✓ Triggers

✓ Business Rules

✓ UI Design

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 12
Let’s create the first Use Case
PRACTICE

13
Example: Use Case for Find My Identity

UC-001: Find My Identity

This use case describes the process by which a Customer provides an ID No or Passport No. to
Description verify their information with National Citizenship Data Center (NCDC) in order to continue their
account origination process at NIB.
Actors Customer

Preconditions

Triggers

Postconditions

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 14
Use Case Components – Basic Flow
✓ Use Case ID & Title
✓ Simplest set of steps taken by the actors to achieve the goal.
✓ Description
✓ There is only one basic flow per use case.
✓ Actor
✓ It’s sometimes called the “happy path,” because it represents the best
✓ Basic Flow possible path for the actors

✓ Alternative Flows ID Actor Action Notes / References

✓ Exception Flows

✓ Precondition

✓ Post Condition ✓ Step ID: Unique identifier for the step in the flow (e.g. BF-1)

✓ Triggers ✓ Actor: Person or system performing the action

✓ Business Rules ✓ Action: What is done in that step

✓ Notes / References: Explanations, references to other entities, etc.


✓ UI Design

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 15
Let’s create a Basic Flow for your Use Case
PRACTICE

16
Example: Basic Flow

Basic Flow
ID Actor Action Notes / References

BF-1 Customer Clicks on “Apply Now” button

BF-2 System Displays Find My Identity Screen

BF-3 Customer Selects “Yes” & provide an ID Number

BF-4 Customer Clicks on “Next” button

BF-5 System Validates ID Number. / Passport No. is in proper format

BF-6 System Verifies the existence of ID No. / Passport No. against other customers’ data

BF-7 System Searches against NCDC

BF-8 NCDC Receives a request & extract individual data

BF-9 NCDC Returns individual data

BF-10 System Stores ID No. / Passport No. and Individual Data returned from NDCD in database

BF-11 System Continue the flow. UC002 – Capture Personal Detail

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 17
Use Case Components – Alternative Flows
✓ Use Case ID & Title
✓ Second Simplest set of steps taken by the actors to achieve the goal.
✓ Description
✓ Alternative paths for the actors to accomplish the goal.
✓ Actor
✓ Keep alternative flows short.
✓ Basic Flow ✓ Keep alternative flows simple.

✓ Alternative Flows ✓ End them well.

✓ Exception Flows

✓ Precondition

✓ Post Condition

✓ Triggers

✓ Business Rules

✓ UI Design

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 18
Thinking about Alternative Flows
Basic Flow

ID Actor Action Notes / References


What if ID No. / Passport No is not
BF-1 Customer Clicks on “Apply Now” button
provided or not in a valid format
BF-2 System Displays Find My Identity Screen

BF-3 Customer Selects “Yes” & provide an ID Number

BF-4 Customer Clicks on “Next” button

BF-5 System Validates ID Number. / Passport No. is provided and in


proper format

BF-6 System Verifies the existence of ID No. / Passport No. against What if ID No / Passport No. is
other customers’ data already being taken by another
BF-7 System Searches against NCDC customer?
BF-8 NCDC Receives a request & extract individual data

BF-9 NCDC Returns individual data

BF-10 System Stores ID No. / Passport No. and Individual Data returned
from NDCD in database

BF-11 System Continue the flow. UC002 – Capture


Personal Detail What if ID No / Passport No. is
unfound and no individual data
returned from NCDC?

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 19
Thinking about Alternative Flows
Basic Flow Alternative Flow 1: Incorrect ID No. / Passport No.
Notes / Notes /
ID Actor Action ID Actor Action
References References
BF-1 Customer Clicks on “Apply Now” button AF-1-1 System If ID No. / Passport No. is not provided or
not in correct format, then the system
BF-2 System Displays Find My Identity Screen displays an error message and asks users
to retry or cancel the process
BF-3 Customer Selects “Yes” & provide an ID Number
AF-1-2 Customer If retry, then back to BF-5
BF-4 Customer Clicks on “Next” button
AF-1-3 Customer If cancelled, then stop the process
BF-5 System Validates ID Number. / Passport No. is
provided and in proper format
Alternative Flow 2: Duplicate ID No. / Passport No.
BF-6 System Verifies the existence of ID No. / Passport
No. against other customers’ data Notes /
ID Actor Action
BF-7 System Searches against NCDC
References
AF-2-1 System If ID No. / Passport No. is being taken by
BF-8 NCDC Receives a request & extract individual another customer, the the system displays
data an error message and asks users to retry or
cancel the process
BF-9 NCDC Returns individual data

BF-10 System Stores ID No. / Passport No. and Alternative Flow 3: Unfound NDCD Data
Individual Data returned from NDCD in
database
Notes /
ID Actor Action
BF-11 System Continue the flow. UC002 – Capture References
Personal Detail

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 20
Use Case Components – Exception Flows
✓ Use Case ID & Title
✓ The goal of the use case is not met.
✓ Description
✓ These usually happen when something goes wrong with the system,
✓ Actor but can happen in other circumstances as well.

✓ Basic Flow Guidance:

✓ Alternative Flows ✓ Don’t neglect exception flows. They can have a big impact.

✓ Get advice, especially from developers.


✓ Exception Flows

✓ Precondition

✓ Post Condition

✓ Triggers

✓ Business Rules

✓ UI Design

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 21
Thinking about Exception Flows

ID Actor Action Notes / References


BF-1 Customer Clicks on “Apply Now” button

BF-2 System Displays Find My Identity Screen

BF-3 Customer Selects “Yes” & provide an ID Number What if NDCD System is unavailable
BF-4 Customer Clicks on “Next” button due to a number of reasons at the
point of digital app querying?
BF-5 System Validates ID Number. / Passport No. is provided and in
proper format

BF-6 System Verifies the existence of ID No. / Passport No. against


other customers’ data

BF-7 System Searches against NCDC

BF-8 NCDC Receives a request & extract individual data

BF-9 NCDC Returns individual data

BF-10 System Stores ID No. / Passport No. and Individual Data returned One solution: advise the customers
from NDCD in database that system is encountering
BF-11 System Continue the flow. UC002 – Capture
unexpected outcome, contact
Personal Detail support

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 22
Thinking about Exception Flows
Basic Flow Exceptional Flow 1: NCDC System is unavailable to
process request
Notes /
ID Actor Action
References
Notes /
ID Actor Action
BF-1 Customer Clicks on “Apply Now” button References

BF-2 System Displays Find My Identity Screen EF-1-1 System If NDCD is failed to receive our request to
query Individual Data or it takes too long to
BF-3 Customer Selects “Yes” & provide an ID Number return an outcome, the the system displays
an error message and terminate the process
BF-4 Customer Clicks on “Next” button

BF-5 System Validates ID Number. / Passport No. is


provided and in proper format

BF-6 System Verifies the existence of ID No. / Passport


No. against other customers’ data

BF-7 System Searches against NCDC

BF-8 NCDC Receives a request & extract individual


data

BF-9 NCDC Returns individual data

BF-10 System Stores ID No. / Passport No. and


Individual Data returned from NDCD in
database

BF-11 System Continue the flow. UC002 – Capture


Personal Detail

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 23
Let’s link the flows together
Basic Flow Alternative Flow 1: Incorrect ID No. / Passport No.
ID Actor Action Notes / References Notes /
ID Actor Action
References
BF-1 Customer Clicks on “Apply Now” button
AF-1-1 System If ID No. / Passport No. is not provided or
BF-2 System Displays Find My Identity Screen not in correct format, then the system
displays an error message and asks users
BF-3 Customer Selects “Yes” & provide an ID Number to retry or cancel the process

AF-1-2 Customer If retry, then back to BF-5


BF-4 Customer Clicks on “Next” button
AF-1-3 Customer If cancelled, then stop the process
BF-5 System Validates ID Number. / Passport No. is AF-1: Incorrect ID No. /
provided and in proper format Passport No.

BF-6 System Verifies the existence of ID No. / AF-2: Duplicate ID No. /


Passport No. against other customers’ Passport No. Alternative Flow 2: Duplicate ID No. / Passport No.
data
Notes /
ID Actor Action
BF-7 System Searches against NCDC References
BF-8 NCDC Receives a request & extract AF-3: Unfound NCDC Data AF-2-1 System If ID No. / Passport No. is being taken by
individual data another customer, the the system displays
EF-1: NDCD System is an error message and asks users to retry or
unavailable cancel the process

BF-9 NCDC Returns individual data Alternative Flow 3: Unfound NDCD Data
BF-10 System Stores ID No. / Passport No. and
Individual Data returned from NDCD
Notes /
ID Actor Action
in database References

BF-11 System Continue the flow. UC002 – Capture Personal


Detail

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 24
Use Case Components – Preconditions
✓ Use Case ID & Title
✓ Preconditions describe the state that must be in place for the use
✓ Description case to begin.

✓ Actor ✓ Anything that stops you from executing your flow or achieving your

✓ Basic Flow
goal

✓ Example: If you’re going to attend a Business Analysis Fundamentals


✓ Alternative Flows
Class, there are many preconditions:
✓ Exception Flows
✓ Internet is up and running
✓ Preconditions
✓ Headphone is available and properly functioning
✓ Post Conditions ✓ Laptop is available and properly functioning

✓ Triggers ✓ Zoom Link is provided and you’re able to access the zoom

✓ Business Rules ✓ Let’s go back to the Case Study and question yourself “What will stop
customers from applying?
✓ UI Design

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 25
Let’s add Preconditions to your Use Case
PRACTICE

26
Example: Preconditions

UC-001: Find My Identity

This use case describes the process by which a Customer provides an ID No or Passport No. to
Description verify their information with National Citizenship Data Center (NCDC) in order to continue their
account origination process at NIB.
Actors Customer

Customers downloaded the app


Preconditions
Customers are able to see and click on Apply Now button

Triggers

Postconditions

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 27
Use Case Components – Postconditions
✓ Use Case ID & Title
✓ Postconditions describe the state that will be in place after the use
✓ Description case has finished.

✓ Actor ✓ The goal mentioned in the description is a good starting point to

✓ Basic Flow
identify preconditions but sometimes it is quite tricky

✓ Another way to identify postconditions is to look at the possible


✓ Alternative Flows
outcomes in the basic flows and other flows
✓ Exception Flows
✓ The postconditions could be positive or negative
✓ Preconditions

✓ Post Conditions

✓ Triggers

✓ Business Rules

✓ UI Design

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 28
Let’s figure out postconditions from Basic Flow
Basic Flow

Notes /
ID Actor Action
References
BF-1 Customer Clicks on “Apply Now” button

BF-2 System Displays Find My Identity Screen Is this a goal of this use case?

BF-3 Customer Selects “Yes” & provide an ID Number

BF-4 Customer Clicks on “Next” button

BF-5 System Validates ID Number. / Passport No. is This use case describes the process by which a Customer provides an ID No
provided and in proper format Description or Passport No. to verify their information with National Citizenship Data

BF-6 System Verifies the existence of ID No. / Passport Center (NCDC) in order to continue their account origination process at NIB.
No. against other customers’ data
Actors Customer
BF-7 System Searches against NCDC
Customers downloaded the app
BF-8 NCDC Receives a request & extract individual Preconditions
data Customers are able to see and click on Apply Now button

BF-9 NCDC Returns individual data Triggers

BF-10 System Stores ID No. / Passport No. and • ID No / Passport No. is stored in database
Individual Data returned from NDCD in Postconditions
database • Individual Data returned from NDCD is stored in database

BF-11 System Continue the flow. UC002 – Capture


Personal Detail

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 29
Let’s figure out postconditions from Alternative & Exception Flows
Alternative Flow 1: Incorrect ID No. / Passport No.
Notes / This use case describes the process by which a Customer provides an
ID Actor Action
References ID No or Passport No. to verify their information with National
Description
AF-1-1 System If ID No. / Passport No. is not provided or Citizenship Data Center (NCDC) in order to continue their account
not in correct format, then the system
displays an error message and asks users origination process at NIB.
to retry or cancel the process
Actors Customer
AF-1-2 Customer If retry, then back to BF-5
Customers downloaded the app
AF-1-3 Customer If cancelled, then stop the process Preconditions
Customers are able to see and click on Apply Now button

Triggers
Alternative Flow 2: Duplicate ID No. / Passport No.
• ID No / Passport No. is stored in database
Notes /
ID Actor Action • Individual Data returned from NDCD is stored in database
References Postconditions
• System failed to store ID No. / Passport No. and Individual Data
AF-2-1 System If ID No. / Passport No. is being taken by
another customer, the the system displays returned from NDCD
an error message and terminate the process

Exceptional Flow 1: NCDC System is unavailable to process request


ID Actor Action Notes / References
EF-1-1 System If NDCD is failed to receive our request to query Individual Data
or it takes too long to return an outcome, the the system displays
an error message and terminate the process

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 30
Let’s add Postconditions to your Use Case
PRACTICE

31
Use Case Components – Triggers
✓ Use Case ID & Title
✓ The trigger is the event that starts the use case.
✓ Description
✓ Consider there to be three types of use case triggers.
✓ Actor 1. Human (e.g. You decide to go to the movies)

✓ Basic Flow 2. System (e.g. System creates a request in “pending” status)

3. Time-related (e.g. Clock gets to 12:00am)


✓ Alternative Flows
✓ Example: If you’re going to attend a Business Analysis Fundamentals
✓ Exception Flows
Class, there are many preconditions:
✓ Preconditions ✓ Internet is up and running

✓ Post Conditions ✓ Headphone is available and properly functioning

✓ Triggers ✓ Laptop is available and properly functioning

✓ Zoom Link is provided and you’re able to access the zoom


✓ Business Rules
✓ But what’s the trigger? The reminder popping up and click on “Join”
✓ UI Design
button

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 32
Let’s figure out Triggers
Basic Flow

Notes /
ID Actor Action
References
BF-1 Customer Clicks on “Apply Now” button

BF-2 System Displays Find My Identity Screen Is this a trigger for this Use Case?

BF-3 Customer Selects “Yes” & provide an ID Number

BF-4 Customer Clicks on “Next” button

BF-5 System Validates ID Number. / Passport No. is This use case describes the process by which a Customer provides an ID No
provided and in proper format Description or Passport No. to verify their information with National Citizenship Data

BF-6 System Verifies the existence of ID No. / Passport Center (NCDC) in order to continue their account origination process at NIB.
No. against other customers’ data
Actors Customer
BF-7 System Searches against NCDC
Customers downloaded the app
BF-8 NCDC Receives a request & extract individual Preconditions
data Customers are able to see and click on Apply Now button

BF-9 NCDC Returns individual data Triggers Customers click Apply Now button to start the process

BF-10 System Stores ID No. / Passport No. and • ID No / Passport No. is stored in database
Individual Data returned from NDCD in
database • Individual Data returned from NDCD is stored in database
Postconditions
• System failed to store ID No. / Passport No. and Individual Data returned
BF-11 System Continue the flow. UC002 – Capture
Personal Detail from NDCD

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 33
Let’s add Triggers to your Use Case
PRACTICE

34
Use Case Components – Business Rules
✓ Use Case ID & Title
✓ Business rules constrain some part of the business.
✓ Description ✓ e.g. “All requests over $100 must be approved by a manager.”

✓ Actor ✓ e.g. “The stock market closes at 4:00 Eastern Time.”

✓ Best practice: Store them in their own repository, and reference them in your
✓ Basic Flow
use cases
✓ Alternative Flows
Rule ID Rule Title Rule Description

✓ Exception Flows
BRL-0001 Citizenship ID Format Citizenship ID must be 10-digit number

✓ Preconditions BRL-0002 Passport No. Format Passport No. must start with ‘B’ or ‘C’ followed by 8 -digit number

Unique Citizenship ID
✓ Post Conditions BRL-0002.1
or Passport No.
Citizenship ID or Passport No must be unique within the entire system

Mandatory Fields for To establish a personal profile, the following data is required:
✓ Triggers BRL-0003
Customer Profile First Name, Last Name, DOB, Phone Number and Email Address

✓ Business Rules BRL-0004 Unique Email Address Email Address must be unique and follow email address

Unique Phone
✓ UI Design BRL-0005
Number
Phone Number must be unique

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 35
Reference Business Rules in Use Cases
Basic Flow
ID Actor Action Notes / References

BF-1 Customer Clicks on “Apply Now” button

BF-2 System Displays Find My Identity Screen

BF-3 Customer Selects “Yes” & provide an ID Number

BF-4 Customer Clicks on “Next” button

BF-5 System Validates ID Number. / Passport No. is provided and in proper format AF-1: Incorrect ID No. / Passport No.
BRL-0001: Citizenship ID Format
BRL-0002: Passport No. Format

BF-6 System Verifies the existence of ID No. / Passport No. against other AF-2: Duplicate ID No. / Passport No.
customers’ data
BRL-0002.1: Unique Citizenship ID or Passport No.

BF-7 System Searches against NCDC

BF-8 NCDC Receives a request & extract individual data AF-3: Unfound NCDC Data
EF-1: NDCD System is unavailable

BF-9 NCDC Returns individual data

BF-10 System Stores ID No. / Passport No. and Individual Data returned from
NDCD in database

BF-11 System Continue the flow. UC002 – Capture Personal Detail

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 36
Let’s create a Business Rule Catalogue and
reference to your Use Case
PRACTICE

37
Use Case Components – UI Design
✓ Use Case ID & Title
✓ These are UI design illustrations.
✓ Description
✓ Provide Current Screens for reference if applicable
✓ Actor
✓ Provide Proposed Screens
✓ Basic Flow ✓ Best practice: perform UI (User Interface) mappings and store these

✓ Alternative Flows mappings in a separate page and provide a reference link the use case
section pointing to those UI mappings
✓ Exception Flows

✓ Preconditions

✓ Post Conditions

✓ Triggers

✓ Business Rules

✓ UI Design

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 38
UI Data Mapping
Field Name Control Type Default Value Source Mapping Rules

Do you have Button • List of Values: Yes / No


Citizen ID No or
Passport No.?

What is your Textbox Identification_number • Given the customer is at this


Citizenship ID screen, when selecting “Yes”,
No. or Passport then enable this field and make it
No. mandatory else disabled and
optional

• Given the customer is at this


screen, when selecting “No”,
then display an error message
and stop the process

• Given this number starts with 0,


then set identification_type =
‘Citizenship Card’ else set
‘Passport’

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 39
Let’s add Screens and UI Mapping to your
Use Case
PRACTICE

40
02 Working with Use Case Model

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 41
Components of Use Case Diagrams

✓ To model many use cases, we develop Use Case Diagrams

✓ 4 Components of Use Case Diagrams:

✓ System Boundary

✓ Use Cases

✓ Actors

✓ Relationships

Use Case
Diagram

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 42
Components of Use Case Diagrams

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 43
Example: Use Case Diagram

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 44
Use Case Diagram – Include & Extend Relationship
✓ Includes: This relationship means that one
(super) use case completely includes another
(smaller) use case.
<<Include>>
✓ Extends: This relationship indicates that one use Main Use Sub Use
Case Case
cases extends the functionality of another

✓ Step 1 Write the extending use case.


Sub Use
✓ Step 2 Add a reference to the use case that Case
is being extended.

✓ Step 3 Add the <> relationship to the use


cases.

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 45
Example

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 46
Extend Relationships are BAD
Why they are bad:

1. They add considerable complexity.

2. They are confusing to everyone

3. There are many better ways to express these relationships.

Better options:

1. Make the extending case an alternate flow.

2. Make one use case’s goal the precondition of the other.

3. Do nothing. Leave them unrelated.

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 47
Use Case Catalogue can be used in replacement for Diagrams

Use Case Actor

UC001: Mobile Top-up Customer

UC002: Check Account Balance Customer

UC003: Make a Payment Customer

UC004: Login Customer

UC005: Change Password Customer

UC006: Forgot Password Customer

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 48
03 Introduction to SRS

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 49
Poor Requirements = Project Failure

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 50
Software Requirements Specification
Description of a software system to be developed
Benefits of having an SRS
✓ Facilitate reviews

✓ Describe the scope of work

✓ Provide a reference to software designers (i.e., navigation aids, document structure)

✓ Provide a framework for testing primary and secondary use cases

✓ Links features to customer requirements

✓ Provide a platform for ongoing refinement (via incomplete specs or questions)

✓ Typically applied to Fixed Price Project Type using Waterfall Methodology (Predictive Mode)

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 52
04 SRS Writing Process

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 53
SRS Writing Process
✓ Step 1: Initiate SRS

✓ Step 2: Define SRS Skeleton

✓ Step 3: Define High Level Requirements

✓ Step 4: Define Use Case Breakdown

✓ Step 5: Document Use Cases

✓ Step 6: Define Document Attributes

✓ Step 7: Review & Finalize SRS

✓ Step 8: Earn SRS Approval

✓ Step 9: Baseline SRS

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 54
Step 1: Initiate SRS
✓ Step 1: Initiate SRS
Tips:
✓ Step 2: Define SRS Skeleton
✓ Name the file as “ProjectName_Software Requirement Specificiation_v0.1”
✓ Step 3: Define High Level Requirements ✓ Always start with version 0.1 for document initiation

✓ Step 4: Define Use Case Breakdown ✓ Keep increasing the version to reflect changes

✓ Step 5: Document Use Cases ✓ Reserve version 1.0, 2.0, 3.0, X.0 for baselined version

✓ Step 6: Define Document Attributes


Date Version Author Change Description

✓ Step 7: Review & Finalize SRS 15/03/2021 0.1 Ryan Initiated the document

16/03/2021 0.2 Ryan Added High Level requirements


✓ Step 8: Earn SRS Approval
17/03/2021 0.3 Ryan Added use case specifications

✓ Step 9: Baseline SRS 18/03/2021 0.4 Ryan Added document attributes

19/03/2021 0.5 Ryan Reviewed & finalized document for approval

20/03/2021 1.0 Ryan Baselined the document

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 55
Step 2: Define SRS Skeleton
✓ Step 1: Initiate SRS
A typical SRS Document will include:
✓ Step 2: Define SRS Skeleton
✓ Introduction
✓ Step 3: Define High Level Requirements ✓ High Level Requirements

✓ Step 4: Define Use Case Breakdown ✓ Use Case Specification

✓ Non-Functional Requirements
✓ Step 5: Document Use Cases

✓ Step 6: Define Document Attributes

✓ Step 7: Review & Finalize SRS

✓ Step 8: Earn SRS Approval

✓ Step 9: Baseline SRS

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 56
Step 3: Define High Level Requirements
✓ Step 1: Initiate SRS
High Level Requirements include:
✓ Step 2: Define SRS Skeleton
✓ High Level End-to-End Process
✓ Step 3: Define High Level Requirements ✓ System Context

✓ Step 4: Define Use Case Breakdown ✓ State Transition if necessary

✓ Actor
✓ Step 5: Document Use Cases

✓ Step 6: Define Document Attributes

✓ Step 7: Review & Finalize SRS

✓ Step 8: Earn SRS Approval

✓ Step 9: Baseline SRS

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 57
High Level End-to-End Process using BPMN

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 58
High Level End-to-End Process using BPMN

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 59
System Context

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 60
State Diagram

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 61
Actor

Actor Name Actor Description

Customer A person using the Digital App to self-serve their account origination needs

A 3rd-party service owned by the government to provide individual data based on


NCDC
unique identifiers

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 62
Step 4: Define Use Case Breakdown
✓ Step 1: Initiate SRS
✓ Brainstorm a list of use cases together with main actors
✓ Step 2: Define SRS Skeleton
Use Case Name Main Actor
✓ Step 3: Define High Level Requirements
UC001 - Find My Identity Customer

✓ Step 4: Define Use Case Breakdown UC002 - Capture Personal Profile Customer

UC003 - Perform eKYC System


✓ Step 5: Document Use Cases UC004 - Capture Company Detail & Address Customer

UC005 - Select Bank Account & Debit Card Customer


✓ Step 6: Define Document Attributes
UC006 - Submit Application Customer

✓ Step 7: Review & Finalize SRS UC007 - Perform Product Eligibility System

UC008 - Create Bank Account System


✓ Step 8: Earn SRS Approval
UC009 - Send Welcome Email System

UC010 - Login Customer


✓ Step 9: Baseline SRS

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 63
Sample Use Case Diagram

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 64
Step 5: Document Use Cases
✓ Step 1: Initiate SRS
✓ Specify detail for each use case
✓ Step 2: Define SRS Skeleton

✓ Step 3: Define High Level Requirements

✓ Step 4: Define Use Case Breakdown

✓ Step 5: Document Use Cases

✓ Step 6: Define Document Attributes

✓ Step 7: Review & Finalize SRS

✓ Step 8: Earn SRS Approval

✓ Step 9: Baseline SRS

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 65
Step 6: Define Document Attributes
✓ Step 1: Initiate SRS
Document Attributes include:
✓ Step 2: Define SRS Skeleton
✓ Purpose
✓ Step 3: Define High Level Requirements ✓ Background

✓ Step 4: Define Use Case Breakdown ✓ Glossary & Abbreviations

✓ Document References
✓ Step 5: Document Use Cases
✓ Risk, Assumptions & Dependencies
✓ Step 6: Define Document Attributes

✓ Step 7: Review & Finalize SRS

✓ Step 8: Earn SRS Approval

✓ Step 9: Baseline SRS

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 66
Step 7: Review & Finalize SRS
✓ Step 1: Initiate SRS
✓ It is time to review the entire SRS before submitting to stakeholders
✓ Step 2: Define SRS Skeleton
✓ Remember updating document version
✓ Step 3: Define High Level Requirements ✓ Enable Track Change

✓ Step 4: Define Use Case Breakdown

✓ Step 5: Document Use Cases

✓ Step 6: Define Document Attributes

✓ Step 7: Review & Finalize SRS

✓ Step 8: Earn SRS Approval

✓ Step 9: Baseline SRS

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 67
Step 8: Earn SRS Approval
✓ Step 1: Initiate SRS
✓ Compose an email to submit the SRS to stakeholders
✓ Step 2: Define SRS Skeleton
✓ If possible, schedule a workshop to walk through with them
✓ Step 3: Define High Level Requirements ✓ Allow customers to read offline

✓ Step 4: Define Use Case Breakdown ✓ Offer 2 – 3 rounds of review

✓ Each round will last for 1 – 5 working days depending on the complexity of
✓ Step 5: Document Use Cases
document (2 nd rounds onwards will be shorter)
✓ Step 6: Define Document Attributes

✓ Step 7: Review & Finalize SRS

✓ Step 8: Earn SRS Approval

✓ Step 9: Baseline SRS

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 68
Step 9: Baseline SRS
✓ Step 1: Initiate SRS
✓ Once approved by the stakeholders, then SRS is baselined
✓ Step 2: Define SRS Skeleton
✓ Upload the baselined SRS into folders accessible by them for future reference
✓ Step 3: Define High Level Requirements

✓ Step 4: Define Use Case Breakdown

✓ Step 5: Document Use Cases

✓ Step 6: Define Document Attributes

✓ Step 7: Review & Finalize SRS

✓ Step 8: Earn SRS Approval

✓ Step 9: Baseline SRS

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 69
Let’s write an SRS
PRACTICE

70
05 Test Plan & Test Cases

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 71
Testing Overview
1. Testing Pyramid

2. Test Plan

3. Test Scenarios and Test Cases

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 72
Testing Pyramid
1. Testing Pyramid

2. Test Plan

3. Test Scenarios and Test Cases

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 73
Test Plan
1. Testing Pyramid
Test Plan
2. Test Plan
Outlines the strategy of testing software to ensure it meets the
3. Test Scenarios and Test Cases
design specifications and requirements

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 74
Test Scenarios & Test Cases
1. Testing Pyramid
Test Case
2. Test Plan
Test Case are the sets of steps required to test software
3. Test Scenarios and Test Cases
functionality. Test Scenarios is a logical grouping of test cases

Test Scenario

Test Case 1 Test Case 2 Test Case 3

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 75
Example: Test Scenarios & Test Cases

Test Scenario: Validate the login page

Test Case 1: Test Case 2: Test Case 3:

Log in with valid Log in with invalid Reset password


credentials credentials

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 76
Template: Test Case Structure

TC ID A unique identifier for this test case

Scenario A logical grouping of test cases

Case A strong, descriptive title that makes it easy to identify what is being tested

Pre-condition Any prerequisite to meet before executing this test case

Test Procedure Steps and information required to execute this test case

Expected Result The expected outcome from executing the test case

Execution Date Date of executing the test

Actual Result Passed / Failed / Pending / Blocked

Comments Additional notes or outcome information related to the test

Screen shot reference Attach the screenshot or refer to another spreadsheet or system

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 77
Example: Test Case Structure

TC ID TC-0001

Scenario Capture Personal Detail

Case Create Personal Profile Successfully

1. Click on “Next” button from Find My ID Screen


Test Procedure 2. Provide Personal Detail – Refer to Test Data
3. Click on “Next” button

Expected Result System moves to next screen with personal profile being captured

Execution Date 15-03-2021

Actual Result Passed

Comments N/A

Screen shot reference N/A

Confidential Note: This slide is designed by Ryan in partnership with Nordic Coder. Please do not share it without our permission or consent 78
Let’s write a Test Scenario & Test Case
PRACTICE

79

You might also like