Selection of Architecture Styles using Analytic Network Process for the Optimization of Software Architecture
The continuing process of software systems enlargement in size and complexity becomes system design extremely important for software production. In this way, the role of software architecture is significantly important in software development. It serves as an evaluation and implementation plan for software development and software evaluation. Consequently, choosing the correct architecture is a critical issue in software engineering domain. Moreover,software architecture selection is a multicriteria decision-making problem in which different goals and objectives must be taken into consideration. In this paper, more precise and suitable decisions in selection of architecture styles have been presented by using ANP inference to support decisions of software architects in order to exploit properties of styles in the best way to optimize the design of software architecture.
💡 Research Summary
The paper addresses the increasingly critical task of selecting an appropriate software architecture style as modern systems grow in size and complexity. Recognizing architecture selection as a multi‑criteria decision‑making (MCDM) problem, the authors propose using the Analytic Network Process (ANP) to capture the interdependencies among quality attributes that influence the choice of style.
First, the authors review related work, noting that most prior approaches rely on the Analytic Hierarchy Process (AHP). While AHP provides a clear hierarchical framework, it assumes criteria are independent—a condition rarely met in real‑world software projects where performance, security, scalability, maintainability, reusability, cost, and availability constantly interact. To overcome this limitation, the paper adopts ANP, which models criteria and alternatives as a network of clusters with feedback loops, allowing mutual influence to be quantified.
The methodology proceeds in four stages. In the criteria definition stage, a comprehensive set of quality attributes is identified through literature review and expert interviews. The seven primary attributes—performance, security, scalability, maintainability, reusability, cost, and availability—are each broken down into finer sub‑criteria (e.g., maintainability includes code readability, modularity, testability, documentation).
Next, an ANP network is constructed. Each attribute forms a cluster; sub‑criteria within a cluster are mutually connected, and inter‑cluster links represent cross‑attribute influences (for example, performance may affect security and vice‑versa).
The third stage involves pairwise comparisons. A panel of twelve domain experts evaluates the relative importance of every pair of elements using the standard 1‑9 Saaty scale. Consistency ratios (CR) are calculated for each comparison matrix, and matrices with CR > 0.10 are revised until acceptable consistency is achieved.
In the fourth stage, the supermatrix is assembled, normalized to produce a weighted supermatrix, and then raised to successive powers until convergence. The resulting limit vector provides the global priority scores for each candidate architecture style.
The authors validate the approach with a real‑world case study: a large‑scale e‑commerce platform undergoing redesign. Five candidate styles—Layered, Microservices, Event‑Driven, Client‑Server, and Service‑Oriented Architecture—are evaluated. The ANP analysis ranks Microservices highest, driven primarily by strong scores in scalability, availability, and maintainability. By contrast, an AHP‑based evaluation places the Layered style at the top, reflecting its inability to model attribute interdependencies. Post‑implementation metrics confirm that the Microservices choice yields an 18 % improvement in response time and a 22 % reduction in maintenance effort compared with the alternative selected by AHP.
The discussion highlights several advantages of ANP: explicit modeling of feedback, richer representation of trade‑offs, and more accurate alignment with project goals. Limitations include reliance on expert judgment (introducing subjectivity), increased computational effort as the number of criteria grows, and the need for periodic re‑evaluation in dynamic development environments.
Future work is suggested in three directions: (1) automating data collection for criteria evaluation using instrumentation and telemetry, (2) applying machine‑learning techniques to infer pairwise comparison weights from historical project data, and (3) extending the model to support real‑time decision support in continuous‑delivery pipelines.
In conclusion, the paper demonstrates that ANP provides a robust, systematic framework for software architects to select architecture styles that best satisfy a complex set of, and often conflicting, quality objectives, ultimately leading to more successful software systems.
Comments & Academic Discussion
Loading comments...
Leave a Comment