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

Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 

Recently uploaded (20)

Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 

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