5 / 10

The software architecture is a set of software components, subsystems, relationships, interactions, the properties of each of these elements, and the set of guiding principles that together constitute the fundamental properties and constraints of a software system or set of systems. (  ) defines a general set of element types and their interactions. The examples include Pipes and FiltersModel-View-Controller, and Reflection. A (  ) in software architecture is a representation used to understand or document one or more aspects of a problem or solution. Architecture is usually used in conjunction with many adjunct terms. The (  )defines the key strategies, organization, goals and related processes of the enterprise. At the enterprise level, the (  ) may be more of a set of guidelines on how the various software architectures should be constructed consistently across the enterprise. The (  ), which describes the high-level set of elements involved in application from a particular domain along with their interactions, is often used to focus on subsystem definition rather than application process level definition.