软件需求工程 课件 第11章 面向问题域的需求分析方法_第1页
软件需求工程 课件 第11章 面向问题域的需求分析方法_第2页
软件需求工程 课件 第11章 面向问题域的需求分析方法_第3页
软件需求工程 课件 第11章 面向问题域的需求分析方法_第4页
软件需求工程 课件 第11章 面向问题域的需求分析方法_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第11章面向问题域的

需求分析方法

目录问题域的划分问题框架11-211-311-411-511-6PDOA方法的分析步骤问题框架实例间的关系及其组合需求测试11-1问题域11-1问题域问题域的定义所谓问题域是指与问题相关的部分现实世界。问题域和问题相互依存,问题处于一定的问题域之中,脱离了问题域,问题就无法存在。问题域也是与特定的问题相关的现实世界,脱离特定的问题考虑纯粹的问题域没有任何意义。如图所示,上面的三种描述横跨两种类型的域:需求分析文档全部包含在问题域中,与机器域无关;程序作用在机器域中,与问题域无关;而规格说明文档描述问题域与机器域之间的接口。这三类描述除所处的域类型、关注的内容不同外,相互之间也存在一定的关系,即需求规格说明文档可以看作是把需求分析文档转换为接口处的描述,程序则是使计算机按需求规格说明文档中所描述的那样运行。11-1问题域11-2问题域的划分对于复杂问题的分析,一般的做法是采用“分而治之”的策略。人们一般采用层次式功能分解的方法。1.确定系统所需的各项功能;2.若某些(或个)功能对应于一个足够小的具体实现单元,则由该实现单元直接实现这些(或个)功能;3.否则,把功能分解为一系列子功能,并重复步骤2和3,直到所有子功能可分别对应一个足够小的具体实现单元。11-2问题域的划分层次式分解方法的不足把高层功能分解成子功能的方式可能有多种,但没有任何方法可以提前告知这些分解方式中哪一个好或哪一个差,直到进入实现阶段时才可评价所采用的分解方式是否恰当,而此时分解活动早已结束。

分治策略并行划分:将每个子问题看成是整个问题的一个投影,通过不同角度的投影,将整个问题分解为一系列相互关联的子问题。其中子问题的需求是整个需求的一个投影,它的接口也是整个问题接口的一个投影。同时,在划分子问题的过程中,以已知解决方案的问题或以已知解决方案的相似问题为导向,来对未知解决方案的整个待求解问题进行恰当的分析和划分。M.Jackson提出的并行划分11-2问题域的划分11-3问题框架软件开发的五类问题需求式行为问题、命令式行为问题、信息显示问题、工件问题和变换问题。M.Jackson对每类基本问题的基本性质、所涉及问题域的类型、每类问题所涉及的问题域、用户需求和机器域之间的拓扑结构、应满足的关系及其性质等进行了研究,提出了这五类基本问题对应的五个不同的基本问题框架,并将这些问题框架用于对每种类型的基本问题进行描述和需求建模,同时对每个基本问题框架的可能变体进行了研究。11-3问题框架问题框架是一种模式,它捕获并定义了常见的简单子问题的类型。问题框架的作用类似于设计模式,只是前者用于问题的分析和描述,后者用于解决方案的设计。11-4问题框架的类型对软件系统进行了各种分类,试图为同类型软件的开发提供有益的指南或方法。常见的分类方式如:按系统软件和应用软件分类,进一步将后者划分为商业软件和工程软件两类。按批处理系统/脱机系统、交互系统和实时系统等分类。按以数据处理为主的系统、交互为主的系统和算法为主的系统等分类。问题框架可根据问题域特征、接口特征和需求特征定义一个直观的、可标识的问题类。对于上面所提及的五类基本问题,可以用五个不同的基本问题框架分别进行描述。在形式上,一个问题框架类似于一个问题图。与问题图稍微不同的是,问题框架中对每个域1的类型与共享现象的类型都进行了描述。问题框架不对应具体问题,其中的组成元素也不具有任何实际的意义。具体应用一个问题框架于某个实际问题称为实例化该问题框架,实例化后的结果称为问题框架实例。11-4问题框架的类型软件系统的分类需求式的行文问题框架的直观思想:存在客观世界的某个部分,其行为要受到控制,以使得它满足特定的条件。问题是要建立一个机器,该机器施加所需要的控制。

11-4问题框架的类型需求式行为问题框架

