SlideShare una empresa de Scribd logo
1 de 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

Más contenido relacionado

Similar a 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
 

Similar a 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...
 

Más de 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
 

Más de 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
 

Último

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 

Último (20)

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 

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