PABRE Tools - How Students Can Contribute

515 views
462 views

Published on

The PABRE software system is composed of two tools: PABRE-MAN and PABRE-PROJ.

PABRE-MAN is a tool that can be used by the requirement manager of the catalogue to maintain and evolve the software requirement patterns (SRP) catalogue. Its main functionalities are: patterns management, browsing, importation/exportation, printing and catalogue evolution.

PABRE-PROJ is a tool that can be used by requirements analysts during the elicitation of requirements in a software development project, use of external software components, or acquisition of software systems. Its main functionalities are: project management, browsing, importation/exportation, requirements management document generation, or call for tenders document generation and patterns use statistics exportation. Currently, there is also a web version of this tool, in a way that requirements analysts can access and edit software requirements projects from everywhere.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
515
On SlideShare
0
From Embeds
0
Number of Embeds
17
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

PABRE Tools - How Students Can Contribute

  1. 1. Software Requirement Patterns
  2. 2. Req. Patterns: PABRE-Man & PABRE-Proj Outline • Requirement Reuse • Requirement Pattern Example • PABRE Method • PABRE System • Tools:  PABRE-Man: Requirement Pattern Management  PABRE-Proj: Project Management  PABRE-Proj Web: Project Management from everywhere • How could you contribute? 2
  3. 3. Req. Patterns: PABRE-Man & PABRE-Proj REQUIREMENT REUSE3
  4. 4. Req. Patterns: PABRE-Man & PABRE-Proj Requirement Reuse Common problem that occurs within the domain, requirements and a suggested solution in natural language Your Reusable Context Requirements Requirement Patterns (SRPs) Recognize which existing Recognize which existing PABRE requirements applythethe patterns apply to to Method particular context particular context ↓ global errors Requirements ↑quality of the individual requirements Specifications 4
  5. 5. Req. Patterns: PABRE-Man & PABRE-Proj SRP Example: Failure Alerts Pattern’s Goal: Having system that provides alerts when system failures occur. How do their requirements look like? The solution should alert of disks close to their capacity . alert In case of a network or server disk crash the solution should alert immediately. network or server disk crash, alert The system should alert the administrator of the resources (physical or logical) alert close to their capacity close to their capacity. Requirement template The system shall trigger alerts in case of failuresSet failures.  failuresSet : set of possibleFailures o possibleFailures: server crash | disk crash … 5
  6. 6. Req. Patterns: PABRE-Man & PABRE-Proj SRP Example: Failure Alerts Requirement Pattern Failure Alerts Goal: Satisfy the customer need of having a system that provides alerts when system failures occur. Template The system shall trigger an alert in case of failure. Fixed Part Extended multiplicity(Alerts Types) = 0..1 and Parts Constraint multiplicity(Failure Types) = 0..1 Template The solution shall trigger %alertsSet% alerts in case of failure Requirement Parameter Metric Form Extended Part Homogeneous Alert Types alertsSet alertsSet: Set(AlertType) Fax | Sound …. Failure Alerts AlertType: SMS | Mail | Template The system shall trigger alerts in case of %failuresSet% failures Extended Part Parameter Metric Failure Types failuresSet failuresSet: Set(FailureType) crash … FailureType: server crash | disk The system shall trigger different types of alerts depending on the type of Template failure. Fixed Part Extended Parts Multiplicity(Alerts for Failure Types) = 0..* Requirement Constraint Form The system shall trigger %alertsSet% alerts in case of %failuresSet% Heterogeneous Template failures. Failure Alerts Metric Extended Part Parameter Alerts for alertsSet: Set(AlertType) Failure Types alertsSet AlertType: SMS | Mail | Fax | Sound …. failuresSet failuresSet: Set(FailureType) crash … FailureType: server crash | disk 6
  7. 7. Req. Patterns: PABRE-Man & PABRE-Proj PABRE METHOD7
  8. 8. Req. Patterns: PABRE-Man & PABRE-Proj 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 ↓ cost • ↓ errors 8
  9. 9. Req. Patterns: PABRE-Man & PABRE-Proj PABRE Method: Overview (II) Knowledge of the Reqt. pattern Needs catalogue IT Consultant Customer Supplier Supplier Supplier 6 Requirements Elicitation  Requirem. Patterns Forms Parts Extraction Call for OTS-based Exploration Exploration Exploration Solution tenders Requirements Requirem. Book Creation Reqt. Catalogue Feedback Patterns Evolution Repository Catalogue Knowledge of Requirements previous projects Expert 9
  10. 10. Req. Patterns: PABRE-Man & PABRE-Proj PABRE Method: With Tools10
  11. 11. Req. Patterns: PABRE-Man & PABRE-Proj PABRE System11
  12. 12. Req. Patterns: PABRE-Man & PABRE-Proj PABRE System12
  13. 13. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Man13
  14. 14. Req. Patterns: PABRE-Man & PABRE-Proj 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
  15. 15. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Man: Overview Selecting Classification Schema Browsing Metrics Browsing SRP Catalogue Creating a new SRP or Classifier (when U.Compliance selected) Information of the Selected Element (SRP) Information of the Selected Element (Domain Metric) 15
  16. 16. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Man: Editing a SRP (I) Tabs of the Selected Item in the Pattern Navigation Tree (SRP) Pattern Navigation Tree: Browsing Forms, Parts & Parameters of the SRP 16
  17. 17. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Man: Editing a SRP (II) Tab of the Selected Item in the Pattern Navigation Tree (Part) Requirement Text (with Parameters) Table of Parameters 17
  18. 18. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj18
  19. 19. Req. Patterns: PABRE-Man & PABRE-Proj 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 • Requirements Specification Generation 19
  20. 20. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj: Overview Creating a new Project (when Alphabetical List selected) Options over a Project Information of the Selected Element (Project) 20
  21. 21. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj: Editing a project (I) Tabs of the Selected Item in the Project Navigation Tree (Project) Current Tab: Project’s General Information Browsing SRP Catalogue Project Navigation Tree: Browsing Project Requirements Information of the Selected Element (Part) 21
  22. 22. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj: Editing a project (II) Current Tab: Project Creating Requirement Overview Requirements (I) Creating Requirements (II) 22
  23. 23. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj: Editing a SRP requirement Tabs of the Selected Item in the Project Navigation Tree (Requirement that applies an SRP) Info of the applied SRP Requirement’s Text (with parameters) Giving value to a parameter (Set of Domain) 23
  24. 24. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj: Editing a new requirement Tabs of the Selected Item in the Project Navigation Tree (New Requirement) Requirement’s Question & Text completely free 24
  25. 25. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj: Prioritizing SRPs Prioritized List of SRPs Adding/Removing Browsing the Selected SRP SRP Catalogue to/from the Prioritized List Information of the Selected SRP Information of the Selected Element (SRP) 25
  26. 26. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj: Browsing SRP catalogue 2 Different Creating a new associated Types of requirement to this form Browsing Creating a new require- ment applying this part Creating a new associated requirement to this SRP Window to Apply a Part Creating a new Going to the next requirement in the SRP in the classifier of this SRP prioritized list 26
  27. 27. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj Web27
  28. 28. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj Web: Main Functionalities • Project Management from everywhere • Same functionalities as PABRE-Proj desktop tool:  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  Requirements Specification Generation 28
  29. 29. PABRE-Proj Web: Overview (I)Req. Patterns: PABRE-Man & PABRE-Proj New Project & Options over a Project (I) Information of the Selected Project 29
  30. 30. PABRE-Proj Web: Overview (II)Req. Patterns: PABRE-Man & PABRE-Proj Options over a Information of the Project (II) Selected Project 30
  31. 31. PABRE-Proj Web: Editing a project (I)Req. Patterns: PABRE-Man & PABRE-Proj Project Require- ments List Tab General Project Information Tab Project Navigation (Current Tab) Tree Tab Browsing the SRP Catalogue 31
  32. 32. Req. Patterns: PABRE-Man & PABRE-Proj PABRE-Proj Web: Editing a project (II) Project Require- ments List Tab (Current Tab) Creating, Editing & Deleting Requirements Information of the Selected Pattern Element (Form) 32
  33. 33. PABRE-Proj Web: Adding a SRP RequirementReq. Patterns: PABRE-Man & PABRE-Proj Project Navigation Tree Tab (Current Tab) Creating, Editing & Deleting Requirements (New Requirement pressed) Project Navigation Tree: Browsing Project Requirements Information of the Selected Project Requirement Adding an SRP application requirement: name, type and selected fixed/extended part 33
  34. 34. PABRE-Proj Web: Editing a SRP RequirementReq. Patterns: PABRE-Man & PABRE-Proj Tabs for editing the Selected Requirement (SRP Application) (Current Tab) Info of the applied SRP Requirement’s Text (with parameters) Giving value to a parameter (Domain) 34
  35. 35. PABRE-Proj Web: Editing a New RequirementReq. Patterns: PABRE-Man & PABRE-Proj Tabs for editing the Selected Requirement (NEW Requirement) (Current Tab) Requirement’s Question & Text completely free 35
  36. 36. Req. Patterns: PABRE-Man & PABRE-Proj How could you contribute?36
  37. 37. Req. Patterns: PABRE-Man & PABRE-Proj How could you contribute? (1/5) Title: Requirement Patterns Search and Recommender System Description: PABRE-Proj is a tool that helps Requirement Analysts during the elicitation and specification of requirements. This tool is based in the use of Software Requirement Patterns (SRP), which are collected and stored in an SRP Database. This work consists on developing new functionalities for the PABRE-Proj tool that allow searching SRP in the database and developing recommender functionalities to the RA. The recommendations will be based on the previous SRP applied during elicitation and relationships and categorization of SRP that are necessary to be added to the SRP database schema. Technologies: Google Web Toolkit (GWT), Web Services, Java, Hibernate, Derby Contact: Carme Quer (cquer@essi.upc.edu) Web: http://www.upc.edu/gessi/PABRE/index.html 37
  38. 38. Req. Patterns: PABRE-Man & PABRE-Proj How could you contribute? (2/5) Title: Development of web services for the PABRE-Proj tool. Description: PABRE-Proj is a tool that helps Requirement Analysts during the elicitation and specification of Interfície de Proves requirements. This tool is based on the use of Software Requirement Patterns (SRP), which are collected and stored in an SRP Database. This work consists on developing web services to allow Requirement Management Tools (RMT) to Serveis Web access data and functionality that PABRE-Proj provides. Specifically, these RMT should be able to access the requirements in a project and the classification schema of PABRE-Proj these requirements, and also to search for an SRP. In order to test the optimal behaviour of the web services, an interface will be also developed. Technologies: Google Web Toolkit (GWT), Web Services, Java, Hibernate, Derby Contact: Carme Quer (cquer@essi.upc.edu) Web: http://www.upc.edu/gessi/PABRE/index.html 38
  39. 39. Req. Patterns: PABRE-Man & PABRE-Proj How could you contribute? (3/5) Title: Development of a Requirements Management Tool on Android. Description: This work consists on developing a simple intelligent editor that may help a Requirements Analyst during elicitation of requirements. During the edition of new requirements, the editor will search in a glossary of requirements engineering terms and in a Software Requirements Pattern (SRP) database, and will propose changes in the wording of the requirements in order to improve the consistency and quality of software requirements specification documents. Technologies: Android, Web Services, Java, Hibernate, Derby Contact: Carme Quer (cquer@essi.upc.edu) Web: http://www.upc.edu/gessi/PABRE/index.html 39
  40. 40. Req. Patterns: PABRE-Man & PABRE-Proj How could you contribute? (4/5) Title: Analysis and Improvement of the Usability, Maturity and Interoperability of PABRE. Description: The PABRE system is composed of two tools: PABRE-Proj and PABRE-Man. This work consists on performing a detailed and rigorous analysis of the usability and maturity of each one of these tools, and also the interoperability between them. Once identified the possible aspects to improve, they will be implemented. Technologies: Google Web Toolkit (GWT), Java, Hibernate, Derby Contact: Carme Quer (cquer@essi.upc.edu) Web: http://www.upc.edu/gessi/PABRE/index.html 40
  41. 41. Req. Patterns: PABRE-Man & PABRE-Proj How could you contribute? (5/5) Title: Construction of Requirement Patterns for an Specific Domain. Description: This work is implemented in two phases. First, to study one software or services domain; for instance: the Cloud Computing services domain. Once studied, Software Requirement Patterns (SRP) for the elicitation of products or services on this domain will be defined. This is a work that does not include any implementation. The construction of SRP will be made by analyzing information sources found in the Internet, eventually some requirement specification coming from real projects, and using analysis information tools as ATLAS.TI. Once defined, the SRP will be introduced in a SRP database through the PABRE-Man tool. Technologies: ATLAS.TI, PABRE-Man Contact: Carme Quer (cquer@essi.upc.edu) Web: http://www.upc.edu/gessi/PABRE/index.html 41
  42. 42. Software Requirement Patterns

×