Professional Documents
Culture Documents
software system
1.
Introduction:
The quality of a software system is defined not only by its functional but also
from the Non-functional requirements of usability, performance,
interoperability, security and flexibility [1]. The functionality of the system is
not useful without these necessary non functional entities. Software
companies need to understand the quality requirements of the customers
thoroughly to sustain the high competition in the market [2]. Non functional
requirements/attributes are henceforth the main differentiator for a company
from its competitors of a software system. The software quality should attain
maximum customer satisfactory levels without excessively draining the
resources and increasing the production cost [3]. To keep a balance between
the benefits of the quality attributes and the cost of the software system
being developed it is necessary maintain the non functional quality attributes
within optimum levels. Elicitation of these levels of quality requirements to
develop an efficient software system without increasing the cost is an
interesting research aspect which would be addressed in the following
sections of the paper through literature review.
2.
Background:
1. Quality in Use:
This level delineates the perceptions of the quality requirements in specific
context by specific users in the real environment. This level measures the
effectiveness of the software system and end user productivity in 4 other sub
categorized of effectiveness, productivity, safety and satisfaction.
2 & 3. External and Internal Quality
External and Internal quality are the two different quality levels which share
the same 6 characteristics and 26 sub characteristics. The internal view is
generally associated with static properties of the software such as code
elements, design and complexity which can be quantified early during the
development phase. The external quality is associated to reliability which can
be quantified as the mean time of failures incurred by the real time execution
of software on computer hardware. The six characteristics that these levels
are categorized are Efficiency, Portability, Maintainability, Functionality,
Usability and Reliability.
4. Process Quality:
This level is associated with the process of product development. As all the
other quality attributes can directly relate to the process of development,
this level can broadly influence all other attributes.
These 4 levels mentioned in the ISO/IEC 9126 standard can quantify the
quality attributes of any software system. The non functional requirements
largely depends over the Architectural (Physical structure of the system) and
functional characteristics (Tasks performed by the system and the user) of a
software system [4]. There are several other classification schemes to
categorize the quality attributes which are inconsistent with each other. All
these classifications are based on a software quality tree depicted in figure 1
[6], which elaborate the key non functional requirements and their various
possible correlations.
Literature review:
Identification of NFRE
Prioritizing the NFRE based on their dependencies
Documentation of NFR
Evaluation of means to satisfy NFR and take decisions
Project Management
After crossing the utility breakpoint the product attains a market value and
moves towards the differentiation breakpoint, which resembles the
competitive quality of the product in the market. The saturation breakpoint is
the third breakpoint in the benefit view, crossing which the product is said to
attain an excessive quality level which does not significantly effects the
benefits in specific usage contexts.
The cost view indicates the second general view which is further divided by
barriers that represent the non linear nature of the relationship between
quality and cost. The quality cost relationship is seen to have different
steepness ranges which are indicated by barriers as the costs shifts from a
plateau like situation to sharp rise indicating the cost penalty incurred by the
increase in quality. This shift to steep rise in cost is due to additional cost
incurred for reconstruction of the product architecture to attain a certain
quality attribute. The third general view is termed as the roadmap view
which combines the breakpoints and barriers including the future targets on
a same scale to visualize the relation of current product quality with that of
its competitors.
QUPER model suggested by B. Regnell, et al. [3] is composed of six steps
which start with defining the quality attributes. Secondly, breakpoints and
barriers are estimated for each quality attribute. Estimation of the current
quality attributes with respect to that of the competitors is done in the third
step to set targets for new quality attributes for future in the fourth step.
Approving, communicating and revising of the roadmaps after several
iterations are done in the final two steps. A smart phone manufacturing
company Sony Ericsson introduced this approach to evaluate the desired
level of quality for a specific quality attribute of one the model of the smart
phone. The performance quality attribute tested was defined as the response
time to play music after pressing the play button of one of their smart phone.
The break points of utility, differentiation and saturation was set in the
benefit view and then compared with that of the competitors in the market.
Further the targets were identified and set keeping consideration the barriers
in the cost view. The QUPER model was also tested in several other
companies and was found to be successful in identifying the barriers and
breakpoints. The number of quality attributes that can be tested with QUPER
model needs to be identified based on the domain of the product and its
utility. QUPER Model provides a better picture of quality targets by allowing
the compare the functional and non functional requirements with the market
and calibrates them accordingly.
the drafting of the new standard ISO/IEC 25030. The ISO/IEC 9126 software
quality model lags in interpreting the software functional abilities and
handling the size of the data of software quality requirements by the model
was complex.
The newly introduced ISO/IEC 25030 standard does not provide a specific
elicitation method but instead provide a general applicable guideline to be
used in specific approaches. The system view approach has been considered
in the new standard which emphasizes on documentation of the stake holder
needs, expectations, desires which may even be completely unrealistic. The
systems intended purpose needs to be described as requirement for the new
standard process. This standard is subjected to both acquirers and suppliers
to provide requirements and recommendations for specifying quality
requirements of the software and the system.
4.
Conclusion:
the levels of attributes based on the views of the benefits and cost
implication of a specific quality attribute of the software product by
categorizing them on the basis of breakpoint and barriers and comparing
them with the market and evaluates targets to outline a roadmap for the
future. This model based on its six steps approach clearly defines the quality
attributes and studies its implication on both quality benefits and cost
implications. It has been tested and adopted in several industries to evaluate
and is being recognized as a simple and easy to learn model.
J. Doerr et al. concluded from the case studies that high degree of customer
satisfaction was achieved. Definition of common ground and enhancement of
communication are considered to be the major benefits of the proposed NFR
methodology. The method is capable to elicit and document a sufficient and
minimal set of traceable and measurable NFR.
The ISO/IEC 9126 standard was also studied to understand the international
standard procedure for evaluating the quality level attributes which are
related only to the software quality attributes. Inclusion of the system quality
attributes which also involve system hardware and human processes has
been recently done in the new version of the quality requirement standard
ISO/IEC 25030. This new standard dictates to acquire quality requirement
suggestions from both acquirers and the suppliers for the software and the
system.
Even though all the four papers discussed above followed a similar approach
for the elicitation of non functional requirements, the models reported in
each of the paper were different with another in several aspects. The model
proposed by B. Paech and D. Kerkow [4], focus mainly upon prioritizing NFR
based on their interdependency evaluated through goal graphs. F. Fotrousi et
al. [9] quantifies NFR from customer satisfaction which is evaluated based on
questionnaires in an iterative process. B. Regnell [2] elicit the NFR by
comparing the market value of the quality attributes among the competitors
with the help of barriers and breakpoint in his QUPER model. The experience
based systematic framework of the model proposed by J. Doerr et al. [11]
evaluated the QA by conducting two consecutive workshops. The ISO/IEC
9126 proposes to consider system requirements along with the software
requirements in the process to elicit the NFR.
Scope of future work:
References:
1. J. Boegh, "A New Standard for Quality Requirements," IEEE Software, vol. 25,
pp. 57-63, 2008.
2. B. Regnell and J. Brinkkemper, Market-Driven Requirements Engineering for
Software Products, Engineering and Managing Software Requirements, A.
Aurum and C. Wohlin, eds., Springer, pp. 287308, 2005.
3. B. Regnell, R. Berntsson Svensson, and S. Olsson, "Supporting Roadmapping
of Quality Requirements," IEEE Software, vol. 25, pp. 42-47, 2008.
4. B. Paech, D. Kerkow, Non- Functional requirements engineering- quality is
essential, Proceedings of the 10th Anniversary International Workshop on
Requirements Engineering: Foundation of Software Quality (REFSQ'04), pp.
237-250, 2004.
5. ISO/IEC 9126-1:2001(E), Software Engineering - Product Quality - Part 1:
Quality Model, 2001.
6. B. W. Boehm, J. R. Brown, H. Kaspar, M. Lipow, G. J. MacLeod, M. J. Merritt,
Characteristics of Software Quality. North-Holland, Amsterdam (1978)
7. C. Irvine and T. Levin, "Quality of Security Service," presented at the 2000
Workshop on New Security Paradigms (NSPW'00), New York, NY, USA, 2000.
8. A. I. Antn and C. Potts, "The use of goals to surface requirements for
evolving systems," in International Conference on Software Engineering,
Kyoto, Japan, pp.157-166, 1998.
9. F. Fotrousi, S. A. Fricker, M. Fiedler, Quality Requirements Elicitation Based on
Inquiry of Quality-Impact Relationships, 22 nd international Requirements
engineering conference, IEEE, Karlskrona, pp. 303-312, 2014.
10.
M. Fiedler, T. Hossfeld, and P. Tran-Gia, "A generic quantitative
relationship between quality of experience and quality of service," Network,
IEEE, vol. 24, pp. 36-41, 2010.
11.
J. Doerr, D. Kerkow, T. Koeing, T. Olsson, T. Suzuki,NonFunctional Requirements in Industry Three Case Studies Adopting an
Experience-based NFR Method Proceedings of the 2005 13th IEEE
International Conference on Requirements Engineering (RE05), (2005)