Have you ever need any tool to create a diagram and you could not find anything at the moment? Well, maybe now it’s time to focus on cloud drawing apps. In this article we will introduce you modelling in general and in consecutive articles we will mention the top of the cloud drawing tools.
Modelling and UML
Why is process modeling so important in the software lifecycle (especially in the development stage)? It´s almost the same like building design - an architect must firstly create a design of architecture and based on that plan, it is possible to start build a house. Basically, good plan can help to develop anything because of its possibility to better express the idea.
In software development UML (Unified Modeling Language) diagrams like Class Diagram, BPMN, Use Case Diagram, etc. are the most used. UML diagrams are pretty much standards for process modelling (not only) in software development area. Do not forget that it’s not a method, but it’s just a modeling language. Interpretation of models, processes and techniques used for their creation are pushed outside the UML - to separate methodologies. A brief history of UML (and related methods) is shown on the following picture.
At this time we can use at least 14 types diagrams of UML version 2.2. These 14 types represent 4 major groups like Behaviour diagrams, Structure diagrams, Interaction diagrams and diagrams for Meta modeling. It is obvious that you do not have to use only these 14 UML diagrams for your work, but it’s recommended to use them because of better understanding thanks to standardization.
As you probably think, the usage diagrams (modelling in general) have become the most widely used in the era of Object Oriented Programming. Object Oriented Programming is approach which represents a new paradigm of software development. Everybody who is now interested in system design, works with terminology such as Class, Object, Instance of Object, Inheritance, Polymorphism, etc.
Basically, it is possible to say that everything from real word is transformed to the IT world. This principle allows better understanding for everyone who is interested in SW development. And do not forget how useful is modelling for collaboration between IT and business. Nice diagrams can help business to explain its requirements to IT and vice-versa.
Let´s have a look on basic examples of some diagrams!
Describes entities in a system and their basic relationships with other classes. Each class can be described in detail thanks to its attributes and methods.
In the diagram, classes are represented with boxes which contain three parts:
- The upper part holds the name of the class
- The middle part contains the attributes of the class
- The bottom part gives the methods or operations that the class can take or undertake
State Chart Diagram
Describes object behavior in its states and transitions among the states - procedure object's life. Each transition must represents some action of object which can be found in its methods.
Use Case Diagram
This type of UML diagrams represents user's interaction with the system and depicting the specifications of a use case. Wider version of this diagram also allows to use various types of relationships among use cases (include, extend,...).
We could spend many hours describing each type of diagram, but that would not make any sense. When someone is designing a system, he will probably use some type of UML diagram. Although there is some recommendation how to use it (some type of standardization of diagram usage), probably nobody keeps it on the right way. Everyone adjusts the syntax for his needs. But do not worry about that, because it is not possible to change the whole meaning of a diagram. Everyone else who will see a diagram, will understand it.
We will focus on cloud drawing tools in next articles and mention their advantages and disadvantages as well as possibility of collaboration among teams. Because today’s technology allows better functionality than before many years, we think that cloud drawing tools are becoming a real competition for traditional CASE tools which are installed on local computer.