SlideShare a Scribd company logo
1 of 51
AN INTRODUCTION
TO VISUAL MODELS
FOR SOFTWARE REQUIREMENTS
Index
1. Introduction to Requirements Modeling Language (RML).
1.1. Prelude.
1.2. Challenges with Traditional Software Requirements Practices.
1.3. What are Requirements Modeling Languages?
1.4. What are Requirements Models?
2. Model Categorization.
2.1. Introduction.
2.2. Objectives Model.
2.3. People Model.
2.4. System Model.
2.5. Data Model.
1. INTRODUCTION TO
REQUIREMENTS MODELING LANGUAGE
(RML)
1.1. PRELUDE
Prelude
Missed
requirements
Incomplete
requirements
Unclear
requirements
Failed
project
Poor requirements are at the root of many project failure, but the
success of software requirements industry has not dramatically improved
over the last 20 years.
Prelude
Although academia has been steadily identifying approaches for
improving requirements techniques and engineering methods, commercial
practices have remained largely the same.
Software requirements are often still developed by using long lists of
“shall” statements maintained in spreadsheet.
1.2. CHALLENGES WITH
TRADITIONAL SOFTWARE REQUIREMENTS
PRACTICES
Challenges with Traditional
Software Requirements Practices
It is nearly impossible to read the thousands of requirements
and emerge confident that the requirements are complete
Difficult to determine which requirements should be cut without
some way to link those requirements to values that can be
compared across the solution
Challenges with Traditional
Software Requirements Practices
Limitations of the Human brain
Traditional practices use long lists of text requirements in the form
of shall statements, use cases, user stories and product backlogs.
The challenge of working with long lists of items results from a
fundamental limitation of human recognition.
A list of
999+ items
Multiple
organizational
lists
Challenges with Traditional
Software Requirements Practices
Pictures are easy, words are hard
A picture worth a thousand words
Models are visual representations (pictures) of information related to
the processes, data, and interactions within and surrounding the
solution being developed
Step 1: walk pass the bar
Step 2: turn right and straight
to the fountain
Step 3:
Step 4:
Step 5: Straight until you see
elevator on the right
How to get to the elevator ?
Or
1.3. WHAT ARE
REQUIREMENTS MODELING LANGUAGES?
RML Defined
What it is?
A language designed specifically
to visually model requirements
What it is not?
A theoretical modeling language
What it stand for?
Requirements Modeling Language
What its purpose?
For easy consumption by
executive, business, and
technical stakeholders How is it created?
Modified existing models for
ease of use and created new
models to address gap
Does it reach its purpose?
Yes
RML Defined
Requirements Modeling Languages (RMLs) are formal or semi-formal
notations that help software engineers capture, analyse, and
communicate the business rules, the functional and non-functional
requirements of a software system.
RMLs can range from textual to graphical, from abstract to concrete,
and from general to domain-specific.
1.4. WHAT ARE
REQUIREMENTS MODELS?
Requirements Models
Scenario: Building a Digital Marketing System
The Stakeholders
REQ001. The digital marketing system shall provide the capability to
create and manage marketing campaigns.
REQ002. It shall allow users to define target audiences and customer
segments for each campaign.
REQ003. The system shall support multiple digital marketing channels,
including email, social media, search engine marketing (SEM), content
marketing, and display advertising.
REQ004. It shall enable the scheduling and automation of marketing
campaigns to run at specified times.
REQ005. The system shall facilitate the creation of landing pages and
customizable website content for marketing campaigns.
REQ006. It shall provide tools for A/B testing and multivariate testing
to optimize marketing content and strategies.
REQ007. The system shall include customer relationship management (CRM)
features to manage customer data, leads, and contacts.
REQ008. It shall support personalization and segmentation of marketing
content based on customer behaviors and preferences.
The “System Shall” List
REQ009. The system shall enable the tracking of customer interactions
across various digital channels.
REQ110. It shall integrate with third-party analytics tools to provide
in-depth campaign performance data.
REQ111. The system shall support email marketing campaigns, including
newsletter creation, list management, and tracking.
REQ112. It shall allow for the creation and scheduling of social media
posts and advertisements.
REQ113. The system shall provide keyword research and optimization
tools for search engine marketing.
REQ114. It shall support the creation and publication of blog posts,
articles, and other content.
REQ115. The system shall integrate with advertising networks for
display advertising campaigns.
REQ116. It shall include a content calendar for planning and scheduling
marketing content.
The “System Shall” List
=> No clear overview of the project’s scope; Misinterpretation,
misunderstandings; Difficulty identifying dependencies etc.!
It is difficult to read, interpret, and identify gaps in a requirements
document of thousands of “system shall” statements, but models can
help!
The “System Shall” List
Requirements Models
Requirements models help organize and present large quantities of
information, identify missing information, and give context to details,
provide visual groupings that enable ability to quickly analyse large
amounts of disparate information by using limited short-term memory.
Requirements Models
The key to finding missing requirements is to take advantage of the
fact that each requirement is related to other requirements in some
way. It is extraordinarily difficult to ensure completeness with a
given long list of “system shall“ statements, but adding structure to
the requirements takes advantage of their relationship and greatly
simplifies the task by allowing to analyse smaller groups of
information at one time.
Uh, Why Not Just Using UML
It lacks models that tie requirements to business value and models that
present the system from an end user’s point of view.
Its technical roots make it simply too much complex for business
stakeholders to adopt because its models are geared towards modelling
the structure of the software architecture.
UML is intended to be used to describe the technical design and
architecture of a system and is at best retrofitted to model
requirements, which are focused on business benefit, user actions, and
business rules.
Requirements Models Are Not the End Game
Requirements models not eliminate the need to write requirement
statements. The models provide context and create an overall picture of
the requirements, but not represent the final detailed requirements
that will be used by the system developers and testers.
=> Derive requirements from the models is necessary!
The value of models is in helping organize the requirements in a way
that makes it easy to see when requirements are missing, extraneous, or
incorrect, but only the combination of textual and visual requirements
can paint a full picture of the solution to be built.
Using RML on Projects
RML models as a toolbox of models and templates for use on software
projects. Multiple models should generally be used together, and there
are common approaches that define when to use specific models in the
overall development life cycle.
Model Categorization
CHAPTER 2
Overview
System Model
Objectives Model
People Model
Data Model
Introduction
01
02
03
04
05
01
Introduction
Data -> Program -> Process Data
-> Exit
Initially
01
In the early stages of software development,
models mainly focus on describing the system
structure and design process - from the
constructor/designer perspective.
Problem
01
• Not understanding real needs and business
context
• Ignoring some important requirements
related to users/business processes
• Maintenance and upgrade costs are higher
due to the lack of clear constraints from
the beginning
OPSD
01
• OPSD (objectives models, people models, systems models, and data models)
01
What do you see
from that?
01
Benefit from looking from multiple directions
01
Bounding Model
Sumary Of benefit
01
Ensure the completeness of obtaining
requirements
Distill the best models for
each category
Easy tracking
Benefit 1 Benefit 3
Benefit 2
Objectives Model
02
Definition
02
Objectives models describe the business value of the system
01
02
03 Specific goals regarding functionality, performance, quality... need
to be achieved.
Mission/necessity for the system's existence.
Value of Objectives Model
02
Ensure the final system
developed meets the
original requirements.
Helps clearly define
the scope, limits and
priorities of the
project.
It is the basis for
building the remaining
models and ensuring the
connection between
them.
2.3. PEOPLE MODEL
People models
People models
01
• Describe the stakeholders of the system,
business processes, and their goals
02
• Org Chart, Process Flow, Use Case, Roles
and Permissions Matrix
03
• The Org Chart is the bounding model for
the RML people models category
The Org Chart
2.4. SYSTEM MODEL
Systems models
• Identify all of the major applications that participate in a multisystem
environment
• Describe specific aspects of the system
Systems models
• Ecosystem Map
• System Flow
• User Interface (UI) Flow
• Display Action Response Model
• Decision Tree
• Decision Table
• System Interface Table​
Ecosystem Map
2.5. DATA MODEL
Data models
• Business Data Diagram (BDD)
• Data Flow Diagram (DFD)
• Data Dictionary
• State Diagram
• State Table
• State Diagram
• Report Table
Business Data Diagram (BDD)

