📄 《面向对象系统分析和设计》 -- 第03章 笔记 + 习题.txt
字号:
作者:rick1126
email: rickzhang@sina.com
日期:8/20/2001 10:11:43 AM
第3章 面向对象的方法论和模型
【章节要求】
. 定义并且描述一种方法论
. 定义并且描述传统方法论, 结构化方法论, 信息建模方法论和面向对象方法论分类
. 讨论分类理论及其面向对象方法论的联系
. 定义并且描述面向对象方法论的主要特点
. 定义并且描述科德的面向对象方法论
. 定义并且描述科德的对象模型的活动
. 定义并且描述科德的对象模型的部件
. 描述科德的用于建立问题域的对象模型的面向对象符号
. 掌握科德的用于描述类, 对象类和责任的面向对象符号
. 掌握科德的表示熟悉和服务的面向对象符号
〖定义并且描述一种方法论〗
. 同样的任务存在不同的解决方法
. 系统分析和设计的方法通常称之为方法论( methodology )
. 方法论就是做事或者思考的策略, 步骤, 方向和行动
〖定义并且描述传统方法论, 结构化方法论, 信息建模方法论和面向对象方法论分类〗
. 常用的四种方法论的比较
方法论 系统流 数据 沟通手段 处理逻辑 特点
--------------------------------------------------------------------------------------------------------------
传统 系统流程图 表格, 采访 英语描述, 适合单独开发
版面, 脚本,
网格图 程序流程图,
HIPO
--------------------------------------------------------------------------------------------------------------
结构化 数据流图 数据词典, 采访, 判定树/表, 现实世界是数据在
数据结构 用户审查, 结构化语言, 信息系统中的流动,
图, JAD讨论 结构图, 以及数据流动过程
E-R图 Warnier-Orr图 中数据向信息的转化
1. 从功能角度出发
2. 结构化, 可重复,
可测量
--------------------------------------------------------------------------------------------------------------
数据建模 商业领域分析, 商业领域 采访, 商业系统设计 客观世界是数据和
处理模型 分析, 用户审查, 数据属性及其相互
E-R图 JAD讨论, 关系
头脑风暴
1. 从信息角度出发
2. 结构化, 可重复,
可测量
--------------------------------------------------------------------------------------------------------------
面向对象 对象模型 对象模型 采访, 对象, 模型, 解决问题的思路使用
属性 用户审查, 服务, 场景, 对象( 人, 地方和事
JAD讨论, 判定树/表, 情 )角度入手
头脑风暴 结构化语言
--------------------------------------------------------------------------------------------------------------
〖讨论分类理论及其面向对象方法论的联系〗
. 分类理论
组织方法
1) 区分对象及其特征 -- 对象和特征
2) 区分对象整体及其组成部分 -- 整体和部分
3) 区分对象和类 -- 类或者对象
. 面向对象方法论的联系
分类理论是面向对象方法论和编程建立的基础
〖定义并且描述面向对象方法论的主要特点〗
. 面向对象方法论的主要特点
基本原则:
1) 通用组织方法
用于协助组织信息模型以及编写最终软件.
- 对象及其属性特征的组织
- 整体和部分的观念
- 类和成员的使用
2) 抽象
忽略问题域的无干部分, 集中考虑关键部分 -- 取决于你对于细节的关心程度. 在系统分析中用于确定系统的必要需求删除不必要部分
3) 封装或者信息隐藏
- 软件的组成部分( 模块, 子程序, 方法等等 )应该互相独立或者隐藏设计细节.
- 封装有利于灵活地局部修改和维护软件模块
- 封装或信息隐藏的进一步细化指任何允许隐藏信息系统的某些部分的机制
: 人们只能使用或接触整个信息系统的某个子集
: 有意防止信息系统的某些部件注意或利用系统的其他部件, 设计封装的另一个功能 -- 分配责任
- 封装是所有常用信息系统方法的普遍特点
: 传统方法主要是功能和数据的分开封装
: 面向对象则将功能和数据封装进入对象
4) 继承
- 表示相似性质的机制
- 系统开发中的继承在层次中是自上而下单向进行的
5) 多态
- 具有多种形态的能力
6) 消息通信
- 对象之间联系的方法
7) 关联
- 有助于信息系统的各个部分相互联系
- 可以把同时发生或相似条件下发生的事情关联起来
8) 复用
- 在系统分析和设计广泛讨论的一个概念, 还不成熟
: 改变那些习惯建立自己的系统模型和代码的系统分析员和程序员的功能
; 建立可复用的模型和代码库的管理问题
- 采用形式
: 共享
: 复制
: 修改
. 面向对象方法论解决的两个经典问题
1) 多数方法论为系统建立分离的信息和功能模型
- 目前行为日益重要, 需要附加行为模型
- 目前的工具鉴于功能和数据模型从不同角度描述系统的部分, 无法检查和验证一起使用的一致性和精确度
2) 如何从分析平滑过渡到设计的问题
- 分析模型是系统分析员和用户交流的工具
- 在设计过程中, 分析模型不断添加与编程任务相关的细节
- 相关技术和工具: 动态和静态面向对象模型, 状态转换图和实例场景
〖定义并且描述科德的面向对象方法论〗
. 基本活动和部件关系
基本活动:
1) 确定目的和特点
先于任何建模之前进行
2) 确定对象和模式( 数据 + 行为 )
使用各种技术挖掘候选对象和类, 然后逐个细化和质疑, 最终得到系统真正需要的类和对象.
对象模式允许使用三种方式关联对象: 通用-特定, 整体-部分, 对象联结
3) 确定对象的责任( 数据 + 行为 + 功能 )
所有对象承担三种责任: 了解自己, 了解其他对象, 所做的工作
4) 确定对象的场景( 数据 + 行为 + 功能 )
场景是特定服务责任的按照时间顺序排列的对象交互序列
基本模型部件
1) 问题域( PD )
2) 人机交互( UI )
3) 数据管理( DM )
4) 系统交互( SI )
每一个模型部件都需要执行基本活动
标准顺序:
1) 首先是确定信息系统的目的和特点
2) 其次针对模型部件重复进行其他三个活动
〖定义并且描述科德的对象模型的活动〗
. 见上
〖定义并且描述科德的对象模型的部件〗
. 见上
〖描述科德的用于建立问题域的对象模型的面向对象符号〗
. 模型部件 使用矩形方框
. 对象类 使用内含圆边矩形的方框
. 类 无方框的圆边矩形
. 属性 方框/圆边矩形的中部填写
. 服务 方框/圆边矩形的下部填写
. 通用-特定联结 弧形
. 整体-部分联结 三角形
. 对象联结 实线
. 消息 虚线
〖掌握科德的用于描述类, 对象类和责任的面向对象符号〗
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -