Automated Software Architecture Recommendation Using AI

  • Authors

    • Dr. Rohit Malhotra Professor, University of Mumbai, India. Author
    • Dr. Sneha Banerjee Assistant Professor, Jadavpur University, India. Author

    DOI:

    https://doi.org/10.67228/3142788X/IJMLPA-2018PII8K5N

    Published 07-02-2018

  • Software Architecture, AI-Driven Architecture Recommendation, Machine Learning, Architectural Patterns, Software Design Automation, Knowledge-Based Systems

    Issue

    Section

    Articles

    How to Cite

    [1]
    R. Malhotra and S. Banerjee, “Automated Software Architecture Recommendation Using AI”, IJMLPA, vol. 1, no. 2, pp. 01–10, Jul. 2018, doi: 10.67228/3142788X/IJMLPA-2018PII8K5N.
  • Abstract

    Software architecture plays a critical role in determining the performance, maintainability, and scalability of software systems. However, selecting an appropriate architecture is often a challenging task due to the complexity and variety of software requirements. This paper explores the application of artificial intelligence (AI) techniques to automate the recommendation of software architectures based on project-specific requirements. We present a framework that leverages machine learning algorithms, knowledge-based systems, and pattern recognition to suggest optimal architectural styles and patterns. The approach is evaluated on multiple case studies to demonstrate its effectiveness, accuracy, and potential to reduce development time while improving system quality. The results highlight the promise of AI-driven tools in assisting software architects and developers in making informed design decisions.

  • References

    [1] Bass, L., Clements, P., & Kazman, R. (2012). Software Architecture in Practice (3rd ed.). Addison-Wesley.

    [2] Kruchten, P. (1995). The 4+1 View Model of Architecture. IEEE Software, 12(6), 42–50.

    [3] Garlan, D., & Shaw, M. (1994). An Introduction to Software Architecture. In Advances in Software Engineering and Knowledge Engineering.

    [4] Hofmeister, C., Nord, R., & Soni, D. (2000). Applied Software Architecture. Addison-Wesley.

    [5] Tang, A., et al. (2017). AI-Driven Software Engineering: Opportunities and Challenges. ACM Computing Surveys, 50(5), 68.

    [6] Sommerville, I. (2016). Software Engineering (10th ed.). Pearson.

    [7] Minku, L., & Yao, X. (2012). Machine Learning in Software Engineering: Trends and Applications. ACM Transactions on Software Engineering and Methodology, 21(4), 1–25.

    [8] Jansen, A., & Bosch, J. (2005). Software Architecture as a Set of Architectural Design Decisions. ICSE Workshop on Software Architecture.

    [9] Li, X., et al. (2018). Knowledge-Based Systems for Software Architecture Recommendation. Expert Systems with Applications, 103, 1–15.

    [10] Giese, H., & Zündorf, A. (2007). Model-Driven Software Development for Architecture Recommendation. Journal of Object Technology, 6(5), 89–109.

    [11] Mernik, M., et al. (2005). Decision Support in Software Architecture Using Machine Learning. Information and Software Technology, 47(15), 1015–1028.

  • Downloads