More Related Content

Similar to Nhom03_KTPTYC_Seminar_RML_Part_1.pptx

Solutions Manual for Enterprise Systems For Management 2nd Edition by Motiwalla
Solutions Manual for Enterprise Systems For Management 2nd Edition by MotiwallaSolutions Manual for Enterprise Systems For Management 2nd Edition by Motiwalla
Solutions Manual for Enterprise Systems For Management 2nd Edition by MotiwallaWoodHera
 
Chapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptChapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptRayonJ1
 
Service Oriented & Model Driven Architectures
Service Oriented & Model Driven ArchitecturesService Oriented & Model Driven Architectures
Service Oriented & Model Driven ArchitecturesPankaj Saharan
 
Software Process Model in software engineering
Software Process Model in software engineeringSoftware Process Model in software engineering
Software Process Model in software engineeringMuhammadTalha436
 
Different Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsDifferent Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsNicole Gomez
 
The Art and Science of Requirements Gathering
The Art and Science of Requirements GatheringThe Art and Science of Requirements Gathering
The Art and Science of Requirements GatheringVanessa Turke
 
SDLC and Software Process Models Introduction ppt
SDLC and Software Process Models Introduction pptSDLC and Software Process Models Introduction ppt
SDLC and Software Process Models Introduction pptSushDeshmukh
 
