Confirming and Reconfirming Architectural Decisions on Scalability: A Goal-Driven Simulation Approach

Scalability, which refers to an ability to support increased loads with acceptable performance, is among the key issues in deciding on an architecture with its essential components, together with relationships between such components, as well as constraints on such components and relationships. As with just about any design, the architectural design space is potentially huge, if not infinite, while the quality of the final system to be implemented inevitably depends largely on various decisions made during the architectural design phase. Unfortunately, however, it often times seems difficult to analyze if an architectural design incorporates good decisions or even bad ones, since an architectural design is (supposed to stay) at a high-level of abstraction and not concrete enough on its performance and scalability behavior, before we commit to the time-consuming and costly lower level design, implementation and testing. In this paper, we propose an integration of goal-orientation, which is qualitative in nature, and simulation, which is quantitative in nature.