UML被用来为系统建模,它可应用的范围非常广泛,可以描述许多类型的系统。UML的目标是用面向对象的方式描述任何类型的系统,最直接的是用 UML为软件系统创建模型。但UML也可用来描述其它非计算机软件的系统,或者是商业机构或过程。
以下是UML常见的应用:
信息系统(Information System):向用户提供信息的储存、检索、转换和提交。处理存放在关系或对象数据库中大量具有复杂关系的数据。
技术系统(Technical System):处理和控制技术设备,如电信设备、军事系统或工业过程。它们必须处理设计的特殊接口,标准软件很少。技术系统通常是实时系统。
嵌入式实时系统(Embedded Real-Time System):在嵌入到其它设备如移动电话、汽车、家电上的硬件上执行的系统。通常是通过低级程序设计进行的,需要实时支持。
分布式系统(Distributed System):分布在一组机器上运行的系统,数据很容易从一个机器传送到另一台机器上。需要同步通信机制来确保数据完整性,通常是建立在对象机制上的,如CORBA,COM/DCOM 或 Java Beans/RMI上。
系统软件(System Software):定义了其它软件使用的技术基础设施。操作系统、数据库和在硬件上完成底层操作的用户接口等,同时提供一般接口供其它软件使用。
商业系统(Business System):描述目标、资源(人、计算机等),规则(法规、商业策略、政策等)和商业中的实际工作(商业过程)。
要强调的是,通常大多数系统都不是单纯属于上面的某一种系统,而是一种或多种的结合,例如,现在许多信息系统都有分布式和实时的需要。
商业工程是面向对象建模应用的一个新的领域,引起了人们极大的兴趣,面向对象建模非常适合为公司的商业过程建模,运用商业过程再工程(Business Process Reengineering,BPR)或全质量管理(Total Quality Management, TQM)等技术,可以对公司的商业过程进行分析、改进和实现。使用面向对象建模语言为过程建模和编制文档,使过程易于使用。UML具有描述以上这些类型的系统的能力。