SlideShare a Scribd company logo
1 of 41
PABRE: Pattern-Based
Requirements Elicitation
Samuel Renault
CITI, CRPHT
Óscar Méndez, Xavier Franch, Carme Quer
GESSI, UPC
RCIS’09 – Fès, Morocco
Index


Motivation. Call-for-tender Processes



The CRPHT case



Analysis of Requirement Books



Structure of the Catalog



Classification Schemas



The PABRE Method



Conclusions and Future Work
OTS-based systems
Off-The-Shelf- (OTS-) Based Systems


Systems that are mostly composed of
different OTS components customized and
glued together



Several particular activities arise
◦ Market watching
◦ OTS integration
◦ …

◦ OTS selection
OTS Selection Processes
Classical OTS Selection Processes overlap RE
and Component Screening
products under
consideration
acquired
requirements

Iteration nicely captures the idea of reconciling
requirements and actual market offering
But it does not fit well in call-for-tender processes
Call-for-tender processes
OTS selection processes conducted by a public
document that contains the requeriments and
evaluation rules of the system-to-be
Usually:


Public administrations



Great impact on the organization



Transparency is a must



Involve coarse-grained OTS
components (ERP, CRM, SCM, …)
Call-for-tender processes
Call-for-tender processes are different:
products
under
considerat ion
acquired
requirements

products under
consideration
acquired
requirements
Index


Motivation. Call-for-tender Processes



The CRPHT case



Analysis of Requirement Books



Structure of the Catalog



Classification Schemas



The PABRE Method



Conclusions and Future Work
The CITI-CRPHT case
Need
s

Knowledge
of previous
projects
IT Consultant

Customer
Organization

Supplier

Supplier

Supplier

Call for tenders
Bid

Requirements

Requirements Elicitation

Bid


Requirements
Book

Bid
OTS-based
Solution

Evaluation

Acquisition
Agreement

Near 50 projects for SMEs supervised on business-oriented,
coarse-grained OTS components in the last years
A sample of the requirements
found

(DMS) An easy-to-use mechanism shall allow binding a
publication to an event. The pre-publishing actions (control,
validation, etc.) will be identified for each type of workflow.
The system must be available 22 hours per day and 7 days
per week. The system should not stop more than 1 hour per
working day. The solution’s availability rate should be 98%
minimum.
The solution should permit to trace all the user actions. The
data to trace are: user name, date, accessed or modified
data.
The solution should have a graphical interface for all the
functionalities presented. A Web interface for external
access is also necessary
The challenge
Knowledge Capitalization


requirement books have many similarities



how to transfer knowledge from one project to others



should lead to:

◦ more efficient requirements engineering processes
◦ requirement books with better quality
 completeness, uniformity, understandability
◦ more efficient OTS-component evaluation
The adopted solution
Requirement Patterns


An approach to specifying a particular type of reqt.
cf. Software Requirements Patterns, S. Withall, 2007



Benefits:
◦ guidance
◦ saving of time
◦ consistency
◦ (in call-for-tenders) easier to guide later evaluation
The adopted solution
Requirement Patterns


A language of requirement patterns
◦ catalog + relationships
◦ goal: producing requirements in natural language



Impacts the call-for-tenders process:
◦ pattern identification + application
The adopted solution
Requirement Patterns


New processes emerge:
◦ pattern catalog construction and evolution
◦ all the processes shall be as lightweight as possible



A practical process:
◦ may fill the industrial gap among theory and practice
The CITI-CRPHT case revisited
Need
s

Knowledge
of of reqt.
previous
patterns
projects

IT Consultant

Customer
Organization

Supplier

Supplier

Supplier

Call for tenders
Bid

Requirements

Requirements Elicitation


Requirements
Book

Knowledge
of previous
projects
Reqt.
Patterns
Language

Catalog
Evolution

Bid

Feedback
Repository

Bid
OTS-based
Solution

Evaluation

Acquisition
Agreement
Research approach
Metamodel

Analysis

Requirement Patterns
Catalog

Consolidation



Elicitation of patterns: expert assessment
◦ Systematic (opportunistic in the future)



Contents of the catalog: conservative
◦ Style used by consultants is adopted



Iterative
◦ Driven by case studies
Index


Motivation. Call-for-tender Processes



A Case Study: the CRPHT case



Analysis of Requirement Books



Structure of the Catalog



Classification Schemas



The PABRE Method



Conclusions and Future Work
Consolidation of Requirement
Books



Hand-made
◦ Not much information
◦ Repeated over and over
◦ Easy to align
Similarities in different RBs
The solution should permit the trace of the modifications and access to
the encrypted data in the database. The essential data to trace are: user
name, date, accessed or modified data.
The solution should permit to trace all the user actions. The data to
trace are: user name, date, accessed or modified data.
All the operations made over a type of object (dossier, document files,
etc.) may be traced
The solution should permit to trace all the access to protected data. The
data to trace are: user name, date, accessed or modified data. An
historical record of this accesses must be maintained
Analysis of Requirement Books


Contents



Structure



Impact on process
Analysis of Requirement Books


Contents
◦ About 7 * (120+70) requirements
◦ The potential benefits of patterns became evident
◦ Functional and non-functional requirements were
(not surprisingly) radically different as “pattern-able”:
 Functional requirements were different for different types

