好文档 - 专业文书写作范文服务资料分享网站

第10章 面向对象分析

天下 分享 时间: 加入收藏 我要投稿 点赞

软件工程导论(第五版)

1

第10章 面向对象分析

10.1面向对象分析的基本过程

不论采用哪种软件工程方法开发软件,需求分析的主要工作都是:理解需求、表达需求和验证需求,下面的图概括地表示了参照当前系统建立目标系统的过程。

图: 参照当前系统建立目标系统

面向对象分析(Object-Oriented Analysis,简称OOA)的关键就是识别出对象与类,并分析它们之间的关系,最终建立对象模型、动态模型和功能模型。

2

软件工程导论(第五版)

10.1.1 概述

系统分析员要善于学习、勇于实践,更重要的是一切从实际出发。

[[注注]]“OOA就是抽取和整理用户需求并建立问题域精精确确模模型型的过程。”(P231)——这在一开始能做到吗?——扯蛋

10.1.2 3个子模型与5个层次

面向对象建模需建立包含系统的三个要素:1)静态结构(对象模型)、2)交互次序(动态模型)、3)数据交换(功能模型)。

建立系统模型的过程是一个迭代(iterations)式的自顶向下的求精过程。对于一个大型复杂系统来说对对象象模模型型一般由下述5个层次组成:

图10.2 复杂问题的对象模型的5个层次

软件工程导论(第五版)

3

其中主题层是指从一个更高(高于“类”)的抽象层次来描述对象模型(即从一个相当高的层次上描述总体模型),通过划分“主题”把一个复杂系统的对象模型分解成几个不同的概念范畴。

其实上述5个层次就是OOA中建立对象模型的5项主要工作:找出类和对象,识别结构(类或对象之间的关系),识别主题、定义属性、定义服务。我们知道动态模型和功能模型中都包含了对象模型中的操作,因此人们在定义每个类中的服务前,往往先建立起动态模型和功能模型,这样说来OOA大体上可按下列顺序进行: (1)确定类和对象

(2)确定关联 (3)划分主题 (4)定义属性 (5)确定继承关系 (6)建立动态模型 (7)建立功能模型

4

软件工程导论(第五版)

(8)定义服务

需要注意地是在这里我们根本不强调顺序,更不是谈什么步骤。 10.2需求陈述

需求陈述的主要任务是准确地回答“系统必须做什么?”,而不是“系统应该怎么做?” 10.2.1书写要点 10.2.2例子

我们用“ATM系统”(ATM是Automatic Teller Machine的缩写,意即自动柜员机)的开发作为OOA&OOD的实例。

软件工程导论(第五版)

5

图10.2ATM系统

10.3建立对象模型 10.3.1确定类与对象

1. 找出候候选选的类与对象(例:P236 ATM系统) 一般来说,大千世界中的客观事物可分为5类: 1)可感知的物理实体,如:飞机,汽车,房屋 2)人或组织的角色,如:教师,医生,计算机系,学生处

3)应该记忆的事件,如:飞行,演出,访问,交通事故 4)对象的相互作用,如:购买,结婚,纳税 5)概念,如:政策,刑法,泛化,集合 2. 筛选出正确的类与对象

我们需要确定的类与对象是:

第10章 面向对象分析

软件工程导论(第五版)1第10章面向对象分析10.1面向对象分析的基本过程不论采用哪种软件工程方法开发软件,需求分析的主要工作都是:理解需求、表达需求和验证需求,下面的图概括地表示了参照当前系统建立目标系统的过程。图:参照当前系统建立目标系统面向对象分析(O
推荐度:
点击下载文档文档为doc格式
76iwf9lunf6tzp933x56
领取福利

微信扫码领取福利

微信扫码分享