=Paper= {{Paper |id=Vol-1564/paper4 |storemode=property |title=Requirements Quality in the Incremental Design Processes: Problems and Perspectives |pdfUrl=https://ceur-ws.org/Vol-1564/paper4.pdf |volume=Vol-1564 |authors=Claude Reyterou |dblpUrl=https://dblp.org/rec/conf/refsq/Reyterou16 }} ==Requirements Quality in the Incremental Design Processes: Problems and Perspectives == https://ceur-ws.org/Vol-1564/paper4.pdf
       Requirements quality in the incremental design
          processes: problems and perspectives.

                                      Claude Reytérou

                                  Airbus Group Innovations
                                    18, Rue M arius Terce
                                   31025 Toulouse, France
                                     +33 (0)561 168831

                           claude.reyterou@airbus.com



       Abstract. Writing requirements is a critical step in designing aircrafts software-
       intensive systems. The latest requirement management and authoring tools, us-
       ing current engineering based approaches, start to efficiently support the re-
       quirements quality and consistency checks for huge projects having long
       changes cycles. However, these solutions become limited facing the incremen-
       tal design processes where frequent changes of requirements shall be handled.
       In this paper we will discuss on dedicated approaches to support requirement
       writing and checking based on boilerplates and semantic knowledge representa-
       tions, in particular ontologies. The expected contributions are firstly to improve
       the quality of requirement writing and secondly to advance the current
       knowledge in the use of semantic techno logies dedicated to quality manage-
       ment. We present the corresponding research issues, the relevance of these ap-
       proaches and the main lines of the proposed research activities as well as the
       originality of the selected options.

       Keywords: Requirement authoring, Boilerplates, Natural Language Processing,
       Ontology, Incremental design processes.


1      Introduction

As for many other comp lex systems, designing an aircraft is not an easy task; be it the
new version of an existing model or creating fro m the scratch. Generally, the stage
following the collect of customer needs is the requirements definit ion, starting by
elicitation and analysis. This process continues with the cascading of requirements
that often is a mirror o f the product breakdown structure. Then, for each system level,
requirements set are used to define the system elements. The other requirements are
allocated to sub-system at the lower levels and the process continuing till the devel-
opment of co mponents. The market driven incremental p roduct development and
delivery (release) is becoming increasingly co mmonplace in software industry [3].
Incremental product development is planned and executed with the goal o f delivering
an optimal subset of requirements in a certain release (version of a product that is
distributed to customers) [2]. In parallel, ‘Agile’ methodologies are an alternative to
traditional sequential development, addressing unpredictability response through in-
cremental and iterative work cadences, known as sprints [4]. Incremental Design Pro-
cesses is a pro mising emerging discipline related to, but not specifically a subset of,
the market driven incremental product development and ag ile methodologies. These
processes combine both approaches, trying to merge the agility methods and the in-
cremental process to address the specificity of designing based variants products. A
system design process could be said to be “ incremental design process” if he is based
on the use of high quality generic requirements instantiated into specific requirements
dedicated to the definition of variants or increments of a system.
Our interest is to identify whether the incremental design process could be applied for
the development of mult iple variants of complex products (based on product line
engineering), considering the current methods for creating high quality generic re-
quirements. But idea of using incremental design processes raises challenges that
could be interesting for the community of requirements engineering researchers.


2      Problem statement and experiences in industry

Our p roblem lies in the way we could formu late the high quality system requirements
to be added in the incremental design processes. As the sources of the requirements
vary it is not surprising that requirements come in different shapes and forms, at mu l-
tiple levels of abstraction, and described on varying levels of refinement [1]. Re-
quirements are specified for many different purposes and fro m many d ifferent engi-
neering activit ies [5]. Du ring authoring, natural language remains a universal means
of exp ressing requirements and studies indicates that 89% of engineers [7] shown
their preference to use of natural language requirements. However ambiguity or
vagueness of requirements are the two main problems arising fro m the over-flexib ility
of the natural language [28], making their interpretation challenging fo r any natural
language processing systems to reasonably understand the subject-matter.
   The requirement writer in many occasions is skewed by their own personal e xperi-
ences hence semantics, vocabulary and terms differ widely fro m one person to anot h-
er as illustrated by Dickerson [6]. Not much research has investigated whether differ-
ent domains need different kinds of semantic tools displaying different kinds of se-
mantic relat ions. To address the challenge of writ ing the requirements right, we have
identified two main industrial problems.


2.1    Poor quality of requirements while authoring

Fro m the statistic survey established by Fanmuy and Foughali [7], it was found that
the most common leading defects in the natural language requirements falls under:
semantic contradiction, not verifiable, not complete, ambiguous, not understandable
and not precise enough. On the conclusion of the survey, it was stated that the prob-
lems still persist despite the use of several requirement engineering approach like
writing ‘SMART’ requirements right fro m the very first attempt. Dedicated to assist
the system engineers, this approach leads to eliminate unnecessary informat ion in
requirements, to improve readability (i.e. text length, number of punctuation marks,
etc.) and reduce complexity. Another approach: the formal notation and graphical
representation based on models albeit offers alternative means to natural language.
Go rschek proposes a Requirement Abstraction Model [1]. Ho wever, these approaches
remain not so convenient to cover wide range of concepts, to manage co mpliance and
to address the needs creativity of system engineers. In practice, the requirements do
not exhib it all the acceptable characteristics of good requirements. As an example,
this bad requirement “New and modified air distribution components shall be de-
signed to minimize noise levels ” should be replaced by “New and modified air distri-
bution components installed in cabin areas shall emit less than 30 dB(A) of acoustic
noise.” The consequence of these mistakes is felt during all downstream act ivities
such as architecting, design, imp lementation, and testing. Organizations struggle to
bring consistency to their project and 47% of unsuccessful projects fail to meet goals
due to poor requirements management [20].


2.2    The problems of requirements verification

   Requirement Verificat ion is about verifying sufficiently early in the develop ment
process whether the requirements have sufficient quality (i.e. they are well-formed
according to the ISO/IEC/IEEE 29148 standard) to avoid many negative impacts sub-
sequent activities. When eventually discovered, these defects will be significantly
more expensive and take mo re t ime to fix them. The following picture shows the cost
to extract defects.




             Fig. 1. Cumulative percentage of cost (source: INCOSE handbook)

Industrial projects handle up to thousands of requirements where human based verif i-
cation process during peer rev iews beco mes extremely tedious , time consuming and
expensive for the organization.


3      Proposed research activities

To address the hereunder issues, the following research tasks were identified.
3.1    Boilerplate for syntactic analysis of requirements

First of all, improvement of requirements quality is given through a better structuring
of requirements sentences. This structuring goes through the definition of models
allo wing the creat ion of one or several types of requirements. To do so Mavin consid-
ers a simple and efficient set of sentence structures to improve drastically the quality
of requirements [8]. Each sentence structure can be based on full sentence models as
proposed by Al-Safadi [9] and in the Cesar pro ject [10]. This study proves the interest
to use sentences model based on predefined (frozen) or progressive, adaptive stru c-
tures to support the authoring of requirements . This structure is generally called ‘pat-
terns’ or ‘boilerplate’. The concept of using boilerp lates for writ ing statements of
requirements is quite simp le: choose an appropriate predefined pattern, and fill in the
gaps. Each statement of requirement is then based on a boilerp late where the selected
attributes have specific terms. Example of boilerplate: The  shall be able to
 at a maximu m rate of at least  times per