Representation-Abstraction-control-system structure mode learning notes

Source: Internet
Author: User

The abstract-control (PAC) architecture model defines a structure of an interactive software system in a hierarchical form of a cooperative agent. Each agent is responsible for a specific aspect of the application's functions, and has three components: representation, abstraction, and control. This subdivision separates the Human-Computer Interaction part of the agent from its functional kernel and its communication with other agents.

1.Example

A simple proportional political election system.

2.Context

Develop an interactive application with the assistance of the agent.

3.Problem

In the agent architecture of this writing, specify an agent for a specific task. All agents provide all system functions.

1) Agents usually maintain their own statuses and data;

2) since their respective Human-Computer interactions are often quite different, the interaction agent provides their own user interfaces.

3) systems change over time, and their representation features are particularly easy to change.

4.Solution

Build an interactive application in the tree structure of the PAC agent. There should be a top-layer agent, several middle-layer agents, and multiple bottom-layer agents. Each agent is responsible for a specific aspect of the application function, which is composed of three components :(? Why do we need so many agents as a module ?).

1) indicates the visual behavior of the component to provide the PAC agent.

2) The abstract component maintains the data model that forms the basis of the agent and provides the function to operate on the data.

3) control component connection representation and abstract component, and is responsible for communicating with other Pac agents.

The top-layer agent provides the core functions of the system.

The underlying agent expresses some independent semantic concepts. Users can work on these concepts, such as electronic forms and charts.

The middle-layer agent expresses the combination of the underlying agent or the relationship between the underlying agent.

5.Structure

1, Top-layer agent

It should be the core part of the entire system. It maintains the global data model of the entire system.

1) The abstract component maintains the global data model of the entire system.

2) indicates that components are generally of no practical use.

3) The control component provides services for the underlying agent to operate global data, maintain the agent hierarchy, and save the interaction information between the user and the system :(? Why save it here)

2, Underlying agent

The underlying agent provides a specific Semantic Concept (such as a bar chart) in the application field ).

1) indicates that the component provides a specific view corresponding to the semantic concept. The view information is saved.

2) The abstract component function is similar to the top-layer agent abstract component function. It is responsible for maintaining the agent data. The difference is that the agent is private when the data is used.

3) The control component is responsible for expressing the communication between the component and the abstract component to avoid their direct dependency. In addition, it is responsible for communicating with higher-level agents.

3, Middle-layer agent

Cooperation and collaboration. When a complex object is composed of multiple underlying agents, it maintains these underlying agents.

Another role is to maintain consistency between the underlying agents. For example, coordinate multiple views of the same data.

The abstract component maintains its unique data, indicating that the component implements its user interface, and the control component is responsible for communicating with other agents.

6.Dynamic Features

It mainly describes two dynamic features:

1) The user calls a new image. The view coordination agent sends an open request to the graphics agent. The graphics agent control component receives the request and applies for data from the top-level agent. After receiving the request, the top-level Agent control component obtains data from the abstract component, and return it to the graphical agent control component. The graphic agent control component sends data to the abstract component. The abstract component saves data. The control component calls the control component to generate the image;

2) enter a data record. The user enters data through the electronic form; the data between control components of the electronic form is sent to the top-level agent; the top-level Agent control component receives the data and notifies the abstract component to update the data; the abstract component notification control component updates all data-dependent agents, and the control component notification Coordination Program agent.

7.Implementation

1) define an application model.

A. What services should the system provide;

B. Which components provide these services;

C. Relationship between components;

D. How to collaborate;

E. What data does each component operate on;

F. How do users interact with the software;

2) define general policies for the organizational unit's PAC hierarchy. When a group of agents depends on one agent, this agent is considered as the root of this group of agents. It is not good to select a proper layer depth, either too deep or too shallow.

3) Specify the top-level agent. This is the core of the entire system.

4) Specify the underlying agent. This is the smallest unit that users can operate and observe.

5) Specify the underlying agent of the system service. For example, communication agent and error handling agent.

6) Specify the intermediate agent. There are two types: one is responsible for collaboration and the other is responsible for combination.

7) separate core functions from human-computer interaction.

8) provides external interfaces.

9) connection levels.

8.Effect

1) Transaction separation;

2) support for changes and extensions;

3) supports multiple tasks;

Disadvantages:

1) increased complexity;

2) responsible control components;

3) efficiency;

4) applicability;

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.