of OTS components (ERP systems, CRM systems, …)
First iteration: focus on non-functional requirements
 Non-functional requirements were essentially the same


Structure



Impact on process
Analysis of Requirement Books


Contents



Structure
◦ different recurrent situations were identified
◦ concepts emerged: form, extension, …
◦ embraced in a meta-model



Impact on process
Analysis of Requirement Books


Contents



Structure



Impact on process
◦ a new process for consultants emerged:
PABRE: Pattern-Based Requirements Elicitation
◦ includes collecting feedback information (for catalog
evolution purposes)
Related work: main sources


General work on requirement patterns
◦ basically Withall’s textbook



Other proposals, many domain-oriented
◦ remarkably Konrad&Cheng



Patterns for building models
◦ but we are interested in natural language



Requirements metamodels
◦ especially REMM due to its aim
Index


Motivation. Call-for-tender Processes



A Case Study: the CRPHT case



Analysis of Requirement Books



Structure of the Catalog



Classification Schemas



The PABRE Method



Conclusions and Future Work
Pattern template
Goal
Description
Requirement
Pattern

Failure
Alerts

Alert the user about failures
…see paper

Comments

…see paper

Sources

RB xyz, rqt. 3.1.2; …

Keywords

Failure, Alert, Crash

Dependencies

IMPLIES: Failure Reports…

Other metadata…
Pattern template
Description

…see paper

Comments

Specific Dependence: may (usually will) be
applied more than once; different AL’s should
not overlap

Other metadata…
Requirement Form

The system shall trigger alerts of a certain type
Fixed part
depending on the type of failure
text
Extension Specific Dependence

Alert
Types
Dependen
ton
Failure
Types

Extension
text
Parameter
Parameter

An alert of one of the types AL shall be gi-ven
for a failure of some of the types FL

AL: Set(AlertType), AL ≠ Ø
AlertType = Nominal(e-mail, …)
FL: …
Metamodel (simplified)
Observations


Observations:
◦ 32 patterns identified
 44 forms (1-3, 9-2, 23-1)
 79 extensions

◦ Coverage: no less than 90% of NF requirements
 Example of uncovered requirement:
The DB structure should be able to be adapted internally (e.g.,
merging attributes or tables) without blocking upgrades

 Processing after application is not strictly necessary,
although left to consultant’s preference
Ongoing work


The concepts presented so far illustrate the current
form of the metamodel



We are currently considering some other concepts:
◦ Types of extensions
◦ Modifiers
◦ Qualifiers
◦ Patterns for patterns
◦ Derived requirements
Index


Motivation. Call-for-tender Processes



A Case Study: the CRPHT case



Analysis of Requirement Books



Structure of the Catalog



Classification Schemas



The PABRE Method



Conclusions and Future Work
Classification schemas


We keep separated the raw contents of the catalog and
they way it can be classified
ISO/IEC
9126-1
Classification
Schema

CRPHT
Classification
Schema

Other
Classification
Schema

- Req Pattern 1
- Req Pattern 2
.
- Req Pattern i
.
- Req Pattern x
Reqt. Pattern Catalogue
Link with the catalogue
Index


Motivation. Call-for-tender Processes



A Case Study: the CRPHT case



Analysis of Requirement Books



Structure of the Catalog



Classification Schemas



The PABRE Method



Conclusions and Future Work
The PABRE process
Need
s

Knowledge
of reqt.
patterns

IT Consultant

Customer
Organization

Supplier

Supplier

Supplier

Call for tenders
Bid

Requirements

Requirements Elicitation


Requirements
Book

Knowledge
of previous
projects
Reqt.
Patterns
Language

Catalogue
Evolution

Bid

Feedback
Repository

Bid
OTS-based
Solution

Evaluation

Acquisition
Agreement
The PABRE Method
based on
classification and/or
relationships

S.0
Select next
pattern

Patterns
exploration

D.3
Check if
pending needs
for scope

no

S.1
Read the pattern
(description &
goal)

S.2
Skip pattern

D.1
Set importance
of pattern

D.2
Check if
interested by
the pattern

Feedback:
Reason for not
using the pattern


yes

◦ May be patterns missing

no

low

high
Forms
exploration

Feedback:
Statistics on use
of pattern

◦ Not-automatic process

yes
S.10
Create new
requirement
without pattern

S.2
Read the
forms

O.2
New requirement
Feedback:
Statistics on use
of forms

S.4
Choose most
appropriate form for
the pattern

none

S.11
Create new
requirement form for
selected pattern
O.3
New requirement
part(s)

some

Parts
exploration

Feedback:
Statistics on use
of parts

S.5
Read the
parts

S.12
Create new
requirement part(s)
for selected form

Requirement
creation
S.6
Choose extended
part that apply

missing
parts

chosen parts

Feedback:
Statistics on use
of parameters

based on dependency
relationships

S.8
Select values for
parameters (if any)

D.4
Check
consistency

◦ Atomicity of information
◦ Complete classification
schemas
◦ Process guided by one
classification schema
◦ Catalogue existence made
transparent to the customer

S.7
Read detailed
information for
parameters

O.1
Pattern used
Form+Parts+Values

