版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件工程中南大学Central South University2022/5/20第三章 需求分析2022/5/202序言可行性研究的目的就是用最小的代价在尽可能短的时间内确定问可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决;可行性研究的目的不是解决问题,而是确定问题是否能够解决;可行性研究的目的不是解决问题,而是确定问题是否值得去解。题是否值得去解。 并没有准确回答并没有准确回答“系统必须做什么?系统必须做什么?”,不能代替需求分析。,不能代替需求分析。需求分析确定系统必须完成哪些工作,对目标系统提出完整、准需求分析确定系统必须完成哪些工作,对目标系统提出完整、准确、
2、清晰、具体的要求。确、清晰、具体的要求。系统分析员应写出软件需求规格说明书,以书面形式描述软件需系统分析员应写出软件需求规格说明书,以书面形式描述软件需求。求。2022/5/203序言序言n分析方法的准则:分析方法的准则:n必须理解并描述问题的信息域,根据这条准则应该建立数学必须理解并描述问题的信息域,根据这条准则应该建立数学模型;模型;n必须定义软件应完成的功能,这条准则要求建立功能模型;必须定义软件应完成的功能,这条准则要求建立功能模型;n必须描述作为外部事件结果的软件行为,这条转要求建立行必须描述作为外部事件结果的软件行为,这条转要求建立行为模型;为模型;n必须对描述信息、功能和行为的模
3、型进行分解,用层次的方必须对描述信息、功能和行为的模型进行分解,用层次的方式展示细节。式展示细节。2022/5/204 序言序言n软件在需求分析和设计阶段占用的工作量达到总工作软件在需求分析和设计阶段占用的工作量达到总工作量的量的40405050,说明软件开发前期的活动多么重要。,说明软件开发前期的活动多么重要。当然这也包括分阶段开发原型的开销。大家熟悉的编当然这也包括分阶段开发原型的开销。大家熟悉的编码工作只占全部工作量的码工作只占全部工作量的10102020,而软件测试和,而软件测试和调试的工作量占到总工作量的调试的工作量占到总工作量的30304040,甚至,甚至50%50%。2022/5
4、/205本讲内容1.需求分析的任务和过程2.与用户沟通获取需求的方法3.分析建模与规格说明4.实体-联系图5.数据规范化6.状态转换图7.其他图形工具8.验证软件需求软件工程中南大学Central South University2022/5/203.1 需求分析的任务2022/5/2073.1.1 确定对系统的综合要求确定对系统的综合要求(1)1. 1. 功能需求:功能需求:指定系统必须提供的服务。指定系统必须提供的服务。2. 2. 性能需求:性能需求:制定系统必须满足的定时约束或容量约束。如制定系统必须满足的定时约束或容量约束。如:相应时间(速度)、主存容量、磁盘容量、安全性、等。:相应时
5、间(速度)、主存容量、磁盘容量、安全性、等。3. 3. 可靠性和可用性需求可靠性和可用性需求: :指定系统的可靠性。指定系统的可靠性。4. 4. 出错处理需求出错处理需求:说明系统对环境错误应该怎样响应。:说明系统对环境错误应该怎样响应。 系统发现错误时采取的行动,主要在系统关键部分设置。系统发现错误时采取的行动,主要在系统关键部分设置。2022/5/2083.1.1确定对系统的综合要求确定对系统的综合要求(2)5. 5. 接口需求接口需求 用户接口、硬件接口、软件接口、通信接口、等。用户接口、硬件接口、软件接口、通信接口、等。6. 6. 约束约束 精度、工具和语言、设计约束、硬件约束、标准,
6、等。精度、工具和语言、设计约束、硬件约束、标准,等。7. 7. 逆向需求逆向需求 8. 8. 将来可能提出的要求将来可能提出的要求 2022/5/2093.1.2 分析系统的数据要求分析系统的数据要求 任何一个软件系统都是信息处理系统,系统必须处理任何一个软件系统都是信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的的信息和系统应该产生的信息在很大程度上决定了系统的面貌,对软件设计有深远影响,因此,必须分析系统的数面貌,对软件设计有深远影响,因此,必须分析系统的数据要求,这是软件需求的一个重要任务。据要求,这是软件需求的一个重要任务。 通过建立数据模型来分析,如数据字
7、典、层次方框图、通过建立数据模型来分析,如数据字典、层次方框图、Warnier图,并将数据结构规范化。图,并将数据结构规范化。2022/5/20103.1.3 导出系统的逻辑模型导出系统的逻辑模型 导出系统的详细的逻辑模型,通常导出系统的详细的逻辑模型,通常包括数据流图、实包括数据流图、实体联系图、状态转换图、数据字典、主要的处理算法(体联系图、状态转换图、数据字典、主要的处理算法(IPO图)等。图)等。2022/5/20113.1.4 修正系统开发计划修正系统开发计划 修订前期制定的开发进度计划、等。修订前期制定的开发进度计划、等。软件工程中南大学Central South Universi
8、ty2022/5/203.2 与用户沟通获取需求的方法 问问题题域域 用用户户 需需求求分分析析员员 交交流流 2022/5/20133.2.1 访谈访谈1.1.正式访谈正式访谈2.2.非正式访谈非正式访谈 当需要调查大量人当需要调查大量人员时,分发调查表员时,分发调查表情景分析技术情景分析技术n 能在某种程度上演示目标系统的行为,从而便于用户理解,而且还能进一步揭示出一些分析员目前不知道的需求。n 较易为用户所理解,能保证用户在需求分析过程中始终扮演一个积极主动的角色。2022/5/2014 观察用户工作流程或者实践2022/5/2015用户和开发人员共同组成联合小组n加强联系n促进交流n增
9、进合作2022/5/2016分析追踪数据分析追踪数据流图流图用户复查用户复查细化细化数据流图数据流图有补充修正有补充修正无补充无补充修正修正需要分解需要分解不需分解不需分解图图3.1 需求分析基本过程需求分析基本过程 借助数据流图、数据字典、借助数据流图、数据字典、IPO图等,细化、完善详图等,细化、完善详细的数据流图,等到各处理环节对应的功能。细的数据流图,等到各处理环节对应的功能。3.2.2 面向数据流自顶向下求精面向数据流自顶向下求精2022/5/20173.2.3 简易的应用规格说明技术简易的应用规格说明技术 面向团队的需求收集法面向团队的需求收集法: (用户与开发者配合)(用户与开发
10、者配合)u初步访谈;初步访谈;u开发者和用户分别写出开发者和用户分别写出“产品需求产品需求”;u开会讨论,各自展示需求列表;开会讨论,各自展示需求列表;u得出一致意见,为需求列表制定小型规格说明;得出一致意见,为需求列表制定小型规格说明;u根据会议成果,起草完整的软件需求规格说明。根据会议成果,起草完整的软件需求规格说明。2022/5/20183.2.4 快速建立软件原型快速建立软件原型 快速原型就是快速建立起来的旨在演示目标系统主要功快速原型就是快速建立起来的旨在演示目标系统主要功能的可运行的程序。能的可运行的程序。u第一个特性是快速;第一个特性是快速;u第二个特性是容易修改。第二个特性是容
11、易修改。 快速建立能演示目标系统主要功能的程序。快速建立能演示目标系统主要功能的程序。u第四代技术第四代技术u可重用的软件构件可重用的软件构件u形式化规格说明和原型环境形式化规格说明和原型环境软件工程中南大学Central South University2022/5/203.3 分析建模与规格说明3.3.1 分析建模 所谓模型,就是为了理解事物而对事物做出的一种抽所谓模型,就是为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述。简单地说,模型象,是对事物的一种无歧义的书面描述。简单地说,模型就是某一事物的抽象表示方式。就是某一事物的抽象表示方式。 为了开发复杂的系统,应从不同
12、角度(模型)抽象出为了开发复杂的系统,应从不同角度(模型)抽象出目标系统的特性(数据模型、功能模型、行为模型)。目标系统的特性(数据模型、功能模型、行为模型)。2022/5/2020n实体联系图:建立数据模型,描述数据对象及数据对象之间的实体联系图:建立数据模型,描述数据对象及数据对象之间的 关系;关系;n数据流图:建立功能模型的基础;数据流图:建立功能模型的基础;n状态转换图:描绘系统的状态和状态间转换的方式状态转换图:描绘系统的状态和状态间转换的方式。3.3.2 软件需求规格说明软件需求规格说明 为了把用户的数据要求清楚、准确的描述出来,为了把用户的数据要求清楚、准确的描述出来,系统分析员
13、通常建立一个概念性的数据模型。包含三系统分析员通常建立一个概念性的数据模型。包含三种相互关联的信息:数据对象、数据对象的属性及数种相互关联的信息:数据对象、数据对象的属性及数据对象彼此间相互连接的关系。据对象彼此间相互连接的关系。2022/5/20212022/5/2022 数据对象数据对象可以是外部实体、事物、行为、事件、角色、单位、地可以是外部实体、事物、行为、事件、角色、单位、地点、结构等。点、结构等。 属性属性定义了数据对象的性质。定义了数据对象的性质。 联系联系是数据对象之间相互连接的方式。是数据对象之间相互连接的方式。 (1)一对一联系()一对一联系(1:1);); (2)一对多联
14、系()一对多联系(1:N);); (3)多对多联系()多对多联系(M:N)。)。数据对象3.4 3.4 实体实体- -联系图联系图属性联系2022/5/2023实体实体- -联系图联系图教师学生课程学号姓名系年级职务性别职称性别姓名教工号教学成绩学分学时课名课程号图3.2 某校教学管理ER图MN1N2022/5/2024通常用范式定义消除数据冗余的程度。通常用范式定义消除数据冗余的程度。第一范式(第一范式(1 NF)数据冗余度)数据冗余度最大,第五范式(最大,第五范式(5 NF)数据冗余度最小。但范式级别越高,)数据冗余度最小。但范式级别越高,(1)存储存储同样多数据需要分解成更多张表,同样多
15、数据需要分解成更多张表,“存储自身存储自身”的过程越复杂;的过程越复杂;(2)数数据存储结构与基于问题域的结构间的匹配程度也随之下降,需求变化据存储结构与基于问题域的结构间的匹配程度也随之下降,需求变化时数据稳定性下降;时数据稳定性下降;(3)需要访问的表增多,性能下降。需要访问的表增多,性能下降。(第三范式第三范式)n 第一范式:第一范式:每个属性都是原子值每个属性都是原子值n 第二范式:第二范式:满足第一范式条件,每个关键字属性都仅有关键字决定满足第一范式条件,每个关键字属性都仅有关键字决定n 第三范式:第三范式:符合第二范式条件,每个非关键字属性都仅有关键字决符合第二范式条件,每个非关键
16、字属性都仅有关键字决定,并且一个非关键字属性值不依赖于另一个非关键字属性值定,并且一个非关键字属性值不依赖于另一个非关键字属性值 3.5 3.5 数据规范化数据规范化2022/5/2025第一范式(第一范式(1 NF)数据冗余度最大,第五范式()数据冗余度最大,第五范式(5 NF)数据冗余度最)数据冗余度最小。但范式级别越高,小。但范式级别越高,(1)存储同样多数据需要分解成更多张表,存储同样多数据需要分解成更多张表,“存存储自身储自身”的过程越复杂;的过程越复杂;(2)数据存储结构与基于问题域的结构间的匹数据存储结构与基于问题域的结构间的匹配程度也随之下降,需求变化时数据稳定性下降;配程度也
17、随之下降,需求变化时数据稳定性下降;(3)需要访问的表增需要访问的表增多,性能下降。多,性能下降。(第三范式第三范式)n 第一范式:第一范式:每个属性都是原子值每个属性都是原子值n 第二范式:第二范式:满足第一范式条件,每个关键字属性都仅有关键字决定满足第一范式条件,每个关键字属性都仅有关键字决定n 第三范式:第三范式:符合第二范式条件,每个非关键字属性都仅有关键字决符合第二范式条件,每个非关键字属性都仅有关键字决定,并且一个非关键字属性值不依赖于另一个非关键字属性值定,并且一个非关键字属性值不依赖于另一个非关键字属性值 3.6 状态转换图状态转换图2022/5/2026 状态状态是任何可以被
18、观察到的系统行为模式,一个状态代表系统的一是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。状态图中定义的状态主要有:初态、中态、中间状态种行为模式。状态图中定义的状态主要有:初态、中态、中间状态 事件事件是某个特定时刻发生的事情,它是引起系统做动作或状态转换是某个特定时刻发生的事情,它是引起系统做动作或状态转换的控制信息。的控制信息。 3.6 状态转换图状态转换图2022/5/2027闲置闲置拨号音拨号音do:响拨号音响拨号音超时超时do:响蜂鸣音响蜂鸣音存储的信息存储的信息do:播放信息播放信息接通中接通中do:试接通试接通振铃振铃do:振铃振铃拨号拨号通话通话断线断线忙音
19、忙音do:响忙音响忙音挂断电话挂断电话挂断电话挂断电话拿起话筒拿起话筒超时超时无效号码无效号码有效号码有效号码超时超时数字数字数字数字占线占线已接通已接通受话人回话受话人回话受话人挂断电话受话人挂断电话信信息息播播完完软件工程中南大学Central South University2022/5/203.7 其他图形工具3.7.1 层次方框图层次方框图2022/5/2029 例如,描绘一家计算机公司全部产品的数据结构可以用图中的层次方框图表示 层次方框图用树形结构的一系列多层次的矩形框描绘数据的层次结层次方框图用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,
20、它代表完整的数据结构,下构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表这个数据的子集,最底层的各个框代表组成这个数面的各层矩形框代表这个数据的子集,最底层的各个框代表组成这个数据的实际数据元素(不能再分割的元素)。据的实际数据元素(不能再分割的元素)。 3.7.1 层次方框图层次方框图2022/5/2030n随着结构的精细化,层次方框图对数据结构的描绘随着结构的精细化,层次方框图对数据结构的描绘也越来越详细,这种模式非常适合于需求分析阶段也越来越详细,这种模式非常适合于需求分析阶段的需要。的需要。n统分析员从对顶层信息的分类开始,沿图中每条路统分析员从对顶层信
21、息的分类开始,沿图中每条路径反复细化,直到确定了数据结构的全部细节为止。径反复细化,直到确定了数据结构的全部细节为止。 3.7.2 Warnier图图2022/5/2031n 法国计算机科学家法国计算机科学家Warnier提出了表示信息层次结构的另外一种图形提出了表示信息层次结构的另外一种图形工具。和层次方框图类似,工具。和层次方框图类似,Warnier图也用树形结构描绘信息,但是这图也用树形结构描绘信息,但是这种图形工具比层次方框图提供了更丰富的描绘手段。种图形工具比层次方框图提供了更丰富的描绘手段。n 用用Warnier图可以表明信息的逻辑组织,也就是说,它可以指出一类图可以表明信息的逻辑
22、组织,也就是说,它可以指出一类信息或一个信息量是重复出现的,也可以表示特定信息在某一类信息中信息或一个信息量是重复出现的,也可以表示特定信息在某一类信息中是有条件地出现的。是有条件地出现的。n 因为重复和条件约束是说明软件处理过程的基础,所以很容易把因为重复和条件约束是说明软件处理过程的基础,所以很容易把Warnier图转变成软件设计的工具。图转变成软件设计的工具。 3.7.2 Warnier图图2022/5/2032n 花括号:花括号:区分数据结构的层次,在一个花括号内的所有名字都属区分数据结构的层次,在一个花括号内的所有名字都属于同一类信息。于同一类信息。n 异或符号:异或符号:表明一类信
23、息或一个数据元素在一定条件下才出现,表明一类信息或一个数据元素在一定条件下才出现,而且在这个符号上、下方的两个名字所代表的数据只能出现一个。而且在这个符号上、下方的两个名字所代表的数据只能出现一个。n 圆括号:圆括号:中间的数字指明了这个名字代表的信息类(或元素)在中间的数字指明了这个名字代表的信息类(或元素)在这个数据结构中重复出现的次数。这个数据结构中重复出现的次数。 3.7.3 IPO图图2022/5/2033n IPOIPO图是输入图是输入/ /处理处理/ /输出图的简称,它是美国输出图的简称,它是美国IBMIBM公司发展完善起公司发展完善起来的一种图形工具,能够方便地描绘输入数据、数
24、据处理和输出数来的一种图形工具,能够方便地描绘输入数据、数据处理和输出数据之间的关系。据之间的关系。n 左框:左框:列出输入数据。列出输入数据。n 中框:中框:列出主要的处理列出主要的处理 (次序暗示了执行的顺序)。(次序暗示了执行的顺序)。n 右框:右框:列出输出数据列出输出数据n 粗大箭头:粗大箭头:指出数据通指出数据通 信的情况。信的情况。 用IPO图描绘主文件更新功能3.7.3 IPO图图2022/5/2034n 建议使用一种改进的建议使用一种改进的IPO图图(也称为(也称为IPO表),这种图中表),这种图中包含某些附加信息,比原始的包含某些附加信息,比原始的IPO图更有用。图更有用。
25、n 改进的改进的IPO图中包含的图中包含的附加信附加信息息,主要有系统名称,图的作,主要有系统名称,图的作者,完成本图的日期,本图描者,完成本图的日期,本图描述的模块的名字,模块在层次述的模块的名字,模块在层次图中的编号,调用本模块的模图中的编号,调用本模块的模块清单,本模块调用的模块的块清单,本模块调用的模块的清单,注释,以及本模块使用清单,注释,以及本模块使用的局部数据元素等。的局部数据元素等。3.7.3 IPO图图2022/5/2035n 在需求分析阶段可以使用在需求分析阶段可以使用IPO图简略地描述数据流图中各个处理图简略地描述数据流图中各个处理的基本算法(着重说明处理功能而不是具体实现功能的算法)。的基本算法(着重说明处理功能而不是具体实现功能的算法)。n 当然,在需求分析阶段,当然,在需求分析阶段,IPO表中的许多附加信息暂时还不具备。表中的许多附加信息暂时还不具备。但是,在软
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国餐桌餐椅行业深度调研及投资前景预测研究报告
- 2026中国茶具行业营销动态与销售趋势预测报告
- 关于环保主题演讲稿合集15篇
- 2025-2030中国地热能开发利用行业应用规模及发展机遇分析研究报告
- 2026中国对羟基苯甲酸丙酯钠行业现状规模及发展方向预测报告
- 2026中国电池市场调研及发展策略研究报告
- 2026中国新型制剂市场研发创新趋势及未来投资风险预警报告
- 2026中国稀土矿市场盈利动态与需求规模预测报告
- 关于竞选班长演讲稿资料15篇
- 2025-2030智慧冷链系统行业市场现状分析投资评估食品保鲜规划总
- 石油天然气开采重大事故隐患判定准则
- GB/T 26951-2025焊缝无损检测磁粉检测
- DB11T17742020建筑新能源应用设计规范
- 后厨设计案例分享
- 流出道室早定位课件图
- 中医药驾驭慢性病-揭秘中医药治疗慢性病之道
- 黄河护理单招真题试卷题库及答案解析
- 社区415国家安全教育日
- 大数据中心都建在这贵州为什么这么牛?(屏幕16比9)
- 制作艾米果活动
- 2025年安徽亳州(QC小组活动专业能力)中级质量专业能力考试题库及答案
评论
0/150
提交评论