面向对象的分析与设计课件分析篇.ppt

上传人:b****2 文档编号:2185643 上传时间:2022-10-27 格式:PPT 页数:185 大小:2.87MB
下载 相关 举报
面向对象的分析与设计课件分析篇.ppt_第1页
第1页 / 共185页
面向对象的分析与设计课件分析篇.ppt_第2页
第2页 / 共185页
面向对象的分析与设计课件分析篇.ppt_第3页
第3页 / 共185页
面向对象的分析与设计课件分析篇.ppt_第4页
第4页 / 共185页
面向对象的分析与设计课件分析篇.ppt_第5页
第5页 / 共185页
点击查看更多>>
下载资源
资源描述

面向对象的分析与设计课件分析篇.ppt

《面向对象的分析与设计课件分析篇.ppt》由会员分享,可在线阅读,更多相关《面向对象的分析与设计课件分析篇.ppt(185页珍藏版)》请在冰豆网上搜索。

面向对象的分析与设计课件分析篇.ppt

第二部分:

分析篇第二部分:

分析篇北京大学信息科学技术学院北京大学信息科学技术学院研究生课程研究生课程研究生课程研究生课程面向对象的分析与设计面向对象的分析与设计主讲教师:

邵维忠主讲教师:

邵维忠110/27/20222北京大学信息学院研究生课程面向对象的分析与设计课件说明课件说明这组课件是本人多年来在北京大学讲授这组课件是本人多年来在北京大学讲授“面向对象的面向对象的分析与设计分析与设计”课程时制作的,随着该领域理论与技术的发课程时制作的,随着该领域理论与技术的发展而逐年改进。

目前的最新版本所适应的教材是邵维忠、展而逐年改进。

目前的最新版本所适应的教材是邵维忠、杨芙清合写的著作面向对象的分析与设计(清华大学杨芙清合写的著作面向对象的分析与设计(清华大学出版社出版社20132013年年11月)。

月)。

为了促进学术交流和资源共享,现将这套课件无偿提为了促进学术交流和资源共享,现将这套课件无偿提供给国内讲授同类课程的教师和同行,欢迎他们在教学工供给国内讲授同类课程的教师和同行,欢迎他们在教学工作中使用或作为参考。

课件共包括作中使用或作为参考。

课件共包括“基础篇基础篇”、“分析篇分析篇”和和“设计篇设计篇”三部分,是按照三部分,是按照5454学时研究生课程制作的,学时研究生课程制作的,各位教师可根据自己的授课对象及教学计划,对原课件进各位教师可根据自己的授课对象及教学计划,对原课件进行剪裁或重新组织。

行剪裁或重新组织。

北京大学信息学院北京大学信息学院邵维忠邵维忠电子信箱:

电子信箱:

20132013年年77月月22日日210/27/20223北京大学信息学院研究生课程面向对象的分析与设计第第55章章建立需求模型建立需求模型用况图用况图5.1需求分析和系统分析需求分析和系统分析需求分析需求分析的确切含义是对用户需求进行分析,旨在产生一份的确切含义是对用户需求进行分析,旨在产生一份明确、规范的需求定义。

明确、规范的需求定义。

OOA的主要内容是研究问题域中与需求有关的事物,把它们的主要内容是研究问题域中与需求有关的事物,把它们抽象为系统中的对象,建立类图。

确切地讲,这些工作应该抽象为系统中的对象,建立类图。

确切地讲,这些工作应该叫做叫做系统分析系统分析,而不是严格意义上的需求分析。

,而不是严格意义上的需求分析。

早期的早期的OOA缺乏一个良好的基础缺乏一个良好的基础对需求的规范描述。

对需求的规范描述。

需求说明需求说明需求分析需求分析健壮分析健壮分析需求模型需求模型分析模型分析模型分析过程分析过程Jacobson方法(方法(OOSE)提出用况()提出用况(usecase)概念,)概念,解决了对需求的描述问题,其分析过程如下:

解决了对需求的描述问题,其分析过程如下:

310/27/20224北京大学信息学院研究生课程面向对象的分析与设计问题域问题域(抽象的来源)(抽象的来源)OOA模型模型(类图)(类图)抽象抽象OOA是将问题域中的事物抽象为系统中的对象是将问题域中的事物抽象为系统中的对象系统责任系统责任(抽象的目标)(抽象的目标)抽象的目标是系统责任抽象的目标是系统责任需求需求用况的概念解决了对需求的描述问题用况的概念解决了对需求的描述问题需求模型需求模型(用况图)(用况图)410/27/20225北京大学信息学院研究生课程面向对象的分析与设计5.25.2基本思路基本思路问题的提出:

