1. Overview of Object-oriented System Development
The idea of Object-oriented has already involved various stages of software development, such as: Object-Oriented Analysis (OOA, Object Oriented Analysis), object-oriented design (OOD, object oriented design), object-oriented programming implementation (OOP, Object Oriented Programming ). The object-oriented system development lifecycle consists of the analysis stage, design stage, and implementation stage. Each stage can be fed back to each other. The entire process is an iterative and incremental development process.
First, we need to perform Object-Oriented Analysis (OOA). The task is to understand the objects involved in the problem domain and the relationships and functions (that is, Operations) between objects ), select different abstraction layers for different problem properties, and then construct the object model of the problem so that the model can accurately reflect the "substantive problem" to be solved ".
The second is the object-oriented design (OOD), that is, the object model of the design software. Depending on the functional strength of the application's object-oriented software development environment, it may need to be transformed based on the analysis of the problematic object model, however, the object model of the original problem domain should be changed at least. Then, in the software system, design the relationships between objects (such as hierarchies and inheritance relationships) and communication methods between objects (such as message modes, in short, it is the responsibility of designing various objects.
Finally, object-oriented implementation (OOP) refers to the coding implementation of software functions, including the implementation of internal functions of each object; determine which processing capabilities of objects should be described in which categories; determine and implement the system interface, output form and other control mechanisms, etc, the task to be completed by each object specified in the OOD stage must be implemented.
PS: My understanding: object-oriented analysis and design are mainly problem-driven development.
2 object-oriented system development activities
The object-oriented method is used to develop an information system. The analysis and design process includes the following aspects: identifying system objectives and boundaries, identifying use cases, creating use case diagrams, and identifying objects, create class diagrams, design detailed logic of use cases, establish sequence diagrams and coordinate diagrams, and refine and improve models.
The main purpose of information system development is to precisely meet users' requirements for the new information processing system. First, users and analysts need to work together to gain a full understanding of system requirements to complete accurate expression of the system, graphical, non-redundant, accurate, and essential user requirement descriptions are obtained through communication between users, analysts, users, analysts, and system development parties. Four basic steps are required for object-oriented system development:
(1) identify business events and create an event table;
(2) identify use cases, generate system use case diagrams, and write basic use case descriptions;
(3) create a hierarchy chart to represent the concepts, attributes, associations, and operations in the system;
(4) Draw a system interaction Diagram for each use case scenario and write operation conventions.
In practice, system developers can perform several different steps at the same time. During different steps, the work in the previous step is constantly modified because of new knowledge gained in the subsequent steps, which reflects the iteration of system development.
3. Object-oriented System Development Model
The development results of the object-oriented system are reflected by the models developed in this process, as shown in table 1. These graphical documents facilitate communication between system development participants.
Table 1 models for Object-Oriented System Development
Model |
Quantity |
Important components |
Relationships with other models |
Event table |
Each system has one |
Event |
|
Case Model |
Use case diagram (one for each system) Case Description (one for each case) |
Use Cases Participants Association |
Each event has at least one use case. |
Class Diagram |
Each system has one |
Concept Attribute Association Operation |
From case description |
Interaction Model |
Interaction diagram (each use case must have at least one) Operation conventions (one message per message) |
Participants System Message |
The structure and content of messages from participants depend on the case description; Reference case description and class diagram for Operation conventions |
(1) To describe, understand, and exchange the requirements of the information processing system, it is necessary to determine the various events that the system must respond to. The event model must be represented in the event table.
(2) In order to study the system actions required to respond to business events, describe the use cases related to each event and modify them continuously until you obtain a precise description of your needs, use Case model that describes system requirements.
(3) to understand the applicationProgramTo define users' requirements for data storage, a class chart is required. This model displays the concepts, attributes, associations, and operations related to the problem domain.
(4) In order to represent the interaction between users and the system and the internal classes of the system, an interaction diagram reflecting the input format and content should be drawn and an agreement should be written for each message.
4. Object-oriented System Development Technology
System Analysis includes the technology for modeling and modifying system requirements. Different analysis methods use the technology corresponding to the specific way of thinking to obtain different analysis models. Key technologies used in object-oriented analysis include:
(1) Information collection technology. Such as talks, observations, practices, and questionnaires are basic techniques for collecting relevant information and understanding user needs.
(2) event analysis. Event analysis is the starting point of object-oriented analysis. It is a technology used to determine system-level requirements. It is believed that the information processing system will provide a preset response to important events in the environment.
(3) Use Case modeling. The Use Case model represents the interaction required between the system and the user. It consists of a diagram indicating the participants and use cases and a detailed description of each use case.
(4) class modeling. Through the modeling of concepts, attributes, associations, and operations in the application field, the minimum, non-redundancy, comprehensive understanding of the system, and the construction of static logic are obtained.
(5) Interactive modeling. The interaction model represents the interaction details between the participants and the system, and between the objects inside the system. Interactive modeling is used to define the interaction between the software objects inside the system.
PS: the entire development process is roughly: Demand Analysis-> use case diagram (including case description)-> draw class diagram-> draw Class Interaction-> enter the object-oriented implementation stage