结构化需求分析与建模PPT课件_第1页
结构化需求分析与建模PPT课件_第2页
结构化需求分析与建模PPT课件_第3页
结构化需求分析与建模PPT课件_第4页
结构化需求分析与建模PPT课件_第5页
已阅读5页,还剩37页未读, 继续免费阅读

下载本文档

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

文档简介

1、 “化学制品跟踪系统化学制品跟踪系统”的项目开发组正在进行第的项目开发组正在进行第一次软件需求规格说明的评审。参加者有一次软件需求规格说明的评审。参加者有Dave(项目(项目经理),经理),Lori(需求分析者),(需求分析者),Helen( (高级程序员高级程序员) ),Ramesh ( (测试专家测试专家) ),Tim( (化学制品的产品代表者化学制品的产品代表者) ),还有还有Roxanne ( (化学制品仓库的产品代表者化学制品仓库的产品代表者) )。 Tim开始说:开始说:“我阅读过整个软件需求规格说明。我阅读过整个软件需求规格说明。大部分都符合我的需求,但是有几个部分我很难同意。大

2、部分都符合我的需求,但是有几个部分我很难同意。我不能确信在化学制品请求过程中,我们是否确定了我不能确信在化学制品请求过程中,我们是否确定了这些这些步骤步骤。”Ramesh又补充说:又补充说:“当一个请求通过系当一个请求通过系统时,我很难想象用于覆盖该请求状态变化的所有测统时,我很难想象用于覆盖该请求状态变化的所有测试用例。我发现许多关于试用例。我发现许多关于状态变化状态变化的需求散布在整个的需求散布在整个软件需求规格说明中,但我无法确定是否有一些需求软件需求规格说明中,但我无法确定是否有一些需求遗漏了或存在不一致性。遗漏了或存在不一致性。”引言与要点第1页/共42页Roxanne有一个类似的问

3、题。有一个类似的问题。“当我阅读了如何真正当我阅读了如何真正请求一种化学药品时,我感到困惑请求一种化学药品时,我感到困惑”,她说,她说,“单单个需求是能感觉到的,但我难以想像我所要完成的个需求是能感觉到的,但我难以想像我所要完成的步骤顺序步骤顺序。”在各评审员提出其它相关的问题后,在各评审员提出其它相关的问题后,Lori做出了总结:做出了总结:“看来软件需求规格说明似乎没有看来软件需求规格说明似乎没有完全告诉我们对于理解系统所需的各个方面,也不完全告诉我们对于理解系统所需的各个方面,也不能确保我们没有错过一个需求或不犯任何错误。我能确保我们没有错过一个需求或不犯任何错误。我将将画一些图来帮助我

4、们想像这些需求,并看一下能画一些图来帮助我们想像这些需求,并看一下能否澄清这些问题域。否澄清这些问题域。谢谢你们的反馈意见。谢谢你们的反馈意见。”引言与要点第2页/共42页相关基础概念 所谓模型,就是为了理解事物而对该事物做出的一种抽象,在软件工程中的模型由一组图形符号和组织这些符号的规则组成 。 经过对需求获取的资料进行分析,并以此建立起来的模型称之为需求分析模型。第3页/共42页引言与要点 需求分析模型主要描述软件目标系统的数据信息、处理功能、用户界面及运行的外部行为,它并不涉及软件的具体实现细节。 模型帮助分析员理解系统的信息、功能和行为;模型成为评审焦点;模型也是设计基础。 建模充分体

5、现了“分而治之”这一古老而有效的概念。把复杂而困难的问题分解细化后,逐个解决它们。 建模能有效地将需求映射到软件结构中 。BKBK第4页/共42页第四章 结构化分析与建模(一)4.1 需求建模概述与结构化建模4.2 数据模型与ERER图本章结构4.3 功能模型数据流图4.4 行为模型状态转换图4.5 数据字典4.6 判定表和判定树第5页/共42页需求分析阶段模型的作用 帮助系统分析员理解系统的信息、功能和行为,使得需求分析任务更加容易实现,结果更加系统化。 它是评审焦点,是确定SRSSRS完整性、一致性和精确性的重要依据。 它是设计的基础,是软件要素的表示视图。第6页/共42页 从客户需求到分

