Architecture has been identified as a main tool for high quality system development. It encapsulates the earliest design decisions of the system under development. These decisions constrain heavily the overall design space; therefore it is worth emphasis on the reasons behind architectural choices. Methods for architecting process have been suggested by various researches. Unfortunately, they fail to achieve frameworks that can reason on the strong relationship between general system goals and the decisions that are made to fulfill those requirements. In this paper, we have three major contributions: We introduce a general framework for architectural design cycle. This framework describes an iterative process that assists in transforming system-wide goals into effective architectural description. We show, how the prioritization values among goals and existing legacy have major impact on the resulting architecture. In addition, we demonstrate that the ordering of design decisions great...