SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Requirement Patterns
Req. Patterns: PABRE-Man & PABRE-Cft

Outline
•
•
•
•

Requirement Reuse
Requirement Pattern Example
PABRE Method
Tools:
 PABRE-Man: Requirement Pattern Management
 PABRE-Proj: Project Management

2
Req. Patterns: PABRE-Man & PABRE-Cft

REQUIREMENT REUSE

3
Req. Patterns: PABRE-Man & PABRE-Cft

Requirement Reuse
Your
Context

Common problem that
occurs within the domain,
and a suggested solution

requirements
in natural
language

Reusable
Requirements
Requirement
Patterns (SRPs)

Recognize which existing
requirements apply to the
patterns apply to the
particular context

Requirements
Book

PABRE
Method

↓ global errors
↑quality of the individual requirements

4
Req. Patterns: PABRE-Man & PABRE-Cft

SRP Example: Failure Alerts
Pattern’s Goal: Having system that provides alerts when system failures occur.
How do their requirements look like?
The solution should alert of disks close to their capacity .
alert
In case of a network or server disk crash the solution should alert immediately.
network or server disk crash,
alert
The system should alert the administrator of the resources (physical or logical)
alert
close to their capacity
close to their capacity.
Requirement
template

The system shall trigger alerts in case of
failuresSet failures.
 failuresSet : set of possibleFailures
o possibleFailures: server crash | disk crash …

5
Req. Patterns: PABRE-Man & PABRE-Cft

SRP Example: Failure Alerts
Requirement Pattern Failure Alerts
Goal: Satisfy the customer need of having a system that provides alerts when system failures occur.
Template
The system shall trigger an alert in case of failure.
Extended
Fixed Part
multiplicity(Alerts Types) = 0..1 and
Parts
Constraint multiplicity(Failure Types) = 0..1
Requirement
Extended Part
Form
Homogeneous Alert Types
Failure Alerts

Template
The solution shall trigger %alertsSet% alerts in case of failure
Metric
Parameter
alertsSet alertsSet: Set(AlertType) Fax | Sound ….
AlertType: SMS | Mail |

Template
The system shall trigger alerts in case of %failuresSet% failures
Metric
Extended Part Parameter
Failure Types
failuresSet failuresSet: Set(FailureType) crash …
FailureType: server crash | disk
Template
Fixed Part
Requirement
Form
Heterogeneous
Failure Alerts

The system shall trigger different types of alerts depending on the type of
failure.

Extended
Parts
Constraint

Multiplicity(Alerts for Failure Types) = 0..*

The system shall trigger %alertsSet% alerts in case of %failuresSet%
failures.
Metric
Parameter
alertsSet: Set(AlertType)
alertsSet AlertType: SMS | Mail | Fax | Sound ….
failuresSet failuresSet: Set(FailureType) crash …
FailureType: server crash | disk

Template
Extended Part
Alerts for
Failure Types

6
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE METHOD

7
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE Method: Overview (I)
• PABRE: PAttern Based Requirements Elicitation

• Method to use and update Req. Patterns
• Goals:
 Requirements Book Generation
 Requirements elicitation phase easier:
• ↓ time
• ↓ errors

↓ cost

8
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE Method: Overview (II)
Knowledge of the
Reqt. pattern
catalogue

Needs
IT Consultant

Customer
Supplier

Supplier

Supplier
6

Requirements Elicitation

Patterns
Exploration

Forms
Exploration

Parts
Exploration

Requirem.
Extraction

Requirem.
Creation

Reqt.
Patterns
Catalogue

Knowledge of
previous projects

Catalogue
Evolution



Call for
tenders

OTS-based
Solution

Requirements
Book

Feedback
Repository

Requirements
Expert

9
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE Method: Use
Knowledge of the
Reqt. pattern
catalogue

Needs
IT Consultant

Customer
Supplier

Supplier

Supplier
6

Requirements Elicitation