6、析模型从客户需求到分析模型 认真听取客户陈述他们的需求之后,分析人员就可以挑选出关键字,将这些关键字转换成特定的模型元素。 表4.14.1列出了一些可能的映射:第7页/共42页单词类型单词类型 示示 例例 分析模型组件分析模型组件 名词名词 人、组织、软件系统、数据项或存人、组织、软件系统、数据项或存在的对象在的对象 数据存储数据存储(DFD)(DFD) 执行者执行者( (用例图用例图) ) 实体或实体属性实体或实体属性(ERD)(ERD) 类或类属性类或类属性( (类图类图) ) 动词动词 动作、用户可做的事情或可能发生动作、用户可做的事情或可能发生的事件的事件 处理过程处理过程(DFD)(

7、DFD) 用例用例( (用例图用例图) ) 关系关系(ERD)(ERD) 状态状态(STD)(STD) 活动活动( (活动图活动图) ) 表4.1 映射示例第8页/共42页 “一位一位化学家化学家或或化学品仓库保管人员化学品仓库保管人员可以提出可以提出获得一种或多种获得一种或多种化学制品化学制品的的请求请求:一是提供一个存:一是提供一个存在于在于化学制品仓库清单化学制品仓库清单上的化学品上的化学品容器容器,二是向外,二是向外界界供应商供应商提交一份提交一份订购订购新的化学品的新的化学品的订单订单。提出请提出请求的人求的人在准备其请求时,必须能够通过在线查找在准备其请求时,必须能够通过在线查找供

8、供应商目录表应商目录表找到特定的化学品。从准备请求直到执找到特定的化学品。从准备请求直到执行请求或取消请求期间,系统必须跟踪每一个化学行请求或取消请求期间,系统必须跟踪每一个化学品请求的品请求的状态状态。系统还必须跟踪每个化学品的。系统还必须跟踪每个化学品的历史历史记录记录,从,从公司公司收到化学品直到它完全被用尽或丢弃收到化学品直到它完全被用尽或丢弃为止。为止。”化学制品跟踪系统示例化学制品跟踪系统示例第9页/共42页结构化分析的模型v结构化分析是一种建立模型的活动,创建描述信息内容和信息流的模型,依据功能和行为对系统进行划分。v建模时, , 需要关注系统最复杂和风险最大的部分,以及最容易产

9、生歧义和不确定性的部分。第10页/共42页结构化分析的模型结构化分析模型图结构化分析模型图第11页/共42页4.2 数据模型与ER图 数据模型包括三种互相关联的信息:数据对象、描述数据对象的属性和数据对象相互连接的关系。1. 数据对象是一个外部实体、一个事物(如报告)、一次行为(如电话呼叫)或事件(一个警报)、一个角色(如销售人员)、一个组织单元(如销售部门、人事部门)、一个地点(如仓库)或一个结构(如文件)。第12页/共42页4.2 数据模型与ER图 如,人或车可以被认为是数据对象,因为它们可以用一组属性来定义。 “数据对象描述” 包括了数据对象及其所有的属性。数据模型只封装了数据,没有对数

10、据的操作。第13页/共42页2.属性属性定义了数据对象的性质,数据对象有许多属性,应选择一组本质的属性。例如,教师的属性有教工号、姓名、性别、职称、专业、研究方向、担任课程、住址、电话等。如果设计“教学管理系统”,关心与教学有关的属性、排除与教学无关的属性。第14页/共42页3. 关系数据对象是相互关联的,如人可以“拥有”车。拥有即它们间的一种关系。实体和实体之间的关系被抽象为联系。联系分为:1)一对一(1:1)(一个丈夫只能有一个妻子) 2) 一对多(1:N)(一个母亲有多个孩子)3) 多对多(M:N)(侄子与叔叔)第15页/共42页实体实体关系图关系图概念概念 最常使用的数据模型是实体关系

11、图(Entity-Relationship Diagram(Entity-Relationship Diagram,ERD)ERD) 实体用单名词来命名,在实体- -关系图中用矩形框来表示实体。实体关系图中的菱形框代表关系,它确定了一对实体之间在逻辑上和数量上的连接。关系的命名要能描述关系的本质。主键: 能唯一地标识该实体的属性或属性组。第16页/共42页ERD的图例的图例第17页/共42页ERD的实例的实例图图4-2-1 4-2-1 “某校课程管理系统某校课程管理系统”的实体联系的实体联系图图第18页/共42页某一学校拟开发一课程管理系统,假设系统主要由老某一学校拟开发一课程管理系统,假设系

12、统主要由老师、课程、学生和教室等实体组成,各实体的属性组师、课程、学生和教室等实体组成,各实体的属性组成如下:成如下:学生(学号、姓名、性别、系别、专业。)学生(学号、姓名、性别、系别、专业。)课程(课程编号、课名、学时、学分。)课程(课程编号、课名、学时、学分。)教师(编号、姓名、职称、性别、系别。)教师(编号、姓名、职称、性别、系别。)教室(代号、名称、楼号、房号、地点。)教室(代号、名称、楼号、房号、地点。)请将实体请将实体教室教室和老师、课程、学生的和老师、课程、学生的属性属性补充进上页补充进上页ER图。图。课程管理系统ER图编制说明第19页/共42页图图4-2-2 4-2-2 “化学

