rqs - requirements quality suite
DESCRIPTION
RQS - Requirements Quality Suite A set of tools aimed to define, analyze, improve and manage the quality of requirements process.TRANSCRIPT
The Requirements Quality Suite
José Fuentes – Luis Alonso
www.reusecompany.com
2 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Contents
The Requirements Quality Suite (RQS)
The Requirements Quality Process
RQS tools
Demo
3 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
V2 Metrics V3 Semantic V4 Process
Requirements Quality Analyzer: Product history
DQA
V2.1
RQA
V3.1
RQS
V4
Sem
antics
4 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
RQS 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
Correctness
5 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
The Requirements Quality Suite
6 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
The 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 tools
7 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
The 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.
8 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
The 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 RAT
9 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
RQS V4.0 and RQS V4.1
Sept 2012 Q1 2013
10 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
The Requirements Quality Process
for TRC
11 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
The 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.
12 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
The 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 Repository
13 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
13
PDCA Scenario 1 : Requirements Quality analysis
2 – Measure Quality
1 – Define Requirements
Quality Rules
4 – Improve Requirements
5 – Control Quality
6 - Standardize
3 – Analyze Requirements
Requirements
Project review
Analysis Updated
Requirements Approved
requirements
• Syntactical analysis
• Semantic analysis
• Correctness
• Consistency
• Completeness
14 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
PDCA Scenario 2 : Assistance in requirements authoring
14
Requirements
Project review
Approved
requirements
On the fly:
• Syntactical analysis
• Semantic analysis
• Correctness
• Consistency
2 – Measure Quality
1 – Define Requirements
Quality Rules
4 – Improve Requirements
5 – Control Quality
6 - Standardize
3 – Analyze Requirements
+
Overall:
• Correctness
• Consistency
• Completeness
+
15 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
The Requirements Quality Suite: Actors vs. Tools
Quality
Assurance
Quality
Control
Project
Manager
SE Expert
(CSEP) etc..
SKB Architect
(CKBA)
SKR Manager
(CKRM)
16 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Requirements Quality Analyzer - RQA
17 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
RQA V4.1
Measures single requirements quality
The Requirements Quality Analyzer is a software tool that aids quality assessment and improvement within requirements oriented software and
systems projects.
Measures requirements sets quality
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.
18 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
RQA Features Metrics
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 engine
Functional Operation
Multi roles operability (Project Manager, QA Manager, Engineer)
Calculations can be performed on-line (on demand) or planned
Fully integrated with RMS
Other features
Enhanced reporting and subscription system
Individual requirements metrics based on Quality Functions
19 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Individual Requirements Quality Functions
20 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Individual requirements supported metrics : Correctness
Size
Readability
Conditional vs. imperative sentences
Active vs. passive voice
Optional sentences
Ambiguous sentences
Subjective sentences
Implicit sentences
Abuse of connectors
Negations
Speculative sentences
Use of false friends
Design terms
Flow terms
Number of domain nouns and verbs
Acronyms
Hierarchical levels
Volatility
Number of dependences
Match a Boilerplate
21 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Individual 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 sentence
22 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Individual 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 What
23 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Individual 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.
24 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
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
mistakes
Consistency
(semantic)
Consistency
(inconsistent
units)
Completeness
(missing req.)
Correctness
(individual
metrics)
Completeness
(missing links)
25 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Consistency: 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 requirement
26 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Consistency: 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: …
UR023
UR842
<<Notify>>
System Customer Offer
27 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Consistency: semantics
28 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Consistency: 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 requirements
29 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Requirements sets supported metrics : inconsistent units
30 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Correctness: 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 reports
31 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Correctness: metrics
32 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Completeness: 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 requirements
33 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Completeness: missing requirements
34 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Completeness: 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
detected
35 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Completeness: missing requirements
36 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Requirements Authoring Tool - RAT
37 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Requirements 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 fly
38 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Requirements Authoring Tool – RAT
39 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
Requirements Authoring Tool – RAT
40 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
knowledgeMANAGER
41 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
knowledgeMANAGER 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 users
42 April 17, 2013 © The REUSE Company – http://www.reusecompany.com
The Requirements Quality Suite
knowledgeMANAGER V4.1
http://www.reusecompany.com
Margarita Salas, 16 2nd Floor
Innovation Center
LEGATEC Technology Park
28919 Leganés – Madrid
SPAIN – EU
Tel: (+34) 91 146 00 30
Fax: (+34) 91 680 98 26