Today, a software designer or architect who seeks to represent the design of a software system can choose from a wide variety of notational languages.
Tutorial Details:
The emergence of the Unified Modeling Language (UML)-created by the joint efforts of leading object technologists Grady Booch, Ivar Jacobson, and James Rumbaugh with contributions from many others in the object community-represents one of the most significant developments in object technology.
Boochgram notations emphasized the concepts of Modularity and Encapsulation. The key advance, from a software engineering perspective, was to place primary emphasis on designing software as interacting "modules" For implementation, classes provide the obvious mechanism for modules. The mechanisms of namespaces (in C++) and packages (in Java and Ada) provide additional support in larger systems.
Cloud or Blob notations emphasized the concepts of Abstraction and Generalization. The key advance was to move from specific single instances of modules to many instances (many "objects" from a given "class"). Classes themselves could be instances of metaclasses, or completed from partial specifications (generic units, or templates). For implementation, C++'s notion of classes as types, and templates as partial specifications for classes, both support these ideas. Another important step forward was the concept of Inheritance as a key type of relationship between modules. Together with polymorphism, the essential ingredients for object-oriented programming are used with this notation. For implementation, derived classes and virtual functions provide the key mechanisms
Read
Tutorial at: Click here to view the tutorial
Rate Tutorial: Object Oriented Design & Analysis using UML
View Tutorial: Object Oriented Design & Analysis using UML
Related
Tutorials:
|