Assumptions:

S.9
Resolve conflicts
(if any)

Requirement
extraction
The PABRE Method
based on
classification and/or
relationships

S.0
Select next
pattern

Patterns
exploration

D.3
Check if
pending needs
for scope

no

S.1
Read the pattern
(description &
goal)

S.2
Skip pattern

D.1
Set importance
of pattern

D.2
Check if
interested by
the pattern

Feedback:
Reason for not
using the pattern

yes

no

low

high
Forms
exploration

Feedback:
Statistics on use
of pattern

Select next pattern

yes
S.10
Create new
requirement
without pattern

S.2
Read the
forms

O.2
New requirement
Feedback:
Statistics on use
of forms

S.4
Choose most
appropriate form for
the pattern

none

S.11
Create new
requirement form for
selected pattern
O.3
New requirement
part(s)

some

Parts
exploration

Feedback:
Statistics on use
of parts

S.5
Read the
parts

Requirement
creation
S.6
Choose extended
part that apply

missing
parts

S.7
Read detailed
information for
parameters

 others: qualifiers…

Feedback:
Statistics on use
of parameters

based on dependency
relationships

S.8
Select values for
parameters (if any)

D.4
Check
consistency

 dependencies among patterns
 keywords

chosen parts

O.1
Pattern used
Form+Parts+Values

 classification schema

S.12
Create new
requirement part(s)
for selected form

S.9
Resolve conflicts
(if any)

Requirement
extraction
High-level view
next

Patterns
exploration

pattern does not apply
AND
pending needs for classifier

pattern applies
no form
applies Requirement
information for

Forms +
exploration
creation
catalogue evolution
some form applies

Parts
exploration

missing
parts

chosen
parts

Requirement
extraction

(part of)
requirement
from scratch

requirement
from
catalogue
Index


Motivation. Call-for-tender Processes



A Case Study: the CRPHT case



Analysis of Requirement Books



Structure of the Catalog



Classification Schemas



The PABRE Method



Conclusions and Future Work
Conclusions


Ongoing, applied work on reqt. patterns application
◦
◦



Benefits: elicitation, RB quality, insights gained
Drawback: heaviness?

Current characteristics of applicability:
◦

Call-for-tender processes

◦

Coarse-grained, business-application OTS components

◦

Requirements expressed in natural language

◦

Knowledge exists

◦

Not much requirements

But some of them seem not inherent of the approach
Future work


Case studies



Improvements on catalogue structure



Link with the functional part



Further opportunities to explore:
◦

Etapatelecom (Ecuador)

◦

some isolated call for tenders in Barcelona



Patterns web site



Formalization and automatization
Thanks for your attention!



Please let me know any suggestion or
interest

More Related Content

What's hot

Goal-Oriented Requirements Engineering: A Guided Tour
Goal-Oriented Requirements Engineering: A Guided TourGoal-Oriented Requirements Engineering: A Guided Tour
Goal-Oriented Requirements Engineering: A Guided TourIshara Amarasekera
 
Object oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysisObject oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysisAbhilasha Lahigude
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement AnalysisWebx
 
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...Dakiry
 
01 si(systems analysis and design )
01 si(systems analysis and design )01 si(systems analysis and design )
01 si(systems analysis and design )Nurdin Al-Azies
 
software requirement
software requirement software requirement
software requirement nimmik4u
 
Requirements Engineering Process
Requirements Engineering ProcessRequirements Engineering Process
Requirements Engineering ProcessJomel Penalba
 
Support for Goal Oriented Requirements Engineering in Elastic Cloud Applications
Support for Goal Oriented Requirements Engineering in Elastic Cloud ApplicationsSupport for Goal Oriented Requirements Engineering in Elastic Cloud Applications
Support for Goal Oriented Requirements Engineering in Elastic Cloud Applicationszillesubhan
 
Requirement Analysis & Specification sharbani bhattacharya
Requirement Analysis & Specification sharbani bhattacharyaRequirement Analysis & Specification sharbani bhattacharya
Requirement Analysis & Specification sharbani bhattacharyaSharbani Bhattacharya
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysisasimnawaz54
 
02 si(systems analysis and design )
02 si(systems analysis and design )02 si(systems analysis and design )
02 si(systems analysis and design )Nurdin Al-Azies
 
03 si(systems analysis and design )
03 si(systems analysis and design )03 si(systems analysis and design )
03 si(systems analysis and design )Nurdin Al-Azies
 
14 si(systems analysis and design )
14 si(systems analysis and design )14 si(systems analysis and design )
14 si(systems analysis and design )Nurdin Al-Azies
 
Study for big data analysis design model
Study for big data analysis design modelStudy for big data analysis design model
Study for big data analysis design modelJoon ho Park
 
08 si(systems analysis and design )
08 si(systems analysis and design )08 si(systems analysis and design )
08 si(systems analysis and design )Nurdin Al-Azies
 
An overview of software requirements engineering
An overview of software requirements engineeringAn overview of software requirements engineering
An overview of software requirements engineeringIan Sommerville
 
06 si(systems analysis and design )
06 si(systems analysis and design )06 si(systems analysis and design )
06 si(systems analysis and design )Nurdin Al-Azies
 
