L-第三章 软件工程课件需求分析.ppt

上传人:豆**** 文档编号:60902593 上传时间:2022-11-19 格式:PPT 页数:124 大小:2.09MB
返回 下载 相关 举报
L-第三章 软件工程课件需求分析.ppt_第1页
第1页 / 共124页
L-第三章 软件工程课件需求分析.ppt_第2页
第2页 / 共124页
点击查看更多>>
资源描述

《L-第三章 软件工程课件需求分析.ppt》由会员分享,可在线阅读,更多相关《L-第三章 软件工程课件需求分析.ppt(124页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、软件工程03章章 需求分析需求分析引言1 用户描述的可能不是他想要的。对用户的描述每个人有不同的理解2引言2开发人员和用户之间的鸿沟 从前有一家汽车厂,想为年轻人设计一款新车型,企划从前有一家汽车厂,想为年轻人设计一款新车型,企划及设计部讨论了许久始终找不到感觉,于是对及设计部讨论了许久始终找不到感觉,于是对25-35岁的年岁的年轻人进行问券调查,大伙辛苦了三个月,完成了一万份的调轻人进行问券调查,大伙辛苦了三个月,完成了一万份的调查记录。市场部门摘要了调查内容反映给设计部门,重点:查记录。市场部门摘要了调查内容反映给设计部门,重点:省油、外型酷、颜色鲜艳、马力足等。设计部门有了灵感开省油、外

2、型酷、颜色鲜艳、马力足等。设计部门有了灵感开始设计,半年过去了始设计,半年过去了!设计部门很得意的把雏型车展示给大设计部门很得意的把雏型车展示给大伙看,这个时候伙看,这个时候CEO、市场部、企划部、市场部、企划部.都傻眼了。都傻眼了。CEO开口说开口说:为什么这车没有为什么这车没有”轮子轮子”设计部回答设计部回答:市场部给的调查报告里,没说要有轮子市场部给的调查报告里,没说要有轮子市场部回说市场部回说:问卷调查中、顾客没有提到要有轮子问卷调查中、顾客没有提到要有轮子企划部生气的说企划部生气的说:你们都是白痴啊你们都是白痴啊,汽车要有轮子是基本常识,汽车要有轮子是基本常识,你们都不知道吗你们都不

3、知道吗?就这样现场吵翻天了就这样现场吵翻天了!注:原文地址:注:原文地址:http:/ 3引言3做需求要很细、很专业、很有经验男孩反问男孩反问:“是无声枪么?是无声枪么?”不是“枪声有多大?枪声有多大?”80100分贝“那就是说会震的耳朵疼?那就是说会震的耳朵疼?”是“您确定那只鸟真的被打死啦?您确定那只鸟真的被打死啦?”确定“鸟里有没有聋子?鸟里有没有聋子?”没有“没有关在笼子里的?没有关在笼子里的?”没有“旁边树上还有其他鸟?旁边树上还有其他鸟?”没有“有残疾或饿的飞不动的鸟?有残疾或饿的飞不动的鸟?”没有“算不算怀孕肚子里的小鸟?算不算怀孕肚子里的小鸟?”都是公的“打鸟的人眼里有没有花?

4、打鸟的人眼里有没有花?”没有“有没有傻的不怕死的?有没有傻的不怕死的?”都怕死“会不会一枪打死两只以上?会不会一枪打死两只以上?”不会“所有的鸟都可以自由活动么?所有的鸟都可以自由活动么?”完全可以“它们受到惊吓时不会互相撞上?它们受到惊吓时不会互相撞上?”不会”学生满怀信心的回答,学生满怀信心的回答,“打死的打死的鸟要是挂在树上没掉下来,那么就鸟要是挂在树上没掉下来,那么就剩一只,如果掉下来,就一只不剩。剩一只,如果掉下来,就一只不剩。”某日老师在课堂上想考考学生们的智商,就问一个某日老师在课堂上想考考学生们的智商,就问一个男孩男孩:“树上有十只鸟,开枪打死一只,还剩几只树上有十只鸟,开枪打

5、死一只,还剩几只?4结论l需求具有主观性、二义性、多变性、模糊性。需求具有主观性、二义性、多变性、模糊性。l需求分析要求很专业、很仔细、很有经验。需求分析要求很专业、很仔细、很有经验。l需求分析是确定系统应具备的功能,是其他需求分析是确定系统应具备的功能,是其他所有工作的基础,因此非常重要。所有工作的基础,因此非常重要。l需求导致整个项目失败占的比例非常大。需求导致整个项目失败占的比例非常大。5第三章 软件需求分析l需求分析需求分析的任务的任务 l与与用户沟通获取需求的方法用户沟通获取需求的方法l分析分析建模与规格说明建模与规格说明 l实体实体一联系图一联系图 l数据数据规范化规范化l状态状态

6、转换图转换图 l其他其他图形工具图形工具 l验证验证软件需求软件需求 l小结小结l习题习题6教学要求教学目的:教学目的:了解需求分析的任务和步骤、评了解需求分析的任务和步骤、评审标准和过程;掌握基本技术,理解需求规审标准和过程;掌握基本技术,理解需求规格说明书的作用与组成。格说明书的作用与组成。教学重点:教学重点:基本技术、需求规格说明书的作基本技术、需求规格说明书的作用与组成。用与组成。教学难点:教学难点:基本技术。基本技术。7需求分折简介 软件需求指用户对所开发的软件在功能、软件需求指用户对所开发的软件在功能、性能、环境、可靠性等各方面的要求。性能、环境、可靠性等各方面的要求。需求分析主要

7、回答待开发的系统必须需求分析主要回答待开发的系统必须“做什么做什么”,并用,并用 需求规格说明书需求规格说明书 的形式的形式准确、详细、规范地表达出来。准确、详细、规范地表达出来。8注意需求分析阶段,系统分析员的主要关注点需求分析阶段,系统分析员的主要关注点是是“做什么(做什么(what)”,不是,不是“怎样做(怎样做(how)”;需求分析阶段,系统分析员应该给出软件需求分析阶段,系统分析员应该给出软件求规格书。求规格书。93.1需求分析的任务四项主要任务:四项主要任务:1、确定对系统的综合要求、确定对系统的综合要求 2、分析系统的数据要求、分析系统的数据要求 3、导出系统的逻辑模型、导出系统

8、的逻辑模型 4、修正系统开发计划、修正系统开发计划10提问并思考:如果你是一个用户,你会对将要开发的如果你是一个用户,你会对将要开发的软件有哪些要求?软件有哪些要求?113.1.1确定对系统的综合要求 功能需求。指定系统必须提供的服务。功能需求。指定系统必须提供的服务。性能需求。指定系统必须满足的定时约束或容量性能需求。指定系统必须满足的定时约束或容量约束等。约束等。可靠性和可用性需求。可靠性和可用性需求。应定量指定。应定量指定。出错处理需求。出错处理需求。指环境错误,非系统本身的错误指环境错误,非系统本身的错误。接口需求。接口需求。常见的接口需求:用户接口需求;硬常见的接口需求:用户接口需求

9、;硬件接口需求;软件接口需求;通信接口需求。件接口需求;软件接口需求;通信接口需求。12 约束。约束。常见的约束:精度;工具和语言约束;常见的约束:精度;工具和语言约束;设计约束;应该使用的标准;应该使用的硬件平台。设计约束;应该使用的标准;应该使用的硬件平台。逆向需求。指定系统不应该做什么,逆向需求。指定系统不应该做什么,将来可能提出的要求。将来可能提出的要求。133.1.2分析系统的数据要求提问并思考:提问并思考:如果你是设计者,除了上述需求以外,如果你是设计者,除了上述需求以外,你觉得还需要得到哪些要求?你觉得还需要得到哪些要求?答:软件系统本质上是信息处理系统,答:软件系统本质上是信息

10、处理系统,要考虑要考虑数据和数据处理数据和数据处理的问题。的问题。14对系统数据的分析l建立数据建立数据(3.4 节)节);l描绘数据结构描绘数据结构(3.7 节)节);l规范化(规范化(3.5 节)节)153.1.3 导出系统的逻辑模型 用数据流图、实体一联系图、状态转换用数据流图、实体一联系图、状态转换图、数据字典和主要的处理算法描述这个逻图、数据字典和主要的处理算法描述这个逻辑模型。辑模型。3.1.4 修正系统开发计划 根据在分析过程中获得的对系统的更深根据在分析过程中获得的对系统的更深入更具体的了解,可以比较准确地估计系统入更具体的了解,可以比较准确地估计系统的成本和进度,修正以前制定

11、的开发计划。的成本和进度,修正以前制定的开发计划。16图:软件需求分析的通信途径l分析小组成员主要包括领域专家、系统分析分析小组成员主要包括领域专家、系统分析员;员;l客户访谈客户访谈l问题分析与确认问题分析与确认17与用户沟通的方法1、访谈、访谈2、面向数据流自顶向下求精、面向数据流自顶向下求精3、简易的应用规格说明技术、简易的应用规格说明技术4、快速建立软件原型、快速建立软件原型183.2.1 访谈分正式和非正式访谈。分正式和非正式访谈。可采用调查表形式可采用调查表形式可使用情景分析技术可使用情景分析技术19例:某出版社系统调查表编号编号提出问题提出问题1您在哪个部门工作?每日都处理哪些文

12、件、数据、报表?您在哪个部门工作?每日都处理哪些文件、数据、报表?2出版业务流程是什么?出版业务流程是什么?3工作中手工处理特别麻烦的事情是什么?工作中手工处理特别麻烦的事情是什么?4手工处理有什么问题解决不了?影响效率的问题有哪些?手工处理有什么问题解决不了?影响效率的问题有哪些?5您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?6您的部门需要成本核算和统计的内容有哪些?您的部门需要成本核算和统计的内容有哪些?7您的部门采用计算机管理工作情况如何?您的部门采用计算机管理工作情况如何?8如何改进业务流程使之更合理?如何

13、改进业务流程使之更合理?9哪些问题是目前传统手工方法根本无法解决的?哪些问题是目前传统手工方法根本无法解决的?10出版社计算机管理信息系统需要解决什么问题?出版社计算机管理信息系统需要解决什么问题?203.2 面向数据流自顶向下求精 结构化分析方法的实质。结构化分析方法的实质。进一步细化可行性研究阶段获得到高层数进一步细化可行性研究阶段获得到高层数据流图。包括建立:据流图。包括建立:详细的数据流图详细的数据流图,描绘数据在软件系统内从输,描绘数据在软件系统内从输入移动到输出的过程中所经受到变换;入移动到输出的过程中所经受到变换;数据字典数据字典:定义数据流图中包含的元素;:定义数据流图中包含的

14、元素;实体关系(实体关系(ER)图)图:从用户角度描述数据;:从用户角度描述数据;IPO 图图:描述数据流图中处理框的功能和算法。:描述数据流图中处理框的功能和算法。21面向数据流自顶向下求精过程223.2.3简易的应用规格说明技术 一种一种面向团队面向团队的需求收集法,提倡用户与的需求收集法,提倡用户与开发者密切合作,开发者密切合作,共同标识问题共同标识问题,提出解决,提出解决方案要素,商讨不同方案并指定基本需求。方案要素,商讨不同方案并指定基本需求。233.2.4快速建立软件原型快速原形就是快速建立起来的旨在演示目标快速原形就是快速建立起来的旨在演示目标系统主要功能的可运行的程序。系统主要

15、功能的可运行的程序。要点:要点:实现用户看得见的功能,省略目标系统实现用户看得见的功能,省略目标系统“隐隐含含”功能。功能。243.2.4快速建立软件原型 建立和修改原型的方法和工具:建立和修改原型的方法和工具:(1)第四代技术。第四代技术。包括众多数据库查询和报表语言、包括众多数据库查询和报表语言、程序和应用系统生成器以及其他非常高级的非过程程序和应用系统生成器以及其他非常高级的非过程语言。能快速生成可执行的代码。语言。能快速生成可执行的代码。(2)可重用的软件构件。可重用的软件构件。使用一组已有的软件构件使用一组已有的软件构件(也称为组件)来装配(而不是从头构造)原型。(也称为组件)来装配

16、(而不是从头构造)原型。(3)形式化规格说明和原型环境。形式化规格说明和原型环境。在在交互式环境交互式环境下,下,用自动工具把基于形式语言的规格说明翻译成可执用自动工具把基于形式语言的规格说明翻译成可执行的程序代码。行的程序代码。253.3分析建模与规格说明3.3.1 分析建模分析建模什么是模型?什么是模型?为了理解事物而对事物做出的一种抽象,是为了理解事物而对事物做出的一种抽象,是对事物的一种对事物的一种无歧义无歧义的书面描述。的书面描述。模型通常由模型通常由一组图形符号一组图形符号和组织这些符号和组织这些符号的的规则规则组成。组成。26模型的作用在建模过程中了解系统。在建模过程中了解系统。

17、通过抽象降低复杂性。通过抽象降低复杂性。有助于回忆所有的细节。有助于回忆所有的细节。有助于开发小组间的交流。有助于开发小组间的交流。有助于与用户的交流。有助于与用户的交流。为系统的维护提供文档为系统的维护提供文档27例:结构化分析方法建立的需求模型 结构化分析(结构化分析(Structured Analysis,SA)是面)是面向数据流进行分析的方法,主要建立以下几种模型:向数据流进行分析的方法,主要建立以下几种模型:l实体关系图实体关系图(Entity-Relationship Diagram,E-R图图)来创建来创建数据模型数据模型,描述系统中所有重要的数据对,描述系统中所有重要的数据对象

18、;象;l 数据流图(数据流图(Data Flow Diagram,DFD):用来创:用来创建建功能模型功能模型,描述了信息流和数据转换。,描述了信息流和数据转换。l 状态转换图状态转换图(State-Transition Diagram,STD)用来创建用来创建行为模型行为模型,描述系统状态如何响应外部事,描述系统状态如何响应外部事件,而进行转换。件,而进行转换。28例:面向对象分祈方法(OOA)所建立的摸型对象模型对象模型(Object model):定义实体,描述:定义实体,描述系统的静态结构,定义系统的静态结构,定义“对谁做对谁做”动态模型动态模型(Dynamic model):描述对象

19、之间的描述对象之间的交互过程,规定交互过程,规定“何时做何时做”功能模型功能模型(Functional model):描述内部数描述内部数据的处理,指明系统应据的处理,指明系统应“做什么做什么”29软件需求规格说明 软件需求规格说明书软件需求规格说明书 是需求分析阶段是需求分析阶段最主要的文档。对目标进行完善和补充,并最主要的文档。对目标进行完善和补充,并写出完整的需求说明。写出完整的需求说明。为消除自然语言中可能存在的不一致、歧为消除自然语言中可能存在的不一致、歧义、含糊、不完整及抽象层次混乱等问题,义、含糊、不完整及抽象层次混乱等问题,有主张用有主张用形式化方法形式化方法描述用户对软件系统

20、的描述用户对软件系统的需求。需求。例例:GB 8567-88:GB 8567-88 计算机软件产品开发文件计算机软件产品开发文件编制指南编制指南30结构化分析方法(Structured Analysis,SA)面向数据流面向数据流进行需求分析的方法进行需求分析的方法适合于适合于数据处理类型数据处理类型软件的需求分析软件的需求分析31结构化分折模型的组成结构323.4实体一联系图 实体一联系图(实体一联系图(E 一一 R 图)描绘系统的图)描绘系统的数数据关系。据关系。分析实体一联系有助于对业务或系统数据分析实体一联系有助于对业务或系统数据组成的理解和交互。组成的理解和交互。l ER图中包含了实

21、体(数据对象)、关系和图中包含了实体(数据对象)、关系和属性三种基本成分属性三种基本成分 一、基本概念(一、基本概念(1)实体:实体:客观世界中存在的,可区分的事物。客观世界中存在的,可区分的事物。属性:属性:实体或数据对象所具有的性质。实体或数据对象所具有的性质。33数据对象(实体)对软件必须理解的复合信息的表示。所谓复合信息是指具有一对软件必须理解的复合信息的表示。所谓复合信息是指具有一系列不同性质或属性的事物,因此仅有单个值的事物(例如姓系列不同性质或属性的事物,因此仅有单个值的事物(例如姓名)不是数据对象。名)不是数据对象。数据对象可能是:数据对象可能是:一个外部实体,例如生产或消费信

22、息的任何事物;一个外部实体,例如生产或消费信息的任何事物;一个事物,例如一份报告;一个事物,例如一份报告;一次行为,例如一个电话呼叫;一次行为,例如一个电话呼叫;一个事件,例如一次警报;一个事件,例如一次警报;一个角色,例如教师;一个角色,例如教师;一个组织,例如学校教务处;一个组织,例如学校教务处;一个地点,例如图书馆;一个地点,例如图书馆;一个结构,例如一个目录。一个结构,例如一个目录。34一、基本概念(2)联系:客观事物之间的联系。联系分为三种:联系:客观事物之间的联系。联系分为三种:l一对一(一对一(1:1)班级和班长班级和班长l一对多联系(一对多联系(1:N)班级和学生,系与教师,学

23、生与宿舍班级和学生,系与教师,学生与宿舍l多对多联系(多对多联系(M:N)课程与学生,教师和课程,学生和学会课程与学生,教师和课程,学生和学会二、二、E 一一 R 图的结构图的结构三种基本元素:三种基本元素:35例:教学E-R图36例仓库,职工,零件和供应商的仓库,职工,零件和供应商的ER图图37三、如何建立实体一联系图?1、在需求收集的过程中,列出应用软件或业务过、在需求收集的过程中,列出应用软件或业务过程涉及到的所有程涉及到的所有“事物事物”,将其演化成数据对象;,将其演化成数据对象;2、一次考虑一个对象,定义这个对象和其他对象、一次考虑一个对象,定义这个对象和其他对象之间是否存在连接;之

24、间是否存在连接;3、如果存在连接,应创建一个或多个关系;、如果存在连接,应创建一个或多个关系;4、对每一个关系,确定其关联类型;、对每一个关系,确定其关联类型;5、重复步骤(、重复步骤(2)到步骤()到步骤(4),直到定义了所,直到定义了所有关系。有关系。6、定义每个实体的属性;、定义每个实体的属性;7、形式化并复审实体关系图;、形式化并复审实体关系图;8、重复步骤(、重复步骤(1)到()到(7),直到数据建模完成。,直到数据建模完成。382.4 数据流图(DFD,Data Flow Diagram)描述描述数据处理数据处理过程的工具。过程的工具。通过图形的方法,从数据传递和数据处理的通过图形

25、的方法,从数据传递和数据处理的角度,刻画数据流从输入到输出的移动变换角度,刻画数据流从输入到输出的移动变换过程。过程。数据流三个重要属性:数据流三个重要属性:数据流名字数据流名字数据组成数据组成流向流向392.4.1符号(1)说明:用图形符号以黑盒子形式描绘组成系说明:用图形符号以黑盒子形式描绘组成系统的每个部件(程序,文档,数据库,人工统的每个部件(程序,文档,数据库,人工过程等),表达数据在系统各部件之间流动过程等),表达数据在系统各部件之间流动的情况。的情况。40例 1:描述银行取款过程的数据流图42应该注意的几个问题适当地命名。(详见教材适当地命名。(详见教材 p45)“数据存储数据存

26、储”代表数据代表数据静止状态静止状态,“数据流数据流”代表数据的代表数据的运动状态运动状态;注意数据流与控制流的区别;注意数据流与控制流的区别;通常数据流图中忽略出错处理、打开或关闭通常数据流图中忽略出错处理、打开或关闭文件之类的事务处理。文件之类的事务处理。若数据的源点和终点相同,则应该有两个箭若数据的源点和终点相同,则应该有两个箭头和这个数据源(终)点相连;或重复画一头和这个数据源(终)点相连;或重复画一个源(终)点。个源(终)点。43数据流图的层次结构 对于大型系统,往往采用对于大型系统,往往采用自顶向下逐层分自顶向下逐层分解解的方法,用分层数据流图表示所有数据流的方法,用分层数据流图表

27、示所有数据流和加工。和加工。对任何一个数据流图来说,它的上层图为对任何一个数据流图来说,它的上层图为父图父图,在它的下一层的图为,在它的下一层的图为子图子图。44分层数据流图45说明:在多层数据流图中,在多层数据流图中,顶层流图顶层流图仅包含仅包含一个数一个数据处理据处理,它代表被开发系统。它的输入流是,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数该系统的输入数据,输出流是系统所输出数据据底层流图底层流图是指其是指其数据处理不需再做分解数据处理不需再做分解的数的数据流图,它处在最底层据流图,它处在最底层中间层流图中间层流图则表示则表示对其上层父图的细化对其上层父图的细化

28、。它。它的每一数据处理可能继续细化,形成子图。的每一数据处理可能继续细化,形成子图。46注意的原则(1)l 数据流图上所有图形符号只限于前述四种基本图数据流图上所有图形符号只限于前述四种基本图形元素;形元素;l数据流图的主图必须包括前述四种基本元素,缺数据流图的主图必须包括前述四种基本元素,缺一不可;一不可;l数据流图的主图上的数据流必须封闭在外部实体数据流图的主图上的数据流必须封闭在外部实体之间;之间;l每个数据处理至少有一个输入数据流和一个输出每个数据处理至少有一个输入数据流和一个输出数据流;数据流;l在数据流图中,需按层给数据处理框编号。编号在数据流图中,需按层给数据处理框编号。编号表明

29、该处理所处层次及上下层的亲子关系;表明该处理所处层次及上下层的亲子关系;47注意的原则(2)l规定任何一个数据流子图必须与它上一层的一个规定任何一个数据流子图必须与它上一层的一个数据加工对应,两者的输入数据流和输出数据流必数据加工对应,两者的输入数据流和输出数据流必须一致。此即须一致。此即父父 图图 与子图的平衡与子图的平衡;l可以在数据流图中加入物质流,帮助用户理解数可以在数据流图中加入物质流,帮助用户理解数据流图;据流图;l图上每个元素都必须有名字;图上每个元素都必须有名字;l数据流图中不可夹带控制流;数据流图中不可夹带控制流;l初画时可以忽略琐碎的细节,以集中精力于主要初画时可以忽略琐碎

30、的细节,以集中精力于主要数据流数据流48例 2:结构化分析方法步骤示例商场业务处理系统商场业务处理系统l假设某商场的经营业务。假设某商场的经营业务。l商场进货时,先发订货单给供应商,供应商收到商场进货时,先发订货单给供应商,供应商收到订货单,将商品发给商场,商场货到付款,供应商订货单,将商品发给商场,商场货到付款,供应商收款后,将收据发给商场;收款后,将收据发给商场;l当顾客到商场采购商品时,先下购物订单,商场当顾客到商场采购商品时,先下购物订单,商场查询库存中是否有此种商品,若有则发货给顾客;查询库存中是否有此种商品,若有则发货给顾客;若没有,则向供应商订货,货到之后再销售给顾客;若没有,则

31、向供应商订货,货到之后再销售给顾客;顾客收到货物之后付款,商场开收据给顾客;顾客收到货物之后付款,商场开收据给顾客;l商场对货物的管理方面要求知道每种货物详细的商场对货物的管理方面要求知道每种货物详细的销售情况。销售情况。49分析业务流程:订货过程50分析业务流程:采购过程51第一步:绘制顶层数据流图(1)基本思想,任何计算机系统都是有若干个数基本思想,任何计算机系统都是有若干个数据源据源(终终)点加上一个事务处理组成。点加上一个事务处理组成。首先从问题的描述中提取数据流图中的源首先从问题的描述中提取数据流图中的源(终)点、数据处理、数据流和数据存储四(终)点、数据处理、数据流和数据存储四种成

32、份。种成份。分析源(终)点分析源(终)点.分析数据处理分析数据处理分析数据流和数据存储分析数据流和数据存储52分析数据源点和终点:如果将商场的购、销业务系统看成一个整体,如果将商场的购、销业务系统看成一个整体,则外部的与这个系统有交往的对象(机构、则外部的与这个系统有交往的对象(机构、人员、或外部系统)是人员、或外部系统)是“供应商,和供应商,和“顾客顾客”,二者是商场购销系统源点和终点。,二者是商场购销系统源点和终点。53分析源点、终点与商场之间的数据流数据流方向分别是:数据流方向分别是:供应商方给商场:发货单、货款收据供应商方给商场:发货单、货款收据顾客给商场:订单、货款顾客给商场:订单、

33、货款商场给供货商:订货单、货款商场给供货商:订货单、货款商场给顾客:货物、收据商场给顾客:货物、收据54分析数据存储:需要存储的数据分别是需要存储的数据分别是库存信息库存信息暂存订单暂存订单(缺货订单缺货订单)采购订单采购订单商品销售历史商品销售历史资金帐目资金帐目55第一步:绘制顶层数据流图(2)56第一步:绘制顶层数据流图(3)第一步:绘制顶层数据流图(3)57第二步:将顶层数据流图细化经过分析,商店业务处理的主要数据处理是经过分析,商店业务处理的主要数据处理是销售、采购、会计销售、采购、会计三大数据处理,三者之间三大数据处理,三者之间的数据流:的数据流:58需要存储的数据有:5960DF

34、D/L2.2(采购细化)61DFD/L2.1(销售细化)62数据词典(DD,data dictionary)DD 是对数据流图中包含的所有元素的定义的是对数据流图中包含的所有元素的定义的集合,使得每个图形元素的名字都有一个集合,使得每个图形元素的名字都有一个精精确的、严格的确的、严格的定义。定义。数据流图和词典结合在一起,能清楚地表达数据流图和词典结合在一起,能清楚地表达数据处理的要求,构成数据处理的要求,构成 了了“需求说明书需求说明书”631数据字典的内容主要描述主要描述l数据流数据流l数据元素数据元素l数据存储数据存储l数据处理数据处理642定义数据的方法65(1)定义数据流数据流名:数

35、据流名:说明:简要介绍作用即它产生的原因和结果。说明:简要介绍作用即它产生的原因和结果。数据流来源:来自何方。数据流来源:来自何方。数据流去向:去向何处。数据流去向:去向何处。数据流组成:数据结构。数据流组成:数据结构。数据量流通量:数据量,流通量数据量流通量:数据量,流通量66举例:67数据流定义:68(2)定义数据元素数据元素(数据项)指数据处理中最小的,数据元素(数据项)指数据处理中最小的,不可再分的单位。描述包括:不可再分的单位。描述包括:数据元素名:数据元素名:类型:数字(离散值,连续值),文字(编类型:数字(离散值,连续值),文字(编码类型)码类型)长度:长度:取值范围:取值范围:

36、相关的数据元素及数据结构:相关的数据元素及数据结构:69数据元素定义举例(1)70数据元素定义举例(2)71数据元素定义举例(3)72数据元素定义举例(4)73(3)定义数据存储数据文件名:数据文件名:简述:存放的是什么数据简述:存放的是什么数据 输入数据:输入数据:输出数据输出数据:数据文件组成:数据结构数据文件组成:数据结构存储方式:顺序,直接,关键码存储方式:顺序,直接,关键码存取频率:存取频率:74数据存储定义举例(1)757677(4)定义数据处理数据处理定义举例(数据处理定义举例(1)78数据处理定义举例(2)79加工逻辑词条说明举例(3)80 源点及汇(终)点词条描述名称:外部实

37、体名名称:外部实体名简要描述:什么外部实体简要描述:什么外部实体有关数据流:有关数据流:数目:数目:81数据规范化1、第一范式每个属性值都必须是原子值。、第一范式每个属性值都必须是原子值。2、第二范式满足第一范式条件,而且每个非、第二范式满足第一范式条件,而且每个非关键字属性都由整个关键字决定。关键字属性都由整个关键字决定。3、第三范式符合第二范式的条件,每个非、第三范式符合第二范式的条件,每个非关键字属性都仅由关键字决定,而且一个非关键字属性都仅由关键字决定,而且一个非关键字属性不能仅仅是对另一个非关键字属关键字属性不能仅仅是对另一个非关键字属性的进一步描述。性的进一步描述。范式低,冗余大,

38、范式高,分解得细,冗余范式低,冗余大,范式高,分解得细,冗余小,但处理过程复杂。小,但处理过程复杂。82状态转换图(STD)为了直观地分析系统的动作,从特定的视点为了直观地分析系统的动作,从特定的视点出发描述系统的行为,需要采用动态分析的出发描述系统的行为,需要采用动态分析的方法。方法。状态转换图是一种常用的动态分析方法。状态转换图是一种常用的动态分析方法。是描述系统的状态如何响应外部信号,而进是描述系统的状态如何响应外部信号,而进行转换的一种图形表示。行转换的一种图形表示。83(1)状态指任何可以被观察到的系统行为模式,一个指任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。状

39、态代表系统的一种行为模式。主要有:初态、终态和中间状态。主要有:初态、终态和中间状态。一个状态图中,只能有一个初态,但可以有一个状态图中,只能有一个初态,但可以有 0 多个终态。多个终态。84(2)事件某个特定时刻发生的事情,它是对引起系统某个特定时刻发生的事情,它是对引起系统做动作或(和)从一个状态转换到另一个状做动作或(和)从一个状态转换到另一个状态的外界事情的抽象态的外界事情的抽象.85状态转换图符号l活动表语法:事件名(参数表)动作表达活动表语法:事件名(参数表)动作表达式式常用事件名:常用事件名:EntryEntry、ExitExit、DoDo动作表达式:应做的具体动作动作表达式:应

40、做的具体动作l事件表达式:触发状态转换的事件。事件表达式:触发状态转换的事件。语法:事件说明语法:事件说明 守卫条件守卫条件 动作表达式。动作表达式。其中,事件说明的语法:事件名(参数表)。其中,事件说明的语法:事件名(参数表)。86电话系统的状态图 电话系统的状态图 电话系统的状电话系统的状态图态图 87其他图形工具层次方框图层次方框图88IPO图89验证软件需求问:从哪些方面验证软件需求的正确性?如何验证?问:从哪些方面验证软件需求的正确性?如何验证?1、一致性、一致性自然语言书写的需求说明,只能用人工方法验证;自然语言书写的需求说明,只能用人工方法验证;形式化方法定义的可以借助验证工具形

41、式化方法定义的可以借助验证工具2、完整性、完整性需要用户参与、合作;建立快速原型。需要用户参与、合作;建立快速原型。3、现实性、现实性参照以往类似系统;进行真或性能模拟参照以往类似系统;进行真或性能模拟 4、有效性、有效性90比较完整的数据流图例子例:教务管理系统例:教务管理系统某校准备开发一个学生成绩管理系统。在该某校准备开发一个学生成绩管理系统。在该系统中,教务人员录入学生信息、课程信息系统中,教务人员录入学生信息、课程信息和成绩信息,学生可以随时查询自己所选课和成绩信息,学生可以随时查询自己所选课程的成绩。由于学生成绩属于敏感信息,系程的成绩。由于学生成绩属于敏感信息,系统必须提供必要的

42、安全措施以防非法存取统必须提供必要的安全措施以防非法存取910 层 DFD 分析:l源点终点源点终点:教务人员(源点);学生(终点):教务人员(源点);学生(终点)l数据处理数据处理:将系统当成一个整体:将系统当成一个整体“学生成绩学生成绩管理管理”l数据流数据流:学生信息、课程信息和成绩;(教务人员录学生信息、课程信息和成绩;(教务人员录入时)查询请求、查询结果(学生查询时)入时)查询请求、查询结果(学生查询时)l数据文件数据文件:成绩文件、学生文件、课程文件。:成绩文件、学生文件、课程文件。92第 0 层 DFD 图教务人员维护学生信息和课程信息,并登录学生的教务人员维护学生信息和课程信息

43、,并登录学生的选课成绩;学生查询自己的成绩单。选课成绩;学生查询自己的成绩单。93第 1 层 DFD 说明“学生信息学生信息”是教务人员需要录入的一个信是教务人员需要录入的一个信息,因此加入一个加入息,因此加入一个加入“录入学生信息录入学生信息”;同样得到同样得到“录入课程信息录入课程信息”、“登记成绩登记成绩”两个数据处理。两个数据处理。另外,数据流另外,数据流“查询请求查询请求”和和“查询结果查询结果”应该由数据处理应该由数据处理“查询成绩查询成绩”来完成。来完成。94第 1 层 DFD 说明对第对第 0 层层 DFD 的加工的加工“学生成绩管理学生成绩管理“进行进行展开。展开。数据处理数

44、据处理:录入学生信息:录入学生信息 录入课程信息录入课程信息 登记学生成绩登记学生成绩 查询学生成绩查询学生成绩数据存储:数据存储:增加这些数据流对应的数据存储,增加这些数据流对应的数据存储,即即“学生学生”、“课程课程”和和“成绩成绩”,最后得,最后得到如图所示的第到如图所示的第 1 层层 DFD。95第第 1 层层 DFD 图:图:对第对第0层层 DFD 的一个的一个“学生学生成绩管理成绩管理“进进行展开。行展开。96第 2 层 DFD 说明继续分解第继续分解第 1 层层 DFD 中的加工中的加工“查询学生成查询学生成绩绩”数据处理:数据处理:分解为分解为“合法性检查合法性检查”和和“查询

45、查询成绩成绩”数据文件:数据文件:合法的查询条件合法的查询条件97 第第2 2层层DFDDFD图图对第对第1 1层层DFDDFD图中图中的一个加工的一个加工“查查询学生成绩询学生成绩”进进行展开。行展开。98部分数据字典99100实例图书馆图书信息管理系统图书馆图书信息管理系统101需求l读读者者来来图图书书馆馆借借书书,可可能能先先查查询询馆馆中中的的图图书书信信息息。查查询询可可以以按按书书名名、作作者者、图图书书编编号号、关关键键字字查查询询。如如果果查查到到则则记记下下书书号号,交交给给流流通通组组工工作作人人员员,等等候候办办理理借借书书手手续续。如如果果该该书书已已经经被被全全部部

46、借借出出,可可做做预预订订登登记记,等等待待有有书书时时被被通通知知。如如果果图图书书馆馆没没有有该该书书的记录,可进行缺书登记。的记录,可进行缺书登记。l办办理理借借书书手手续续时时先先要要出出示示图图书书证证,没没有有图图书书证证则则去去图图书书馆馆办办公公室室申申办办图图书书证证。如如果果借借书书数数量量超超出出规规定定,则则不不能能继继续续借借阅阅。借借书书时时流流通通组组工工作作人人员员登登记记图书证编号、图书编号、借出时间和应还书时间。图书证编号、图书编号、借出时间和应还书时间。102l当当读读者者还还书书时时,流流通通组组工工作作人人员员根根据据图图书书证证编编号号,找找到到读读

47、者者的的借借书书信信息息,查查看看是是否否超超期期,如如果果已已经经超超期期,则则处处罚罚。如如果果图图书书有有破破损损、丢丢失失,则则进进行行破破损损处处罚罚。登登记记还还书书信信息息,做做还还书书处处理理,同同时时查查看看是是否否有预订登记,如果有则发出到书通知。有预订登记,如果有则发出到书通知。l图图书书采采购购人人员员进进行行图图书书采采购购时时,要要注注意意合合理理采采购购。如如果果有有缺缺书书登登记记则则随随时时进进行行采采购购。采采购购到到货货后后,编编目目人人员员进进行行验验收收,编编目目、上上架架,录录入入图图书书信信息息,发发到到书书通通知知。如如果果图图书书丢丢失失或或旧

48、旧书书淘淘汰汰,则则将将该该书书从从书库中清除,即图书注销。书库中清除,即图书注销。需求(续)103以以上上是是图图书书管管理理系系统统的的基基本本需需求求。经经过过与与图图书书馆工作人员反复交流,他们提出了下列建议:馆工作人员反复交流,他们提出了下列建议:l建建议议1 1:当当读读者者借借阅阅的的图图书书到到期期时时,希希望望能能够够提前以一个短信息或电子邮件方式提示读者。提前以一个短信息或电子邮件方式提示读者。l建建议议2 2:读读者者希希望望能能够够实实现现网网上上查查询询和和预预订订图图书。书。l建建议议3 3:应应用用系系统统的的各各种种参参数数设设置置最最好好是是灵灵活活的的,由由

49、系系统统管管理理人人员员根根据据需需要要设设定定。例例如如:借借阅阅量量的的上上限限,还还书书提提示示的的时时间间,预预订订图图书书的的保保持时间等参数。持时间等参数。需求(续)104l用用户户给给出出的的上上述述需需求求式式一一个个比比较较简简单单的的需需求求,没没有有向向我我们们前前面面介介绍绍的的那那样样给给出出业业务务需需求求、用用户户需需求求。遇遇到到这这种种情情况况我我们们要要进进一一步步与与用用户户沟沟通通,了了解解系系统统的的目目标标、规规模模、范范围围,不不能能自自己己想当然确定。想当然确定。l本本例例中中用用户户给给出出的的系系统统目目标标是是实实现现读读者者借借还还书书的

50、的信信息息化化,并并且且利利用用InternetInternet网网络络实实现现读读者者与与图图书书馆馆之之间间的的互互动动和和图图书书馆馆的的人人性性化化管管理理。提提高图书的利用率。高图书的利用率。l系系统统的的规规模模较较小小,只只涉涉及及图图书书、读读者者、借借还还书书的的管管理理,相相关关的的部部门门有有采采编编部部、流流通通部部、办办公公室。室。需求(续)105描绘系统流程图 查询图书查询图书/读读者者借借/还书还书办办证证/处处罚罚/员员工工管理管理新新书书订订购购/编编目目读者客户端读者客户端PC机机办公室客户端办公室客户端PC机机采编室客户端采编室客户端PC机机流通部客户端流

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