Patterns
Exploration

Forms
Exploration

Parts
Exploration

Requirem.
Extraction

Requirem.
Creation

Reqt.
Patterns
Catalogue

Knowledge of
previous projects

Catalogue
Evolution



Call for
tenders

OTS-based
Solution

Requirements
Book

Feedback
Repository

Requirements
Expert

10
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE Method: With Tools

11
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Man

12
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Man: Main functionalities
• SRP repository management
 Classification Schemas
 SRPs
 Metrics

• SRP repository exploration
 Browsing SRP catalogue according to different classification
schemas

• SRP use
 Statistics about the use of patterns with the aim to update
the SRP catalogue

• SRP catalogue exportation
13
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Man: Overview
Selecting
Classification
Schema

Browsing
SRP Catalogue

Browsing
Metrics

Creating a new
SRP or Classifier
(when U.Compliance selected)

Information of the
Selected Element
(SRP)

Information of the
Selected Element
(Domain Metric)

14
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Man: Editing a SRP (I)
Tabs of the Selected Item in the
Pattern Navigation Tree (SRP)

Pattern Navigation Tree:
Browsing Forms, Parts &
Parameters of the SRP

15
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Man: Editing a SRP (II)
Tab of the Selected Item in the
Pattern Navigation Tree (Part)

Requirement Text
(with Parameters)

Table of Parameters

16
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Proj

17
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Cft: Main Functionalities
• Projects Repository Management
 Projects
 Project Requirements:
• Created as an instance of a SRP
• Created from scratch

• Project and SRP Repository Browsing
 Browsing of SRP Repository:
• By priorization
• By classification schema

• Requirement Books Generation

18
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Proj: Overview
Creating a new Project
(when Alphabetical List selected)

Options over a
Project

Information of the
Selected Element
(Project)

19
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Proj: Editing a project (I)
Tabs of the Selected Item in the
Project Navigation Tree (Project)

Current Tab: Project’s
General Information

Browsing
SRP Catalogue

Project Navigation Tree:
Browsing
Project Requirements

Information of the
Selected Element
(Part)

20
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Proj: Editing a project (II)
Current Tab: Project
Requirement Overview

Creating
Requirements (I)

Creating
Requirements (II)

21
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Proj: Editing a SRP requirement
Tabs of the Selected Item in the
Project Navigation Tree
(Requirement that applies an SRP)

Info of the applied SRP

Requirement’s Text
(with parameters)

Giving value to
a parameter
(Set of Domain)

22
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Proj: Editing a new requirement
Tabs of the Selected Item in the
Project Navigation Tree
(New Requirement)

Requirement’s
Question & Text
completely free

23
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Proj: Prioritizing SRPs
Prioritized
List of SRPs

Browsing
SRP Catalogue

Adding/Removing
the Selected SRP
to/from the
Prioritized List

Information of
the Selected
SRP
Information of the
Selected Element
(SRP)

24
Req. Patterns: PABRE-Man & PABRE-Cft

PABRE-Proj: Browsing SRP catalogue
2 Different
Types of
Browsing

Creating a new associated
requirement to this form

Creating a new requirement applying this part

Creating a new associated
requirement to this SRP

Window to
Apply a Part

Creating a new
requirement in the
classifier of this SRP

Going to the next
SRP in the
prioritized list

25
Comments and Questions

Weitere ähnliche Inhalte

Ähnlich wie PABRE System - Software Requirement Patterns

Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...Spark Summit
 
A Survey Of Aspect Mining Approaches
A Survey Of Aspect Mining ApproachesA Survey Of Aspect Mining Approaches
A Survey Of Aspect Mining Approacheskim.mens
 
(ATS6-PLAT03) What's behind Discngine collections
(ATS6-PLAT03) What's behind Discngine collections(ATS6-PLAT03) What's behind Discngine collections
(ATS6-PLAT03) What's behind Discngine collectionsBIOVIA
 
