1⟩ What are UML Messages?
Specification of a communication
“Unified Modeling Language (UML) Interview Questions and Answers will guide us that UML is a standardized general-purpose modeling language in the field of software engineering. The standard is managed, and was created by, the Object Management Group. UML Interview Questions and Answers will discus that UML includes a set of graphical notation techniques to create visual models of software-intensive systems. So learn UML by Interview Questions with Answers about UML.”
Specification of a communication
Takes care structural and behavioral aspect of a software system.
Includes software usage, functionality, performance, reuse, economic and technology constraints.
Structural,
behavioral,
architectural
► UML is Unified Modeling Language.
► Graphical language for visualizing artifacts of the system.
► Allow to create a blue print of all the aspects of the system.
► SDLC is Software Development Life Cycle.
► SDLC of a system included processes like Use case driven, Architecture centric, Iterative and Incremental. This Life cycle is divided into phases.
► Phase is a time span between two milestones.
► The milestones are Inception, Elaboration, Construction, and Transition.
► Process Workflows that evolve through these phase are Business Modeling, Requirement gathering, Analysis and Design. Supporting Workflows are configuration, change management, and project management.
► Use Case view - Presents the requirements of a system.
► Design View - Capturing the vocabulary.
► Process View - Modeling the systems processes and threads.
► Implementation view - Addressing the physical implementation of the system.
► Deployment view - Model the components required for deploying the system.
► Model is a simplification of reality.
► Blueprint of the actual system.
► Specify the structural and behavior of the system.
► Templates for designing the system.
► Helps document the system.
► Activities: An activity indicates an action that performed in the system.
► Transitions: Transitions are represented by open arrow heads. Transitions are used to indicate the flow among elements in the diagram.
► Decision Points: The logical branching is depicted by the decision points.
► States: A state is shown in a rounded rectangle. States are indicated to mention the mile stones of processing in the activity diagrams.
Use case diagram is a subset of various behaviour diagrams. Use case diagrams are used to provide concrete examples of the elements which are supposed to implement. It is used to analyze objects.
The following are the elements of the use case diagrams:
Actors: An actor is one of the entities who perform certain actions. These roles are the actual business roles of the users in given system. An actor interacts with a use case of the system. For example, for a banking system, a customer is one of the actors.
Use Case: A use case is a use case diagram of UML represents a business functionality that is distinct. The use case should list the discrete business functionality that is specified in the problem statement. Every business functionality is a potential use case.
System boundary: A system boundary defines the scope of the system. The systems that use cases also need to be defined in the limits of the system. The system boundary is shown as a rectangle that spans all use cases of the system.
The following are the difference between Activity and Sequence Diagrams:
A sequence diagram shows the way of processes execute in a sequence. For example, the order of operations and the parameters.
► An activity diagram depicts the operational workflows.
► A sequence diagram is focused to represent interactions between different objects.
► Activity diagram shows the actions for various objects.
a. Activity diagram: captures the process flow. They are used for functional modeling.
b. Sequence diagram: the track the interaction between the objects. They are used for dynamic modeling.
► Object: The interaction between objects takes place in a system. An object is depicted by a rectangle with the name of the object, preceded by a colon and underline.
► Relation/Association: Association among objects is linked by connecting them. The cardinality can be depicted by placing qualifiers on either ends.
► Messages: An arrow that commencing from one object to the destination object. This depicts the interaction between objects. The sequence or order of the interaction is depicted by the number.
► Initial State: This state shows the first activity of the flow.
► State: A state represents the state of an object at a particular given point of time.
► Transition: The transition from one state to another state of objects is represented by an arrow.
► Event and Action: A trigger that causes a transition to occur.
► Signal: When a message or a trigger caused by an event to a state, which causes a transition, this message is called as a signal.
► Final State: The state diagram ends with a diagram that depicts a bull’s eye is known as Final State.
a. Initial State: The first or the default state the object is in. It is denoted by a solid circle.
b. State: All the states an object can go in are mentioned in this. It is represented by a rectangle with rounded edges.
c. Transitions: depicted by arrow from the source state to destination state.
d. Final State: Depicts the end of the. It is shown by a bull's eye symbol.
► Actor: Actor represents an external user / end user who interact with the system.
► Object: Object is represented by one of components of the system.
► Unit: A unit is a subsystem, or a sub component or other entity within the system.
► Separator: Separator represents a boundary among sub systems, components or units.
► Group: Represents different header elements in the subsystem.
► Nodes: A node represents any hardware component. The configuration of hardware is represented by attributes of nodes.
► Components: A component represents software. Each component straightly represents a class or object that in turn represents methods.
► Dependencies: The reliability of one component with that of another is depicted by dependencies.
► Links: To tie up tow nodes, the links are utilized. The links are implemented by using nodes and their associations.
A component diagram is particularly useful with teams of larger size. UML components are great to perform architectural landscape for a specific system. The component diagram allows to model high level software components and interfaces to those components. The sub team’s effort is very less, once the interfaces are perfectly designed and accepted by the team members.
Advantages of using UML breaks the complex system into discrete pieces that can be understood easily.
Handover the system to new team becomes easier.
Complex system can be understood by the disparate developers who are working on different platforms.
UML model is not a system or platform specific. It unifies all disparate developers under one roof.
We have nine types of diagram in UML.
Use Case Diagram
Use Case Diagram describes “HOW” the system works. It identifies the primary elements and processes that form the system. It shows “actors” and their “roles”
Class Diagram
This diagram explores detail design of the system. The class diagram is designed using Use Case diagram. We can identify all “Nouns” in use cases as classes and “verbs” as method of the classes.
Object diagram
This diagram represents the state of classes in the system and their relationships or associations at a specific point of time.
State Diagram
This diagram represents different states that objects in the system undergo during their life cycle.
Sequence diagram
This diagram is used to explore logic of complex operations, function or procedure. In this diagram, sequence of the interactions between the objects is represented step by step.
Collaboration diagram
This diagram groups together the interaction between different objects.
Activity diagram
Activity diagram gives detail view of the business logic.
Deployment diagram
It shows deployment view of the system. It shows how hardware and software works together to run system.