Modeling Software Architecture

The type of structure modeling software system

Structural model

This is one of the most intuitive, the most common modeling methods . This approach to the architecture components, connectors and other concepts to characterize the structure, and try to reflect important semantic content through the system structure, including the configuration of the system, constraints implicit assumption, style, and other properties.

The core structure of the model is studied architecture description language

Framework Model

Frame structure model is similar to model , but it is less focused and detailed description of the structure is more focused on the overall structure.

The main frame model with some special problems for the only goal of establishing structures for and adapt to the problem .

For example: MVC model

image

Functional Model

Functional model architecture that is a set of member functions hierarchically composition ,Providing service to an upper lower

Functional model can be seen as a special framework model.

image

Dynamic model

Dynamic model is a complement to the structure or nature of the behavior of the model framework, systematic study of "large particles" of.

For example, the evolution of reconfiguration or system described. Dynamic configuration may refer to the overall structure of the system, to establish a communication channel or removal or the calculation process.

Process Model

Step process models and process research configuration of the system.

Structure is the result of some process to follow the script.

The core model architecture

  • Member is a software unit having a certain function, there are two kinds of storage elements and calculating . It can be divided atom member and the composite member .
  • Means for connecting the connector member.
    Such as pipeline, procedure calls, event broadcast, SQL connections, etc.
  • The connector member is a package entity can interact with the outside world via the interface. Interface port member by a group consisting of each port is a specific interaction point. The connector is called role

image

"4 + 1" view model

image

"4 + 1" view model from different perspectives 5 comprising a logical view, process view, physical view, and views the scene view developed software architecture will be described.

Each view is only concerned with one aspect of the system, five view the entire contents combined together to reflect the system's software architecture .

Logical View

Functional requirements logical view of the main support system, that system to the end user of the service. In the logical view, the function of the system into a series of abstractions primarily from problem areas. Such decomposition not only can be used for functional analysis, but also as a general mechanism in the identification and design elements of the various portions of the overall system.

In object-oriented techniques, by abstraction, encapsulation and inheritance, the object model may be used to represent a logical view, class diagrams to describe a logical view.

Notation

image


image

The main problem in using the logical view of object-oriented style of style, to be noted that the design of the logical view is to maintain a single, cohesive throughout the system object model.


For larger-scale systems, the architectural level contains dozens or even hundreds of classes.

image

Development view

Development view, also known as module view, mainly on organizational and management software modules.

View to consider the needs of the development of internal software , software reuse and commonality, such as ease of software development, software, to fully consider the limitations due to the different specific development tools brought.

Development view described by the system model of FIG input and output relationship of the subsystems of FIG.

In the development view, the best use of layers 4-6 subsystem ,And each subsystem can only communicate with the subsystems of the same or lower layerSo you can make each level interface to both complete and concise, avoiding the complex dependencies between modules.

The design should take full account, for each level,The lower the level, the stronger the versatilitySo, we can ensure that when an application needs change, made minimal changes . With a view to develop the style is usually the style hierarchy.

image

Notation

image

Process View

Process view focuses on the system's operating characteristicsThe main concern of some non-functional requirements .

Process View emphasis on concurrency, distribution, systems integration and fault tolerance , and how to fit the structure of the process from the logical view of the main abstraction.It also defines the logical view of the operation of each particular class is performed in which a thread

Process view can be described as multiple layers of abstraction ,Each level separately focus on different aspects of. inThe highest level of abstraction, the process structure can be seen as a set of tasks constitute an execution unit. It can be viewed as a series of separate, logical programs communicate with each other through the network. They are distributed, connected by a hardware resource bus or local area network, wide area network.

Notation

image


image

Physical View

Physical view of the main consideration how to mapping software to hardwareIt usuallyConsidering the performance, scale and reliabilityWait. Solve the system topology, system installation, communications and other issues.

When the software is running on different nodes, various views of the member directly or indirectly corresponding to the different nodes of the system. Therefore, from software to map nodes have a high flexibility, when the environment changes, minimal impact on other view of the system.

Notation

image


image


image

Scenes

Those scenes can be seen as an important abstract system activity, it makes four view of an organic linkIn a sense the scene is the most important abstract needs . In the development of architecture, it can help designers find the role of the relationship between the members and their architecture. Meanwhile, the scene can also be used to analyze a particular view, different views or describe how the components interact .

Scene can text representation, it can also be represented graphically .

image

to sum up

Static structure and development view describes the logical view of the system , dynamic view of the structure and the physical process view describing the system .

For different software systems, focusing angles are different . For example, the management information system, the system will be described focusing on the comparison from the logical view and developed view, and for real-time control systems, pay more attention to the process described from the view and the view of the physical system.

Select modeling tools and symbols: no uniform requirement.

Life cycle model architecture

image

Guess you like

Origin blog.csdn.net/hjc256/article/details/91424211