40411923 business-analyst
40411923 business-analyst40411923 business-analyst
40411923 business-analystHar Da
 
CS587 Project - Raychaudhury,Shaalmali
CS587 Project - Raychaudhury,ShaalmaliCS587 Project - Raychaudhury,Shaalmali
CS587 Project - Raychaudhury,Shaalmalisagar.247
 
Final Project Business ReportNAMESo.docx
Final Project Business ReportNAMESo.docxFinal Project Business ReportNAMESo.docx
Final Project Business ReportNAMESo.docxmydrynan
 
Requirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutionsRequirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutionsIBM Rational software
 
An intro to building an architecture repository meta model and modeling frame...
An intro to building an architecture repository meta model and modeling frame...An intro to building an architecture repository meta model and modeling frame...
An intro to building an architecture repository meta model and modeling frame...wweinmeyer79
 
Enterprise Architecture Verification Validation
Enterprise Architecture Verification Validation Enterprise Architecture Verification Validation
Enterprise Architecture Verification Validation William Francis
 
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEWrizki adam kurniawan
 

Similar to Nhom03_KTPTYC_Seminar_RML_Part_1.pptx (20)

Solutions Manual for Enterprise Systems For Management 2nd Edition by Motiwalla
Solutions Manual for Enterprise Systems For Management 2nd Edition by MotiwallaSolutions Manual for Enterprise Systems For Management 2nd Edition by Motiwalla
Solutions Manual for Enterprise Systems For Management 2nd Edition by Motiwalla
 
SE-Lecture-4.pptx
SE-Lecture-4.pptxSE-Lecture-4.pptx
SE-Lecture-4.pptx
 
chapter 1.ppt
chapter 1.pptchapter 1.ppt
chapter 1.ppt
 
Zen Of Oracle Erp
Zen Of Oracle ErpZen Of Oracle Erp
Zen Of Oracle Erp
 
Chapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptChapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.ppt
 
Service Oriented & Model Driven Architectures
Service Oriented & Model Driven ArchitecturesService Oriented & Model Driven Architectures
Service Oriented & Model Driven Architectures
 
Software Process Model in software engineering
Software Process Model in software engineeringSoftware Process Model in software engineering
Software Process Model in software engineering
 
Different Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsDifferent Methodologies Used By Programming Teams
Different Methodologies Used By Programming Teams
 
The Art and Science of Requirements Gathering
The Art and Science of Requirements GatheringThe Art and Science of Requirements Gathering
The Art and Science of Requirements Gathering
 
SDLC and Software Process Models Introduction ppt
SDLC and Software Process Models Introduction pptSDLC and Software Process Models Introduction ppt
SDLC and Software Process Models Introduction ppt
 
40411923 business-analyst
40411923 business-analyst40411923 business-analyst
40411923 business-analyst
 
CS587 Project - Raychaudhury,Shaalmali
CS587 Project - Raychaudhury,ShaalmaliCS587 Project - Raychaudhury,Shaalmali
CS587 Project - Raychaudhury,Shaalmali
 
Final Project Business ReportNAMESo.docx
Final Project Business ReportNAMESo.docxFinal Project Business ReportNAMESo.docx
Final Project Business ReportNAMESo.docx
 
Jar chapter 1
Jar chapter 1Jar chapter 1
Jar chapter 1
 
Requirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutionsRequirements management and IBM Rational Jazz solutions
Requirements management and IBM Rational Jazz solutions
 
An intro to building an architecture repository meta model and modeling frame...
An intro to building an architecture repository meta model and modeling frame...An intro to building an architecture repository meta model and modeling frame...
An intro to building an architecture repository meta model and modeling frame...
 
Enterprise Architecture Verification Validation
Enterprise Architecture Verification Validation Enterprise Architecture Verification Validation
Enterprise Architecture Verification Validation
 
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
 
Se lec-uosl-8
Se lec-uosl-8Se lec-uosl-8
Se lec-uosl-8
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 

Recently uploaded

5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 

Recently uploaded (20)

5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 

Nhom03_KTPTYC_Seminar_RML_Part_1.pptx

  • 1. AN INTRODUCTION TO VISUAL MODELS FOR SOFTWARE REQUIREMENTS
  • 2. Index 1. Introduction to Requirements Modeling Language (RML). 1.1. Prelude. 1.2. Challenges with Traditional Software Requirements Practices. 1.3. What are Requirements Modeling Languages? 1.4. What are Requirements Models? 2. Model Categorization. 2.1. Introduction. 2.2. Objectives Model. 2.3. People Model. 2.4. System Model. 2.5. Data Model.
  • 3. 1. INTRODUCTION TO REQUIREMENTS MODELING LANGUAGE (RML)
  • 5. Prelude Missed requirements Incomplete requirements Unclear requirements Failed project Poor requirements are at the root of many project failure, but the success of software requirements industry has not dramatically improved over the last 20 years.
  • 6. Prelude Although academia has been steadily identifying approaches for improving requirements techniques and engineering methods, commercial practices have remained largely the same. Software requirements are often still developed by using long lists of “shall” statements maintained in spreadsheet.
  • 7. 1.2. CHALLENGES WITH TRADITIONAL SOFTWARE REQUIREMENTS PRACTICES
  • 8. Challenges with Traditional Software Requirements Practices It is nearly impossible to read the thousands of requirements and emerge confident that the requirements are complete Difficult to determine which requirements should be cut without some way to link those requirements to values that can be compared across the solution
  • 9. Challenges with Traditional Software Requirements Practices Limitations of the Human brain Traditional practices use long lists of text requirements in the form of shall statements, use cases, user stories and product backlogs. The challenge of working with long lists of items results from a fundamental limitation of human recognition. A list of 999+ items Multiple organizational lists
  • 10. Challenges with Traditional Software Requirements Practices Pictures are easy, words are hard A picture worth a thousand words Models are visual representations (pictures) of information related to the processes, data, and interactions within and surrounding the solution being developed Step 1: walk pass the bar Step 2: turn right and straight to the fountain Step 3: Step 4: Step 5: Straight until you see elevator on the right How to get to the elevator ? Or
  • 11. 1.3. WHAT ARE REQUIREMENTS MODELING LANGUAGES?
  • 12. RML Defined What it is? A language designed specifically to visually model requirements What it is not? A theoretical modeling language What it stand for? Requirements Modeling Language What its purpose? For easy consumption by executive, business, and technical stakeholders How is it created? Modified existing models for ease of use and created new models to address gap Does it reach its purpose? Yes
  • 13. RML Defined Requirements Modeling Languages (RMLs) are formal or semi-formal notations that help software engineers capture, analyse, and communicate the business rules, the functional and non-functional requirements of a software system. RMLs can range from textual to graphical, from abstract to concrete, and from general to domain-specific.
  • 15. Requirements Models Scenario: Building a Digital Marketing System
  • 17. REQ001. The digital marketing system shall provide the capability to create and manage marketing campaigns. REQ002. It shall allow users to define target audiences and customer segments for each campaign. REQ003. The system shall support multiple digital marketing channels, including email, social media, search engine marketing (SEM), content marketing, and display advertising. REQ004. It shall enable the scheduling and automation of marketing campaigns to run at specified times. REQ005. The system shall facilitate the creation of landing pages and customizable website content for marketing campaigns. REQ006. It shall provide tools for A/B testing and multivariate testing to optimize marketing content and strategies. REQ007. The system shall include customer relationship management (CRM) features to manage customer data, leads, and contacts. REQ008. It shall support personalization and segmentation of marketing content based on customer behaviors and preferences. The “System Shall” List
  • 18. REQ009. The system shall enable the tracking of customer interactions across various digital channels. REQ110. It shall integrate with third-party analytics tools to provide in-depth campaign performance data. REQ111. The system shall support email marketing campaigns, including newsletter creation, list management, and tracking. REQ112. It shall allow for the creation and scheduling of social media posts and advertisements. REQ113. The system shall provide keyword research and optimization tools for search engine marketing. REQ114. It shall support the creation and publication of blog posts, articles, and other content. REQ115. The system shall integrate with advertising networks for display advertising campaigns. REQ116. It shall include a content calendar for planning and scheduling marketing content. The “System Shall” List
  • 19. => No clear overview of the project’s scope; Misinterpretation, misunderstandings; Difficulty identifying dependencies etc.! It is difficult to read, interpret, and identify gaps in a requirements document of thousands of “system shall” statements, but models can help! The “System Shall” List
  • 20.
  • 21.
  • 22. Requirements Models Requirements models help organize and present large quantities of information, identify missing information, and give context to details, provide visual groupings that enable ability to quickly analyse large amounts of disparate information by using limited short-term memory.
  • 23. Requirements Models The key to finding missing requirements is to take advantage of the fact that each requirement is related to other requirements in some way. It is extraordinarily difficult to ensure completeness with a given long list of “system shall“ statements, but adding structure to the requirements takes advantage of their relationship and greatly simplifies the task by allowing to analyse smaller groups of information at one time.
  • 24. Uh, Why Not Just Using UML It lacks models that tie requirements to business value and models that present the system from an end user’s point of view. Its technical roots make it simply too much complex for business stakeholders to adopt because its models are geared towards modelling the structure of the software architecture. UML is intended to be used to describe the technical design and architecture of a system and is at best retrofitted to model requirements, which are focused on business benefit, user actions, and business rules.
  • 25. Requirements Models Are Not the End Game Requirements models not eliminate the need to write requirement statements. The models provide context and create an overall picture of the requirements, but not represent the final detailed requirements that will be used by the system developers and testers. => Derive requirements from the models is necessary! The value of models is in helping organize the requirements in a way that makes it easy to see when requirements are missing, extraneous, or incorrect, but only the combination of textual and visual requirements can paint a full picture of the solution to be built.
  • 26. Using RML on Projects RML models as a toolbox of models and templates for use on software projects. Multiple models should generally be used together, and there are common approaches that define when to use specific models in the overall development life cycle.
  • 28. Overview System Model Objectives Model People Model Data Model Introduction 01 02 03 04 05
  • 29. 01 Introduction Data -> Program -> Process Data -> Exit
  • 30. Initially 01 In the early stages of software development, models mainly focus on describing the system structure and design process - from the constructor/designer perspective.
  • 31. Problem 01 • Not understanding real needs and business context • Ignoring some important requirements related to users/business processes • Maintenance and upgrade costs are higher due to the lack of clear constraints from the beginning
  • 32. OPSD 01 • OPSD (objectives models, people models, systems models, and data models)
  • 33.
  • 34. 01 What do you see from that?
  • 35. 01 Benefit from looking from multiple directions
  • 37. Sumary Of benefit 01 Ensure the completeness of obtaining requirements Distill the best models for each category Easy tracking Benefit 1 Benefit 3 Benefit 2
  • 39. Definition 02 Objectives models describe the business value of the system 01 02 03 Specific goals regarding functionality, performance, quality... need to be achieved. Mission/necessity for the system's existence.
  • 40. Value of Objectives Model 02 Ensure the final system developed meets the original requirements. Helps clearly define the scope, limits and priorities of the project. It is the basis for building the remaining models and ensuring the connection between them.
  • 43. People models 01 • Describe the stakeholders of the system, business processes, and their goals 02 • Org Chart, Process Flow, Use Case, Roles and Permissions Matrix 03 • The Org Chart is the bounding model for the RML people models category
  • 46. Systems models • Identify all of the major applications that participate in a multisystem environment • Describe specific aspects of the system
  • 47. Systems models • Ecosystem Map • System Flow • User Interface (UI) Flow • Display Action Response Model • Decision Tree • Decision Table • System Interface Table​
  • 50. Data models • Business Data Diagram (BDD) • Data Flow Diagram (DFD) • Data Dictionary • State Diagram • State Table • State Diagram • Report Table