




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、面向对象的需求分析nOOSEnOOAnOODnOOPnOOTn.OOAn是OO软件工程的第一项技术活动n将现实世界的“视图”转化为用对象来描述的模型n描述对象之间的各种关系,以满足软件系统的要求。面向对象分析模型属性、操作、协作者对象-行为模型对象-关系模型类/对象模型使用实例面向对象分析方法面向对象分析方法n面向对象分析模型的建立从哪里入手呢?面向对象分析模型的建立从哪里入手呢?一般来说总是从理解系统的一般来说总是从理解系统的“使用实例开始使用实例开始”n回顾回顾面向对象分析模型的构成面向对象分析模型的构成n基本步骤基本步骤1.1.定义系统的用例定义系统的用例2.2.领域分析,建立类对象模型
2、领域分析,建立类对象模型3.3.建立对象建立对象- -关系模型关系模型4.4.建立对象建立对象- -行为模型行为模型5.5.编写编写SRSSRS功能模型功能模型对象模型对象模型动态模型动态模型静态模型静态模型领域分析 n目的n发现或创建可广泛应用的类,以便复用 n分析特定的应用领域 n形式n公共对象、类、子集合和框架等类对象建模(一)n静态建模静态建模对象模型:类对象模型:类/对象模型对象模型n确定分析模型中的类/对象1.考察系统用例,得到候选对象2.进一步考察候选对象,确定正式对象3.确定对象的名称表示、属性和操作4.类和对象的图形表示类对象建模(一)n确定分析模型中的类对象n考察系统用例n
3、汇总名词、名词短语n得到候选对象n筛选对象n冗余、无关、笼统、属性、操作、实现n确定类对象n必要的信息、需求、服务n多个属性、公共操作 无论是面向对象分析还是面向对象设计与实现,建立类图都是核心技术。类图是定义其他图的基础,在该基础上用交互图、状态图等进一步描述系统其他方面的特性。 如何识别对象?对象以一系列不同形式展示自身:外部实体、事物、发生的事件、角色、组织单位、位置或结构。 一种最简单的方法是从系统处理说明中找出名词。1. 考察系统用例,得到候选对象1.考察系统用例,得到候选对象1. 考察系统用例,得到候选对象 例如,考察“家庭保安系统用例图”或在系统的需求陈述中,找出相关的名词是:用
4、户、传感器 、 控制面板、系统(安全系统)、 传感器编号、 传感器类型、密码、 电话号码、 传感器事件、 警报器 等。 这些候选的对象是否都可作为在系统中承担责任的有用对象?要根据一定原则筛选。见下表: 几条筛选特征: 例:家庭保安系统中潜在的对象及筛选理由 (1)保留的信息保留的信息 潜在对象 选取理由 筛选理由 (2)需要的服务需要的服务 用户 角色或外部实体 不符合1/2 (3)多个属性多个属性 传感器传感器 外部实体 符合1-6 (4)公共属性公共属性 控制面板控制面板 外部实体 符合1-6 (5)公共操作公共操作 系统(安全系统) 事物或聚集对象 符合1-6 (6)基本的需求基本的需
5、求 传感器编号 事物或概念实体 不符合3 传感器类型 事物或概念实体 不符合3 密码 事物或概念实体 不符合3 电话号码 事物或概念实体 不符合3 传感器事件传感器事件 事件 符合1-6 警报器警报器 外部实体 符合1-6 几乎满足所有特征的对象才会被考虑为分析模型中的合法对象.2. 进一步考察候选对象,确定正式对象3. 确定对象的名称表示、属性和操作确定对象的名称表示、属性和操作 (1 1)根据系统的描述给对象确定一个唯一的名称)根据系统的描述给对象确定一个唯一的名称 (2 2)定义类)定义类/ /对象的属性:对象的属性: 类的属性与操作和该类在系统中承担的责任有关。属性类的属性与操作和该类
6、在系统中承担的责任有关。属性表示了类的特性,即类必须保持的以完成软件目标的信息。表示了类的特性,即类必须保持的以完成软件目标的信息。属性的取值决定了对象可能的状态。属性的取值决定了对象可能的状态。 传感器有类型、编号、位置、颜色、重量、工作状态传感器有类型、编号、位置、颜色、重量、工作状态(关闭、待机、监控)、采样频率、报警阈值等特性,哪(关闭、待机、监控)、采样频率、报警阈值等特性,哪些与系统责任有关呢?些与系统责任有关呢? 定义属性的一些经验:定义属性的一些经验: 一般常识;一般常识; 分析问题域,检查与对象相联系的形容词或名词短语;分析问题域,检查与对象相联系的形容词或名词短语; 责任;
7、责任; 保存管理信息;保存管理信息; 有些属性在对象模型稳定之前可暂不考虑。有些属性在对象模型稳定之前可暂不考虑。 3. 确定对象的名称表示、属性和操作确定对象的名称表示、属性和操作(3 3)定义操作)定义操作 操作反映对象的行为并以某种方式修改对象操作反映对象的行为并以某种方式修改对象的属性。对象行为可理解为对象应展现的外部服务的属性。对象行为可理解为对象应展现的外部服务的总和。对象的行为分为三类:的总和。对象的行为分为三类: 对象生命周期中的创建、维护、删除行为。对象生命周期中的创建、维护、删除行为。 计算行为计算行为 监控行为监控行为 通过这些行为体现对象的责任。通过这些行为体现对象的责
8、任。 对象以两种方式完成它们的责任:对象以两种方式完成它们的责任: 使用它自己的操作去操作自己的属性,使用它自己的操作去操作自己的属性, 对象和其他对象协作。对象和其他对象协作。 因此对象的操作可以有以下几种类型:因此对象的操作可以有以下几种类型: 实现功能的操作:可追溯到用户需求。实现功能的操作:可追溯到用户需求。 管理对象创建和删除的操作。在分析阶段,这些操作可暂缓管理对象创建和删除的操作。在分析阶段,这些操作可暂缓定义。定义。 访问属性的操作。一个类的属性通常是私有的或受保护访问属性的操作。一个类的属性通常是私有的或受保护 的,只有通过该类提供的操作来访问。的,只有通过该类提供的操作来访
9、问。 辅助一个类完成其任务的操作,即协作操作。辅助一个类完成其任务的操作,即协作操作。 如何定义操作如何定义操作呢?呢? 分析问题域:有哪些行为,找有关动词。分析问题域:有哪些行为,找有关动词。 如如“传感器被传感器被赋予赋予一个编号和类型一个编号和类型”。 系统的责任:找与责任有关的对象,这些对象为承担责任系统的责任:找与责任有关的对象,这些对象为承担责任 应提供哪些服务。应提供哪些服务。 分析类的状态转换,引起类状态转换的动作。分析类的状态转换,引起类状态转换的动作。 追踪一个用例的执行路线,如顺序图,通过对象间通信发追踪一个用例的执行路线,如顺序图,通过对象间通信发 现操作。现操作。 因
10、此类的有些操作是在对象因此类的有些操作是在对象- -行为模型建立后才补充进来。行为模型建立后才补充进来。下图是传感器类的较为详细的定义及它的下图是传感器类的较为详细的定义及它的STDSTD:传感器类类型;编号;位置;工作状态;采样频率;警报阈值;初始化;关闭;监视;待机;显示;振铃;拨号;关闭状态待机状态监视状态初始化命令关闭命令监视命令待机命令关闭命令超越阈值/激活显示、振铃、拨号传感器类的STD例子4.类和对象的图形表示类和对象的图形表示几何对象几何对象颜色颜色位置位置移动(移动(delta:矢量):矢量)选择(选择(P:指针型)指针型):布尔型布尔型旋转旋转(角度角度)n类的描述图类的描
11、述图人人姓姓 名名:字符串字符串年年 龄龄: 整整 型型改换工作改换工作改换地址改换地址文件文件文件名文件名文件大小文件大小最近更新日期最近更新日期打印打印n对象的描述图对象的描述图类名类名属性属性操作操作 对象对象 类类(人人)李军李军24程序员程序员无无(人人)张红兵张红兵28绘图员绘图员人民路人民路58号号4.类和对象的图形表示类和对象的图形表示类名属性操作/服务/运算类名(a)(b)类名属性(c)通常类与对象的表示符号有以上几种通常类与对象的表示符号有以上几种类对象建模(二)n定义类结构与层次n一般-特殊n整体-部分n定义主题和子系统n高层抽象例子电话话筒按键连接线话机人电话人教师大学
12、生小学生学生中学生4.类和对象的图形表示类和对象的图形表示(a)(b)一般类特殊类1特殊类2部分1部分2整体类的结构与层次表示符号3.6.3 类对象建模(二)n定义主题和子系统 为了便于分析和理解大(复杂)的系统,可以将大系统分解为几个主题。当然在开发很小的系统时,可能无须引入主题层。 主题层的划分原则是:应该按问题域而不是用功能分解方法来确定主题,组合结构常常可以形成一个主题。下图表示储蓄系统的主题层,将储蓄系统分解为三个主题:储户、事务、银行,分别用三个粗黑框封闭起来,右下角是主题名。储户帐户取款事务总行分行中央计算机储蓄所分行计算机终端柜员储户储户事务事务银行银行储蓄系统对象模型主题层
13、图返回存款事务1+1+1+1+例子 建立对象关系模型n静态建模静态建模对象模型:对象对象模型:对象关系模型关系模型n步骤n复审需求描述和用例陈述n找出表示关系的动词或动词短语n用线连接起来,箭头表示方向n给连接命名,标上基数对象对象-关系图例子关系图例子:0::0:1:m0::0:部门流水线工序材料在制品:不良品指标数据:规格实时数据简略的对象(类)关系图对象对象- -关系图关系图例子例子储户姓名地址帐户帐户号余额事务日期金额柜员号1+1+取款事务 总行名称柜员柜员号1+分行分行号1+1+1+储蓄系统对象模型属性层存款事务 终端终端号1+1+1+存储要求拥有处理存储储蓄所所号地址例子:详细的对
14、象(类)关系图返回建立对象行为模型n动态建模动态建模对象行为模型:对象行为模型:状态转换图、事件轨迹图状态转换图、事件轨迹图n基本过程基本过程评估用例,理解系统中的交互序列找出驱动交互序列的事件为每个用例创建事件轨迹为对象创建状态转换图创建事件轨迹1 1、拿起电话受话器、拿起电话受话器1212、打电话者听见振铃声、打电话者听见振铃声2 2、电话忙音开始、电话忙音开始1313、对方接电话、对方接电话3 3、拨电话号码数、拨电话号码数5 51212、接话方停止振铃、接话方停止振铃4 4、电话忙音结束、电话忙音结束1414、打电话方停止振铃声、打电话方停止振铃声5 5、拨电话号码数、拨电话号码数5
15、51515、通电话、通电话6 6、拨电话号码数、拨电话号码数5 51616、对方挂电话、对方挂电话7 7、拨电话号码数、拨电话号码数1 11717、电话切断、电话切断8 8、拨电话号码数、拨电话号码数2 182 18、打电话者挂电话、打电话者挂电话.1111、对方电话开始振铃、对方电话开始振铃序列。序列。例如:打电话的场景:例如:打电话的场景:打电话者打电话者 电话线电话线 接电话者接电话者拿起接收器拿起接收器拨号音开始拨号音开始拨号(拨号(9)忙音结束忙音结束拨号(拨号(6)拨号(拨号(5)拨号(拨号(1)拨号(拨号(2)拨号(拨号(3)拨号(拨号(4)拨号(拨号(8)拨号(拨号(8)铃声停
16、止铃声停止电话连通电话连通电话断开电话断开打电话者挂机打电话者挂机铃声铃声受话方回答受话方回答铃声停止铃声停止电话连通电话连通受话方挂机受话方挂机电话断开电话断开打电话者打电话者事件轨迹图储蓄系统正常情况下的事件轨迹/时序/顺序图询问类型储户柜员终端分行请求验证帐户递交存折请求分行验证帐户帐户有效要求类型要求输入密码输入密码请求分行验证密码密码有效输入取款额要求输入取款额请求分行处理事务分行事务成功帐单打印请求帐单确认帐单签字确认交现金、还存折交现金、还存折输入类型回答类型询问取款额回答取款额对象对象/角色角色生命线生命线消息传递、注释消息传递、注释打电话状态转换图空闲空闲拨号拨号连接连接铃响
17、铃响连接连接断连断连忙音忙音快速忙音快速忙音拨号音拨号音超出时间超出时间记录的信息记录的信息放下话筒放下话筒提起话筒超时超时无效号码有效号码对方应答通路一位号码中断线忙号码忙对方电话挂断信息送完申请会议召开事件轨迹图请求验证帐户主屏do:显示主屏幕do:要求密码帐户有效do:验证密码输入密码密码正确处理结束结束do:打印帐单do:验证帐户do:显示无效帐户帐户无效密码错取款额无效do:要求取款额do:检验取款额取款额有效do:取款事务do:显示取消信息do:要求类型输入类型输入取款额do:显示失败信息事务失败等待5秒钟取消取消取消取消考察用例“买饮料”n顾客将钱插入销售机,然后他或她进行选择。如果一切顺利,销售机内还储存有至少一罐被选择的饮料,则销售机 会自动弹出一罐这种饮料给顾客。n用例是由顾客在销售机中插入钱币所发起的。然后他或她进行一个选择,销售机中至少要有一罐选择的饮料,如果没有,销售机就给顾客提示一个 信息,告诉顾客没有这种品牌的饮料。理想情况下,顾客看到这条消息后会立即选择其他品 牌的饮料。销售机必须提供给顾客取回原来的钱的选项。 考察用例“买饮料”n接着让我们来看看“付款数不正确”这个场景,顾客按照通常的方式发起了这个用例, 并进行一个选择。假设这时机器中各有选择的饮料。如果机器中刚好存有适合的零钱,那么 机器就会退
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 产品外协加工合同范例
- 医院信息系统安全防御与响应
- 浙江省钱塘联盟2024-2025学年高一下学期4月期中联考试题 语文 PDF版含答案
- 从商业角度看如何利用区块链技术推动企业变革
- 供热材料合同范例
- 区块链技术助力医疗供应链优化
- 兑快递合同范例
- Ⅰ型肾小管性酸中毒的临床护理
- 公司文秘个人工作总结报告3篇
- 个人跟公司合作合同范例
- 手术中大出血抢救流程
- 初中语文第23课《“蛟龙”探海》课件-2024-2025学年统编版语文七年级下册
- 2025重庆武工工业技术研究院有限公司招聘15人笔试参考题库附带答案详解
- 电工技术基础 教案全套 欧小东 第1-10章 直流电路的基础知识-过渡过程
- 汽车销售礼仪与沟通技巧考核试卷
- 光伏电站面试题库及答案
- 陶艺店管理制度
- 遗体转运协议书范本
- 挖矿委托协议书范本
- 2025年标准租房合同范本
- 三元空间下个人化IP综艺《灿烂的花园》叙事与价值研究
评论
0/150
提交评论