2019 System Analyst Case Analysis Real Question Memorization Content

foreword

The following content is only the answers to the test sites that I need to memorize based on the real questions of the department-by-case cases of the year, which are convenient for personal recitation and memory use. It is convenient for text-to-speech, so the content is all pure text content, the following content is for reference only.

memorize content

Based on Model Driven Architecture MDA

In the software development process based on Model Driven Architecture
MDA (Model Driven Architecture), in the MDA framework, a platform-independent modeling language is first used to build a platform-independent model PIM, and then according to the mapping rules of the specific platform and implementation language, the PIM is converted to Generate platform-dependent model PSM, and finally generate application code and test framework. Therefore, the portability of the MDA method is relatively good.
The MDA method provides model conversion standards and an object constraint language. Tool vendors can develop automated tools, and developers only need to focus on business modeling and develop PIM. From the PIM to the executable application program oriented to the specific technology platform, it is solved by the automatic MDA tool, which realizes the interoperability of the platform well.
In MDA, the code is generated by the model, which can ensure the consistency of documents and codes.

database

Comparison of characteristics of relational database and NoSQL database

Relational database : Data real-time consistency Structured data High transactional level Expansion Weak data capacity is limited data.
NoSQL database : data weak consistency unstructured data weak transactional horizontal expansion strong data capacity for massive data.

The mixed scheme of Key-Value database + MySQL database is used to deploy data to different databases according to the characteristics of data reading and writing. But since part of the data may exist in both databases at the same time, there is a problem of data synchronization. The method to solve the data synchronization problem is as follows:
(1) Perform regular data synchronization through scheduled tasks.
(2) Realize data synchronization through triggers.
(3) Realize data synchronization through database plug-ins.

Software reuse is to use all kinds of relevant knowledge of existing software to create new software, so as to reduce the cost of software development and maintenance.
A software product line is a collection of products that share a common, manageable set of features that address specific domain-specific needs. The software product line is a software development method that is very suitable for professional development organizations. It can effectively improve software productivity and quality, shorten development time, and reduce total development costs.

MV Series Architecture

In the MV series framework, M and V refer to the Model layer and the View layer respectively, but their functions will vary with different frameworks. The Model layer is a data model, which is used to store data; the View layer is a view, which displays the data of the Model layer.
Although in different frameworks, the content of the Model layer and the View layer may be different, but their basic functions remain the same, only the data transmission method has changed.

1. MVC (Model-View-Controller) architecture:

MVC is model - view - controller . It is the earliest framework among MVC, MVP and MVVM, and the other two frameworks are developed based on it. The purpose of MVC is to separate the codes of M and V, and MVC is a one-way communication , which must be connected through the Controller.
Model : The model layer, the data model and its business logic, is a data structure established for the business model. The Model has nothing to do with the View, but is related to the business.
View : The view layer is used to interact with the user on the page, and usually realizes the data input and output functions.
Controller : The controller is used to connect the Model layer and the View layer to complete the interaction between the Model layer and the View layer. It can also handle page business logic, which receives and processes requests from users, and returns Model to users.
When the Controller layer triggers the View layer, it does not update the data in the View layer. The data in the View layer is automatically updated by monitoring the data changes in the Model layer, which has nothing to do with the Controller layer. In other words, the purpose of the existence of the Controller is to ensure the synchronization of M and V. Once M changes, V should be updated synchronously.
At the same time, most of the logic of the MVC framework is concentrated in the Controller layer, and the amount of code is also concentrated in the Controller layer, which puts a lot of pressure on the Controller layer, but the View layer that already has the ability to handle events independently is not used; moreover, the Controller layer and There is a one-to-one correspondence between the View layers , which cuts off the possibility of reuse of the View layer, thus generating a lot of redundant codes . To solve this problem, the MVP framework is proposed.

2. MVP (Model-View-Presenter) Architecture

MVP is a model - view - presenter , which appeared about 20 years later than the MVC framework, and evolved from the MVC pattern. Their basic ideas are similar: the Model layer provides data, the View layer is responsible for view display, and the Controller/Presenter layer is responsible for logic processing. Changed the communication direction while changing the name of Controller to Presenter .
Model : Model layer, used for data storage and business logic.
View : The view layer is used to display pages that interact with users, and usually implements data input and output functions.
Presenter : The presenter is used to connect the M layer and the V layer, complete the interaction between the Model layer and the View layer , and can also process business logic .
Communication between parts is bi-directional .
In the MVC framework, the View layer can be updated by accessing the Model layer, but in the MVP framework, the View layer can no longer directly access the Model layer , and must pass the interface provided by the Presenter layer , and then the Presenter layer accesses the Model layer. The View layer and the Model layer do not interfere with each other , and the View layer is also much freer, so the View layer can be extractedMade into components, it is much better than the MVC framework in terms of reusability. However, since both the View layer and the Model layer need to go through the Presenter layer, the Presenter layer is more complicated , and there will be certain problems in maintenance; moreover, because there is no bound data, all data needs to be "manually synchronized" by the Presenter layer, the code The amount is large, although it is much better than the MVC framework, but there are still more redundant parts . In order to keep the data in the View layer and the Model layer consistent, the MVVM framework emerged.

3. MVVM (Model-View-ViewModel) architecture

MVVM is Model - View - ViewModel . The difference between MVVM and MVP framework is: MVVM adopts two-way binding : changes in View are automatically reflected in ViewModel, and vice versa.

Model : Data model (data processing business), which refers to the data passed by the backend.
View : View, which displays the data of the Model in a certain way.
ViewModel : View model, two-way binding of data (View perceives when the data in the Model changes, and Model also perceives when the data in the View changes), which is the core of the MVVM pattern. The ViewModel layer automates the data synchronization between the Model layer and the View layer, which solves the troublesome problem of data synchronization in the MVP framework, not only reduces the pressure on the ViewModel layer, but also makes data processing more convenient - just tell the View layer to display the data It can be any part of the Model layer.

The communication between each part is two-way, and the MVVM framework diagram is very similar to the MVP framework diagram. Both trigger user operations from the View layer, then go through the third layer, and finally reach the Model layer. The key issue lies in the content of the third layer. The Presenter layer uses manual writing to call or modify the View layer and the Model layer; and the ViewModel layer bidirectionally binds the View layer and the Model layer. Therefore, as the data of the View layer Change, the system will automatically modify the data in the Model layer, and vice versa.

The data transfer between the View layer and the Model layer passes through the ViewModel layer, and the ViewModel layer does not "manually bind" it, which not only improves the speed to a certain extent, but also reduces the amount of code a lot. Compared with the MVC framework and MVP framework, the MVVM framework has come a long way.

The MVVM framework has roughly two directions:
1. Model to view——implementation method: data binding.
2. View to model——Implementation method: DOM event monitoring.

Guess you like

Origin blog.csdn.net/qq_33789001/article/details/129619458