Creating PostgreSQL-as-a-Service at Scale
Creating PostgreSQL-as-a-Service at ScaleCreating PostgreSQL-as-a-Service at Scale
Creating PostgreSQL-as-a-Service at ScaleSean Chittenden
 
.NET Core Summer event 2019 in Brno, CZ - .NET Core Networking stack and perf...
.NET Core Summer event 2019 in Brno, CZ - .NET Core Networking stack and perf....NET Core Summer event 2019 in Brno, CZ - .NET Core Networking stack and perf...
.NET Core Summer event 2019 in Brno, CZ - .NET Core Networking stack and perf...Karel Zikmund
 
Scaling Machine Learning to Billions of Parameters - Spark Summit 2016
Scaling Machine Learning to Billions of Parameters - Spark Summit 2016Scaling Machine Learning to Billions of Parameters - Spark Summit 2016
Scaling Machine Learning to Billions of Parameters - Spark Summit 2016Badri Narayan Bhaskar
 
Scaling Machine Learning To Billions Of Parameters
Scaling Machine Learning To Billions Of ParametersScaling Machine Learning To Billions Of Parameters
Scaling Machine Learning To Billions Of ParametersJen Aman
 
Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-As...
Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-As...Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-As...
Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-As...Mshari Alabdulkarim
 
Clipper at UC Berkeley RISECamp 2017
Clipper at UC Berkeley RISECamp 2017Clipper at UC Berkeley RISECamp 2017
Clipper at UC Berkeley RISECamp 2017Dan Crankshaw
 
Lessons Learned from Managing Thousands of Production Apache Spark Clusters w...
Lessons Learned from Managing Thousands of Production Apache Spark Clusters w...Lessons Learned from Managing Thousands of Production Apache Spark Clusters w...
Lessons Learned from Managing Thousands of Production Apache Spark Clusters w...Databricks
 
Low Latency Polyglot Model Scoring using Apache Apex
Low Latency Polyglot Model Scoring using Apache ApexLow Latency Polyglot Model Scoring using Apache Apex
Low Latency Polyglot Model Scoring using Apache ApexApache Apex
 
Strategies for Processing and Explaining Distributed Queries on Linked Data
Strategies for Processing and Explaining Distributed Queries on Linked DataStrategies for Processing and Explaining Distributed Queries on Linked Data
Strategies for Processing and Explaining Distributed Queries on Linked DataRakebul Hasan
 
Early Experiences with the OpenMP Accelerator Model
Early Experiences with the OpenMP Accelerator ModelEarly Experiences with the OpenMP Accelerator Model
Early Experiences with the OpenMP Accelerator ModelChunhua Liao
 
Powering Custom Apps at Facebook using Spark Script Transformation
Powering Custom Apps at Facebook using Spark Script TransformationPowering Custom Apps at Facebook using Spark Script Transformation
Powering Custom Apps at Facebook using Spark Script TransformationDatabricks
 
Linux Profiling at Netflix
Linux Profiling at NetflixLinux Profiling at Netflix
Linux Profiling at NetflixBrendan Gregg
 
Emerging technologies /frameworks in Big Data
Emerging technologies /frameworks in Big DataEmerging technologies /frameworks in Big Data
Emerging technologies /frameworks in Big DataRahul Jain
 
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...Lionel Briand
 
Crossing the Boundaries: Development Strategies for (P)SoCs
Crossing the Boundaries: Development Strategies for (P)SoCsCrossing the Boundaries: Development Strategies for (P)SoCs
Crossing the Boundaries: Development Strategies for (P)SoCsAndreas Koschak
 
Unravel BRE Pipeline Framework powerful features for building BizTalk messagi...
Unravel BRE Pipeline Framework powerful features for building BizTalk messagi...Unravel BRE Pipeline Framework powerful features for building BizTalk messagi...
Unravel BRE Pipeline Framework powerful features for building BizTalk messagi...BizTalk360
 

