UML prescribes a standard notation for object-oriented modeling
The UML prescribes a standard notation for modeling an object-oriented system, not a process or method for developing the system. The UML is a giant step forward for object-oriented modeling because it sets forth a standard that enables designers to understand each other’s work. Before UML, an object-oriented design might have been modeled with one of a half dozen popular methodologies, forcing reviewers to learn the notational semantics of the methodology before studying the design.
Process for object-oriented development
The UML does not prescribe a standard process or method for developing a system. It does prescribe a set of diagrams to use, which forces the user into modeling certain aspects of a system. The order in which these diagrams are used is up to the user.
Object-oriented modeling can be divided into two schools: data-centric design and problem-centric design. Data-centric designers use the Class diagram as the focal point to developing the system. Problem-centric designers focus on modeling how the system solves the problem at hand, using diagrams such as the Use Case diagram and the Sequence/Collaboration diagram.
What follows is a problem-centered approach for modeling a system with UML.