Have you ever heard about the concept “Modeling language”? If you have not, congratulations! You are at the right place. As I said on my previous post, we need to represent our projects in a way that can be understood by every involved person. Thus, we are going to use modeling languages; a modeling language provisions the design and construction of structures and models following a systematic set of rules and frameworks.
Modeling languages are mainly used in the field of computer science and engineering, intended for designing models of new software, systems, devices and equipment. This languages are primarily textual and graphical, but based on the requirements and specific domain in use, modeling languages fall into four categories:
- System modeling language
- Object modeling language
- Virtual reality modeling language
- Data modeling language
Let’s focus on system modeling languages. This languages will let us specify and design what we want to achieve on a software product. I am going to use a couple of them, but it will be just a sneak peak, in the future i’ll be blogging in deep about those.
It was developed by Grady Booch, Ivar Jacobson and James Rumbaugh at Rational Software. It is a pretty complete language because it has ways to represent the most important parts of a project, such as structure, behavior and interaction diagrams.
This family covers a wide range of uses, from functional modeling to data, simulation, object-oriented analysis/design and knowledge acquisition. This family were developed under funding from U.S. Air Force and although still most commonly used by them, as well as other military and United States Department of Defense (DoD) agencies; however, this are public domain.
The main goal of this modeling languages is to make the developers life easier and to create a software blueprint that will enhance productivity and clearness in the project.