13、制品跟踪系统化学制品跟踪系统”的实体联系的实体联系图图第20页/共42页 4.3 功能模型数据流图 数据流模型把功能分解方法运用到系统分析上,把复杂的问题进一步分解到更详细的层次。 数据流模型很适用于事务处理系统和其他功能密集型应用程序。第21页/共42页数据流图四种基本图形符号 数据流图有四种基本图形符号: 第22页/共42页画数据流程图的原则数据流程图上所有图形符号必须是前面所述的四种基本元素。 数据流程图的主图必须含有前面所述的四种基本元素,缺一不可。 数据流程图上的数据流必须封闭在外部实体之间,外部实体可以是一个,也可以是多个。 4.3 功能模型数据流图第23页/共42页画数据流程图的

14、原则处理过程至少有一个输入数据流和一个输出数据流。 任何一个数据流子图必须与它的父图上的一个处理过程对应,两者的输入数据流和输出数据流必须一致,即所谓“平衡”。 数据流程图上的每个元素都必须有名字。 4.3 功能模型数据流图第24页/共42页为方便储户,某银行拟开发为方便储户,某银行拟开发计算机储蓄系统计算机储蓄系统,储户携带存折,储户携带存折前去银行办理取款手续,他应把存折和填好的取款单一并交前去银行办理取款手续,他应把存折和填好的取款单一并交给银行工作人员检验。工作人员需核对账目,发现存折有效给银行工作人员检验。工作人员需核对账目,发现存折有效性问题、取款单填写问题或是存折、账卡与取款单不

15、符等问性问题、取款单填写问题或是存折、账卡与取款单不符等问题时均应报告储户。在检验通过的情形下,银行则应将取款题时均应报告储户。在检验通过的情形下,银行则应将取款信息登记在存折和账卡上,并通知付款。根据付款通知给储信息登记在存折和账卡上,并通知付款。根据付款通知给储户付款。户付款。第25页/共42页飞机机票预订系统DFD图下图是一个飞机机票预订系统的数据流图,它反映的功能是: 旅行社把预订机票的旅客信息 (姓名、年龄、单位、身份证号码、旅行时间、目的地等)输入机票预订系统。系统为旅客安排航班,打印出取票通知单(附有应交的账款)。旅客在飞机起飞的前一天凭取票通知单交款取票,系统检验无误,输出机票

16、给旅客。 第26页/共42页画数据流程图的基本步骤把一个系统看成一个整体功能,明确信息的输入和输出。 找到系统的外部实体。一旦找到外部实体,则系统与外部世界的界面就可以确定下来,系统的数据流的源点和终点也就找到了。 找出外部实体的输入数据流和输出数据流。 在图的边上画出系统的外部实体。 第27页/共42页画数据流程图的基本步骤从外部实体的输入流(源)出发,按照系统的逻辑需要,逐步画出一系列逻辑处理过程,直至找到外部实体处理所需的输出流,形成数据流的封闭。 将系统内部数据处理又分别看做整体功能,其内部又有信息的处理、传递、存储过程。 如此一级一级地剖析,直到所有处理步骤都很具体为止。 第28页/

17、共42页数据流图的层次结构数据流图的层次结构 为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统。第29页/共42页数据流图的层次结构第30页/共42页 在多层数据流图中,顶层流图仅包含一个加工,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据。 底层流图是指其加工不需再做分解的数据流图,它处在最底层。 中间层流图则表示对其上层父图的细化。它的每一加工可能继续细化,形成子图。数据流图的层次结构数据流图的层次结构第31页/共42页经过初步的需求分析,得到系统功能要

18、求:经过初步的需求分析,得到系统功能要求:1 1、监视病员的病症(血压、体温、脉搏等)。、监视病员的病症(血压、体温、脉搏等)。2 2、定时更新病历。、定时更新病历。3 3、病员出现异常情况时报警。、病员出现异常情况时报警。4 4、随机地产生某一病员的病情报告。、随机地产生某一病员的病情报告。医院病房监护系统医院病房监护系统产生产生病情报告病情报告监视病情监视病情更新病历更新病历第32页/共42页系统功能要求:系统功能要求: 1 1、监视病员的病症(血压、体温、脉搏等)、监视病员的病症(血压、体温、脉搏等) 2 2、定时更新病历、定时更新病历 3 3、病员出现异常情况时报警。、病员出现异常情况

19、时报警。 4 4、随机地产生某一病员的病情报告。、随机地产生某一病员的病情报告。顶层:顶层:病员病员护士护士病员监病员监护系统护系统病员病员日志日志病症信号病症信号要求报告要求报告病症病症报告报告报警报警医院病房监护系统医院病房监护系统第33页/共42页病员病员日志日志医院病房监护系统顶层医院病房监护系统顶层DFDDFD图图第一层:第一层:病员病员护士护士中央监视中央监视病症信号病症信号要求报告要求报告病症病症报告报告报警报警局部监视生成报告病员极限病员极限更新日志更新日志病员数据病员数据格式化格式化病员数据病员数据生理信号生理信号极限值极限值1324日志数据日志数据日志数据日志数据第34页/共42页第二层:加工第二层:加工“中央监视中央监视”分解分解计算超过计算超过极限值否极限值否病员数据据超过极限值报警开

温馨提示

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

评论

0/150

提交评论