在需求式行为问题中,实际受控制的域也可能并不直接与控制机器相连,而是通过其他的连接域进行桥接,这是需求式行为问题框架的一种变体。如下图所示:命令式的行为问题框架的直观思想:存在客观世界的某个部分,其行为要依据操作者发出的命令来控制。问题是要建立一个机器,该机器接受操作者的命令并施加相应控制。其问题框架如图11-5所示。

11-4问题框架的类型命令式行为问题框架信息显示问题框架的直观思想:存在客观世界的某个部分,关于其状态和行为的特定信息被连续的需要。问题是要建立一个机器,该机器从客观世界中获得相关信息,并按所要求的格式呈现在所要求的地方。其问题框架如图11-6所示。

11-4问题框架的类型信息显示问题框架除带连接域的变体外,信息显示问题框架还有两种常见的变体。第一种变体引进一个模型域,并将信息显示问题框架用两个子框架表示,其中第一个子框架对现实世界进行建模,生成一个反映现实世界的模型域;

第二个子框架基于该模型域显示需求中所要求的信息,如图所示:信息显示问题框架的其他两种变体11-4问题框架的类型第二种变体是引进一个操作者域,机器根据操作者所发出的请求显示现实世界中的相关信息,如下图所示。11-4问题框架的类型信息显示问题框架的其他两种变体工件问题框架工作问题框架的直观思想:需要一个工具,让用户创建并编辑特定类型的计算机可处理的文本或图形对象或简单结构,以便它们随后能被拷贝、打印、分析或按其它方式使用。问题是要建立一个机器,该机器可以充当这个工具。其问题框架如图11-9所示。11-4问题框架的类型变换问题框架变换问题框架的直观思想是:存在一些计算机可读的输入文件,其数据必须变换,以给出所需要的特定输出文件。输出数据必须遵守特定的格式,按照特定的规则从输入数据中导出。问题是要建立一个机器,该机器从输入中产生所需要的输出。其问题框架如图10-10所示。11-4问题框架的类型11-5PDOA方法的分析步骤PDOA方法的特点将关注的重点定位在问题及其相关的问题域上,通过对问题及其问题域进行合理的分类,为分析人员提供解决具体问题的相关指南。同时从问题域的角度出发,使用户能参与整个需求过程,有利于更直观和真实地反映问题域的信息和用户的需求。PDOA方法的基本过程1.搜集需求信息,界定和描述问题及问题域。2.划分问题域并开发相关问题框架。3.根据问题框架的类型进一步描述问题域的相关特性。11-5PDOA方法的分析步骤11-5PDOA方法的分析步骤11-5-1问题及问题域的界定与描述传统的系统分析一般采用上下文图的形式界定并描述问题及其问题域。上下文图相当于结构化分析方法中的第0层数据流图。它由一个代表解系统的圆圈、一些对解系统外部可见且与解系统直接相连的域以及相关的信息流组成。域用矩形框表示,可以是某个特定的物理实体、与解系统交互的人,也可以是其他计算机系统等。采用上下文图界定问题域的方式实际上就是对那些解系统外部可见且直接与之相关的域进行标识。上下文图界定并描述整个问题及其问题域存在的不足:1)只描述了与解系统直接相连的域,而没有描述与解系统间接相连的其它域,这导致一些对于理解用户需求、甚至与用户需求直接关联的域可能会因此被忽略掉。2)只描述了系统外部可见的域,而没有描述在系统运行后才生成的域;3)只描述了域与解系统之间的关系,而没有描述域与域之间的关系;4)没有对问题进行任何具体的描述。11-5PDOA方法的分析步骤11-5-1问题及问题域的界定与描述以校园通为例,整个待解决的问题实际上是开发一套运行在主机上的软件系统,使之满足实例陈述中所提到的各种要求。通过对该实例进行初步分析,可生成如图11-11所示的上下文图。问题图M.Jackson等认为问题及其问题域的界定和描述必须以问题为中心,而不是以解系统为中心,并提出了采用问题图的形式来界定和描述问题及其问题域。问题图形式上是由机器、问题域和需求以及它们之间的关系组成。描述域与域间关系的现象描述域与域间关系的现象可分为事件、实体、值、状态、真值和角色等六种类型。前三种为个体,后三种为个体间的关系。个体是可以命名且可以区别于其他个体的事物;关系则是一组个体间的关联,它由一定数量的元组构成。在问题图中,机器与各个域之间的共享现象用于描述规格说明,称为规格说明现象。需求与各个域之间的共享现象用于描述用户需求,称为需求现象。PDOA方法的分析步骤11-5校园通的问题图在校园通系统中,除图11-11中所标识的五个域外,可以发现还有其他的一些域和该问题密切相关。有些和系统间接相连,如学生域、IC卡域、家长域、移动网络系统域、家长手机域、电话域等;有些则位于系统内部,由系统在实际运行时创建,如考勤报表域、学生在校表现域、学生请假记录域、原始刷卡记录域等。通过对问题所涉及的域以及域与域、域与机器、域与需求之间的关系进行深入分析,对校园通可作出如图11-12所示的问题图。PDOA方法的分析步骤11-5因实际问题及其问题域的类型和结构各不相同,难以找出一个通用、精确的方法来划分所有类型的问题及其问题域,主要依靠系统分析员的经验。通常的做法是通过与各基本问题框架及其变体进行随机匹配,以随意的方式对相关问题及其问题域进行划分:(1)由内到外的划分。(2)由外到内的划分。(3)基于节奏的划分。此外,还存在其他一些启发式的划分方法,如基于语气的划分、基于组合框架的划分等,读者可参阅相关的文献。

