应用程序开发时,若想有效的利用同一开发语言(UML),必须全面理解UML元素以及这些元素如何分配的
一 UML的特点
统一的标准
面向对象。支持面向对象开发的建模语言
可视化,表现能力强
独立于过程,UML不依赖于特定的软件开发过程
概念明确,建模表示简洁,图形结构清晰,容易掌握和使用。
二 UML中的视图
UML中的视图包括用例视图,逻辑视图(设计视图),实现视图,进程视图,部署视图等。这个视图成为4+1 视图
逻辑视图:关注功能,不仅包括用户课件的功能,还包括为实现用户功能二必须提供的辅助功能模块,他们可能是逻辑层,功能模块等。
开发视图:关注程序包,不仅包含编写的源程序,还包括可以直接使用的第三方SDK和线程矿建,类库,以及开发的系统运行于其上的系统软件或中间键。开发视图和逻辑糊涂之间可能存在一定的映射关系。比如逻辑层一般会映射到多个程序包等
处理视图 :关注进程,线程,对象等运行时概念。以及相关的开发,同步,通信等问题。处理视图和开发视图的关系,开发视图一般偏重程序包在编译时期的静态依赖关系,而这些程序运行后会表现为对象,线程,进程,处理视图比较关注的正是这些运行时单元的交互问题。
部署视图 : 关注目标程序七级依赖的运行库和系统软件,最终如何安装或部署到物理机器。以及如何部署机器和网络来配合软件系统的可靠性,可伸缩性等要求。部署视图和处理视图的关系: 处理视图特别团系目标程序的动态执行情况,而部署视图中重视目标程序的静态位置问题,是综合烤炉软件系统和整个IT系统相互影响的架构视图。
三 UML构成
常见的一些UML图,主要包括了用例图(Use Case Diagram),类图(Class Diagram),时序图(Sequence Daigram),活动图(Activity Diagram),状态图(Statechart Machine Diagram),部署图(Deployment Diagram)等。
1 需求阶段书写Use Case
用户描述文章的书写是系统分人员对用户需求的深刻理解的体现。是后期时序图和实际开发的重要依据。也可以作为项目估算的依据,以及根据UC复杂度和开发周期来衡量开发人员的工作效率。因此UC书写规范及其重要。
2 设计阶段的用例图
用例图描述概括了用例中角色和系统之间的关系,描述了i系统的功能需求,角色和系统的交互以及系统的反应。是客户和开发人员全貌理解项目需求功能比较好的一个方式,也是后续功能迭代的依据和方向。
类之间常用的关系主要有:关联关系,泛化,依赖,聚合和组合等。细致分化,参见3的内容。
4 UML建模之活动图
活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统额处理过程。活动图能够表示并活动的情形。活动图是面向对象的
5 UML 建模之状态图
状态图重点在于莫爱辉苏对象状态机器状态之间的转移。状态图的基本元素主要有: 状态,转移,动作,自身转移,组合转移,进入节电,退出节点,历史状态,并发区域等,状态中的事件分为调用, 变化事件,事件事情,信号事件等。
时序图是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图中显示的是参与交互的对象以及对象之间消息交互的顺序。时序图中包括的建模元素主要有对象,生命线,控制焦点,消息等。
协作图是在一种给定语言中描述协作中各种对象组织交互关系的空间结构的图形化方式。 从定义中可以分析它的作用为 : 对象间消息的传递来反映具体的使用语境的逻辑表达 ,一个使用情景的逻辑可能是一个用例的一部分或是一条控制流。组成,
对象,消息,链等结构
构件图从软件架构的角度来描述一个系统的主要功能。如子系统,类,包,构件等。使用构件最主要的是复用。构件图的组成组要有,构件,接口,关系等。
可以交接到软件和硬件组件之间的物理关系,以及处理结点的组件分布情况.使用部署图可以显示运行时系统的结构.同时还可以传达应用程序的硬件和软件元素的配置和部署方式.部署图构成 ,结点,组件,结点实例,结点容器,连接等.
总结
通过UML的学习,了解到UML 在软件设计中的举足轻重,它涉及到软件的框架,细节等.使软件的设计不再没有宏观的把控.