Author: Xiamen Dragon Software Engineering Co., Ltd. Lulin Sheng Abstract: The runtime of the program from both the structure and the organizational structure of the source code explored various system architecture design factors should be considered, cited a number of system architecture design document should be considered problem. Keywords: system architecture, design, considering, factor: 25 years ago, the ancient Roman architect Vitruwei said: "The ideal architect should be both a literaryist and a digital home, he should also know history and is keen on Philosophical research, proficient music, knowing medicine knowledge, having law accompliation, and understanding astronomy and astronomical calculation. "(It's so hard, software architect designer requirements? Do you think about it.) First, several related to the architecture Basic Concept: 1, Module: A group of statements that complete the specified feature, including: input, output, logical processing, internal information, running environment (corresponding to functionality but not one-on-one relationship). 2. Component: It is quite important in the system, which is almost independent alternative to implement exact functions in a clearly defined architecture environment. 3, mode (Pattern): Refers to a solution template (for structural and behavior) of at least a practical environment (more time, several environments. In UML: mode by parameterized collaboration Indicates, but UML does not directly pair other aspects (such as using the results list, use examples, etc., which can be represented by text). There are various ranges and abstraction patterns, such as architecture, analysis mode, design Mode and code mode or implementation mode. Mode will help us seize the focus. The architecture is also modeled. For example, for system structure design, we use layer mode; for distributed systems, we use proxy mode (by using agent) The actual object allows the program to control access to this object); for the interactive system, we use the MVC (M Model (Object) / V View (Output Management) / C Controller (Input Processing)) mode. Mode is for specific The problem of the problem, so we can also use the corresponding model to design the framework for the characteristics of the demand. 4, architectural pattern: Represents the basic structural organization of the software system. It provides a set of predefined subsystems, Specify their responsibilities and include rules and guidances for organizing their relationships. 5, layers: a particular way to group packets in the same abstraction level in the model. By hierarchical, logically The system is divided into many collections, and the formation of interlayer relationships should follow certain rules. By layering, the dependencies between subsystems can limit subsystems, allowing the system to be coupled to more loosely, and is easier to maintain. (Layer is a pair of architectures) The lateral division, the partition is the longitudinal division of the frame).
6. Several common methods of system layering: 1) Commonly used three-layer service: user layer, business logic layer, data layer; 2) multi-layer structure technology composition model: performance layer, intermediate layer, data layer; 3) network Systems often use three-layer structure: core layer, aggregation layer, and access layer; 4) RUP typical hierarchical method: application layer, professional business layer, middleware layer, system software layer; 5) Based on Java-based B / S mode system structure : Browser end, server side, request receiving layer, request processing layer; 6) a six-layer structure: function layer (user interface), module layer, assembly layer (software bus), service layer (data processing), data layer, Core layer; 7, architecture, art and science is willing to build architecture design and buildings): Definition in RUP: Software system architecture (at a given point) refers to the organization or structure of system important components These important components interact through the interface and the continuously reduced member and the interface; the definition in Software Architecture Practice: Software architecture of a software or computing system constitutes one or more structures of the system, They constitute the various parts of the software, forming external visible properties and internet contacts between these components; definitions in IEEE 1471-2000: The Fundamental Organization of a System Emboided in Its Components, Their Relationships To Each Other, and to the enviroment and The Principles Guiding ITS Design and Evolution, the architecture is the highest level of the system in its environment. The structure of the software system is an important component (at a specific time point) of an interface interact, which consists of some smaller components and interfaces. ("Soft Frame" can be used as a noun, as a verb, as a "architecture" equivalent to "architecture") 8, the architecture: "4 1" view (with example view, design view, implementation view, process view, " Configuration view) is a model description of a widely used architecture; the RUP process architectural description template adds an optional data view on the basis of the "4 1" view (description of the system from the permanent data storage); HP's software description template is also based on the "4 1" view. 9. Structure: Software architecture is an embodiment of a variety of structures, and the structure is a view produced from different angles of view. Just like the structure of the building, as a variety of meanings as the observer and starting point, the software framework also manifests into a variety of structures. Common software structures include: module structure, logic or conceptual structure, process or coordination structure, physical structure, use structure, call structure, data stream, control flow, class structure, etc. Second, the factors that the architecture should be considered: the module architecture design can be considered from the runtime structure of the program and the organizational structure of the source code.