版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件工程需求分析概述软件工程学系列2022/8/252主要内容 需求分析的任务 获取需求的方法 分析建模和规范化 图形工具 验证软件需求 前一页2022/8/253需求分析的任务 需求(requirement)分析是定义软件的最后一个阶段,也是最重要的一个阶段,其基本任务是对目标系统提出完整、准确、清晰、具体的要求。 需求分析的结果是系统开发的基础,关系到工程的成败和软件产品的质量。因此,必须采取行之有效的办法对需求分析进行严格的审查验证。 前一页2022/8/254需求分析的任务前一页分析系统的数据要求确定对系统的综合要求导出系统的逻辑模型修正系统开发计划开发原型系统 主要内容2022/8/
2、255确定对系统的综合要求前一页需求分析的任务 1功能 (function) 要求 划分出系统必须完成的所有功能。 2性能 (performance) 要求 如:系统联机响应时间、吞吐率、连续运行时间、可靠性(reliability)、安全性(security),以及操作简便、界面美观等等。 2022/8/256确定对系统的综合要求前一页需求分析的任务 3运行 (execute) 要求 主要指系统运行时所处环境的要求。如:硬件平台、软件平台、网络环境、通信接口等等。 4可扩展性 (expansibility) 要求 应明确列出将来可能会提出来的要求。在设计开发目标系统的同时,尽可能考虑到系统的
3、扩展和修改,以免造成被动。 2022/8/257确定对系统的综合要求5.可靠性和可用性需求 定量指定了系统的可靠性,量化用户使用系统的程度。6.出错处理需求 该类需求说明系统对环境错误怎样响应。需求分析的任务2022/8/258需求分析的任务前一页分析系统的数据要求 任何一个软件系统,其本质都是信息处理系统,信息处理的要求决定了系统的性质。因此,分析系统的数据要求是需求分析的一项重要任务。通常采用建立概念模型的方法。 利用数据字典并辅助以图形工具来描绘数据结构。 使用数据结构规范化技术,使得软件系统有利于存储经常要使用信息。2022/8/259需求分析的任务前一页导出系统的逻辑模型 从分析系统
4、的综合要求和数据要求,可以导出系统详细的逻辑模型,通常用数据流图、数据字典、主要的处理算法(algorithm)来描述。 2022/8/2510需求分析的任务前一页修正系统的开发计划 通过需求分析对系统更深入具体的理解,可以比较准确地估计系统的成本和进度,修正以前制定的开发计划。2022/8/2511获取需求的方法访谈:两种基本形式:正式和非正式使用情景分析技术:即是对用户将来使用目标系统解决某个问题的方法和结果进行分析。优点:(1)该技术可以演示目标系统(2)可以调动用户的积极性2022/8/2512前一页面向数据流分析 对数据的来源/处理/去向,是分析的出发点。通过可行性分析研究,已经得到
5、了目标系统的高层数据流图,需求分析的目的之一就是把数据流和数据存储定义到元素级。 采用结构化分析方法(SA),面向数据流自顶向下,逐步求精进行分析。 2022/8/2513分析过程沿数据流图回溯 用户复查 细化数据流图 修正开发计划 书写文档前一页主要内容2022/8/2514沿数据流图回溯步骤:从输出端沿着数据流图向输入端回溯,由此确定出每个数据的来源把分析过程得到的有关数据元素的信息记录在数据字典中,把算法记录在IPO图中分析过程2022/8/2515分析过程前一页用户复查 对于数据字典、数据流图、IPO图中的有关内容是否完整正确地描述了目标系统,只有用户是最清楚的。与用户共同对描述的目标
6、系统进行复查是极为重要的一个环节。 “复查、补充、修改、再复查”,是一个不断循环的过程,系统在这个过程中不断完善,分析员的认识在这个过程中不断加深。2022/8/2516分析过程前一页细化数据流图 为了追踪更详细的数据流图,分析员应该把数据流图扩展到更低的层次。 通过对功能的分解来完成对数据流图的细化。在数据流图中选取功能比较复杂的处理,将其功能分解为若干子功能,使其成为数据流图新的处理。 对数据流图细化之后,数据元素之间的关系更加清楚,处理加工算法更加具体。分析员将越来越深入具体地定义目标系统 。2022/8/2517细化数据流图分析过程前一页图3.1 面向数据流自顶向下求精过程需要分解分析
7、员向用户解释2022/8/2518分析过程前一页修正开发计划 经过需求分析阶段的工作,在对目标系统有了更深入的认识之后,可以对原来的开发计划作进一步的修正。 2022/8/2519分析过程前一页书写文档1)系统规格说明:主要描述目标系统的概貌、功能要求、性能要求、运行要求和将来可能提出的要求。用数据流图、IPO等描述的算法也是其中主要的组成部分。此外,还应包括用户需求与系统功能之间的参照关系,设计约束等 。2)数据要求:主要包括数据字典、层次方框图(描述数据结构)、数据的存储等。 2022/8/2520分析过程前一页书写文档3)用户系统描述:从用户使用系统的角度描述系统,相当于初步的用户手册。
8、包括,对系统功能和性能的简要描述,使用系统的主要步骤和方法,以及系统用户的责任等。这对保证系统符合用户的需求和软件质量具有重要作用。 4)修正的开发计划:包括成本估计、资源使用计划、进度计划等。 2022/8/2521前一页简易的应用规格说明技术解决了用户处于被动地位的问题面向团队的需求收集法该方法提倡用户与开发者密切合作,共同标识问题,提出解决方案要素,商讨不同方案并指定基本需求。2022/8/2522简易的应用规格说明技术步骤:初步访谈,确定问题的范围和解决方案由开发者和用户分别写出“产品需求”,并在由双方代表组成的会议上讨论会议上确定与会人员意见一致的问题和列表将与会者分成小组,每个小组
9、就列表中的问题展开讨论,然后形成小型规格说明小组讨论结束后,每组向全体人员展示小型规格说明专门人员根据会议成果起草完整的软件需求文档2022/8/2523简易的应用规格说明技术面向团队的需求收集法优点:强调了用户的参与,开发者和用户密切合作讨论即时并求精有能导出规格说明的具体步骤2022/8/2524开发原型系统快速原型就是快速建立起来的旨在演示目标系统主要功能的可运行的程序。快速原型的第一个特征是“快速”,使用户和开发者在目标系统应该“做什么”问题上尽快达成共识;快速原型的第二个特征是“容易修改”,原型的“修改-试用-反馈”过程的多次反复。将使系统的需求更完整、准确、合理,对提高开发成功率,
10、对提高软件质量都有很大好处。但是要增加开发的成本。2022/8/2525前一页需求分析的任务开发原型系统 开发原型系统类似于产品开发的“样机”。主要的理由是 : 1) 由于人类认识的局限性,很难预先指定所有的要求; 2) 拥护与系统分析员之间存在固有的通信鸿沟; 3) 用户需要一个“实际”的系统,以便获得实践经验; 4) 在开发过程中的重复和反复是不可避免的; 5) 目前以有快速建立原型模型的开发工具。2022/8/2526分析建模与规格说明分析建模模型:为了理解事物而对事物做出的一种抽象,包括一组图像符号和组织该符号的规则。结构化分析实质上是一种建模的分析方法。需求分析阶段建立的3种模型:
11、数据模型、功能模型和行为模型2022/8/2527分析建模与规格说明应用的图形工具:数据模型:描绘数据及其关系,使用实体-联系图功能模型:描绘数据的变换过程,使用数据流图行为模型:描绘系统的行为,使用状态转换图2022/8/2528实体-联系图 为了更清晰明确地表达用户的数据要求,系统分析员通常建立一个概念性的数据模型。这是一种面向问题,按照用户的观点对数据和信息建摸,且与在软件中实现的方法无关。 最常用的是一种(Entity-Relationship Approach)“实体联系方法”。这种方法用实体-联系图(ER图)描述现实世界中的实体,不涉及实现方法,称为ER模型 。前一页2022/8/
12、2529概念模型和规范化ER模型范式前一页主要内容2022/8/2530前一页ER模型ER模型包括“数据对象”、“联系”和“属性”三个基本部分:数据对象:是客观世界中存在的且可以相互区分的事物。如:职工、教师、产品等。数据对象:又叫实体实例:数据对象当中每一个具体的事物称为该数据对象的实例 ,如:学生(实体)张三(实例)2022/8/2531ER模型 联系:客观世界中事物间的联系。可分为: 一对一联系(1:1) 一对多联系(1:N) 多对多联系(M:N)属性:是实体或联系具有的性质,通常一个实体由若干个性质来刻画,将这些性质中能唯一地区分实体的属性叫关键字。如学生的属性中包括学号、班级等,学号
13、为关键字2022/8/2532ER模型实体:矩形属性:椭圆或圆角矩形联系:菱形学生课程学习MN姓名2022/8/2533概念模型和规范化前一页ER模型2022/8/2534概念模型和规范化前一页范 式 通常用“范式”(Normal Formas)定义消除数据的冗余的程度。 按照冗余程度的大小,分为第一范式(1NF)到第五范式(5FN)。 2022/8/2535范 式概念模型和规范化前一页 范式越高冗余度越小,但并非越高越好。随着范式的提高,存储过程变得复杂起来;在需求变化时数据的稳定性差;访问的表增多,访问的效率下降。 满足最低要求的是第一范式,在第一范式中再进一步满足一些要求的为第二范式,。
14、大多数情况下选用第三范式比较合适 。2022/8/2536概念模型和规范化前一页范 式第一范式:每个属性都必须是原子值,即仅仅是一个简单值而不含内部结构。第二范式:满足第一范式条件,而且每个非关键字的属性都由整个关键字决定。第三范式:符合第二范式条件,每个非关键字的属性仅由关键字决定,而且一个非关键字的属性不能仅仅是对另一个关键字的描述。 2022/8/2537状态转换图行为模型:描绘系统的行为,使用状态转换图状态转换图:通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为2022/8/2538状态转换图状态:任何可以被观察到的系统行为模式状态规定了系统对事件的响应方式所定义的状态有:
15、初态、终态和中间状态事件:引起系统做动作或转换状态的控制信息状态和事件2022/8/2539状态转换图初态:实心圆终态:一对同心圆,内圆为实心中间状态:圆角矩形,分成上、中、下三部分,分别代表状态、状态变量和活动表状态转换:状态图中两个状态之间带箭头的连线,箭头指明转换方向事件表达式:标注在箭头线上符号2022/8/2540状态转换图状态1状态变量1活动表1事件表达式状态2状态变量2活动表2初始事件图3.3 状态图中使用的主要符号2022/8/2541其他图形工具层次方框图 Warnier图IPO图 前一页主要内容2022/8/2542层次方框图前一页图形工具 采用多层次的树形结构的方框描述数
16、据的层次结构。其顶层是数据,中间各层是该数据的子集,最底层的树叶是组成该数据的实际数据元素。 2022/8/2543层次方框图前一页图形工具2022/8/2544Warnier图前一页图形工具 由法国人Warnier 提出的表示信息层次结构的一种工具。与层次方框图类似,但Warnier图提供了更丰富的描绘手段。 Warnier图可以更清楚地描述数据的逻辑组织如信息的条件约束、重复、数量等。容易把Warnier图转变成软件设计的工具。 2022/8/2545Warnier图前一页图形工具2022/8/2546Warnier图花括号:区分数据结构的层次异或:两类数据元素只能出现一个圆括号:当中的数
17、字表示该数据元素出现的次数2022/8/2547前一页图形工具IPO图 IPO(Input/process/output)图是输入/处理/输出的简称,是由IBM公司发展完善起来的一种图形工具,能方便地描绘输入数据、处理数据和输出数据之间的关系。 2022/8/2548前一页图形工具IPO图2022/8/2549前一页图形工具IPO图2022/8/2550验证软件需求验证需求正确性的原则 验证需求的方法用于需求分析的软件工具前一页主要内容2022/8/2551验证需求正确性的原则验证软件需求前一页 一致性:所有的需求是一致的,没有任何矛盾。 完整性:需求必须是完整的,没有任何功能和性能的遗漏。 现实性:完成需求所要求的软件和硬件条件,目前是可以达到的。 有效性:需求是有效的,可以解决用户的问题 。2022/8/2552验证软件需求前一页验证需求的方法 验证需求的一致性 验证需求的现实性 验证需求的完整性 验证需求的有效性2022/8/2553验证软件需求前一页用于需求分析的软件和工具 为有效地保证软件需求的正确性和一致性,需要有适当的软件工具支持需求分析。应满足以下要求: 1)必须有形式化的语法(或表),可以用计算机进行处理这种语法说明的内容;2)使用工具能够导出详细的文档 ;3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年通信工程师考试信号与系统模拟试卷及答案
- 焊工职业资格备考习题及答案
- 2026年保险从业资格考试风险管理专项训练题库及答案
- 2026年护理学初级资格考试护理学专业知识模拟试卷及答案
- 制造车间工人生产效率与质量考评表
- 销售数据更新反馈通知函(5篇)
- 关于提高项目管理效率建议书函(4篇)范文
- 零售行业商品结构经理绩效考核表
- 航空乘务长客舱经理绩效指标表
- 2026年白城医学高等专科学校高职单招笔试综合素质历年参考题库含答案解析
- 2026年四川申论执法卷申论真题材料及参考答案
- 设备防护施工方案范本
- 2026年旅行社计调员业务操作理论知识试卷答案
- 2026年突发环境事件应急笔试试题(含答案)
- 统招专升本英语4000个考前必背词汇表
- 年产5000吨竹原纤维可行性研究报告
- 气管切开患者气管造口周围皮肤护理
- 35KV变压器大修施工方案
- 环境卫生监测培训
- 2025年中国股权投资市场研究报告
- 生产周转车制度
评论
0/150
提交评论