问题的提出:

在系统尚未存在时,如何描绘用户需要一个什么样的系统?

如何规范地定义用户需求?

考虑问题的思路:

考虑问题的思路:

把系统看作一个黑箱,看它对外部的客观世界发挥什么作用,描述其外部可见的行为外部可见的行为。

系统是由一条系统是由一条边界包围起来边界包围起来的未知空间的未知空间只通过有限只通过有限的几个接口的几个接口与外部交互与外部交互系统边界以外系统边界以外是与系统进行是与系统进行交互的参与者交互的参与者把内外交互情况描把内外交互情况描述清楚,就确切地述清楚,就确切地定义了系统的需求定义了系统的需求510/27/20226北京大学信息学院研究生课程面向对象的分析与设计系统边界系统边界系统边界:

系统边界:

一个系统所包含的所有系统成分与系统以外一个系统所包含的所有系统成分与系统以外各种事物的分界线。

各种事物的分界线。

系统:

系统:

被开发的计算机软硬件系统,不是指现实系统。

被开发的计算机软硬件系统,不是指现实系统。

系统成分:

系统成分:

在在OOA和和OOD中定义并且在编程时加以实中定义并且在编程时加以实现的系统元素现的系统元素对象对象对对象象对象对象对象对象对象对象对象对象对象对象参与者参与者(人员人员)参与者参与者(设备设备)参与者参与者(外系统外系统)参与者:

参与者:

在系在系统边界以外,统边界以外,与系统进行交与系统进行交互的事物互的事物人员、设备、人员、设备、外系统外系统5.3系统边界与参与者系统边界与参与者610/27/20227北京大学信息学院研究生课程面向对象的分析与设计现实世界中的事物与系统之间的关系现实世界中的事物与系统之间的关系分四种情况分四种情况

(1)被抽象为系统中的对象)被抽象为系统中的对象汽车飞机奖杯钟表起重机职员楼房天平

(2)只作为系统外部的参与者与系统交互)只作为系统外部的参与者与系统交互(4)与系统无关)与系统无关操作员(3)既是系统中的对象,本身又作为参与者与系统交互)既是系统中的对象,本身又作为参与者与系统交互710/27/20228北京大学信息学院研究生课程面向对象的分析与设计人员人员系统的直接使用者系统的直接使用者直接为系统服务的人员直接为系统服务的人员设备设备与系统直接相联的设备与系统直接相联的设备为系统提供信息为系统提供信息在系统控制下运行在系统控制下运行不与系统相连的设备不与系统相连的设备计算机设备计算机设备外系统外系统上级系统上级系统子系统子系统其它系统其它系统如何发现参与者如何发现参与者考虑人员、设备、外系统考虑人员、设备、外系统810/27/20229北京大学信息学院研究生课程面向对象的分析与设计什么是用况什么是用况I.Jacobson:

用况是通过使用系统功能的某些部分而使用系统的一种具体方式。

每个用况是通过使用系统功能的某些部分而使用系统的一种具体方式。

每个用况包括用况包括一一个个由参与者发动的由参与者发动的完整的事件过程。

它详细说明了参与者和完整的事件过程。

它详细说明了参与者和系统之间发生的交互。

因此,一个用况是一个由参与者和系统在一次对系统之间发生的交互。

因此,一个用况是一个由参与者和系统在一次对话中执行的特定的相关事务序列。

全部用况的集合则说明了所有可能存话中执行的特定的相关事务序列。

全部用况的集合则说明了所有可能存在的系统使用方式。

在的系统使用方式。

对象技术词典:

对象技术词典:

1对一个系统或者一个应用的一种单一的使用方式所进行的描述。

对一个系统或者一个应用的一种单一的使用方式所进行的描述。

2关于关于单个参与者单个参与者在与系统的对话中所执行的处理的行为陈述序列。

在与系统的对话中所执行的处理的行为陈述序列。

UML:

对对系统系统在与它的参与者交互时所能执行的一组动作序列(包括其变体)在与它的参与者交互时所能执行的一组动作序列(包括其变体)的描述。

的描述。

本书的定义:

本书的定义:

用况是对参与者使用系统的一项功能时所进行的交互过程的用况是对参与者使用系统的一项功能时所进行的交互过程的描述,其中包含由双方交替执行的一系列动作。

描述,其中包含由双方交替执行的一系列动作。

5.4用况(用况(usecase)910/27/202210北京大学信息学院研究生课程面向对象的分析与设计术语术语“usecaseusecase”的准确含义的准确含义使用情况使用情况是对一项系统功能使用情况的一般描述,它对于每一次使是对一项系统功能使用情况的一般描述,它对于每一次使用都普遍适应,既不是应用实例,也不是举例说明。

用都普遍适应,既不是应用实例,也不是举例说明。

因此译为因此译为“用况用况”,而不是,而不是“用例用例”。

几点说明:

几点说明:

(11)一个用况只描述参与者对一个用况只描述参与者对单独一项单独一项系统功能的使用情况;系统功能的使用情况;(22)通常是平铺直叙的)通常是平铺直叙的文字文字描述,描述,UMLUML也允许其他描述方式;也允许其他描述方式;(33)陈述参与者和系统在交互过程中)陈述参与者和系统在交互过程中双方双方所做的事;所做的事;(44)所描述的交互既可能由所描述的交互既可能由参与者发起参与者发起也可能由也可能由系统发起系统发起;(55)描述彼此为对方)描述彼此为对方直接地直接地做什么事,不描述怎么做;做什么事,不描述怎么做;(66)描述应力求准确,允许概括,但)描述应力求准确,允许概括,但不要把双方的行为混在一起不要把双方的行为混在一起;(77)一个用况可以由一个用况可以由多种参与者多种参与者分别参与或共同参与。

分别参与或共同参与。

1010/27/202211北京大学信息学院研究生课程面向对象的分析与设计内容与书写格式内容与书写格式:

名称名称行为陈述(分左右栏)行为陈述(分左右栏)调用语句调用语句控制语句控制语句括号或标号括号或标号收款收款输入开始本次收款的命令;作好收款准备,应收款总作好收款准备,应收款总数置为数置为00,输出提示信息;,输出提示信息;forfor顾客选购的每种商品dodo输入商品编号;ifif此种商品多于一件thenthen输入商品数量endifendif;检索商品名称及单价;检索商品名称及单价;货架商品数减去售出数;货架商品数减去售出数;if货架商品数低于下限货架商品数低于下限thencall通知上货通知上货endif;计算本种商品总价并打印编号、计算本种商品总价并打印编号、名称、数量、单价、总价;名称、数量、单价、总价;总价累加到应收款总数;总价累加到应收款总数;endforendfor;打印应收款总数;打印应收款总数;输入顾客付款数;计算应找回款数,计算应找回款数,打印付款数及找回款,打印付款数及找回款,应收款数应收款数计入账册。

计入账册。

例例1110/27/202212北京大学信息学院研究生课程面向对象的分析与设计如何定义用况如何定义用况针对单个用况的描述策略:

针对单个用况的描述策略:

把自己当作参与者,与设想中的系统进行交互。

考虑:

交互的目的是什么?

需要向系统输入什么信息?

希望由系统进行什么处理并从它得到何种结果?

把上述交互过程描述出来。

定义系统中所有的用况:

定义系统中所有的用况:

(1)全面地了解和收集用户所要求的各项系统功能,找出所有的参与者,了解与各项功能相关的业务流程;

(2)把用户提出的功能组织成适当的单位,每一项功能完成一项完整而相对独立的工作;(3)穷举每一类参与者所使用的每一项系统功能,定义相应的用况;(4)检查用户对系统的各项功能需求是否都通过相应的用况做了描述。

1210/27/202213北京大学信息学院研究生课程面向对象的分析与设计参与者参与者基用况基用况includeextendinclude用况用况基用况基用况基用况基用况被包含用况被包含用况延伸用况延伸用况用况用况5.55.5用况图用况图参与者参与者参与者参与者模型元素:

模型元素:

参与者参与者用况用况延伸延伸包含包含泛化泛化5.55.5用况图用况图1310/27/202214北京大学信息学院研究生课程面向对象的分析与设计用况之间的关系用况之间的关系包含、延伸、泛化包含、延伸、泛化延伸延伸包含包含问题:

问题:

延伸与包含的相似性延伸与包含的相似性延伸的方向问题延伸的方向问题“条件条件”和和“延伸点延伸点”问题问题“泛化泛化”问题问题系统边界问题系统边界问题PerformATMPerformATMTransactionTransactionWithdrawWithdrawDepositDepositFundsFunds泛化泛化TransfeTransferFundsrFunds1410/27/202215北京

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1