天津理工大学软件学院UML复习

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1部分软件工程

一. 软件开发经历的三个时代

1. 程序设计时代

2. 程序系统时代

3. 软件工程时代

二. 软件危机和软件工程学

简单的说软件危机就是:在软件开发和软件维护上出现的严重问题1968年NATO(北大西洋公约组织)会议提出。软件工程含义是:“按照工程化的原理和方法来开发和维护软件。”

三. 软件生存周期模型

软件工程学

软件开发方法学

软件工具

软件工程环境

软件开发技术

软件工程管理

软件管理学

软件经济学

2. 瀑布式生存周期模型评价: 特点:文档驱动。 优点: 简明、规范; 问题:只适合固定需求

四. 软件工程方法学

1. 结构化方法(面向数据流方法)

·结构化分析(SA ):注意结构化方法是面向数据流的方法,主要工具是DFD ……

· 结构化设计(SD ):注意模块化设计和模块独立性概念(高内聚、低耦合),主要工具是SC

·结构化程序设计(SP ):单入口/单出口设计 2. 快速原型方法 1) 原型技术开发步骤:

2) 原型技术评价

满意否?

修改、完善系统原型

评价系统原型 研制系统原型

确定系统最初需求

Y

优点:

(1) 给用户尽快提供一个样品,让用户评价;

(2)适合模糊需求;

……

缺点:

(1)方法不规范, 无统一标准;

(2)无统一开发环境和工具;

……

3. 面向对象方法

五.传统方法个阶段的要点

1.可行性研究阶段

1)可行性研究阶的内容

·技术可行性(比如技术风险)

·经济可行性(比如成本—效益分析)

·社会可行性(又称做运行管理或操作可行性)2)可行性研究阶的结论(三种结论)

2.需求分析阶段

1)需求分析任务

2)绘制DFD技术(建模重点)

3.总体设计阶段

1)模块化设计

2)模块独立性及判别准则

3)模块独立性原则

*4)DFD映射成SC(MSD)技术

4.详细设计阶段

1)结构化程序设计概念

2)详细设计工具

3) PAD

5.编程和单元测试

1)程序设计语言和工具的选择

2)编程风格(比如:适当的注释)

6.软件测试阶段

1)软件测试的目的和原则

2)驱动模块和桩模块

3)黑盒测试和白盒测试

4)软件测试步骤和策略

*5)软件复杂度的度量

7.软件维护阶段

1)软件维护的种类和所占比例

2)软件维护内容和副作用

六.软件管理

1)为什么要进行软件管理?软件管理的内容

*2)软件管理的成本估算模型

3)进度管理工具(GANTT图、PERT图和工程网络图)

4)软件配置项和配置管理(标识对象、版本控制、变化控制、配置审计和状态报告)

5)软件能力成熟度模型CMM和CMMI

七.软件质量保证(略)

八.软件环境

1)软件环境概念和核心

2)CASE概念

第2部分面向对象的基本概念

一. 面向对象的技术特征

1. 标识(identity)

2.分类(Classification)

注意:同类对象具有相同的属性一般是指属性名而不是属性值。只有称作“类属性”的情况才共享属性值。

3.继承(Inheritance)

子类自动拥有父类的数据和操作叫继承。

继承可分成单继承(Single inheritance)和多继承(multiple inheritance)。(请举出实例)

4.多态性(Polymorphism)

同一消息发给不同对象可产生不同结果。(或相同的操作应用到不同类中,可以有不同表现形式)

二. 面向对象的开发

1.面向对象的开发步骤:

1)需求表达和系统构思(conception)

重点是搞清问题域和系统责任。

2)系统分析—创建模型

3)系统设计

a)设计一种高层策略—-系统架构

b)优化设计—-考虑实现策略问题和临时资源分配问题。4)设计类

a)添加细节

b)实现类的数据结构和算法

5)实现

主要工作是类模型转换成某种编程语言和数据库。三. OO技术中几个术语

1.抽象

2.封装

3.共享(重用)

·同一类中的对象共享

·同一应用(不同类)通过继承共享

·不同应用通过类库或可重用构件库来共享。

*4.协同(synergy)

四.三种模型

1.类模型(对象模型)

包括:类、对象及实例的概念;

类之间的关系:

1)关联关系

a)关联和链 b)多重性c)关联的角色d)关联类 e)限定关联 f)自反关联g)派生关联

2)泛化关系

3)聚合关系(整体—部分关系)

4)依赖关系

5)抽象类和接口

(以上概念应能举实例说明)

2.状态模型

用状态图表示状态模型

注意:状态图的几个概念比如:状态图的用途、动作和活动、事件和转移等

3.交互模型

(1)用例图(Use Case Diagram)

(2)交互图(Interaction Diagram)

交互图包括:顺序图和协作图

(3)活动图(Activity Diagram)

活动图显示复杂过程的处理步骤序列、算法和工作流程。

相关文档
最新文档