1. UML基础
1.1 UML简介
1.1.2 UML背景
1970年期间,面向对象方法出现,1989-1994得 到大发展。不同的方法大发展,触使建立一个标准的、统一的建模语言。
1990年代,3个最流行的面向对象方法:++OMT(强分析弱设计)、Booch(强设计弱分析)、OOSE(强分析弱其它)++。
++统一建模语言UML (Unified Modeling Language)的出现++结束了符 方面的”方法大战“。UML统一了Booch、OMT、OOSE方法的符 ,并采纳了其他面向对象方法的许多好概念。
1.1.2 UML发展
1.2.2 什么是RUP
- RUP是一个软件工程化过程。
- RUP是由Rational软件公司开发和维护的过程产品。
- RUP为如何有效地使用统一建模语言UML提供指导。
- RUP说明了如何有效地使用成熟技术开发软件。
- RUP是一个可配置的过程(软件可配置)。
1.2.3 过程概览(重要)
RUP的四个阶段(重要)
1.2.7 微过程的划分(细化,粒度依软件规模而定)
商业建模:RUP为软件工程师和商业工程师提供共同的语言和过程,在商业模型和软件模型之间创建并保持直接的可跟踪性,使两方面对需要被支持的商业过程达成共识。
需求分析:描述系统做什么,使开发人员和用户达成共识。抽取用户的需求,识别系统参与者和用例。使用文字对每个用例进行详细描述,包括非功能性描述。用例贯穿于整个系统开发周期,是一条主线,同一用例将被用在需求捕捉、分析、设计和测试阶段。
分析:对问题域进行分析,确定系统问题域中的类
确定类(静态结构)有两种途径:
(1) 阅读规格说明、用例、寻找系统问题域中的类及类间关系类来分析问题域。
(2) 与用户和领域专家讨论,识别出所有关键类及类之间的相互关系。设计:任务是综合考虑技术限制,扩充和细化分析阶段产生的模型。目的是确定易转化为代码的设计方案,细化分析阶段的抽象类,并增加新类以处理如数据库、通信、硬件等技术领域问题。
分为两个部分:
(1) 结构设计:高层设计,划分子系统,确定子系统之间的依赖性和关联性。
(2) 详细设计:细化子系统,清晰地描述类。实现:目的在于定义代码的组织结构;以组件的形式实现类和对象;对开发出的组件进行单元测试;将开发人员或小组开发的软件集成为可执行系统。
测试:目的在于验证对象间的交互作用、软件组件的正确集成、所有需求的正确实现、确保BUG的处理。
测试类型:
(1) 单元测试:使用规格说明测试单独类或一组类。
(2) 集成测试:使用组件图和协作图测试组件间协作。
(3) 系统测试:使用用例图测试系统需求满足度。
(4) 验收测试:用户测试满意度。配置:将软件分发给最终用户。早期阶段的工作为后期的软件发布做准备。配置图描述系统的物理结构,说明设备之间的关系,节点与可执行软件单元的对应关系。
项目管理:平衡冲突目标,管理风险,克服各种限制以同时满足用户费用要求和系统要求。
配置和变更管理:控制同一项目组不同成员的大量产出物。
避免冲突:
(1) 更新同步:小组成员的系统软件版本保持一致。
(2) 有限通知:通知小组成员项目组软件的最新进展,防止错误理解和重复劳动。
(3) 多版本:保证系统多个版本之间的一致性。一个大系统中,必须进行版本管理和版本跟踪,对版本的更新、成员更新信息等要有详细的记载。
环境:为软件开发组织提供软件开发环境。开发环境的选择最好是最适合于当前项目的开发,对当前项目开发有最多的各方面支持。
静态建模:创建并建立一个系统的静态特征
- 用例图:描述系统功能及功能的使用者.
- 类 图:表现系统里实体的关系,责任,类和类之间的关系,属性及方法.
- 对象图:当类图不能完全显示关系时用对象图.描述对象的属性,对象名,方法.
- 组件图:对类功能的封装,一个组件包含多个类.
虚线:表示依赖关系. - 部署图:描述系统中的物理结构.
实线:表示连接
动态间模:用来展示系统的行为
- 时序图:描述对象的交互过程.以时间为参考(强调的是时间顺序).
虚线:(生命线)表示对象的生命周期.
实线:对象消息.
虚线:返回消息.
长方形:活动(激活).
叉:对象消亡. - 协作图:跟时序图一样,但强调对象的连接关系.
- 状态图:描述对象的自身的状态(一个对象的类型不同可能行为很古怪,行为变化很大).
- 活动图:(类似于流程图)描述一个环境中的交互顺序.
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!