UML Part 2

--Originally published at Hackerman's house

As I already discuss in another posts, UML is a common language used to draw diagrams that can express software processes or even business models. In this post I will be talking more about this amazing resource.

State Machine Diagrams

These diagrams are used to describe the states of a component within a system. The name of this type of diagram is state machine because it is a machine that describes multiple states of an object and how it changes due to internal and external events of the system.

UML State machine Diagram

Package Diagrams

A package diagram is a container of multiple UML diagrams. They organize diagrams and components into groups, this according to the relation between them. In more complex systems, package diagrams can be constructed by several package diagrams. The purpose of this type of diagrams is to show the relations between large components of the system, bringing an easier understanding of it.

Component diagrams

Component diagrams can help break down the system into smaller components. These components usually work very different than the others.

lambda architecture

MVC

The model view controller is a style of software architecture that separates the system into three main components. The first one is the model, which is a representation of the data. The view contains the information that the client sees, also contains all the ways the client can interact with the system. The last part is the controller that is an intermediary between the first two, its function is to modify the data according to the interaction given with the client; if the data changes the client must be able to see this in the view.

Reference:

https://tallyfy.com/uml-diagram/#component-diagram