Software Design: The Options ApproachReport
Many software engineering principles and concepts that are critical to reasoning about problems in software design (of which software architecture is an important special case) remain ad hoc, idiosyncratic and poorly integrated. I argue that this is due to our lack of a clean theory about how to make software design decisions. In this paper I propose that we should view software design as a process of deciding how to make irreversible capital investment in software assets of uncertain value, and that financial options theory provides a firm, unifying, simplifying and well developed basis for such decision-making. To support this view, I interpret software architecture and other related concepts in options theoretic terms.
All rights reserved (no additional license for public reuse)
Sullivan, Kevin. "Software Design: The Options Approach." University of Virginia Dept. of Computer Science Tech Report (1996).
University of Virginia, Department of Computer Science