Ähnlich wie PABRE System - Software Requirement Patterns (20)

Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
Clipper: A Low-Latency Online Prediction Serving System: Spark Summit East ta...
 
A Survey Of Aspect Mining Approaches
A Survey Of Aspect Mining ApproachesA Survey Of Aspect Mining Approaches
A Survey Of Aspect Mining Approaches
 
(ATS6-PLAT03) What's behind Discngine collections
(ATS6-PLAT03) What's behind Discngine collections(ATS6-PLAT03) What's behind Discngine collections
(ATS6-PLAT03) What's behind Discngine collections
 
Creating PostgreSQL-as-a-Service at Scale
Creating PostgreSQL-as-a-Service at ScaleCreating PostgreSQL-as-a-Service at Scale
Creating PostgreSQL-as-a-Service at Scale
 
opnet
opnetopnet
opnet
 
.NET Core Summer event 2019 in Brno, CZ - .NET Core Networking stack and perf...
.NET Core Summer event 2019 in Brno, CZ - .NET Core Networking stack and perf....NET Core Summer event 2019 in Brno, CZ - .NET Core Networking stack and perf...
.NET Core Summer event 2019 in Brno, CZ - .NET Core Networking stack and perf...
 
Scaling Machine Learning to Billions of Parameters - Spark Summit 2016
Scaling Machine Learning to Billions of Parameters - Spark Summit 2016Scaling Machine Learning to Billions of Parameters - Spark Summit 2016
Scaling Machine Learning to Billions of Parameters - Spark Summit 2016
 
Scaling Machine Learning To Billions Of Parameters
Scaling Machine Learning To Billions Of ParametersScaling Machine Learning To Billions Of Parameters
Scaling Machine Learning To Billions Of Parameters
 
Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-As...
Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-As...Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-As...
Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-As...
 
Clipper at UC Berkeley RISECamp 2017
Clipper at UC Berkeley RISECamp 2017Clipper at UC Berkeley RISECamp 2017
Clipper at UC Berkeley RISECamp 2017
 
Lessons Learned from Managing Thousands of Production Apache Spark Clusters w...
Lessons Learned from Managing Thousands of Production Apache Spark Clusters w...Lessons Learned from Managing Thousands of Production Apache Spark Clusters w...
Lessons Learned from Managing Thousands of Production Apache Spark Clusters w...
 
Low Latency Polyglot Model Scoring using Apache Apex
Low Latency Polyglot Model Scoring using Apache ApexLow Latency Polyglot Model Scoring using Apache Apex
Low Latency Polyglot Model Scoring using Apache Apex
 
Strategies for Processing and Explaining Distributed Queries on Linked Data
Strategies for Processing and Explaining Distributed Queries on Linked DataStrategies for Processing and Explaining Distributed Queries on Linked Data
Strategies for Processing and Explaining Distributed Queries on Linked Data
 
Early Experiences with the OpenMP Accelerator Model
Early Experiences with the OpenMP Accelerator ModelEarly Experiences with the OpenMP Accelerator Model
Early Experiences with the OpenMP Accelerator Model
 
Powering Custom Apps at Facebook using Spark Script Transformation
Powering Custom Apps at Facebook using Spark Script TransformationPowering Custom Apps at Facebook using Spark Script Transformation
Powering Custom Apps at Facebook using Spark Script Transformation
 
Linux Profiling at Netflix
Linux Profiling at NetflixLinux Profiling at Netflix
Linux Profiling at Netflix
 
Emerging technologies /frameworks in Big Data
Emerging technologies /frameworks in Big DataEmerging technologies /frameworks in Big Data
Emerging technologies /frameworks in Big Data
 
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
Extracting Domain Models from Natural-Language Requirements: Approach and Ind...
 
Crossing the Boundaries: Development Strategies for (P)SoCs
Crossing the Boundaries: Development Strategies for (P)SoCsCrossing the Boundaries: Development Strategies for (P)SoCs
Crossing the Boundaries: Development Strategies for (P)SoCs
 
