软件工程第三章课件_第1页
软件工程第三章课件_第2页
软件工程第三章课件_第3页
软件工程第三章课件_第4页
软件工程第三章课件_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、1第第3章章 需求分析需求分析3.1 需求分析的任务需求分析的任务3.2 与用户沟通获取需求的方法与用户沟通获取需求的方法3.3 分析建模与规格说明分析建模与规格说明3.4 实体实体-联系图联系图3.5 数据规范化数据规范化3.6 状态转换图状态转换图3.7 其他图形工具其他图形工具3.8 验证软件需求验证软件需求3.9 小结小结2需求工程的重要性需求工程的重要性n standish-groupstandish-group对对350350家公司的家公司的80008000个软件项目作过一次调查个软件项目作过一次调查, ,其中,其中,31%31%的项目的结局是被取消的项目的结局是被取消。 引致这些

2、项目失败的原因是:引致这些项目失败的原因是: 13.1% 13.1% 不完整的产品要求;不完整的产品要求; 12.4% 12.4% 缺乏用户的参与;缺乏用户的参与; 10.6% 10.6% 缺少资源(人力、财力);缺少资源(人力、财力); 9.9% 9.9% 不现实的期望;不现实的期望; 9.3% 9.3% 高层领导支持不足;高层领导支持不足; 8.7% 8.7% 产品要求与指标的改变;产品要求与指标的改变; 8.1% 8.1% 没有订计划;没有订计划; 7.5% 7.5% 不再需耍该开发中的系统。不再需耍该开发中的系统。 其中,与产品需求有关的(其中,与产品需求有关的(1,2,4,1,2,4

3、,和和6 6项)占了项)占了44.1%44.1%。这些数据突。这些数据突出地显示了软件产品需求在软件开发中的重要性。出地显示了软件产品需求在软件开发中的重要性。3需求分析的准则需求分析的准则n回答回答“系统必须做什么系统必须做什么?” n准则准则(1) 必须理解并描述问题的信息域,建立必须理解并描述问题的信息域,建立数据模型数据模型。(2) 必须定义软件应完成的功能,建立必须定义软件应完成的功能,建立功能模型功能模型。(3) 必须描述作为外部事件结果的软件行为,建立必须描述作为外部事件结果的软件行为,建立行为模型行为模型。(4) 必须对描述信息、功能和行为的模型进行必须对描述信息、功能和行为的

4、模型进行分解分解,用,用层次层次的方式展示细节。的方式展示细节。n最后写出软件需求规格说明书最后写出软件需求规格说明书43.1 需求分析的任务需求分析的任务n确定对系统的综合要求确定对系统的综合要求l功能、性能、可靠性、可用性、出错处理、接口、功能、性能、可靠性、可用性、出错处理、接口、需求、约束、扩充需求、约束、扩充n分析系统的数据要求分析系统的数据要求l数据模型、数据结构数据模型、数据结构n导出系统的逻辑模型导出系统的逻辑模型l数据流图、实体数据流图、实体-联系图、状态转换图、数据字典联系图、状态转换图、数据字典和处理算法描述和处理算法描述n修正系统开发计划修正系统开发计划5模型化抽象化具

5、体化实例化理理解解需需求求表表达达需需求求导出怎么做怎么做做什么做什么63.2 获取需求的方法获取需求的方法n访谈:正式、非正式访谈、情景分析访谈:正式、非正式访谈、情景分析n面向数据流自顶向下求精面向数据流自顶向下求精结构化分析结构化分析n简易的应用规格说明技术简易的应用规格说明技术n快速建立软件原型快速建立软件原型7需求分析的人员需求分析的人员83.3 分析建模与规格说明分析建模与规格说明 3.3.1 分析建模分析建模n结构化分析实质结构化分析实质建模建模l不同角度抽象出目标系统的特性不同角度抽象出目标系统的特性l使用精确的表示方法构造系统的模型使用精确的表示方法构造系统的模型n需求分析建

6、立需求分析建立3种模型种模型l数据模型:实体数据模型:实体-联系图联系图l功能模型:数据流图功能模型:数据流图l行为模型:状态转换图行为模型:状态转换图9实体实体关系图关系图状态迁移图数据流图数据对象描述加工规格说明数据字典控制规格说明10结构化分析案例结构化分析案例1112131415161718193.3.2 软件需求规格说明软件需求规格说明n需求分析阶段需求分析阶段最主要的文档最主要的文档l自然语言自然语言l完整、准确、具体完整、准确、具体l内容:内容:p数据要求、功能需求、性能需求、可靠性和可数据要求、功能需求、性能需求、可靠性和可用性要求、出错处理需求、接口需求、约束、用性要求、出错

7、处理需求、接口需求、约束、逆向需求以及将来可能提出的要求逆向需求以及将来可能提出的要求203.4 实体实体-联系图(联系图( er图)图)n建立概念模型建立概念模型l描述了从描述了从用户用户角度看到的数据角度看到的数据l反映了用户的现实环境反映了用户的现实环境l与在软件系统中的实现方法无关与在软件系统中的实现方法无关n包含包含3种相互关联的信息种相互关联的信息l数据对象:数据对象:外部实体、事物、行为、事件外部实体、事物、行为、事件等等l数据对象的数据对象的属性:属性:定义了数据对象的性质定义了数据对象的性质l数据对象彼此间相互连接的数据对象彼此间相互连接的关系:关系:联系联系21某校教学管理