CS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerCS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerGobinath Subramaniam
 

What's hot (19)

Goal-Oriented Requirements Engineering: A Guided Tour
Goal-Oriented Requirements Engineering: A Guided TourGoal-Oriented Requirements Engineering: A Guided Tour
Goal-Oriented Requirements Engineering: A Guided Tour
 
Object oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysisObject oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysis
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 
Development Guideline
Development GuidelineDevelopment Guideline
Development Guideline
 
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...
Vadim Tsapok:” Seven requirements elicitation techniques: real-life examples,...
 
01 si(systems analysis and design )
01 si(systems analysis and design )01 si(systems analysis and design )
01 si(systems analysis and design )
 
software requirement
software requirement software requirement
software requirement
 
Requirements Engineering Process
Requirements Engineering ProcessRequirements Engineering Process
Requirements Engineering Process
 
Support for Goal Oriented Requirements Engineering in Elastic Cloud Applications
Support for Goal Oriented Requirements Engineering in Elastic Cloud ApplicationsSupport for Goal Oriented Requirements Engineering in Elastic Cloud Applications
Support for Goal Oriented Requirements Engineering in Elastic Cloud Applications
 
Requirement Analysis & Specification sharbani bhattacharya
Requirement Analysis & Specification sharbani bhattacharyaRequirement Analysis & Specification sharbani bhattacharya
Requirement Analysis & Specification sharbani bhattacharya
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysis
 
02 si(systems analysis and design )
02 si(systems analysis and design )02 si(systems analysis and design )
02 si(systems analysis and design )
 
03 si(systems analysis and design )
03 si(systems analysis and design )03 si(systems analysis and design )
03 si(systems analysis and design )
 
14 si(systems analysis and design )
14 si(systems analysis and design )14 si(systems analysis and design )
14 si(systems analysis and design )
 
Study for big data analysis design model
Study for big data analysis design modelStudy for big data analysis design model
Study for big data analysis design model
 
08 si(systems analysis and design )
08 si(systems analysis and design )08 si(systems analysis and design )
08 si(systems analysis and design )
 
An overview of software requirements engineering
An overview of software requirements engineeringAn overview of software requirements engineering
An overview of software requirements engineering
 
06 si(systems analysis and design )
06 si(systems analysis and design )06 si(systems analysis and design )
06 si(systems analysis and design )
 
CS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerCS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and Answer
 

Viewers also liked

Monitoring services with SALMon.
Monitoring services with SALMon.Monitoring services with SALMon.
Monitoring services with SALMon.GESSI 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
 
iStar 2013: Using i* to Represent OSS Ecosystems for Risk Assessment
iStar 2013: Using i* to Represent OSS Ecosystems for Risk AssessmentiStar 2013: Using i* to Represent OSS Ecosystems for Risk Assessment
iStar 2013: Using i* to Represent OSS Ecosystems for Risk AssessmentGESSI 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
 
PABRE System - Software Requirement Patterns
PABRE System - Software Requirement PatternsPABRE System - Software Requirement Patterns
PABRE System - Software Requirement PatternsGESSI UPC
 
Specialization in i* Strategic Rationale Diagrams
Specialization in i* Strategic Rationale DiagramsSpecialization in i* Strategic Rationale Diagrams
Specialization in i* Strategic Rationale DiagramsGESSI 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
 
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
 
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
 
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
 
Assessing Open Source Communities' using Service Oritented Computing concepts
Assessing Open Source Communities' using Service Oritented Computing conceptsAssessing Open Source Communities' using Service Oritented Computing concepts
Assessing Open Source Communities' using Service Oritented Computing conceptsGESSI UPC
 
A Catalogue of Software Requirement Patterns for the Domain of CMSs
A Catalogue of Software Requirement Patterns for the Domain of CMSsA Catalogue of Software Requirement Patterns for the Domain of CMSs
A Catalogue of Software Requirement Patterns for the Domain of CMSsGESSI UPC
 
Lecture on "QoS in Web Services" - Master course
Lecture on "QoS in Web Services" - Master courseLecture on "QoS in Web Services" - Master course
Lecture on "QoS in Web Services" - Master courseGESSI UPC
 
Software Requirement Patterns (SRP)
Software Requirement Patterns (SRP)Software Requirement Patterns (SRP)
Software Requirement Patterns (SRP)GESSI UPC
 
Slides refsq'14 ds v1
Slides refsq'14 ds v1Slides refsq'14 ds v1
Slides refsq'14 ds v1GESSI UPC
 
How do Software Architects consider Non-Functional Requirements
How do Software Architects consider Non-Functional RequirementsHow do Software Architects consider Non-Functional Requirements
How do Software Architects consider Non-Functional RequirementsGESSI UPC
 

Viewers also liked (17)

Monitoring services with SALMon.
Monitoring services with SALMon.Monitoring services with SALMon.
Monitoring services with SALMon.
 
Applying Business Strategy Models in Organizations
Applying Business Strategy Models in OrganizationsApplying Business Strategy Models in Organizations
Applying Business Strategy Models in Organizations
 
iStar 2013: Using i* to Represent OSS Ecosystems for Risk Assessment
iStar 2013: Using i* to Represent OSS Ecosystems for Risk AssessmentiStar 2013: Using i* to Represent OSS Ecosystems for Risk Assessment
iStar 2013: Using i* to Represent OSS Ecosystems for Risk Assessment
 
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
 