Unravel BRE Pipeline Framework powerful features for building BizTalk messagi...
Unravel BRE Pipeline Framework powerful features for building BizTalk messagi...Unravel BRE Pipeline Framework powerful features for building BizTalk messagi...
Unravel BRE Pipeline Framework powerful features for building BizTalk messagi...
 

Mehr von GESSI UPC

iStarJSON: A Lightweight Data-Format for i* Models
iStarJSON: A Lightweight Data-Format for i* ModelsiStarJSON: A Lightweight Data-Format for i* Models
iStarJSON: A Lightweight Data-Format for i* ModelsGESSI UPC
 
Towards iStarML 2.0: Closing Gaps from Evolved Requirements
Towards iStarML 2.0: Closing Gaps from Evolved RequirementsTowards iStarML 2.0: Closing Gaps from Evolved Requirements
Towards iStarML 2.0: Closing Gaps from Evolved RequirementsGESSI UPC
 
Monitoring the service-based system lifecycle with SALMon
Monitoring the service-based system lifecycle with SALMonMonitoring the service-based system lifecycle with SALMon
Monitoring the service-based system lifecycle with SALMonGESSI UPC
 
Aligning Business Goals and Risks in OSS Adoption
Aligning Business Goals and Risks in OSS AdoptionAligning Business Goals and Risks in OSS Adoption
Aligning Business Goals and Risks in OSS AdoptionGESSI UPC
 
Jcis 2015-Towards Assessing Open Source Communities' Health using SOC Concepts
Jcis 2015-Towards Assessing Open Source Communities' Health using SOC ConceptsJcis 2015-Towards Assessing Open Source Communities' Health using SOC Concepts
Jcis 2015-Towards Assessing Open Source Communities' Health using SOC ConceptsGESSI UPC
 
RISCOSS: Gestión del riesgo en proyectos open source (Open Expo Day2015)
RISCOSS: Gestión del riesgo en proyectos open source (Open Expo Day2015)RISCOSS: Gestión del riesgo en proyectos open source (Open Expo Day2015)
RISCOSS: Gestión del riesgo en proyectos open source (Open Expo Day2015)GESSI UPC
 
Open expo2015 riscoss
Open expo2015 riscossOpen expo2015 riscoss
Open expo2015 riscossGESSI UPC
 
Mobility4 all
Mobility4 allMobility4 all
Mobility4 allGESSI UPC
 
QuESo: a Quality Model for Open Source Software Ecosystems
QuESo: a Quality Model for Open Source Software EcosystemsQuESo: a Quality Model for Open Source Software Ecosystems
QuESo: a Quality Model for Open Source Software EcosystemsGESSI UPC
 
Expert mining compsac-2014
Expert mining compsac-2014Expert mining compsac-2014
Expert mining compsac-2014GESSI UPC
 
MoDRE 2014 @ RE keynote -- NFR-Aware MDD Processes
MoDRE 2014 @ RE keynote -- NFR-Aware MDD ProcessesMoDRE 2014 @ RE keynote -- NFR-Aware MDD Processes
MoDRE 2014 @ RE keynote -- NFR-Aware MDD ProcessesGESSI UPC
 
Quantifying the Impact of OSS Adoption Risks with the help of i* Models
Quantifying the Impact of OSS Adoption Risks with the help of i* ModelsQuantifying the Impact of OSS Adoption Risks with the help of i* Models
Quantifying the Impact of OSS Adoption Risks with the help of i* ModelsGESSI UPC
 
Applying Business Strategy Models in Organizations
Applying Business Strategy Models in OrganizationsApplying Business Strategy Models in Organizations
Applying Business Strategy Models in OrganizationsGESSI UPC
 
Slides refsq'14 ds v1
Slides refsq'14 ds v1Slides refsq'14 ds v1
Slides refsq'14 ds v1GESSI UPC
 