11-5PDOA方法的分析步骤11-5-2基于问题框架的问题域划分基于各种基本问题框架及其变体,以及前面介绍的划分方法,对于“校园通问题图”,可划分出如下一系列的问题框架实例。首先,家长可通过电话查询学生的各类在校表现,经过分析,它可与信息显示问题框架匹配,如图11-13所示。校园通问题图-问题框架实例11-5PDOA方法的分析步骤图11-13可看作是图11-12所示校园通问题的一个投影,例如图11-13中的机器“学生在校表现查询器”是图11-12的机器“校园通系统”的投影,共享现象d是图11-12中共享现象n的投影等。故此处通过与信息显示问题框架的匹配,实际上达到了对图11-12所示的问题进行一次划分的目的。其次,通过与命令式行为问题框架匹配,不难发现其中存在两个命令式行为子问题。第一个子问题是系统依据教师的操作命令给学生家长发送短信或取消暂未发出的短信。第二个子问题是系统依据学生的刷卡情况给学生家长发送短信,分别如图11-14a和图11-14b所示。校园通问题图-问题框架实例11-5PDOA方法的分析步骤考勤规则、学生请假记录、学生在校表现、原始刷卡记录等均为词法域,通过与工件问题框架匹配,可找出如下四个工件子问题:管理员创建并编辑学校的考勤规则;教师创建并编辑学生的请假记录﹔教师创建并编辑学生的在校表现信息﹔系统依据学生的刷卡情况创建原始刷卡记录。分别如图11-15、图11-16、图11-17和图11-18所示,其中图11-18是带连接域的工件问题框架实例。校园通问题图-问题框架实例11-5PDOA方法的分析步骤最后,系统根据考勤规则,对学生的原始刷卡记录和学生的请假记录进行汇总,变换生成考勤报表,刚好与变换问题框架匹配,如图11-19所示。至此,通过与各基本问题框架及其变体的匹配,将图11-12所示的校园通问题图划分成了图11-13~图11-19所示的各具体问题框架实例,从而实现了对校园通问题及其问题域的有效划分。校园通问题图-问题框架实例11-5PDOA方法的分析步骤11-6问题框架实例间的关系及其组合各问题框架实例间的关系由这种并行的划分所决定。两个并行的问题框架实例可能相互独立、互不相关,也可能相互之间具有一定的关联。对于问题框架实例的关联,可从静态形式和动态交互两个方面讨论。形式方面:一个问题框架实例对应一个问题图,因而两个问题框架实例在形式上相互关联是指它们所对应的问题图之间相互关联。两个问题框架实例形式上相关的另一种情况是一个问题框架实例所包含的需求,或者说它所对应的子问题应满足的需求是另一个问题框架实例中的域。交互方面:两个问题框架实例相关本质上是指它们的机器与机器之间存在由并行的划分所引发的并发关系,这类似于两个并发进程间的关系。综上可见,形式上两个问题框架实例间的关系可分为三种类型:无关、具有公共的域、一个问题框架实例的需求是另一个问题框架实例中的域。

11-6-1问题框架实例间的关系11-6问题框架实例间的关系及其组合问题框架实例的组合与基于问题框架划分问题及其问题域相辅相成,主要考虑在组合各个独立的问题框架实例时,如何使不同的问题框架实例在整体上保持协调,从而使它们能与原来的整个问题及其问题域保持一致。

如果两个问题框架实例在形式上无关,则它们之间的组合仅是简单意义上的相加,不存在任何问题需进行处理。若一个需求式行为问题框架实例与一个变换问题框架实例在形式上不存在任何重叠部分,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论