8、某校教学管理er图图223.5 数据规范化数据规范化n信息通常存储在数据库或文件中信息通常存储在数据库或文件中n数据结构规范化数据结构规范化l减少数据冗余减少数据冗余l避免出现插入异常或删除异常避免出现插入异常或删除异常l简化修改数据的过程简化修改数据的过程n“范式范式(normal forms)”l定义消除数据冗余的程度定义消除数据冗余的程度l第一范式第一范式(1 nf)第五范式第五范式(5 nf)233.6 状态转换图状态转换图n表示系统的表示系统的行为模式行为模式l通过描绘系统的通过描绘系统的状态状态l引起系统状态转换的引起系统状态转换的事件事件及及事件的响应方事件的响应方式式n指明作为

9、特定事件的结果动作指明作为特定事件的结果动作n简称简称状态图状态图l初态初态(一个一个)、终态终态(0至多个至多个)、中间状态中间状态l表示系统循环运行过程表示系统循环运行过程:不关心循环是怎样启动的不关心循环是怎样启动的l表示系统单程生命期表示系统单程生命期:要标明初态和终态要标明初态和终态24状态转换图三要素状态转换图三要素 事件 (event):引发 object 状态改变的控制信息(瞬时)。 状态(status):即 object 的 attributes 所处的情形(可持续)。 行为(action): object 要达到某种 status 所做的操作(耗时)。event 0stat

10、us 1do: action 1status 2do: action 2event 1event 2startendcondition 12526闲闲 置置拨拨 号号通通 话话断断 线线拨号音拨号音do:do:响拨号音响拨号音超超 时时do:do:响蜂鸣音响蜂鸣音存储的信息存储的信息do:do:播放信息播放信息接通中接通中do:do:试接通试接通振振 铃铃do:do:振振 铃铃忙忙 音音do:do:响忙音响忙音拿起听筒拿起听筒数字数字数字数字有效号码有效号码已接通已接通受话人回话受话人回话受话人挂断电话受话人挂断电话挂断电话挂断电话超超 时时挂断电话挂断电话超时超时无效号码无效号码信息播完信息

11、播完占占 线线电话系统的状态转换图273.7 其他图形工具其他图形工具 3.7.1 层次方框图层次方框图n树形树形结构描绘数据的结构描绘数据的层次层次结构结构n顶层代表顶层代表完整完整的数据结构的数据结构n下面的各层矩形框代表这个数据的下面的各层矩形框代表这个数据的子子集集n最底层的各个框代表组成这个数据的最底层的各个框代表组成这个数据的实际实际数据元素数据元素(不能再分割的元素不能再分割的元素)。n自顶向下,逐步求精,逐层细化自顶向下,逐步求精,逐层细化28产品的数据结构产品的数据结构293.7.2 warnier图图n另一种图形工具另一种图形工具n用树形结构描绘信息用树形结构描绘信息n可以

12、表明信息的可以表明信息的逻辑组织逻辑组织l信息元素重复出现信息元素重复出现l有条件地出现有条件地出现n很容易把很容易把warnier图图转变成软件设计转变成软件设计的的工具工具30一类软件产品的一类软件产品的warnier图图313.7.3 输入输入-处理处理-输出图(输出图(ipo图)图)n方便地描绘输入数据、对数据的处理和输出方便地描绘输入数据、对数据的处理和输出数据之间的数据之间的关系关系。32改进的改进的ipo图图(ipo表表)n需求分析阶段需求分析阶段描述算法描述算法的重要工具的重要工具333.8 验证软件需求验证软件需求 3.8.1 验证软件需求的正确性验证软件需求的正确性n需求分

13、析阶段的工作结果是开发软件需求分析阶段的工作结果是开发软件系统的重要基础系统的重要基础n软件系统中软件系统中15%的错误起源于错误的的错误起源于错误的需求。需求。n必须严格验证这些需求的正确性。必须严格验证这些需求的正确性。343.8.2 验证软件需求的方法验证软件需求的方法n一致性所有需求必须是一致性所有需求必须是一致一致的的l人工技术审查、形式化人工技术审查、形式化n现实性指定的需求应该是现实性指定的需求应该是可实现可实现的的l以往系统经验、分析现有技术的可能性、仿以往系统经验、分析现有技术的可能性、仿真、性能模拟技术真、性能模拟技术n完整性需求必须是完整性需求必须是完整完整的的 n有效性必须证明需求是有效性必须证明需求是正确有效正确有效的的l确实满足用户的实际需要确实满足用户的实际需要l用户试用原型用户试用原型353.8.3 需求分析的软件工具需求分析的软件工具(1) 必须有形式化的语法必须有形式化的语法(或表或表),可以自动处,可以自动处理使用这种语法说明的内容;理使用这种语法说明的内容;(2) 能够导出详细的文档;能够导出详细的文档;(3) 必须提供分析必须提供分析(测试测试)规格说明书的不一致规格说明书的不一致性和冗余性的手段,产生完整性分析的结果报性和冗余性的手段,产生完整性分

温馨提示

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

评论

0/150

提交评论