A Context Ontology for Service Provisioning and Consumption
A Context Ontology for Service Provisioning and ConsumptionA Context Ontology for Service Provisioning and Consumption
A Context Ontology for Service Provisioning and ConsumptionGESSI UPC
 
Practical Experiences in Designing and Conducting Empirical Studies in Indust...
Practical Experiences in Designing and Conducting Empirical Studies in Indust...Practical Experiences in Designing and Conducting Empirical Studies in Indust...
Practical Experiences in Designing and Conducting Empirical Studies in Indust...GESSI UPC
 

Mehr von GESSI UPC (20)

iStarJSON: A Lightweight Data-Format for i* Models
iStarJSON: A Lightweight Data-Format for i* ModelsiStarJSON: A Lightweight Data-Format for i* Models
iStarJSON: A Lightweight Data-Format for i* Models
 
Towards iStarML 2.0: Closing Gaps from Evolved Requirements
Towards iStarML 2.0: Closing Gaps from Evolved RequirementsTowards iStarML 2.0: Closing Gaps from Evolved Requirements
Towards iStarML 2.0: Closing Gaps from Evolved Requirements
 
Monitoring the service-based system lifecycle with SALMon
Monitoring the service-based system lifecycle with SALMonMonitoring the service-based system lifecycle with SALMon
Monitoring the service-based system lifecycle with SALMon
 
Ossap final
Ossap finalOssap final
Ossap final
 
Aligning Business Goals and Risks in OSS Adoption
Aligning Business Goals and Risks in OSS AdoptionAligning Business Goals and Risks in OSS Adoption
Aligning Business Goals and Risks in OSS Adoption
 
Jcis 2015-Towards Assessing Open Source Communities' Health using SOC Concepts
Jcis 2015-Towards Assessing Open Source Communities' Health using SOC ConceptsJcis 2015-Towards Assessing Open Source Communities' Health using SOC Concepts
Jcis 2015-Towards Assessing Open Source Communities' Health using SOC Concepts
 
RISCOSS: Gestión del riesgo en proyectos open source (Open Expo Day2015)
RISCOSS: Gestión del riesgo en proyectos open source (Open Expo Day2015)RISCOSS: Gestión del riesgo en proyectos open source (Open Expo Day2015)
RISCOSS: Gestión del riesgo en proyectos open source (Open Expo Day2015)
 
Open expo2015 riscoss
Open expo2015 riscossOpen expo2015 riscoss
Open expo2015 riscoss
 
Oss2015
Oss2015Oss2015
Oss2015
 
Mobility4 all
Mobility4 allMobility4 all
Mobility4 all
 
Er14
Er14Er14
Er14
 
QuESo: a Quality Model for Open Source Software Ecosystems
QuESo: a Quality Model for Open Source Software EcosystemsQuESo: a Quality Model for Open Source Software Ecosystems
QuESo: a Quality Model for Open Source Software Ecosystems
 
Expert mining compsac-2014
Expert mining compsac-2014Expert mining compsac-2014
Expert mining compsac-2014
 
MoDRE 2014 @ RE keynote -- NFR-Aware MDD Processes
MoDRE 2014 @ RE keynote -- NFR-Aware MDD ProcessesMoDRE 2014 @ RE keynote -- NFR-Aware MDD Processes
MoDRE 2014 @ RE keynote -- NFR-Aware MDD Processes
 
Quantifying the Impact of OSS Adoption Risks with the help of i* Models
Quantifying the Impact of OSS Adoption Risks with the help of i* ModelsQuantifying the Impact of OSS Adoption Risks with the help of i* Models
Quantifying the Impact of OSS Adoption Risks with the help of i* Models
 
Applying Business Strategy Models in Organizations
Applying Business Strategy Models in OrganizationsApplying Business Strategy Models in Organizations
Applying Business Strategy Models in Organizations
 
Slides refsq'14 ds v1
Slides refsq'14 ds v1Slides refsq'14 ds v1
Slides refsq'14 ds v1
 
