Open Access Open Access  Restricted Access Subscription Access
Open Access Open Access Open Access  Restricted Access Restricted Access Subscription Access

Software Architecture Evaluation: An Assessment


Affiliations
1 Department of Computer Science, University of Kashmir, Jammu and Kashmir, India
     

   Subscribe/Renew Journal


Software architecture is what defines a software system to be built. It starts early in the software development life cycle. The software architecture defines the data as well as the components of any software system along with the relation between them. It constitutes the blueprint that directs the development of the computer based software system. Being a critical activity of software development life cycle, any error in the design phase of software development can be critical to an organization dealing with the project and as such requires evaluation process that will not only analyse the architecture for its quality attributes but will benefit the software development organization by minimizing the risks associated with the software system to be built by pinpointing the errors early in the process of development. This paper highlights the architecture evaluation process with some examples of evaluation methods along with related work that has been previously done in the said field.

Keywords

Architecture Analysis, Architecture Trade-off Analysis Method, ARGUS-I, Empiricallybased Software Architecture Evaluation, Layered Queuing Networks, Software Architecture Analysis Method, Software Evaluation Methods, Software Quality Attributes.
Subscription Login to verify subscription
User
Notifications
Font Size


  • Bahsoon, R., & Emmerich, W. (2003). Evaluating software architectures: Development stability and evolution. In Proceedings of the ACS/IEEE International Conference on Computer Systems and Applications, Tunis, Tunisia, (pp. 47-56.) IEEE Computer Society Press: Los Alamitos, US. Doi: 10.1109/ AICCSA.2003.1227480.
  • Cook, D. (2007). Architecture evaluation and review practices. Retrieved from http://msdn.microsoft. com/en-us/library/bb896741.aspx
  • Bass, L. (2007). Software architecture in practice. Pearson Education India.
  • Mattson, M., Grahn, H., & Martensson, F. (2006). Software Architecture Evaluation Methods for Performance, Maintainability, Testability, and Portability. Retrieved from http://www.ide.bth. se/~hgr/Papers/qosa2006.pdf
  • Pressman, R. S. (2005). Software Engineering: A Practitioner’s Approach (6th ed.). New York, NY: McGraw-Hill Higher Education.
  • Roy, B., & Graham, T. C. N. (2008). Methods for Evaluating Software Architecture: A Survey. (Report No. 2008-545). School of Computing Queen’s University at Kingston: Canada. Retrieved from http://techreports.cs.queensu.ca/files/2008-545.pdf.
  • Shaw, M., & Garland, D. (1996). Software architecture: Perspectives on an emerging discipline. USA: Prentice Hall.
  • Shaw, M., & Clements, P. (2006). The golden age of software architecture: A comprehensive survey. Retrieved from http://reports-archive.adm.cs.cmu. edu/anon/isri2006/CMU-ISRI-06-101.pdf
  • Clements, P., Klein, M., & Kazman, R. (2002). Evaluating software architectures: Methods and case studies. USA: Addison-Wesley Longman Publishing.
  • Babar, M. A., Zhu, L., & Jeffery, R. (2004). A framework for classifying and comparing software architecture evaluation. In Proceedings of Australian Software Engineering Conference (ASWEC), (pp. 309-318). Retrieved from http://citeseerx.ist.psu.edu/viewdoc/ summary?doi=10.1.1.1.5504
  • Griman, A., Perez, M., Mendoza, L., & Losavio, F. (2006). Feature analysis for architectural evaluation methods. Journal of Systems and Software, 79(6), 871-881. Doi: http://dx.doi.org/10.1016/j. jss.2005.12.015
  • Li, Z. H. A. N. G., & Shou-Xin, G. H. W. (2008). Software architecture evaluation. Journal of Software.
  • Breivold, H. P., Crnkovic, I., & Larsson, M. (2012). A systematic review of software architecture evolution research. Information and Software Technology, 54(1), 16-40.
  • Samarthyam, G., Suryanarayana, G., Sharma, T., & S. Gupta. (2013). MIDAS: A design quality assessment method for industrial software. In Proceedings of the 2013 International Conference on Software Engineering, 2013, (pp. 911-920). Press Piscataway, NJ, USA.
  • N. B. Harrison, & P. Avgeriou. (2013). Using PatternBased Architecture Reviews to Detect Quality Attribute Issues-An Exploratory Study. In J. Noble, R. Johnson, U. Zdun, & E. Wallingford (Eds.), Transactions on Pattern Languages of Programming III (pp. 168-194). Berlin Heidelberg: Springer. Doi: 10.1007/978-3-642-38676-3_5
  • Roy, B., & Graham, T. C. N. (2008). Methods for evaluating software architecture: A survey. School of Computing TR, 545, 82.
  • Mattsson, M., Håkan, G., & Frans, M. (2006). Software architecture evaluation methods for performance, maintainability, testability, and portability. In 2nd International Conference on the Quality of Software Architectures.
  • Reusner, R., Schmidt, H. W., & Poernomo, I. H. (2003). Reliability prediction for component-based software architectures. Journal of Systems and Software, 66(3), 241-252.
  • Ionita, M. T., Hammer, D. K., & Obbink, H. (2002). Scenario-Based Software Architecture Evaluation Methods: An Overview. Department Software Architectures, Philips Research, Mathematics and Computing Science, Technical University 2002. Book chapter: Evaluating Software Architecture.
  • Vieira, M. E. R., Dias, M. S., & Richardson, D. J. (2000). Analyzing software architectures with Argus-I. In Proceedings of the 22nd International Conference on Software Engineering, (pp. 758-761).
  • Petriu, D., Shousha, C., & Jalnapurkar, A. (2000). Architecture-based performance analysis applied to a telecommunication system. IEEE Transactions on Software Engineering, 26(11), 1049-1065.
  • Lindvall, M., Tvedt, R. T., & Costa, P. (2003). An empirically based process for software architecture evaluation. Empirical Software Engineering, 8(1), 83-108.

Abstract Views: 263

PDF Views: 0




  • Software Architecture Evaluation: An Assessment

Abstract Views: 263  |  PDF Views: 0

Authors

Shahkar Riyaz Tramboo
Department of Computer Science, University of Kashmir, Jammu and Kashmir, India
S. M. K. Quadri
Department of Computer Science, University of Kashmir, Jammu and Kashmir, India

Abstract


Software architecture is what defines a software system to be built. It starts early in the software development life cycle. The software architecture defines the data as well as the components of any software system along with the relation between them. It constitutes the blueprint that directs the development of the computer based software system. Being a critical activity of software development life cycle, any error in the design phase of software development can be critical to an organization dealing with the project and as such requires evaluation process that will not only analyse the architecture for its quality attributes but will benefit the software development organization by minimizing the risks associated with the software system to be built by pinpointing the errors early in the process of development. This paper highlights the architecture evaluation process with some examples of evaluation methods along with related work that has been previously done in the said field.

Keywords


Architecture Analysis, Architecture Trade-off Analysis Method, ARGUS-I, Empiricallybased Software Architecture Evaluation, Layered Queuing Networks, Software Architecture Analysis Method, Software Evaluation Methods, Software Quality Attributes.

References