Professional Documents
Culture Documents
Conflicts Identification Among Non Functionalrequirements Using Matrix Maps 2
Conflicts Identification Among Non Functionalrequirements Using Matrix Maps 2
discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/267214279
CITATIONS READS
3 74
3 authors:
Ahmad Jamil
Kohat University of Science and Technology
68 PUBLICATIONS 359 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
High resolution and concentrated time-frequency analysis tools using evolutionary computing
techniques View project
All content following this page was uploaded by Abdul Hannan on 30 October 2014.
the documentation overhead, and maintains transparency of identified One of the critical areas in software engineering is the
conflicts. The attributes are not concomitantly taken into account by requirements conflict identification. Since non-functional
current models in practice. requirements are under discussion, conflicts often arise when
Keywords—Conflict Identification, Matrix Maps, Non-functional two quality-attributes have an opposite behavior to each other.
Requirements, Requirements Analysis, Software Engineering There is actually a significant difference between the specific
requirements of the same task. Numerous software projects
I. INTRODUCTION have failed because they contained impoverished set of non-
functional requirements, even though, they certainly may have
B ESIDES implementing all the desired functionality, it is
highly desirable for software systems to cope with non-
functional aspects as well. These may include reliability,
had a good set of functional and interface requirements [14].
The primary motivation for this particular research is an
security, accuracy, safety, performance, look and feel indispensable step towards achieving successful software
requirements, as well as organizational, cultural, and political requirements in order to achieve the right balance of non-
requirements. These non-functional aspects must be treated as functional requirements. To achieve this task, many
nonfunctional requirements (NFRs) of the software [1-2]. requirement engineering techniques are necessary and
Unproductive dealing with NFRs has led to a succession of important. That is why a remarkable number of leaders in the
failures in software development [3-4], including the very area believe that a relatively more powerful technique is the
mighty reconnoiter of the London Ambulance System [5], requirement conflict identification rather than requirement
where the deactivation of the software right after its conflict negotiation.
deployment was strongly prejudiced by NFRs noncompliance. There are number of models and techniques [14-17] which
These requirements have been pointed out in literature [2],[6- identify the conflicts among the non-functional requirements
11] as the most expensive and complicated ones to deal with. based on quality attributes. The problem with quality based
In spite their importance, NFRs have unexpectedly conflict identification is that the false conflicts are also
received little consideration in the literature and are poorly identified along with the potential conflicts. False conflicts are
tacit compared to less significant aspects of the software the contradictions among the non-functional requirements
development [2]. The majority of the work on NFRs uses a which are, in fact, not conflicts but are identified under the
product-oriented approach, which is concerned with umbrella of a particular quality attribute. Hence, it causes an
measuring how often a software system is in harmony with the overhead in the conflict negotiation process.
The rest of the work is organized as follows. Section 2
discusses some related work in literature by contemporary
A. Hannan is working as Research Fellow/Lecturer in IQRA University
researchers. Section 3 discusses the proposed model. Section 4
Islamabad Campus, Pakistan (phone: +92-331-623-1304; fax: +92-51-; e- presents results and discussion. Section 5 discusses the
mail: hannan@iqraisb.edu.pk). conclusion and section 6 provides the references.
J. Ahmed was with Ghulam Ishaq Khan Institute (G.I.K.I.) as Head of
Department of Computer Science. He is now Dean of IQRA University II. RELATED WORK
Islamabad Campus, Pakistan (e-mail: jamil@iqraisb.edu.pk).
A variety of conflict identification models are proposed in
I. Usman is with the Computing and Technology Department, IQRA
University Islamabad Campus, Pakistan, as an Asst. Professor (e-mail:
literature. These include Sandana and Lui [15] model based on
imran.usman@gmail.com). analysis and detection of conflicts among non-functional
requirements using integrated analysis of functional and non- step 4. Identify conflicts using quality-to-quality
functional requirements “ACONIAN”. This framework is matrix.
based on non-functional decomposition “N.F.D.” proposed by step 5. Identify potential conflicts by mapping low
Poort and deWith [18]. Poort provided a model to transform level conflicting low level quality attributes
the conflicting requirements into a system. over low level functionalities.
Bertagnolli and Lisboa [17] proposed a model which deals Fig. 1 shows our proposed model. It starts with structured
with the requirements from requirements phase to design representation of high level non-functional requirements.
phase using aspect oriented software engineering. The conflict Conflict identification is then performed on the high level
identification methodology is based on the set theory. Another quality attribute in order to identify the low level conflicting
approach is proposed by Egyed and Grunbacher [16]. It quality attributes. By doing so, low level quality attributes are
comprises of identification of conflicts and co-operations with under consideration. These low level conflicting quality
the help of quality attributes and automated traceability. attributes are then mapped to low level functionalities in order
Boehm and In [19] used a knowledge based tool, Software to identify potential conflicts.
Cost Option Strategy Tool SCOST, which deals with the
conflicts among the process requirements. It assists the The structured representation for requirement statements,
stakeholders to surface and negotiate conflict and risks among adopted for this model, is a modified representation presented
the requirements. in [18], [15]. The constraints have been removed from the
structured representation based on [9] which says that
In, Kim, Yun and Yau [20] proposed a quality of service
International Science Index Vol:4, No:8, 2010 waset.org/Publication/10198
among the non-functional requirements. In this research, we With reference to Table II, “Maturity” and “Fault tolerance”
have considered same example of search engine as mentioned both have the conflict with same quality attribute i.e. “Time
in [15]. For clarity purpose, the following hierarchy diagram behavior”. So in Table III, “Time behavior” is shown in a
and table are reproduced from [15]. However, we only deal single column for simplicity. In Table III, the conflict between
with low level functionality attributes and quality attributes, the quality attributes “Time Behavior” and “Fault Tolerance”
therefore, the hierarchy diagrams of functionality attribute and with respect to low level functionalities does not exist.
quality attribute in [15] are modified and presented in Fig. 2
and Fig. 3 respectively. The high level functionality of a
search engine is “Search” and the high level quality attribute is TABLE I
“Quality”. The example starts with the following high level CONFLICT IDENTIFICATION USING QUALITY-TO-QUALITY MATRIX
non-functional requirement in structured form: “The quality of
search should be high”
Tolerance
Resource
Behavior
Behavior
Maturity
Time
Fault
The high level functionality “Search” and high level quality
Quality Attributes
attribute “Quality” are decomposed. The “Quality” is
decomposed on the basis of major low level functionalities Maturity O O X O
such as “Search by Title”, “Search by keyword”, “Use
Fault Tolerance O O X O
Boolean Logic” and “Use Case (in) Sensitivity Options”.
Time Behavior X X O O
After the decomposition of high level functionality and
International Science Index Vol:4, No:8, 2010 waset.org/Publication/10198
quality attribute, the conflicts are identified on the basis of Resource Behavior O O O O
quality-to-quality matrix as shown in Table I.
In this table, O shows the supporting attributes and X shows TABLE II
the conflicting attributes. From this table, the low level QUALITY BASED CONFLICTING AND NON-CONFLICTING NFRs
conflicting quality attributes are identified and separated. Low level quality
High level Non-conflicting
Low level NFRs based conflicting
Now the low level quality based non-functional NFR NFRs
NFRs
requirements in Table II are mapped to low level
functionalities identified during the hierarchy process of high
Quality of 1. Maturity of 1. “Maturity of 1. Resource
level functionality. The potential conflicts are identified search search should search should behavior of
through the matrix shown in Table III. should be be high. be high.” search
high versus should be
2. Fault tolerance
“Time high.
of search
behavior of
should be
Search search should
high.
be high.”
3. Time behavior
2. “Fault
of search
tolerance of
Basic search Advanced search should be
search should
high.
be high.”
4. Resource versus
Search by title Search by Use boolean logic Use case (in) behavior of “Time
keyword sensitivity options
search should behavior of
be high search should
Fig. 2 Hierarchy of high level functionality “Search” be high.”
TABLE III
Quality
QUALITY-TO-FUNCTIONALITY MATRIX
Reliability Efficiency
Search by title X X O O
Search by keyword X X O O
Whereas, “Maturity” and “Time Behavior” are on the bases of low level functionality and conflicts are
conflicting in nature with respect to “Search by Title”, “Search classified into potential conflicts and non-conflicting non-
by Keyword” and “Use Boolean Logic”. The potential functional requirements.
conflicts are mentioned in Table IV.
In Table IV, the quality based conflicting non-functional
requirements (extracted from Table II) are further elaborated
TABLE IV
IDENTIFICATION OF POTENTIAL CONFLICTS ALONG WITH NON CONFLICTING NFRs
Quality based NFRs with potential
Functionality mapped low level NFRs Non-conflicting NFRs
conflicting NFRs conflicts
1. Maturity of search by title should be high. 1. Maturity of search by 1. Time behavior of search by
title should be high. title should be high.
Maturity of 2. Maturity of search by keyword should be high.
versus
search should be 2. Fault tolerance of search by
3. Maturity of use Boolean logic should be high. Time behavior of
high. title should be high.
search by title should
4. Maturity of use case (in) sensitivity should be high. be high. 3. Time behavior of search by
keyword should be high.
1. Time behavior of search by title should be high.
2. Maturity of search by 4. Fault tolerance of search by
International Science Index Vol:4, No:8, 2010 waset.org/Publication/10198
Time behavior of 2. Time behavior of search by keyword should be high. keyword should be keyword should be high.
search should be high.
high
3. Time behavior of use Boolean logic should be high. versus 5. Time behavior of use Boolean
Time behavior of logic should be high.
4. Time behavior of use case (in) sensitivity should be
search by keyword
high. 6. Fault tolerance of use
should be high.
Boolean logic should be
1. Fault tolerance of search by title should be high. high.
2. Fault tolerance of search by keyword should be high. 3. Maturity of use Boolean
Fault tolerance of 7. Time behavior of use case
logic should be high.
search should be (in) sensitivity should be
3. Fault tolerance of use Boolean logic should be high. versus
high. high.
Time behavior of use
4. Fault tolerance of use case (in) sensitivity should be
Boolean logic should 8. Fault tolerance of use case
high.
be high. (in) sensitivity should be
Time behavior of 1. Time behavior of search by title should be high. high.
search should be
2. Time behavior of search by keyword should be high. 9. Maturity of use case (in)
high.
sensitivity should be high.
3. Time behavior of use Boolean logic should be high.
10. Time behavior of use case
4. Time behavior of use case (in) sensitivity should be (in) sensitivity should be
high. high.
and time behavior don’t have any conflict on the basis of low ACONIAN Yes Yes Yes Yes No
level functionalities.
FRIDA model Yes No No No No
V. CONCLUSION
Simple implementation We propose a model which not only represents a modified
semantics of NFRs analyze and detect conflicts among non-
The proposed model takes very less overhead of functional requirements using the matrices to map low level
documentation as compared to [15] because it reduces number conflicting quality attributes over the low level functional
of diagrams and tables. attributes. The model enables us to capture the potential
conflicts based on the relationship among quality attributes
Transparency of conflicts: and functionalities. The use of mapping the low level
conflicting quality attributes over low level functionalities is
The results obtained from this proposed model are very very promising. Since the constraints are not the area of
transparent. We do not need to back track to identify the interest in negotiation, so there is no need of constraints in the
conflicting requirements as we do in [15]. conflict identification process. The constraints are not
Most of the models for conflict identification in literature involved because constraints are the scope of the quality
deal with the product requirements. They simply skip the attributes and they can’t be decomposed. If a constraint is able
impact of the process requirements on the product to decompose then another high level non-functional
requirements or vice versa. Table V shows that all the models requirement must be generated in which the decomposable
deal with the product requirements but only the “ACONIAN” constraint should be a quality attribute with some
and the proposed model also deals with the process functionality.
requirements. The quality based conflict identification results
in the origination of the false conflicts which are the overhead ACKNOWLEDGMENT
to the conflict negotiation process. Only the proposed model
We want to thank the management of IQRA University
and the “identification of conflicts using integrated analysis of
Islamabad Campus for providing a research oriented and
functional and non-functional requirements” identify the false
conflicts. research friendly environment to the faculty as well as the
students.
Special thanks to Mr. Muhammad Shoaib, Mr. Muhammad
Aamir and Mr. Mehmood Ahmad for their critical and
valuable discussion.
TABLE V
COMPARISON TABLE REFERENCES
conflicts
Document overhead
Process req.
Transparent
London, 1999.