PABRE System - Software Requirement Patterns
PABRE System - Software Requirement PatternsPABRE System - Software Requirement Patterns
PABRE System - Software Requirement Patterns
 
Specialization in i* Strategic Rationale Diagrams
Specialization in i* Strategic Rationale DiagramsSpecialization in i* Strategic Rationale Diagrams
Specialization in i* Strategic Rationale Diagrams
 
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
 
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
 
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
 
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...
 
Assessing Open Source Communities' using Service Oritented Computing concepts
Assessing Open Source Communities' using Service Oritented Computing conceptsAssessing Open Source Communities' using Service Oritented Computing concepts
Assessing Open Source Communities' using Service Oritented Computing concepts
 
A Catalogue of Software Requirement Patterns for the Domain of CMSs
A Catalogue of Software Requirement Patterns for the Domain of CMSsA Catalogue of Software Requirement Patterns for the Domain of CMSs
A Catalogue of Software Requirement Patterns for the Domain of CMSs
 
Lecture on "QoS in Web Services" - Master course
Lecture on "QoS in Web Services" - Master courseLecture on "QoS in Web Services" - Master course
Lecture on "QoS in Web Services" - Master course
 
Er14
Er14Er14
Er14
 
Software Requirement Patterns (SRP)
Software Requirement Patterns (SRP)Software Requirement Patterns (SRP)
Software Requirement Patterns (SRP)
 
Slides refsq'14 ds v1
Slides refsq'14 ds v1Slides refsq'14 ds v1
Slides refsq'14 ds v1
 
How do Software Architects consider Non-Functional Requirements
How do Software Architects consider Non-Functional RequirementsHow do Software Architects consider Non-Functional Requirements
How do Software Architects consider Non-Functional Requirements
 

Similar to PABRE: Pattern-Based Requirements Elicitation

Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESSIvano Malavolta
 
Ch 2-RE-process.pptx
Ch 2-RE-process.pptxCh 2-RE-process.pptx
Ch 2-RE-process.pptxbalewayalew
 
[2015/2016] Software development process
[2015/2016] Software development process[2015/2016] Software development process
[2015/2016] Software development processIvano Malavolta
 
Mis system analysis and system design
Mis   system analysis and system designMis   system analysis and system design
Mis system analysis and system designRahul Hedau
 
Alternative Methodologies for Systems Development
Alternative Methodologies for Systems Development Alternative Methodologies for Systems Development
Alternative Methodologies for Systems Development Sunderland City Council
 
Process architecture - Part II
Process architecture - Part IIProcess architecture - Part II
Process architecture - Part IIMarcello La Rosa
 
Requirements Engineering Processes
Requirements Engineering ProcessesRequirements Engineering Processes
Requirements Engineering ProcessesRa'Fat Al-Msie'deen
 
Structure system analysis and design method -SSADM
Structure system analysis and design method -SSADMStructure system analysis and design method -SSADM
Structure system analysis and design method -SSADMFLYMAN TECHNOLOGY LIMITED
 
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
 
L3 Requirements Eng Overview
L3 Requirements Eng OverviewL3 Requirements Eng Overview
L3 Requirements Eng OverviewIan Sommerville
 
takeholder Requirements What are the requirements of the applica.docx
takeholder Requirements What are the requirements of the applica.docxtakeholder Requirements What are the requirements of the applica.docx
takeholder Requirements What are the requirements of the applica.docxperryk1
 
Designing systems for managing dynamic collaborative research processes
Designing systems for managing dynamic collaborative research processesDesigning systems for managing dynamic collaborative research processes
Designing systems for managing dynamic collaborative research processesscottw
 
CIB 3103: Requirements Capture
CIB 3103: Requirements CaptureCIB 3103: Requirements Capture
CIB 3103: Requirements CaptureAhmad Ammari
 
System engineering analysis and design
System engineering analysis and designSystem engineering analysis and design
System engineering analysis and designDr. Vardhan choubey
 
software engineering
software engineeringsoftware engineering
software engineeringSnow Queenzz
 

Similar to PABRE: Pattern-Based Requirements Elicitation (20)

Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESS
 
Ch 2-RE-process.pptx
Ch 2-RE-process.pptxCh 2-RE-process.pptx
Ch 2-RE-process.pptx
 
Man.ppt
Man.pptMan.ppt
Man.ppt
 
[2015/2016] Software development process
[2015/2016] Software development process[2015/2016] Software development process
[2015/2016] Software development process
 
Mis system analysis and system design
Mis   system analysis and system designMis   system analysis and system design
Mis system analysis and system design
 
Alternative Methodologies for Systems Development
Alternative Methodologies for Systems Development Alternative Methodologies for Systems Development
Alternative Methodologies for Systems Development
 
Process architecture - Part II
Process architecture - Part IIProcess architecture - Part II
Process architecture - Part II
 
Requirements Engineering Processes
Requirements Engineering ProcessesRequirements Engineering Processes
Requirements Engineering Processes
 
RRC Requirements and Use Cases
RRC Requirements and Use CasesRRC Requirements and Use Cases
RRC Requirements and Use Cases
 
