A Decision-Making Technique for Software Architecture Design

Full Text (PDF, 261KB), PP.43-49

Views: 0 Downloads: 0

Author(s)

Jubayer Ahamed 1,* Dip Nandi 1

1. American International University-Bangladesh/Computer Science, Dhaka, 1229, Bangladesh

* Corresponding author.

DOI: https://doi.org/10.5815/ijmsc.2023.04.05

Received: 30 Jul. 2023 / Revised: 21 Aug. 2023 / Accepted: 19 Sep. 2023 / Published: 8 Dec. 2023

Index Terms

Software Architecture, Decision-making technique, Software Design Activities, Decision Mode, Decision Nature, Decision Makers

Abstract

The process of making decisions on software architecture is the greatest significance for the achievement of a software system's success. Software architecture establishes the framework of the system, specifies its characteristics, and has significant and major effects across the whole life cycle of the system. The complicated characteristics of the software development context and the significance of the problem have caused the research community to build various methodologies focused on supporting software architects to improve their decision-making abilities. With these efforts, the implementation of such systematic methodologies looks to be somewhat constrained in practical application. Moreover, the decision-makers must overcome unexpected difficulties due to the varying software development processes that propose distinct approaches for architecture design. The understanding of these design approaches helps to develop the architectural design framework. In the area of software architecture, a significant change has occurred wherein the focus has shifted from primarily identifying the result of the architecting process, which was primarily expressed through the representation of components and connectors, to the documentation of architectural design decisions and the underlying reasoning behind them. This shift finally concludes in the creation of an architectural design framework. So, a correct decision- making approach is needed to design the software architecture. The present study analyzes the design decisions and proposes a new design decision model for the software architecture. This study introduces a new approach to the decision-making model, wherein software architecture design is viewed based on specific decisions.

Cite This Paper

Jubayer Ahamed, Dip Nandi, "A Decision-Making Technique for Software Architecture Design", International Journal of Mathematical Sciences and Computing(IJMSC), Vol.9, No.4, pp. 44-49, 2023. DOI:10.5815/ijmsc.2023.04.05

Reference

[1]Jansen A. and Bosch J., "Software Architecture as a Set of Architectural Design Decisions", Proceedings of the 5th Working IEEE/IFIP Conference on Software Architecture (WICSA’05), 2005 IEEE.
[2]N. Medvidovic and R. N. Taylor, "A classification and comparison framework for software architecture description languages.", IEEE Transactions on Software Engineering, 26(1):70–93, 2000.
[3]D.E. Perry and A.L. Wolf, “Foundations for the Study of Software Architecture,” ACM Software Eng. Notes, vol. 17, no. 4, 1992, pp. 40–52.
[4]Richard N. Taylor and André van der Hoek, “Software Design and Architecture: The once and future focus of software engineering”, Future of Software Engineering (FOSE'07), IEEE computer society, 2007.
[5]D. Garlan and D. Perry, “Introduction to the special issue on software architecture”, Computer Science, IEEE Trans. Software Eng., Published 1 April 1995.
[6]N. Medvidovic and R. N. Taylor, “Software Architecture: Foundations, Theory, and Practice”, ICSE’10, Cape Town, May 2- 8 2010.
[7]Antony Tang and Hans van, "Design Strategy and Software Design Effectiveness", Swinburne University of Technology, IEEE, 2012.
[8]J. Lee and K. Lai, "What is Design Rationale?" in Design Rationale - Concepts, Techniques, and Use, T. Moran and J. Carroll, Eds., New Jersey: Lawrence Erlbaum, pp. 21-51, 1996.
[9]Tang A., Razavian M., Paech B. and Hesse T., "Human Aspects in Software Architecture Decision Making: A Literature Review", IEEE International Conference on Software Architecture, 2017. doi: 10.1109/ICSA.2017.15.
[10]Christiaans H. and Almendra R., "Accessing decision-making in software design", Elsevier Ltd, 2010.
[11]E. Gamma, R. Helm, R. Johnson, and J. Vlissides, "Design Patterns - Elements of Reusable Object-Oriented Software.", Addison Wesley, 1994.
[12]J. Lee, "Design Rationale Systems: Understanding the Issues," IEEE Expert, vol. 12, pp. 78-85, 1997.
[13]U. Van Heesch, P. Avgeriou, and R. Hilliard, "Forces on architecture decisions-a viewpoint," in Software Architecture (WICSA) and European Conference on Software Architecture (ECSA), 2012 Joint Working IEEE/IFIP Conference on, 2012, pp. 101-110.
[14]Shahin M., Liang P. and Khayyambashi M.,"Architectural Design Decision: Existing Models and Tools", IEEE/IFIP WICSA/ECS,2005.
[15]Carvajal L., Moreno A., Isabel MI., and Seffah A.,” Usability through Software Design”, IEEE Transactions on Software Engineering, vol. 39, no. 11, November 2013.