微软应用软件架构设计指南2.0 三种常见的定义(一) Software architecture encompasses the set of significant decisions about the organization of a software system including Selection of the structural elements and their interfaces by which the system is composed Behavior as specified in collaboration among those elements Composition of these structural and behavioral elements into larger subsystems Architectural style that guides this organization Software architecture also involves functionality, usability, resilience, performance, reuse, comprehensibility, economic and technology constraints, tradeoffs and aesthetic concerns微软应用软件架构设计指南2.0 • 三种常见的定义(一) “Software architecture encompasses the set of significant decisions about the organization of a software system including: Selection of the structural elements and their interfaces by which the system is composed. Behavior as specified in collaboration among those elements. Composition of these structural and behavioral elements into larger subsystems. Architectural style that guides this organization. Software architecture also involves functionality, usability, resilience, performance, reuse, comprehensibility, economic and technology constraints, tradeoffs and aesthetic concerns