Object-Oriented Concepts, Visual Modeling with UML, What is UML? Simply put, UML is a visual graphical language for modeling various artifacts and interactions in a software system. In this video, we'll provide a brief history of UML. By the end of the 1980s, there were many structured programming design methodologies. And as we moved into the 1990s, many approaches were being adapted for object orientation. In 1991, Grady Booch documented his approach in his book, Object-Oriented Design with Applications. Concurrently, a team at General Electric Information Systems developed their own graphical language from modeling object-oriented solutions, which they also documented in a book. A year later, Ivar Jacobsen published his own technique. And so not counting all of the other ones that existed, now we had these three, each with its own strengths and weaknesses. Grady Booch's method was strong on design with rich functionality. OMT was strong on visual representation, visual syntax with easy to draw symbols. And Jacobson's method had a strong emphasis on user experience. And so in 1994, Grady Booch hired James Rumbaugh, and a year later, they hired Ivar Jacobson. And after several years of work, they had successfully merged the different methodologies into a single graphical modeling language, which they called, of course, since that's what we're talking about, the unified modeling language. And then they turned it over to the Object Management Group to manage as a proposed industry standard. Today, almost 20 years later, UML is the widely adopted industry standard that they'd hoped it would be. It is still controlled by the OMG and has evolved to version 2.51. And for more information, you can visit the uml.org website. The benefits of UML are that it provides a wide range of diagram types, which we will talk about shortly, that allow us to express many different ways of looking at and documenting software systems. Remember that UML's predecessors each had their own strengths and weaknesses, which we show again here. Well, UML tried to build on all of their strengths and avoid their weaknesses. This does not make UML perfect. For example, few would suggest that we should replace the more recent development of the business process modeling language for designing business processes by going back to the more primitive analog found in UML. But UML is the industry standard and provides a unified approach to almost all areas necessary for our software projects. So what are the benefits of using UML? It is a visual language that helps us to analyze, document, construct, and most importantly, understand software systems. It is a common visual language suitable for many different project stakeholders, such as architects, business analysts, software developers, and DevOps staff. Much of the human brain is devoted to visual processing. We are visual creatures, so this is a big deal about that being visual. It's why we emphasize it over and over. As a formal methodology, it provides tools and guidance to help us do better analysis. As part of the methodology, we have an emphasis on users. In our next video, we'll take a look at a broad spectrum of the capabilities of UML at a high level so you start to see what this visual language looks like. But that is a brief history of UML.