What are the main elements of object-oriented methodology?
Structured Paradigm Essentials:Structured Paradigm, also known as Life Cycle Methodology, is a traditional methodology. Most of the traditional software development methodologies use the waterfall model. This model requires each phase to complete its work based on the documentation developed in the previous phase. When each phase is about to be completed, it is required to be verified or validated by the developer. The waterfall model requires that user requirements be portrayed as accurately and completely as possible before a software product is generated. But it is quite difficult to accomplish such a task.
Advantages: The software lifecycle is divided into basic stages, and the tasks in each stage are relatively independent and simple, which makes it easier for different people to divide the work, thus reducing the difficulty of the entire software development process.
Disadvantages: When the software is large in size, or the demand for the software is vague or will withstand time and change, the development of the software is often unsuccessful; and maintenance is still very difficult.
Four key points of the object-oriented paradigm: (1) object-oriented software systems are composed of objects, any element of the software is an object, complex software objects by the combination of simple software objects. (2) All objects are divided into various object classes, each object defines a set of data and a set of methods. (3) In accordance with the relationship between subclasses (derived classes) and parent classes (base classes), a number of object classes form a hierarchical system (class hierarchy). If certain characteristics are redescribed in the derived class, the new description will prevail in the derived class, i.e., the characteristics at the lower level will mask the characteristics of the same name at the higher level. (4) Objects can communicate with each other only by passing messages. [b] The main advantages of object-oriented paradigm (1) according to the human habit of thinking, all stages of the software development process for integrated consideration; (2) the software life of the various stages of the methodology, technology has a high degree of continuity; (3) the organic integration of all phases of software development, is conducive to the stability of the system
Object-oriented development methodology includes three parts
Object-oriented development methodology includes OOA, OOD, OOP three parts.
Object-OrientedAnalysis: Object-Oriented Analysis methodology. OOA refers to the development of a system in a system after the business survey, in accordance with the object-oriented thinking to analyze the problem. OOA and structured analysis is a big difference, OOA emphasizes the system survey information on the basis of the material for the OO method of categorization, analysis and organization. OO method of categorizing and organizing the material needed, rather than the management of the current state of the business and the method of analysis.
Object-Oriented Design (Object-OrientedDesign, OOD) method is an intermediate transition in the OO method. Its main role is to further standardize the results of OOA analysis, so that it can be accepted directly by the OOP. Object-Oriented Design (OOD) is a software design methodology and an engineering specification. There is no doubt about it. According to BjarneStroustrup, the paradigm (paradigm) of object-oriented programming is [Stroustrup, 97].
ObjectOrientedProgramming (OOP, Object-Oriented Programming) is a type of computer programming architecture.One of the basic principles of OOP is that a computer program is a combination of individual units or objects that can function as subroutines.OOP achieves three main goals of software engineering: reusability, flexibility, and extensibility. To realize OOP, each object is capable of receiving information, processing data, and sending messages to other objects.
What an object-oriented approach consists of
An object-oriented approach consists of three phases: object-oriented analysis (OOA), object-oriented design (OOD), and object-oriented programming (OOP). The boundaries between analysis and design are blurred, but their purposes are different.
Briefly describe the basics of object-oriented analysis methodology.
[Answer]:Object-oriented analysis is the process of extracting and organizing user requirements and building an accurate model of the problem domain. It usually begins with analyzing the requirements statement. The first step is to analyze and identify the objects in the problem domain and the relationships of the objects, and build an object model of the problem domain. The object model of a large, complex system usually consists of five levels of work: the topic level, the object-like level, the structure level, the attribute level, and the service level. They correspond to the work that should be accomplished in the process of building the object model, respectively. Often the analysis is difficult to complete in a single pass and must be repeated in multiple iterations. The goal of the analysis is to gain a thorough and deep understanding of the problem domain, without considering the implementation.
What is Object-Oriented Approach
An object is an encapsulation of data and permissible operations that has a direct correspondence to an objective entity; an object class defines a set of objects with similar properties. And per inheritance is a way of sharing attributes and operations of classes with hierarchical relationships. The so-called object-oriented is based on the concept of object, object-centered, class and inheritance as a construction mechanism to recognize, understand, portray the objective world and design and build the corresponding software system. The specific implementation steps of the object-oriented approach are as follows:1) Object-oriented analysis: Starting from the problem statement, analyze and construct a model of the problem domain of the display world of interest and represent it with the corresponding symbol system. The model must be a succinct, unambiguous abstraction of what the target system must do, not how to do it. The analysis steps are (1) identify the problem domain, including defining the domain, selecting the domain, and refining and adding to the domain as needed; (2) zone classifications and objects, including defining objects, defining classes, and naming them; (3) differentiate between the overall object as well as its components, and determine class relationships as well as structure; (4) define attributes, including identifying attributes, and arranging attributes; and (5) define services, including identifying the object state, determining the required (5) Define services, including determining object state, determining required services, and determining message associations; (6) Determine additional system constraints. 2) Object-Oriented Design: Object-oriented design is different from traditional functional decomposition-based design. Specific design steps are: (1) apply object-oriented analysis, improve and refine the results of the system analysis obtained with other methods; (2) design the interaction process and user interface; (3) design task management, determine the need for multi-tasking based on the previous step, determine the concurrency, determine the way to drive the task, the design of subsystems and the coordination and communication methods between the tasks to determine the priority; (4) design global resources, determine the message linkage, and determine the additional system constraints. ) Designing global resources, determining boundary conditions, and determining the software and hardware allocation of tasks or subsystems; (5) Object design. 3) Object-oriented implementation: It is relatively easy to implement an object-oriented design using an object-oriented language. If a non-object-oriented language is used to implement object-oriented design, it is particularly important to note and provide for the preservation of the object-oriented structure of the program. In traditional function-oriented methodologies, the emphasis is on identifying and decomposing system functionality. While this approach is the most direct realization of the goal, it makes the system difficult to maintain and extend because functionality is the most unstable and changeable aspect of a software system. Object-oriented design first emphasizes objects from the domain and then sets attributes and operations around the objects. With object-oriented design, the structure is derived from the stable object structure of the objective world. As a result, compared with traditional software design methods, it significantly improves software productivity, reliability, ease of reuse, ease of maintenance, and other aspects of the effect.