pabre framework for the construction and use of software requirement patterns

22
Requirement Patterns PABRE-Man & PABRE-Proj

Upload: carme-quer

Post on 23-Jun-2015

1.378 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: PABRE Framework for the Construction and Use of Software Requirement Patterns

Requirement Patterns

PABRE-Man & PABRE-Proj

Page 2: PABRE Framework for the Construction and Use of Software Requirement Patterns

2

Outline• Requirement Reuse• Requirement Pattern Example• PABRE Method• Tools:

PABRE-Man: Requirement Pattern Management PABRE-Proj: Project Management

Req. Patterns: PABRE-Man & PABRE-Proj

Page 3: PABRE Framework for the Construction and Use of Software Requirement Patterns

3

Requirement ReuseReq. Patterns: PABRE-Man & PABRE-Cft

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

Page 4: PABRE Framework for the Construction and Use of Software Requirement Patterns

4

SRP Example: Failure AlertsReq. Patterns: PABRE-Man & PABRE-Cft

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?

Page 5: PABRE Framework for the Construction and Use of Software Requirement Patterns

5

SRP Example: Failure AlertsReq. Patterns: PABRE-Man & PABRE-Cft

Requirement 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 …

Page 6: PABRE Framework for the Construction and Use of Software Requirement Patterns

6

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

Page 7: PABRE Framework for the Construction and Use of Software Requirement Patterns

7

PABRE Method: Overview (II)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

Page 8: PABRE Framework for the Construction and Use of Software Requirement Patterns

8

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: UseReq. Patterns: PABRE-Man & PABRE-Cft

Page 9: PABRE Framework for the Construction and Use of Software Requirement Patterns

9

PABRE Method: With Tools

Req. Patterns: PABRE-Man & PABRE-Cft

IT Consultant

Needs

Customer

Requirements

Bid

Supplier

Requirements

Book

Evaluation

OTS-basedsolution

AcquisitionAgreement

Bid BidRequirements Elicitation

ProjectsDB

Catalogue Evolution

Knowledge ofRequirement

Patterns

Knowledge ofRequirement

Patterns

Knowledge ofpreviousprojects

Knowledge ofpreviousprojects

Supplier Supplier

Call for tenders

RequirementPatterns

DB

RequirementsEngineeringApplication

Support

RequirementsEngineeringApplication

Support

PatternManagement Application

PatternManagement Application

Requirement Enginner

PABRE-PROJ tool

PABRE-MAN tool

Page 10: PABRE Framework for the Construction and Use of Software Requirement Patterns

10

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

Req. Patterns: PABRE-Man & PABRE-Cft

Page 11: PABRE Framework for the Construction and Use of Software Requirement Patterns

11

PABRE-Man: OverviewReq. 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)

Page 12: PABRE Framework for the Construction and Use of Software Requirement Patterns

12

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)

Page 13: PABRE Framework for the Construction and Use of Software Requirement Patterns

13

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

Page 14: PABRE Framework for the Construction and Use of Software Requirement Patterns

14

PABRE-Proj: 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

Req. Patterns: PABRE-Man & PABRE-Cft

Page 15: PABRE Framework for the Construction and Use of Software Requirement Patterns

15

PABRE-Proj: OverviewReq. Patterns: PABRE-Man & PABRE-Cft

Options over a Project

Information of the Selected Element

(Project)

Creating a new Project(when Alphabetical List selected)

Page 16: PABRE Framework for the Construction and Use of Software Requirement Patterns

16

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

Page 17: PABRE Framework for the Construction and Use of Software Requirement Patterns

17

PABRE-Proj: Editing a project (II)Req. Patterns: PABRE-Man & PABRE-Cft

Current Tab: Project Requirement Overview

Creating Requirements (I)

Creating Requirements (II)

Page 18: PABRE Framework for the Construction and Use of Software Requirement Patterns

18

PABRE-Proj: Editing a SRP requirementReq. 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

Page 19: PABRE Framework for the Construction and Use of Software Requirement Patterns

19

PABRE-Proj: Editing a new requirementReq. Patterns: PABRE-Man & PABRE-Cft

Tabs of the Selected Item in the Project Navigation Tree

(New Requirement)

Requirement’s Question & Text completely free

Page 20: PABRE Framework for the Construction and Use of Software Requirement Patterns

20

PABRE-Proj: Prioritizing SRPsReq. Patterns: PABRE-Man & PABRE-Cft

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

Page 21: PABRE Framework for the Construction and Use of Software Requirement Patterns

21

PABRE-Proj: Browsing SRP catalogueReq. Patterns: PABRE-Man & PABRE-Cft

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

Page 22: PABRE Framework for the Construction and Use of Software Requirement Patterns

Comments and Questions