Structure system analysis and design method -SSADM
Structure system analysis and design method -SSADMStructure system analysis and design method -SSADM
Structure system analysis and design method -SSADM
 
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...
 
L3 Requirements Eng Overview
L3 Requirements Eng OverviewL3 Requirements Eng Overview
L3 Requirements Eng Overview
 
Gsbpm
GsbpmGsbpm
Gsbpm
 
Chapter04
Chapter04Chapter04
Chapter04
 
takeholder Requirements What are the requirements of the applica.docx
takeholder Requirements What are the requirements of the applica.docxtakeholder Requirements What are the requirements of the applica.docx
takeholder Requirements What are the requirements of the applica.docx
 
Designing systems for managing dynamic collaborative research processes
Designing systems for managing dynamic collaborative research processesDesigning systems for managing dynamic collaborative research processes
Designing systems for managing dynamic collaborative research processes
 
22-REQUIREMENT.ppt
22-REQUIREMENT.ppt22-REQUIREMENT.ppt
22-REQUIREMENT.ppt
 
CIB 3103: Requirements Capture
CIB 3103: Requirements CaptureCIB 3103: Requirements Capture
CIB 3103: Requirements Capture
 
System engineering analysis and design
System engineering analysis and designSystem engineering analysis and design
System engineering analysis and design
 
software engineering
software engineeringsoftware engineering
software engineering
 

More from GESSI 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
 
DB searches vs. snowballing
DB searches vs. snowballingDB searches vs. snowballing
DB searches vs. snowballingGESSI UPC
 
Arteon: Architectural and Technology Ontology
Arteon: Architectural and Technology OntologyArteon: Architectural and Technology Ontology
Arteon: Architectural and Technology OntologyGESSI UPC
 
Systematic Architecture Design
Systematic Architecture DesignSystematic Architecture Design
Systematic Architecture DesignGESSI UPC
 
Likert scales and statistics
Likert scales and statisticsLikert scales and statistics
Likert scales and statisticsGESSI UPC
 
Industry-academia collaboration
Industry-academia collaborationIndustry-academia collaboration
Industry-academia collaborationGESSI UPC
 

More from GESSI UPC (18)

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
 
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
 
Cesi2014
Cesi2014Cesi2014
Cesi2014
 
DB searches vs. snowballing
DB searches vs. snowballingDB searches vs. snowballing
DB searches vs. snowballing
 
AK+MDD+NFRs
AK+MDD+NFRsAK+MDD+NFRs
AK+MDD+NFRs
 
Arteon: Architectural and Technology Ontology
Arteon: Architectural and Technology OntologyArteon: Architectural and Technology Ontology
Arteon: Architectural and Technology Ontology
 
Systematic Architecture Design
Systematic Architecture DesignSystematic Architecture Design
Systematic Architecture Design
 
Likert scales and statistics
Likert scales and statisticsLikert scales and statistics
Likert scales and statistics
 
Industry-academia collaboration
Industry-academia collaborationIndustry-academia collaboration
Industry-academia collaboration
 

Recently uploaded

Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
"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
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
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
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
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
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 

Recently uploaded (20)

Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
"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...
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
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
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
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
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 

