本分析方法的,即对象和属性,类与成员,以及整体和部分。 识别对象的另一个目的是希望建立考察问题域和了解需求的稳定框架。对象只 是相对稳定的,但分析问题的框架 却是稳定的。 最后一个动机是希望在从系统分析向系统设计过渡时不要改变所采用的表示 法 3如何定义对象。 表示法 类-&-对象 类 2)何处去确定对象 问题域文字说明和图形表示都是有助于确定对象的素材 首先应该观察问题域并研究问题域本身 其次是研究文字说明材料。 最后是要仔细地观察各种图形表示 3)哪些可以作为对象 结构。问题域中的结构对确定对象和表示问题域层十分重要。在面向对象分 析中,有专门的一个识别结构的步骤 有关系统。所考虑的系统将以何种方式同有关的系统和外部终端交互 装置。所考虑的系统需要同何种装置交互。 应记忆的事件。系统是否有必要观测和记录时间点和历史事件 所起的作用。在所考虑的系统中,人起什么作用? 地点。所考虑的系统需要什么样的地理知识? 组织结构。人属于哪个机构? 4)应考虑那些内容 如果已找到一个候选对象,是否要放到模型中去?应考虑以下问题 必要的记忆。是否该系统需要记忆某个对象的所有情况?能否描述该对象的实 例?该对象的潜在的属性是什么?是否系统需要记忆与该对象有关的情况?如 果这一切的回答都是否定的,则该对象的存在就值得怀疑了
本分析方法的,即对象和属性,类与成员,以及整体和部分。 识别对象的另一个目的是希望建立考察问题域和了解需求的稳定框架。对象只 是相对稳定的,但分析问题的框架 却是稳定的。 最后一个动机是希望在从系统分析向系统设计过渡时不要改变所采用的表示 法。 3 如何定义对象。 1) 表示法 类-&-对象 类 2)何处去确定对象 问题域 文字说明 和图形表示都是有助于确定对象的素材。 首先应该观察问题域并研究问题域本身。 其次是研究文字说明材料。 最后是要仔细地观察各种图形表示。 3)哪些可以作为对象 结构。 问题域中的结构对确定对象和表示问题域层十分重要。在面向对象分 析中,有专门的一个识别结构的步骤。 有关系统。 所考虑的系统将以何种方式同有关的系统和外部终端交互? 装置。 所考虑的系统需要同何种装置交互。 应记忆的事件。 系统是否有必要观测和记录时间点和历史事件。 所起的作用。 在所考虑的系统中,人起什么作用? 地点。 所考虑的系统需要什么样的地理知识? 组织结构。 人属于哪个机构? 4)应考虑那些内容 如果已找到一个候选对象,是否要放到模型中去?应考虑以下问题 必要的记忆。是否该系统需要记忆某个对象的所有情况?能否描述该对象的实 例?该对象的潜在的属性是什么?是否系统需要记忆与该对象有关的情况?如 果这一切的回答都是 否定的,则该对象的存在就值得怀疑了
必要的方法。系统是否需要该对象提供的方法? 个以上的属性 共同属性。能否识别一组每个对象都有的属性? 共同的方法。能否识别一组共同的方法? 5)对什么提出否定意见 并非必要的记忆 并非必要的方法 单个实例; 派生结果 6)为对象命名 对象名应该能描述对象的实例的基本特征 识别结构 1什么是结构 从一般意义上来说,结构是一种思维组织的方式。在面向对象分析中,结构是问 题域复杂关系的表示,它与系统的任务直接相关。结构有一般 特殊结构和 整体 部分结构 2为什么要定义结构 识别结构能使分析人员的注意力集中在多个类和对象的复杂问题上。使用结构能 使分析人员考虑到问题的边缘,并揭示那些尚未发现的类和对象。 3定义一般一特殊结构的策略 将每个类看成一般类。针对它的潜在特殊类提出以下问题: 它是属于该问题域吗? 它是该系统的任务吗? 存在继承性吗? 特殊类满足类与对象的准则吗? 再以类似的方式,将每个类考虑为特殊类,并对它的潜在一般类提出同样的问题。 采用继承来显式表达属性和方法的共同部分,可以实现在一般特殊结构中恰当 地分配属性和方法。将共同的属性和方法放在上层,而将特有的属性和方法放在 下层 每个一般特殊结构均形成层次或网络 网络能描述复杂的特殊类;能有效地表示公共部分;对模型的复杂程度影响较少
必要的方法。系统是否需要该对象提供的方法? 一个以上的属性。 共同属性。能否识别一组每个对象都有的属性? 共同的方法。能否识别一组共同的方法? 5)对什么提出否定意见 并非必要的记忆; 并非必要的方法; 单个实例; 派生结果 6)为对象命名 对象名应该能描述对象的实例的基本特征。 二 识别结构 1 什么是结构 从一般意义上来说,结构是一种思维组织的方式。在面向对象分析中,结构是问 题域复杂关系的表示,它与系统的任务直接相关。结构有一般 —— 特殊结构和 整体 —— 部分结构。 2 为什么要定义结构 识别结构能使分析人员的注意力集中在多个类和对象的复杂问题上。使用结构能 使分析人员考虑到问题的边缘,并揭示那些尚未发现的类和对象。 3 定义一般 — 特殊结构的策略 将每个类看成一般类。针对它的潜在特殊类提出以下问题: 它是属于该问题域吗? 它是该系统的任务吗? 存在继承性吗? 特殊类满足类与对象的准则吗? 再以类似的方式,将每个类考虑为特殊类,并对它的潜在一般类提出同样的问题。 采用继承来显式表达属性和方法的共同部分,可以实现在一般 特殊结构中恰当 地分配属性和方法。将共同的属性和方法放在上层,而将特有的属性和方法放在 下层。 每个一般 特殊结构均形成层次或网络。 网络能描述复杂的特殊类;能有效地表示公共部分;对模型的复杂程度影响较少