Object-oriented analysis and design (OOA&D) tools support object analysis and design technologies and commonly use Unified Modeling Language (UML) notation with a variety of methodologies to assist in the creation of highly modular and reusable software. Most also support the use of Domain Specific Language concepts as a complement to UML. Applications, data, networks and computing systems are treated as objects that can be mixed and matched flexibly rather than as components of a system with built-in relationships. As a result, an application does not need to be tied to a specific system, or data to a specific application. Please note that the UML standard from Object Management Group (OMG) has become the de facto standard for OOA&D tools.