PABRE: Pattern-Based Requirements Elicitation

  • 1. PABRE: Pattern-Based Requirements Elicitation Samuel Renault CITI, CRPHT Óscar Méndez, Xavier Franch, Carme Quer GESSI, UPC RCIS’09 – Fès, Morocco
  • 2. Index  Motivation. Call-for-tender Processes  The CRPHT case  Analysis of Requirement Books  Structure of the Catalog  Classification Schemas  The PABRE Method  Conclusions and Future Work
  • 3. OTS-based systems Off-The-Shelf- (OTS-) Based Systems  Systems that are mostly composed of different OTS components customized and glued together  Several particular activities arise ◦ Market watching ◦ OTS integration ◦ … ◦ OTS selection
  • 4. OTS Selection Processes Classical OTS Selection Processes overlap RE and Component Screening products under consideration acquired requirements Iteration nicely captures the idea of reconciling requirements and actual market offering But it does not fit well in call-for-tender processes
  • 5. Call-for-tender processes OTS selection processes conducted by a public document that contains the requeriments and evaluation rules of the system-to-be Usually:  Public administrations  Great impact on the organization  Transparency is a must  Involve coarse-grained OTS components (ERP, CRM, SCM, …)
  • 6. Call-for-tender processes Call-for-tender processes are different: products under considerat ion acquired requirements products under consideration acquired requirements
  • 7. Index  Motivation. Call-for-tender Processes  The CRPHT case  Analysis of Requirement Books  Structure of the Catalog  Classification Schemas  The PABRE Method  Conclusions and Future Work
  • 8. The CITI-CRPHT case Need s Knowledge of previous projects IT Consultant Customer Organization Supplier Supplier Supplier Call for tenders Bid Requirements Requirements Elicitation Bid  Requirements Book Bid OTS-based Solution Evaluation Acquisition Agreement Near 50 projects for SMEs supervised on business-oriented, coarse-grained OTS components in the last years
  • 9. A sample of the requirements found (DMS) An easy-to-use mechanism shall allow binding a publication to an event. The pre-publishing actions (control, validation, etc.) will be identified for each type of workflow. The system must be available 22 hours per day and 7 days per week. The system should not stop more than 1 hour per working day. The solution’s availability rate should be 98% minimum. The solution should permit to trace all the user actions. The data to trace are: user name, date, accessed or modified data. The solution should have a graphical interface for all the functionalities presented. A Web interface for external access is also necessary
  • 10. The challenge Knowledge Capitalization  requirement books have many similarities  how to transfer knowledge from one project to others  should lead to: ◦ more efficient requirements engineering processes ◦ requirement books with better quality  completeness, uniformity, understandability ◦ more efficient OTS-component evaluation
  • 11. The adopted solution Requirement Patterns  An approach to specifying a particular type of reqt. cf. Software Requirements Patterns, S. Withall, 2007  Benefits: ◦ guidance ◦ saving of time ◦ consistency ◦ (in call-for-tenders) easier to guide later evaluation
  • 12. The adopted solution Requirement Patterns  A language of requirement patterns ◦ catalog + relationships ◦ goal: producing requirements in natural language  Impacts the call-for-tenders process: ◦ pattern identification + application
  • 13. The adopted solution Requirement Patterns  New processes emerge: ◦ pattern catalog construction and evolution ◦ all the processes shall be as lightweight as possible  A practical process: ◦ may fill the industrial gap among theory and practice
  • 14. The CITI-CRPHT case revisited Need s Knowledge of of reqt. previous patterns projects IT Consultant Customer Organization Supplier Supplier Supplier Call for tenders Bid Requirements Requirements Elicitation  Requirements Book Knowledge of previous projects Reqt. Patterns Language Catalog Evolution Bid Feedback Repository Bid OTS-based Solution Evaluation Acquisition Agreement
  • 15. Research approach Metamodel Analysis Requirement Patterns Catalog Consolidation  Elicitation of patterns: expert assessment ◦ Systematic (opportunistic in the future)  Contents of the catalog: conservative ◦ Style used by consultants is adopted  Iterative ◦ Driven by case studies
  • 16. Index  Motivation. Call-for-tender Processes  A Case Study: the CRPHT case  Analysis of Requirement Books  Structure of the Catalog  Classification Schemas  The PABRE Method  Conclusions and Future Work
  • 17. Consolidation of Requirement Books  Hand-made ◦ Not much information ◦ Repeated over and over ◦ Easy to align
  • 18. Similarities in different RBs The solution should permit the trace of the modifications and access to the encrypted data in the database. The essential data to trace are: user name, date, accessed or modified data. The solution should permit to trace all the user actions. The data to trace are: user name, date, accessed or modified data. All the operations made over a type of object (dossier, document files, etc.) may be traced The solution should permit to trace all the access to protected data. The data to trace are: user name, date, accessed or modified data. An historical record of this accesses must be maintained
  • 19. Analysis of Requirement Books  Contents  Structure  Impact on process
  • 20. Analysis of Requirement Books  Contents ◦ About 7 * (120+70) requirements ◦ The potential benefits of patterns became evident ◦ Functional and non-functional requirements were (not surprisingly) radically different as “pattern-able”:  Functional requirements were different for different types of OTS components (ERP systems, CRM systems, …) First iteration: focus on non-functional requirements  Non-functional requirements were essentially the same  Structure  Impact on process
  • 21. Analysis of Requirement Books  Contents  Structure ◦ different recurrent situations were identified ◦ concepts emerged: form, extension, … ◦ embraced in a meta-model  Impact on process
  • 22. Analysis of Requirement Books  Contents  Structure  Impact on process ◦ a new process for consultants emerged: PABRE: Pattern-Based Requirements Elicitation ◦ includes collecting feedback information (for catalog evolution purposes)
  • 23. Related work: main sources  General work on requirement patterns ◦ basically Withall’s textbook  Other proposals, many domain-oriented ◦ remarkably Konrad&Cheng  Patterns for building models ◦ but we are interested in natural language  Requirements metamodels ◦ especially REMM due to its aim
  • 24. Index  Motivation. Call-for-tender Processes  A Case Study: the CRPHT case  Analysis of Requirement Books  Structure of the Catalog  Classification Schemas  The PABRE Method  Conclusions and Future Work
  • 25. Pattern template Goal Description Requirement Pattern Failure Alerts Alert the user about failures …see paper Comments …see paper Sources RB xyz, rqt. 3.1.2; … Keywords Failure, Alert, Crash Dependencies IMPLIES: Failure Reports… Other metadata…
  • 26. Pattern template Description …see paper Comments Specific Dependence: may (usually will) be applied more than once; different AL’s should not overlap Other metadata… Requirement Form The system shall trigger alerts of a certain type Fixed part depending on the type of failure text Extension Specific Dependence Alert Types Dependen ton Failure Types Extension text Parameter Parameter An alert of one of the types AL shall be gi-ven for a failure of some of the types FL AL: Set(AlertType), AL ≠ Ø AlertType = Nominal(e-mail, …) FL: …
  • 28. Observations  Observations: ◦ 32 patterns identified  44 forms (1-3, 9-2, 23-1)  79 extensions ◦ Coverage: no less than 90% of NF requirements  Example of uncovered requirement: The DB structure should be able to be adapted internally (e.g., merging attributes or tables) without blocking upgrades  Processing after application is not strictly necessary, although left to consultant’s preference
  • 29. Ongoing work  The concepts presented so far illustrate the current form of the metamodel  We are currently considering some other concepts: ◦ Types of extensions ◦ Modifiers ◦ Qualifiers ◦ Patterns for patterns ◦ Derived requirements
  • 30. Index  Motivation. Call-for-tender Processes  A Case Study: the CRPHT case  Analysis of Requirement Books  Structure of the Catalog  Classification Schemas  The PABRE Method  Conclusions and Future Work
  • 31. Classification schemas  We keep separated the raw contents of the catalog and they way it can be classified ISO/IEC 9126-1 Classification Schema CRPHT Classification Schema Other Classification Schema - Req Pattern 1 - Req Pattern 2 . - Req Pattern i . - Req Pattern x Reqt. Pattern Catalogue
  • 32. Link with the catalogue
  • 33. Index  Motivation. Call-for-tender Processes  A Case Study: the CRPHT case  Analysis of Requirement Books  Structure of the Catalog  Classification Schemas  The PABRE Method  Conclusions and Future Work
  • 34. The PABRE process Need s Knowledge of reqt. patterns IT Consultant Customer Organization Supplier Supplier Supplier Call for tenders Bid Requirements Requirements Elicitation  Requirements Book Knowledge of previous projects Reqt. Patterns Language Catalogue Evolution Bid Feedback Repository Bid OTS-based Solution Evaluation Acquisition Agreement
  • 35. The PABRE Method based on classification and/or relationships S.0 Select next pattern Patterns exploration D.3 Check if pending needs for scope no S.1 Read the pattern (description & goal) S.2 Skip pattern D.1 Set importance of pattern D.2 Check if interested by the pattern Feedback: Reason for not using the pattern  yes ◦ May be patterns missing no low high Forms exploration Feedback: Statistics on use of pattern ◦ Not-automatic process yes S.10 Create new requirement without pattern S.2 Read the forms O.2 New requirement Feedback: Statistics on use of forms S.4 Choose most appropriate form for the pattern none S.11 Create new requirement form for selected pattern O.3 New requirement part(s) some Parts exploration Feedback: Statistics on use of parts S.5 Read the parts S.12 Create new requirement part(s) for selected form Requirement creation S.6 Choose extended part that apply missing parts chosen parts Feedback: Statistics on use of parameters based on dependency relationships S.8 Select values for parameters (if any) D.4 Check consistency ◦ Atomicity of information ◦ Complete classification schemas ◦ Process guided by one classification schema ◦ Catalogue existence made transparent to the customer S.7 Read detailed information for parameters O.1 Pattern used Form+Parts+Values Assumptions: S.9 Resolve conflicts (if any) Requirement extraction
  • 36. The PABRE Method based on classification and/or relationships S.0 Select next pattern Patterns exploration D.3 Check if pending needs for scope no S.1 Read the pattern (description & goal) S.2 Skip pattern D.1 Set importance of pattern D.2 Check if interested by the pattern Feedback: Reason for not using the pattern yes no low high Forms exploration Feedback: Statistics on use of pattern Select next pattern yes S.10 Create new requirement without pattern S.2 Read the forms O.2 New requirement Feedback: Statistics on use of forms S.4 Choose most appropriate form for the pattern none S.11 Create new requirement form for selected pattern O.3 New requirement part(s) some Parts exploration Feedback: Statistics on use of parts S.5 Read the parts Requirement creation S.6 Choose extended part that apply missing parts S.7 Read detailed information for parameters  others: qualifiers… Feedback: Statistics on use of parameters based on dependency relationships S.8 Select values for parameters (if any) D.4 Check consistency  dependencies among patterns  keywords chosen parts O.1 Pattern used Form+Parts+Values  classification schema S.12 Create new requirement part(s) for selected form S.9 Resolve conflicts (if any) Requirement extraction
  • 37. High-level view next Patterns exploration pattern does not apply AND pending needs for classifier pattern applies no form applies Requirement information for Forms + exploration creation catalogue evolution some form applies Parts exploration missing parts chosen parts Requirement extraction (part of) requirement from scratch requirement from catalogue
  • 38. Index  Motivation. Call-for-tender Processes  A Case Study: the CRPHT case  Analysis of Requirement Books  Structure of the Catalog  Classification Schemas  The PABRE Method  Conclusions and Future Work
  • 39. Conclusions  Ongoing, applied work on reqt. patterns application ◦ ◦  Benefits: elicitation, RB quality, insights gained Drawback: heaviness? Current characteristics of applicability: ◦ Call-for-tender processes ◦ Coarse-grained, business-application OTS components ◦ Requirements expressed in natural language ◦ Knowledge exists ◦ Not much requirements But some of them seem not inherent of the approach
  • 40. Future work  Case studies  Improvements on catalogue structure  Link with the functional part  Further opportunities to explore: ◦ Etapatelecom (Ecuador) ◦ some isolated call for tenders in Barcelona  Patterns web site  Formalization and automatization
  • 41. Thanks for your attention!  Please let me know any suggestion or interest