A Context Ontology for Service Provisioning and Consumption
A Context Ontology for Service Provisioning and ConsumptionA Context Ontology for Service Provisioning and Consumption
A Context Ontology for Service Provisioning and Consumption
 
Practical Experiences in Designing and Conducting Empirical Studies in Indust...
Practical Experiences in Designing and Conducting Empirical Studies in Indust...Practical Experiences in Designing and Conducting Empirical Studies in Indust...
Practical Experiences in Designing and Conducting Empirical Studies in Indust...
 
Cesi2014
Cesi2014Cesi2014
Cesi2014
 

Kürzlich hochgeladen

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Kürzlich hochgeladen (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

PABRE System - Software Requirement Patterns

  • 2. Req. Patterns: PABRE-Man & PABRE-Cft Outline • • • • Requirement Reuse Requirement Pattern Example PABRE Method Tools:  PABRE-Man: Requirement Pattern Management  PABRE-Proj: Project Management 2
  • 3. Req. Patterns: PABRE-Man & PABRE-Cft REQUIREMENT REUSE 3
  • 4. Req. Patterns: PABRE-Man & PABRE-Cft Requirement Reuse Your Context Common problem that occurs within the domain, and a suggested solution requirements in natural language Reusable Requirements Requirement Patterns (SRPs) Recognize which existing requirements apply to the patterns apply to the particular context Requirements Book PABRE Method ↓ global errors ↑quality of the individual requirements 4
  • 5. Req. Patterns: PABRE-Man & PABRE-Cft SRP Example: Failure Alerts Pattern’s Goal: Having system that provides alerts when system failures occur. How do their requirements look like? The solution should alert of disks close to their capacity . alert In case of a network or server disk crash the solution should alert immediately. network or server disk crash, alert The system should alert the administrator of the resources (physical or logical) alert close to their capacity close to their capacity. Requirement template The system shall trigger alerts in case of failuresSet failures.  failuresSet : set of possibleFailures o possibleFailures: server crash | disk crash … 5
  • 6. Req. Patterns: PABRE-Man & PABRE-Cft SRP Example: Failure Alerts Requirement Pattern Failure Alerts Goal: Satisfy the customer need of having a system that provides alerts when system failures occur. Template The system shall trigger an alert in case of failure. Extended Fixed Part multiplicity(Alerts Types) = 0..1 and Parts Constraint multiplicity(Failure Types) = 0..1 Requirement Extended Part Form Homogeneous Alert Types Failure Alerts Template The solution shall trigger %alertsSet% alerts in case of failure Metric Parameter alertsSet alertsSet: Set(AlertType) Fax | Sound …. AlertType: SMS | Mail | Template The system shall trigger alerts in case of %failuresSet% failures Metric Extended Part Parameter Failure Types failuresSet failuresSet: Set(FailureType) crash … FailureType: server crash | disk Template Fixed Part Requirement Form Heterogeneous Failure Alerts The system shall trigger different types of alerts depending on the type of failure. Extended Parts Constraint Multiplicity(Alerts for Failure Types) = 0..* The system shall trigger %alertsSet% alerts in case of %failuresSet% failures. Metric Parameter alertsSet: Set(AlertType) alertsSet AlertType: SMS | Mail | Fax | Sound …. failuresSet failuresSet: Set(FailureType) crash … FailureType: server crash | disk Template Extended Part Alerts for Failure Types 6
  • 7. Req. Patterns: PABRE-Man & PABRE-Cft PABRE METHOD 7
  • 8. Req. Patterns: PABRE-Man & PABRE-Cft PABRE Method: Overview (I) • PABRE: PAttern Based Requirements Elicitation • Method to use and update Req. Patterns • Goals:  Requirements Book Generation  Requirements elicitation phase easier: • ↓ time • ↓ errors ↓ cost 8
  • 9. Req. Patterns: PABRE-Man & PABRE-Cft PABRE Method: Overview (II) Knowledge of the Reqt. pattern catalogue Needs IT Consultant Customer Supplier Supplier Supplier 6 Requirements Elicitation Patterns Exploration Forms Exploration Parts Exploration Requirem. Extraction Requirem. Creation Reqt. Patterns Catalogue Knowledge of previous projects Catalogue Evolution  Call for tenders OTS-based Solution Requirements Book Feedback Repository Requirements Expert 9
  • 10. Req. Patterns: PABRE-Man & PABRE-Cft PABRE Method: Use Knowledge of the Reqt. pattern catalogue Needs IT Consultant Customer Supplier Supplier Supplier 6 Requirements Elicitation Patterns Exploration Forms Exploration Parts Exploration Requirem. Extraction Requirem. Creation Reqt. Patterns Catalogue Knowledge of previous projects Catalogue Evolution  Call for tenders OTS-based Solution Requirements Book Feedback Repository Requirements Expert 10
  • 11. Req. Patterns: PABRE-Man & PABRE-Cft PABRE Method: With Tools 11
  • 12. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Man 12
  • 13. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Man: Main functionalities • SRP repository management  Classification Schemas  SRPs  Metrics • SRP repository exploration  Browsing SRP catalogue according to different classification schemas • SRP use  Statistics about the use of patterns with the aim to update the SRP catalogue • SRP catalogue exportation 13
  • 14. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Man: Overview Selecting Classification Schema Browsing SRP Catalogue Browsing Metrics Creating a new SRP or Classifier (when U.Compliance selected) Information of the Selected Element (SRP) Information of the Selected Element (Domain Metric) 14
  • 15. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Man: Editing a SRP (I) Tabs of the Selected Item in the Pattern Navigation Tree (SRP) Pattern Navigation Tree: Browsing Forms, Parts & Parameters of the SRP 15
  • 16. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Man: Editing a SRP (II) Tab of the Selected Item in the Pattern Navigation Tree (Part) Requirement Text (with Parameters) Table of Parameters 16
  • 17. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Proj 17
  • 18. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Cft: Main Functionalities • Projects Repository Management  Projects  Project Requirements: • Created as an instance of a SRP • Created from scratch • Project and SRP Repository Browsing  Browsing of SRP Repository: • By priorization • By classification schema • Requirement Books Generation 18
  • 19. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Proj: Overview Creating a new Project (when Alphabetical List selected) Options over a Project Information of the Selected Element (Project) 19
  • 20. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Proj: Editing a project (I) Tabs of the Selected Item in the Project Navigation Tree (Project) Current Tab: Project’s General Information Browsing SRP Catalogue Project Navigation Tree: Browsing Project Requirements Information of the Selected Element (Part) 20
  • 21. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Proj: Editing a project (II) Current Tab: Project Requirement Overview Creating Requirements (I) Creating Requirements (II) 21
  • 22. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Proj: Editing a SRP requirement Tabs of the Selected Item in the Project Navigation Tree (Requirement that applies an SRP) Info of the applied SRP Requirement’s Text (with parameters) Giving value to a parameter (Set of Domain) 22
  • 23. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Proj: Editing a new requirement Tabs of the Selected Item in the Project Navigation Tree (New Requirement) Requirement’s Question & Text completely free 23
  • 24. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Proj: Prioritizing SRPs Prioritized List of SRPs Browsing SRP Catalogue Adding/Removing the Selected SRP to/from the Prioritized List Information of the Selected SRP Information of the Selected Element (SRP) 24
  • 25. Req. Patterns: PABRE-Man & PABRE-Cft PABRE-Proj: Browsing SRP catalogue 2 Different Types of Browsing Creating a new associated requirement to this form Creating a new requirement applying this part Creating a new associated requirement to this SRP Window to Apply a Part Creating a new requirement in the classifier of this SRP Going to the next SRP in the prioritized list 25