American Journal of Information Systems, 2014, Vol. 2, No. 1, 20-25
Available online at http://pubs.sciepub.com/ajis/2/1/5
© Science and Education Publishing
DOI:10.12691/ajis-2-1-5
The Method for Comparative Evaluation of Software
Architecture with Accounting of Trade-offs
Alexander Kharchenko
1
, Ihor Bodnarchuk
2,*
, Vasyl Yatcyshyn
3
1
Department of Computer Informational Technologies, National Aviation University, Kyiv, Ukraine
2
Department of Computer Science, Ternopil Ivan Pul’uj National Technical University, Ternopil, Ukraine
3
Department of Computer Engineering, Ternopil Ivan Pul’uj National Technical University, Ternopil, Ukraine
*Corresponding author: bodnarchuk.io@gmail.com
Received September 30, 2013; Revised January 17, 2014; Accepted January 22, 2014
Abstract Since growing complexity of software systems it is more difficult to meet demands of quality during the
process of their design. To solve this problem with minimal loss this process is transferred onto more early stages of
design, particularly onto the design of architecture. The architecture is treated as the set of components that
encapsulates the logic of calculations, and connections that ensure the interaction between components and create
their configuration. Since the architecture of software system is a high-level abstract model for representation of
system structure and key properties, its selection grounds the insurance of quality for software system. In the paper
the questions of evaluation of architecture quality on the set of quality attributes with Analytic Hierarchic Process
(AHP) with applying of optimization algorithm for estimating of weights of alternatives are discussed. The conflicts
between quality indices and trade-offs between them are analyzed.
Keywords: Software Architecture, Multivalued Optimization, Quality of Software Architecture, Software
Architecture Evaluation
Cite This Article: Alexander Kharchenko, Ihor Bodnarchuk, and Vasyl Yatcyshyn, “The Method for
Comparative Evaluation of Software Architecture with Accounting of Trade-offs.” American Journal of
Information Systems, vol. 2, no. 1 (2014): 20-25. doi: 10.12691/ajis-2-1-5.
1. Introduction
The quality of architecture decision is evaluated on the
totality of criteria, and its selection always is a trade-off,
because for the given set of functional requirements and
requirements for quality there is no single best solution,
and improving of some criteria leads to deterioration of
others and vice versa. So why when selecting the
architecture decision for software system it is necessary to
apply the methods of multicriteria evaluation with
accounting of conflicts between indices of quality and to
make trade-offs.
There are early and late evaluation of architectures.
Early one is based on the experience of designers and
logical reasoning because there are not any arte facts that
allow to simulate the performance of the software system.
Methods that realize early evaluation are based of
scenarios. Following methods are belong to this group:
SAAM and ATAM [1]. On the base of stakeholder
priorities defined quality criteria. A scenario is working
out to check the satisfaction for each quality attribute, and
assessing the level of satisfaction of the attribute by given
architecture alternative is carried out.
ATAM method is similar to SAAM, but here for
selected architectures the risks of satisfaction of quality
attributes are evaluated on the base of analysis of
scenarios. Evaluation of risks the group of experts
performs, and this group as well ranges alternatives
according to the level of risk and defines so called points
of sensitivity on the components or connections of
architecture, trade-offs between indices of quality are
analyzed too.
For reasonable selection of decision in the method
SAAM/ATAM selected architectures are analyzed on the
subject of costs and benefits with applying of method
CBAM [2]. This method ensures economic analysis of
software system, which are based on the selected on
previous methods variants of architecture and scenarios of
simulation. Experts assign scores for quality indices from
1 to 100 and range architectures according to scores what
these architectural deci
ij
Cont sions ensure for certain
attribute. Evaluation of each architecture alternative is
calculated according to the following expression:
( ) ( )
,
1,
1, .
i ij j
j K
BA Cont Q i n
=
= ⋅ =
∑
(1)
Here –
ij
Cont is the weight of i
th
architecture
corresponding to j
th
attribute;
j
Q – the priority of j
th
attribute.
This method allows to evaluate cost for realization of
each alternative and gives possibility to calculate the index
of desirability as relation of benefit to costs. On the base
of obtained data the best solution is selected.