RQS - Requirements Quality Suite

623 views
541 views

Published on

RQS - Requirements Quality Suite
A set of tools aimed to define, analyze, improve and manage the quality of requirements process.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
623
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

RQS - Requirements Quality Suite

  1. 1. The Requirements Quality Suite José Fuentes – Luis Alonso www.reusecompany.com
  2. 2. The Requirements Quality SuiteContents The Requirements Quality Suite (RQS) The Requirements Quality Process RQS tools Demo2 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  3. 3. The Requirements Quality Suite Requirements Quality Analyzer: Product historySemantics RQS V4 RQA V3.1 DQA V2.1 V2 Metrics V3 Semantic V4 Process 3 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  4. 4. The Requirements Quality SuiteRQS Version 4 : Features Definition of the Requirements Quality Process PDCA cycle Roles Separation and tools separation The Requirements Quality Suite (RQS) Requirements Authoring Assistance Focus on CCC metrics Consistency Completeness Correctness4 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  5. 5. The Requirements Quality Suite The Requirements Quality Suite5 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  6. 6. The Requirements Quality SuiteThe Requirements Quality Suite A set of integrated tools aiming to: Define Measure Manage Improve the quality of the outputs of the Requirements Management Process Fully integrated with IBM DOORS and other RM tools6 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  7. 7. The Requirements Quality SuiteThe Requirements Quality Suite Requirements Quality Analyzer (RQA): to setup, check and manage the quality of a requirements specification. Requirement Authoring Tool (RAT): to assist authors while they are creating or editing requirements. knowledgeMANAGER: to manage the knowledge around a requirements specification: the ontology it is based on, the structure of the requirements to be used in the project, the communication between authors and domain architects.7 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  8. 8. The Requirements Quality SuiteThe Requirements Quality Suite RQA – Requirements Quality Analyzer: Check the correctness of your requirements specification CCC: Correctness, Consistency and Completeness Analysis Configure RQS with the quality policies and checklist of your organization RAT – Requirements Authoring Tool: Write your requirements easily by using an assistant Correctness analysis on the fly Consistency analysis on the fly knowledgeMANAGER: Manage all the domain knowledge behind the quality analysis Management of glossaries, taxonomies, thesauri and ontologies Management of boilerplates to be used by RAT8 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  9. 9. The Requirements Quality SuiteRQS V4.0 and RQS V4.1 Sept 2012 Q1 20139 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  10. 10. The Requirements Quality Suite The Requirements Quality Process for TRC10 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  11. 11. The Requirements Quality SuiteThe Requirements Quality Process Plan: - Identify projects and domains to be enhanced. - Take initial measurements on real data. - Identify the initial set of metrics and quality functions. - Define the requirements knowledge model. Do: - Author Requirements. - Execute assessments for individual requirements and global specifications. Check: - Is quality evolving as expected? - Do our teams need additional training? - How can metrics and quality functions be adjusted to carry on with the improvement process? Act: - Adjust metrics and quality functions. - Suggest training for authors. - Evolve the requirements knowledge model.11 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  12. 12. The Requirements Quality SuiteThe Requirements Quality Actors SE Expert: - Author Requirements Quality Assurance: - Adjust metrics and quality functions. - How can metrics and quality functions be adjusted to carry on with the improvement process? Quality Control: - Execute assessments for individual requirements and global specifications. - Is quality evolving as expected? Project Manager / Quality Manager: - Does my project requirements have the right quality? - Do our teams need additional training? SKB Architect: - Evolve the requirements knowledge model. SKR Manager: - Leader of the Knowledge Repository12 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  13. 13. The Requirements Quality Suite PDCA Scenario 1 : Requirements Quality analysis    Project reviewRequirements  Analysis Updated Approved Requirements requirements • Syntactical analysis • Semantic analysis • Correctness 2 – Measure Quality • Consistency • Completeness 1 – Define Requirements 3 – Analyze Requirements Quality Rules 4 – Improve Requirements 6 - Standardize 5 – Control Quality 13 © The REUSE Company – http://www.reusecompany.com April 17, 2013 13
  14. 14. The Requirements Quality SuitePDCA Scenario 2 : Assistance in requirements authoring   Project review Approved Requirements requirements + + Overall: On the fly: • Correctness • Syntactical analysis • Consistency • Semantic analysis • Completeness • Correctness • Consistency 2 – Measure Quality  1 – Define Requirements 3 – Analyze Requirements Quality Rules 4 – Improve Requirements 6 - Standardize 5 – Control Quality 14 © The REUSE Company – http://www.reusecompany.com April 17, 2013 14
  15. 15. The Requirements Quality SuiteThe Requirements Quality Suite: Actors vs. Tools Quality SKR Manager Assurance (CKRM) Quality SKB Architect Control (CKBA) Project Manager SE Expert (CSEP) etc..15 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  16. 16. The Requirements Quality Suite Requirements Quality Analyzer - RQA16 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  17. 17. The Requirements Quality SuiteRQA V4.1 The Requirements Quality Analyzer is a software tool that aids quality assessment and improvement within requirements oriented software and systems projects. RQA allows to define, measure, improve and manage the quality of requirements specifications in systems and software projects. The assessment is modeled by evaluating metrics. Measures single requirements quality Measures requirements sets quality17 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  18. 18. The Requirements Quality SuiteRQA FeaturesMetrics Metrics based model for measuring and improving quality Supports text based and NON text based measures Supports metrics for individual requirements and sets of requirements Customizable measures calculation engineFunctional Operation Multi roles operability (Project Manager, QA Manager, Engineer) Calculations can be performed on-line (on demand) or planned Fully integrated with RMSOther features Enhanced reporting and subscription system Individual requirements metrics based on Quality Functions18 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  19. 19. The Requirements Quality SuiteIndividual Requirements Quality Functions19 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  20. 20. The Requirements Quality SuiteIndividual requirements supported metrics : Correctness  Size  Use of false friends  Readability  Design terms  Conditional vs. imperative sentences  Flow terms  Active vs. passive voice  Number of domain nouns and verbs  Optional sentences  Acronyms  Ambiguous sentences  Hierarchical levels  Subjective sentences  Volatility  Implicit sentences  Number of dependences  Abuse of connectors  Negations  Match a Boilerplate  Speculative sentences20 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  21. 21. The Requirements Quality SuiteIndividual requirements supported metrics 1/3  Size: expressed in paragraphs, chars, nouns or verbs. Long requirements will be difficult to understand  Readability: number of letters between punctuation marks and some other formulas than indicate whether the requirement will be easy to read. Ease to read requirements generates less problems all over the project  Conditional sentences vs. imperative sentences: avoid would and use Shall, should and will in the right way  Active vs. passive voice: avoid using passive voice to increase the readability of the requirement  Optional sentences: maybe… Optional requirements must be stated by an attribute, never in the body of the requirement  Ambiguous sentences: fast, user-friendly… What do the analyst, the coder and the customer understand by the same ambiguous sentence21 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  22. 22. The Requirements Quality SuiteIndividual requirements supported metrics 2/3  Subjective sentences: in my opinion, I think that… Don’t show your ideas, but what the system should do  Implicit sentences: it must be provided by them… Too many pronouns make your requirements difficult to understand  Abuse of connectors: and, or. Many times connectors reveal different needs enclosed within the same requirement, loosing the atomic characteristic  False friends: customized according to “mother language” of your project  Negations: no, never… Two or more negations in the same sentence make it difficult to understand  Speculative sentences: usually, almost always… Make the requirement imprecise  Design terms: loop, hash… Remember, avoid How, concentrate in What  Flow terms: while, if, else… Remember avoid How, concentrate in What22 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  23. 23. The Requirements Quality SuiteIndividual requirements supported metrics 3/3  Number of domain nouns and verbs: domain terms and verbs should be involved into the requirement specification, nevertheless, too many different terms in the same requirement many times means multiple needs  Acronyms: avoid those that don’t belong to the domain representation  Hierarchical levels: don’t complicate your specification with too many indentation levels  Volatility: if a requirement suffers many changes, you must be very careful with it  Number of dependences: the same if your requirement is the source of too many dependences  Match a Boilerplate: The requirement can be matched with one or many of requirement templates defined by the organization.23 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  24. 24. The Requirements Quality Suite Global metrics: for modules or projects  Unlike individual requirements metrics, global metrics involve a whole set of requirements (a requirement project or module)  These metrics are defined to take a global understanding of some common mistakesConsistency Consistency Correctness Completeness Completeness (semantic) (inconsistent (individual (missing req.) (missing links) units) metrics)24 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  25. 25. The Requirements Quality SuiteConsistency: semantics Root problem: coupled specification could be the source of inconsistent specifications, therefore, the cause of many rework and poor quality projects Goal: automatically detect overlapping (inconsistent) inside a single module or even among different modules or projects Approach:  Generate a semantic graph out of every single requirement: using linguistic techniques together with ontologies  This graphs don’t relay on the words in the requirements, but in the real meaning (semantics) of a whole sentence  RQA compares those graphs to find out the semantic similarity among requirements  For two similar requirements, the parts of the graph are evaluated looking for inconsistencies Solution: once detected, the user can easily remove a requirement25 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  26. 26. The Requirements Quality SuiteConsistency: semantics The inference rules layer of the Ontology allows RQA to identify and represent a requirement as a graph Boilerplates are used as patterns UR001: …. UR023: The system shall send weekly notifications to the customers including our offers URxxx: … UR842: The application shall be able to notify periodically all of our offers to our clients UR999: … <<Notify>> UR023 UR842 System Customer Offer26 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  27. 27. The Requirements Quality SuiteConsistency: semantics27 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  28. 28. The Requirements Quality SuiteConsistency: inconsistent units Root problem: inconsistent requirements could be difficult to find, therefore, the cost of finding them in later stages of the SDLC or even in a production environment is really high Goal: try to detect, in the same Requirements project, the use of non-consistent units (e.g. two different requirements measuring something in yards and meters) Management: RQA, out-of-the-box, already includes many of the most common measurement units. The user is able to extend this list at any moment Solution:  The pairs of requirements that include these inconsistent units are automatically identified by the tool  The user can now change the textual content of the requirements28 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  29. 29. The Requirements Quality SuiteRequirements sets supported metrics : inconsistent units29 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  30. 30. The Requirements Quality SuiteCorrectness: metrics Root problem: incorrect written requirements are the source of many problems in further stages of the project Goal: to be able of warning either authors, QA, PM and other involved stakeholders about incorrect (low quality) requirements Approach: use metrics and quality functions to get a set of recommendations in order to improve the quality of the requirements Solution:  Assess the quality of a specification either manually (RQA), automatically (RQA batch process: Synchronizer) or on the fly (RAT module)  Generate global or detailed reports30 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  31. 31. The Requirements Quality SuiteCorrectness: metrics31 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  32. 32. The Requirements Quality SuiteCompleteness: missing requirements Root problem: missing requirements problem is difficult to identify Goal: to be able of warning PM about missing requirements while the requirements are being written Approach: use boilerplates to identify, based on its structure, those types of requirements (e.g. performance) that have been overlook in the project  Other approaches will be provided in further versions of the tool Solution:  Identify the boilerplate/s followed by any individual requirements  Warn when a boilerplate is followed by a small number of requirements32 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  33. 33. The Requirements Quality SuiteCompleteness: missing requirements33 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  34. 34. The Requirements Quality SuiteCompleteness: missing links Root problem: missing links (poor traceability) makes projects difficult to manage when changes occur Goal: detect those requirements in different levels of abstraction (e.g. user req. vs. system req.) that have a very similar meaning while lack of a link Approach: use semantic tools (graphs) to represent every requirements in the project Solution:  For every couple of requirements, check the semantic similarity  Warn the PM when the similarity between two requirements is high, and no link is detected34 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  35. 35. The Requirements Quality SuiteCompleteness: missing requirements35 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  36. 36. The Requirements Quality Suite Requirements Authoring Tool - RAT36 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  37. 37. The Requirements Quality SuiteRequirements Authoring Tool – RAT V4.1 Main features: Assisting authors while they’re writing requirements Following a agreed upon set of boilerplates Other (on the fly) features: Quality assessment (correctness based on individual metrics) on the fly Consistency analysis on the fly Missing links on the fly Inconsistent units analysis on the fly37 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  38. 38. The Requirements Quality SuiteRequirements Authoring Tool – RAT38 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  39. 39. The Requirements Quality SuiteRequirements Authoring Tool – RAT39 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  40. 40. The Requirements Quality Suite knowledgeMANAGER40 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  41. 41. The Requirements Quality SuiteknowledgeMANAGER V4.1 Main features: Vocabulary management Thesaurus management Boilerplates management Semantic indexing and retrieval services Ontology construction: By reusing existing vocabulary, thesauri, ontologies By creating a semantic graph out of existing documentation (automatic) By elicitation with the help of experts By attending the suggestions provided by end users41 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  42. 42. The Requirements Quality SuiteknowledgeMANAGER V4.142 © The REUSE Company – http://www.reusecompany.com April 17, 2013
  43. 43. Margarita Salas, 16 2nd FloorInnovation Center http://www.reusecompany.comLEGATEC Technology Park28919 Leganés – MadridSPAIN – EUTel: (+34) 91 146 00 30Fax: (+34) 91 680 98 26 contact@reusecompany.com

×