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

PPT
Requirements engineering from system goals to uml models to software specif...
PDF
Software Engineering : Requirement Analysis & Specification
PPTX
6 modeling system requirements
PPTX
Soft requirement
PPT
Constructing Enterprise Applications
PPTX
Requirements analysis and modeling
PPT
Software requirements and analysis
PPTX
Software requirement engineering
Requirements engineering from system goals to uml models to software specif...
Software Engineering : Requirement Analysis & Specification
6 modeling system requirements
Soft requirement
Constructing Enterprise Applications
Requirements analysis and modeling
Software requirements and analysis
Software requirement engineering

What's hot (19)

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

Viewers also liked (17)

PPTX
Monitoring services with SALMon.
PPTX
Applying Business Strategy Models in Organizations
PPTX
iStar 2013: Using i* to Represent OSS Ecosystems for Risk Assessment
PPTX
Quantifying the Impact of OSS Adoption Risks with the help of i* Models
PPTX
PABRE System - Software Requirement Patterns
PPTX
Specialization in i* Strategic Rationale Diagrams
PDF
MoDRE 2014 @ RE keynote -- NFR-Aware MDD Processes
PPTX
A Context Ontology for Service Provisioning and Consumption
PDF
iStarJSON: A Lightweight Data-Format for i* Models
PDF
Practical Experiences in Designing and Conducting Empirical Studies in Indust...
PPTX
Assessing Open Source Communities' using Service Oritented Computing concepts
PPTX
A Catalogue of Software Requirement Patterns for the Domain of CMSs
PPTX
Lecture on "QoS in Web Services" - Master course
PPTX
Er14
PPTX
Software Requirement Patterns (SRP)
PPTX
Slides refsq'14 ds v1
PPTX
How do Software Architects consider Non-Functional Requirements
Monitoring services with SALMon.
Applying Business Strategy Models in Organizations
iStar 2013: Using i* to Represent OSS Ecosystems for Risk Assessment
Quantifying the Impact of OSS Adoption Risks with the help of i* Models
PABRE System - Software Requirement Patterns
Specialization in i* Strategic Rationale Diagrams
MoDRE 2014 @ RE keynote -- NFR-Aware MDD Processes
A Context Ontology for Service Provisioning and Consumption
iStarJSON: A Lightweight Data-Format for i* Models
Practical Experiences in Designing and Conducting Empirical Studies in Indust...
Assessing Open Source Communities' using Service Oritented Computing concepts
A Catalogue of Software Requirement Patterns for the Domain of CMSs
Lecture on "QoS in Web Services" - Master course
Er14
Software Requirement Patterns (SRP)
Slides refsq'14 ds v1
How do Software Architects consider Non-Functional Requirements
Ad

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

PDF
Software development PROCESS
PPTX
Ch 2-RE-process.pptx
PPT
PDF
[2015/2016] Software development process
PPT
Mis system analysis and system design
PPTX
EMBEDDED AND REAL TIME SYSTEMS-Unit-4_6703.pptx
PPT
Alternative Methodologies for Systems Development
PDF
Process architecture - Part II
PPTX
Requirements Engineering Processes
PPT
RRC Requirements and Use Cases
PPTX
Structure system analysis and design method -SSADM
PPTX
An intro to building an architecture repository meta model and modeling frame...
PPTX
L3 Requirements Eng Overview
PPTX
B.Sc. DS Unit 2 Software Engineering.pptx
PPT
PPT
Chapter04
DOCX
takeholder Requirements What are the requirements of the applica.docx
PPT
Designing systems for managing dynamic collaborative research processes
PPT
22-REQUIREMENT.ppt
PPTX
CI4305 Lecture Defining Requirements_2023.pptx
Software development PROCESS
Ch 2-RE-process.pptx
[2015/2016] Software development process
Mis system analysis and system design
EMBEDDED AND REAL TIME SYSTEMS-Unit-4_6703.pptx
Alternative Methodologies for Systems Development
Process architecture - Part II
Requirements Engineering Processes
RRC Requirements and Use Cases
Structure system analysis and design method -SSADM
An intro to building an architecture repository meta model and modeling frame...
L3 Requirements Eng Overview
B.Sc. DS Unit 2 Software Engineering.pptx
Chapter04
takeholder Requirements What are the requirements of the applica.docx
Designing systems for managing dynamic collaborative research processes
22-REQUIREMENT.ppt
CI4305 Lecture Defining Requirements_2023.pptx

More from GESSI UPC (18)

PPTX
Towards iStarML 2.0: Closing Gaps from Evolved Requirements
PPTX
Monitoring the service-based system lifecycle with SALMon
PDF
Ossap final
PPTX
Aligning Business Goals and Risks in OSS Adoption
PDF
Jcis 2015-Towards Assessing Open Source Communities' Health using SOC Concepts
PPTX
RISCOSS: Gestión del riesgo en proyectos open source (Open Expo Day2015)
PPTX
Open expo2015 riscoss
PDF
Oss2015
PPTX
Mobility4 all
PDF
QuESo: a Quality Model for Open Source Software Ecosystems
PDF
Expert mining compsac-2014
PDF
Cesi2014
PPTX
DB searches vs. snowballing
PPTX
AK+MDD+NFRs
PPTX
Arteon: Architectural and Technology Ontology
PPTX
Systematic Architecture Design
PPTX
Likert scales and statistics
PPTX
Industry-academia collaboration
Towards iStarML 2.0: Closing Gaps from Evolved Requirements
Monitoring the service-based system lifecycle with SALMon
Ossap final
Aligning Business Goals and Risks in OSS Adoption
Jcis 2015-Towards Assessing Open Source Communities' Health using SOC Concepts
RISCOSS: Gestión del riesgo en proyectos open source (Open Expo Day2015)
Open expo2015 riscoss
Oss2015
Mobility4 all
QuESo: a Quality Model for Open Source Software Ecosystems
Expert mining compsac-2014
Cesi2014
DB searches vs. snowballing
AK+MDD+NFRs
Arteon: Architectural and Technology Ontology
Systematic Architecture Design
Likert scales and statistics
Industry-academia collaboration

Recently uploaded (20)

PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PPT
Geologic Time for studying geology for geologist
PDF
A novel scalable deep ensemble learning framework for big data classification...
PPTX
The various Industrial Revolutions .pptx
PDF
CloudStack 4.21: First Look Webinar slides
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PPTX
observCloud-Native Containerability and monitoring.pptx
PPTX
Tartificialntelligence_presentation.pptx
PDF
Hindi spoken digit analysis for native and non-native speakers
1 - Historical Antecedents, Social Consideration.pdf
DP Operators-handbook-extract for the Mautical Institute
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
Geologic Time for studying geology for geologist
A novel scalable deep ensemble learning framework for big data classification...
The various Industrial Revolutions .pptx
CloudStack 4.21: First Look Webinar slides
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
O2C Customer Invoices to Receipt V15A.pptx
A contest of sentiment analysis: k-nearest neighbor versus neural network
NewMind AI Weekly Chronicles – August ’25 Week III
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Univ-Connecticut-ChatGPT-Presentaion.pdf
A comparative study of natural language inference in Swahili using monolingua...
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
observCloud-Native Containerability and monitoring.pptx
Tartificialntelligence_presentation.pptx
Hindi spoken digit analysis for native and non-native speakers

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