Ooad is an object-oriented analysis and design, Ooad is a methodology. The Object-oriented method establishes the software model in the face of the objective world in the way of human natural thinking. It fully embodies the idea of decomposing, abstracting and modularization of complex system.
Ooa the object and concept of the real world that the user understands, discovers and analyzes the internal structure of the object and the external relation, establishes the accurate and concise object model of the software system.
Ood is based on the established system object model, using object-oriented technology, software design.
Ooad and traditional design analysis (process-oriented) compared to the advantages:
There is a close match between the result of implementation and the actual problem
Promoting the reuse of objects
can reduce errors and maintenance problems because of the possible reuse of objects
The reuse of objects also accelerates the design and development process
In a way that conforms to human cognition, because it's our natural way of thinking.
Enhanced Data encapsulation
Helps deal with the complexity of software development and helps to build flexible, resilient software systems
UML is the manifestation of this ooad methodology, and the result of ooad modeling is a variety of UML diagrams. UML and Ooad can not talk about problems alone, they are inseparable. UML is a modeling language, a standard representation, not a method or methodology. Method is a clear way of structuring people's thoughts and actions. Methods need to define steps for software development, tell people what to do, how to do it, when to do it, and why to do so, while UML defines only a few diagrams and their meaning. Its idea is irrelevant to the method, so we'll see that people will use UML in a variety of ways. Regardless of the method, how to change their basis is the UML diagram, this is the final use of UML, for the people in different fields, for unified communication standards.
The difficulty of software development is that the participation of a project includes domain experts, software design developers, customers and users, the problem of communication between them has become the biggest problem of software development, the importance of UML is that the standardization of the representation method can effectively promote the communication of people from different backgrounds and promote the software design effectively. The mutual understanding of the development and testers, regardless of the different methods or processes adopted by the analysis design and the developer, the design products they submitted are described in UML, which facilitates mutual understanding.