UML defines 9 graphical diagrams, they are Class diagram (static),Use-case diagram,Behavior diagram (dynamic),sequence diagram,collaboration diagram,State Chart diagram,Activity diagram,Component diagram and Deployment diagram
UML defines 9 graphical diagrams
4. Sequence diagram
5. Collaboration diagram
6. State Chart diagram
7. Activity diagram
8. Component diagram
9. Deployment diagram
UML Class Diagram
Also referred to as object modeling
Main static analysis diagram
Show the static structure of the model
Collection of static modeling elements, such as classes and their relationships, connected as a graph to each other and to their contents
In class notation, either or both the attributes and operation compartments may be suppressed.
An interface is a specification of behavior that implementers agree to meet; it is a contract.Class interface notation is used to describe the externally visible behavior of a class.
For example, an operation with a public visibility.
Eg: – a Person object may need to interact with the bank account object to get the balance.
UML notation is a small circle with the name of the interface connected to the class. The class that requires the operations in the interface may be attached to the circle by a dashed arrow.
Binary Association Notation
A binary association is drawn as a solid path connecting two classes or both ends may be connected to the same class.
Association name may ‘ve an optional black triangle in it, the point of the triangle indicating the direction in which to read the name.
Association role – end of an association, where it connects to a class
UML Association Notation
In the UML, association is represented by an open arrow.
A qualifier is an association attribute. For example, a person object may be associated to a Bank object.
An attribute of this association is the account#. The account# is the qualifier of this association.
Multiplicity specifies the range of allowable associated classes.It is given for roles within associations, parts within compositions, repetitions, and other purposes. lower bound .. upper bound.
An OR association indicates a situation in which only one of several potential associations may be substantiated at one time for any single object. Shown as a dashed line connecting two or more associations, all of which has must have a class in common
An association class is an association that also has class properties. An association class is shown as a class symbol attached by a dashed line to an association path.
An n-ary association is an association among more than two classes.Since n-ary association is more difficult to understand, it is better to convert an n-ary association to binary association.
Aggregation is a form of association.A hollow diamond is attached to the end of the path to indicate aggregation.
Composition, also known as the a-part-of, is a form of aggregation with strong ownership to represent the component of a complex object. The UML notation for composition is a solid diamond at the end of a path.
Generalization is the relationship between a more general class and a more specific class.Generalization is displayed as directed line with a closed, hollow arrowhead at the super class end.
The description of a use case defines what happens in the system when the use case is performed.VIn essence, the use-case model defines the outside (actors) and inside (use case) of the system’s behavior. Use cases represent specific flows of events in the system initiated by actors and describe the flow of events that these actors set off.
Anything that interacts with a use case. Could be a human user, external h/w or another system.A use-case diagram is a graph of actors, a set of use cases enclosed by a system boundary, communication (participation) associations between the actors and the use cases, and generalization among the use cases.
The three representations of an actor are equivalent. These relationships are shown in a use-case diagram:
Shown by connecting the actor symbol to the use-case symbol with a solid path.
Shown by a generalization arrow from the use case
Used when you have one use case that is similar to another use case but does a bit more. In essence, it is like a subclass