Author Topic: An Integrated Approach of AHP-GP and Visualization for Software Architecture Opt  (Read 1928 times)

0 Members and 1 Guest are viewing this topic.

IJSER Content Writer

  • Sr. Member
  • ****
  • Posts: 327
  • Karma: +0/-1
    • View Profile
Author : K.Delhi Babu, P.Govindarajulu, A.Ramamohana Reddy, A.N.Aruna Kumari
International Journal of Scientific & Engineering Research Volume 2, Issue 6, June-2011
ISSN 2229-5518
Download Full Paper : PDF

Abstract— Software Architecture has emerged as an important sub-discipline of software engineering. A key aspect of the design of any software is its architecture styles, i.e. components and connectors and their relationships. Selecting the best style is difficult because there are multiple factors such as project risk, corporate goals, limited availability of resources, etc. Therefore this study presents a methodology for selection of software architecture styles. In this paper we explore the Analytic Hierarchy Process (AHP) within a zero-one goal programming (ZOGP) model for selection of architecture styles. AHP is applied to the decision problem involving multiple alternatives and criteria and aims at selecting an alternative from a known set of alternatives. Then Goal programming model is used to optimize the objective function while simultaneously satisfying all the constraints. Further, AHP-GP Visualization framework and visualization tool (SAVE Tool) are applied to evaluate the selected software architecture style.
Index Terms— Software Architecture, Selection of Software Architecture Styles, Multi-Criteria Decision Making, Analytic Hierarchy Process (AHP), Zero-One Goal Programming (ZOGP), Visualization. 

1   INTRODUCTION                                                                      
Nowadays, decision-making has become more complex due to reasons related to (1) the alternatives, (2) the goals and (3) the environment in which decisions are being made. First, for almost any decision the number of alternatives has grown dramatically. Second, the number and the nature of the goals, criteria or con-straints, have changed. When making decisions, the goals are not limited to related objectives. The third set of reasons for the increased complexity of decisions refers to the environment. The changing alternatives, goals, and environment enlarge the complexity of decisions and call for effective decision support. The basic approach of mathematical programming models is to optimize the objective function while simultaneously satisfying all the constraints that limit the activities of the decision maker.
Software architectures significantly impact software project success [1]. However, creating architectures is one of the most complex activities during software development [2]. When creating architectures, architecture styles narrow the solution space: First, styles define what elements can exist in architecture (e.g. components, connectors). Second, they define rules on how to integrate these elements in the architecture. Moreover, styles address functional and non-functional issues [3].  This paper focuses on two mathematical methods, Analytic Hierarchy Process and Goal Pro-gramming. Further, AHP-GP-Visualization framework and Visualization Tool (SAVE Tool) are applied to evaluate the selected software architecture style.

The contributions of this paper are as follows:
1.   This paper presents a methodology for selection of software architecture style which uses two mathe-matical techniques Analytic Hierarchy Process and Goal Programming.
2.   Analytic Hierarchy Process (AHP) is used to deter-mine the degree of relative importance among the alternatives and criteria.
3.   It provides a way of collecting expert group opinion along with stakeholders interests (e.g. reliability, performance)
4.   Goal Programming (GP) to determine the desired level of attainment for each goal and penalty weights for over or under achievement of each goal [4]
5.   AHP-GP Visualization Framework and Visualization Tool are used to evaluate the selected software architecture style.

In AHP, pairwise comparisons matrix is formulated and then the relative priority of each alternative is calcu-lated. After obtaining the overall priorities of alternatives and using the goal constraints, zero-one goal programming (ZOGP) model formulated. The combined use of the AHP and GP approaches extended the use of Multi Criteria Decision-Making approach.

2.1 Analytic Hierarchy Process
The initial study identified the multi-criteria decision technique known as the Analytic Hierarchy Process (AHP) to be the most appropriate for solving complicated problems. Decision-making involving multiple objectives and/or criteria is called Multi Criteria Decision-Making (MCDM) [5]. Often the criteria include both qualitative and quantitative factors, whereas the quantitative criteria may be measured in incomparable units (for example, the market share and the price of a software package).  T.L. Saaty introduced AHP to solve the problem of independence on alternatives and/or criteria. AHP allows better, easier and more efficient identification of selection criteria, their weighting and analysis [6]. It reduces drastically the decision cycle and allows organization to minimize common mistakes by using the expert group decision [7].

Thus, AHP is “a method of breaking down a com-plex, unstructured situation into its components parts; arranging these parts, or judgments on the relative importance of each variable; and synthesizing the judgments to determine which variables have the highest priority and should be acted upon to influence the outcome of the situation” [8]. In Analytic Hierarchy Process, a first pairwise comparison matrix for alternatives and criteria are formulated and then the relative priority of each alternative and criterion is calculated. In Figure 1, step 1 to step 4 depict AHP model.
2.2 Goal programming
       After obtaining the overall priorities of alternatives using AHP, with these priorities and goal constraints, Goal Programming (GP) model is formulated [9] as illu-strated in figure 1, step 5 to step 6.
The GP model for architecture style selection can be stated as follows:

         Minimize              (1) 

         Subject to            

         for i = 1, 2, …, m, j = 1, 2, …, n         (2) 
         for i = m+1, m+2, …m+n, j = 1, 2, …, n    (3)

       = 0 or 1  for         (4)

where m is the number of goals to be considered in the model, n is the pool of architecture styles from which the optimal set will be selected,    = the AHP mathemat-ical weight on the j =1, 2,…, n architecture style,  = some k priority pre-emptive priority  , for i =1, 2,…, m goals,  = the ith positive and negative deviation variables for i = 1, 2,…, m goals, = a zero-one variable, where j = 1, 2,…, n possible projects to choose from and where  = 1, then select the jth architecture style or when =0, then do not select the jth architecture style,  = the jth parameter of the ith resources, and  = the ith available resource or limitation factors that must be considered in the selection decision. In Figure 1, steps 5 to step 7 depict GP model.

      The presented GP formulation can easily be rear-ranged or modified depending on the priorities of the decision makers and circumstances of the decision environment. The GP objective function includes the positive and negative deviational variables which represent the deviations from the desired goal levels (i.e., over-achievement of a goal is represented by d+ and underachievement of a goal is shown as d-). Resource limitations are considered more important. The solution of the GP model will minimize the objective function and satisfy the goal constraints.

Read More: Click here...