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