skip to main content
10.1145/1810295.1810317acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

A cost-benefit framework for making architectural decisions in a business context

Published:01 May 2010Publication History

ABSTRACT

In any IT-intensive organization, it is useful to have a model to associate a value with software and system architecture decisions. More generally, any effort---a project undertaken by a team---needs to have an associated value to offset its labor and capital costs. Unfortunately, it is extremely difficult to precisely evaluate the benefit of "architecture projects"---those that aim to improve one or more quality attributes of a system via a structural transformation without (generally) changing its behavior. We often resort to anecdotal and informal "hand-waving" arguments of risk reduction or increased developer productivity. These arguments are typically unsatisfying to the management of organizations accustomed to decision-making based on concrete metrics. This paper will discuss research done to address this long-standing dilemma. Specifically, we will present a model derived from analyzing actual projects undertaken at Vistaprint Corporation. The model presented is derived from an analysis of effort tracked against modifications to specific software components before and after a significant architectural transformation to the subsystem housing those components. In this paper, we will discuss the development, implementation, and iteration of the model and the results that we have obtained.

References

  1. Albrecht, A. J. and Gaffney, J. R. 1983. Software Function, Source Lines of Code, and Development Effort Prediction: A Software Science Validation. IEEE Transactions on Software Engineering 9, 6, 639--648. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Bachman, F., Bass, L., and Nord, R. 2007. Modifiability Tactics. Technical Report CMU/SEI-2007-TR-002 September 2007. Carnegie Mellon Software Engineering Institute. http://www.sei.cmu.edu/library/abstracts/reports/07tr002.cfmGoogle ScholarGoogle Scholar
  3. Baldwin, C. Y. and Clark, K. B. 2000. Design Rules: The Power of Modularity. MIT Press. Google ScholarGoogle ScholarCross RefCross Ref
  4. Bass, L., Clements, P., and Kazman, R. 2003. Software Architecture in Practice 2nd Edition. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Biffl, S., Aurum, A., Boehm, B., Erdogmus, H., & Grunbacher, P. (eds.) 1998. Value-Based Software Engineering, Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Boehm, B. & Turner, R. 2004. Balancing Agility and Discipline: A Guide for the Perplexed. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Briand, L. C., Daly, J., and Wüst, J. 1999. A Unified Framework for Coupling Measurement in Object Oriented Systems. IEEE Transactions on Software Engineering, 25, 1, 91--121. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Chidamber, S. R. and Kemerer, C. F. 1994. A Metrics Suite for Object Oriented Design. IEEE Transactions on Software Engineering. 20, 6, 476--493. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Constructive Cost Model, http://sunset.usc.edu/csse/research/COCOMOII/cocomo_main.html, Last accessed February 2010.Google ScholarGoogle Scholar
  10. Kazman, R., Asundi, J., and Klein, M. 2002. Making Architecture Design Decisions: An Economic Approach. Technical Report. CMU/SEI-2002-TR-035, ADA408740. Carnegie Mellon Software Engineering Institute. http://www.sei.cmu.edu/pub/documents/02.reports/pdf/02tr035.pdf.Google ScholarGoogle Scholar
  11. Lattix -- Software for Architecture Management. http://www.lattix.com/, Last accessed February 2010.Google ScholarGoogle Scholar
  12. Lopes, C. V. and Bajracharya, S. 2005. An Analysis of Modularity in Aspect-Oriented Design. In Proceedings of Aspect-Oriented Software Development (AOSD). Chicago, IL, March 14--18, 2005. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. MacCormack, A., Rusnak, J., and Baldwin, C. 2008. Exploring the Duality between Product and Organizational Architectures: A Test of the Mirroring Hypothesis. Harvard Business School Working Paper. http://hbswk.hbs.edu/item/5894.html.Google ScholarGoogle Scholar
  14. Meredith, J. R. and Mantel, S. J. 2006. Project Management: A Managerial Approach, 6th edition. Wiley & Sons.Google ScholarGoogle Scholar
  15. Moore, M., Kazman, R., Klein, M., and Asundi, J. 2003. Quantifying the Value of Architecture Design Decisions: Lessons from the Field. In Proceedings of ICSE 25, Portland, OR. 557--562. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Ozkaya, I., Kazman, R. and Klein, M. 2007. Quality-Attribute-Based Economic Valuation of Architectural Patterns. Technical Report. CMU/SEI-2007-TR-003. Carnegie Mellon Software Engineering Institute. http://www.sei.cmu.edu/pub/documents/07.reports/07tr003.pdf.Google ScholarGoogle Scholar
  17. Schneider, G. & Winters, J. P. 1998. Applying Use Cases: A Practical Guide. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Shepperd M. and Schofield, C. 1997. Estimating Software Project Effort Using Analogies. IEEE Transactions on Software Engineering 23, 12, 732--743. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. SonarJ, http://www.hello2morrow.com/products/sonarj/whitepapers, Last accessed February 2010.Google ScholarGoogle Scholar
  20. Sullivan, K. J., Griswold, W., Cai, Y., and Hallen, B. 2001. The Structure and Value of Modularity in Software Design. In Proceedings of the 9th ACM SIGSOFT Symposium on the Foundations of Software Engineering. Vienna, Austria. 99--108. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Sullivan K. J., Griswold, W. G., Song, Y., Cai, Y., Shonle, M., Tewari, N., and Rajan, H. 2005. Information Hiding Interfaces for Aspect-Oriented Design, 166--175. In Proceedings of the Joint 10th European Software Engineering Conference and 13th ACM SIGSOFT Symposium on the Foundations of Software Engineering. Lisbon, Portugal, September 5--9. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A cost-benefit framework for making architectural decisions in a business context

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            ICSE '10: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
            May 2010
            554 pages
            ISBN:9781605587196
            DOI:10.1145/1810295

            Copyright © 2010 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 1 May 2010

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article

            Acceptance Rates

            Overall Acceptance Rate276of1,856submissions,15%

            Upcoming Conference

            ICSE 2025

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader