《软件工程需求》PPT课件.ppt
《《软件工程需求》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《软件工程需求》PPT课件.ppt(60页珍藏版)》请在三一办公上搜索。
1、1,第2章 软件需求工程,2.1软件需求的基本概念2.2需求工程过程2.3软件需求获取技术2.4需求分析与建模2.5案例分析,2,2.1软件需求的基本概念,这一节讨论如下问题:1)需求概述 2)在系统环境下定义软件 3)软件需求的任务 4)功能需求与非功能需求,3,软件需求作为软件生命周期的第一个阶段,其重要性越来越突出,到20世纪80年代中期,逐步形成了软件工程的子领域需求工程。90年代后,需求工程成为软件界研究的重点之一。从1993年起,每两年举办一次需求工程国际研讨会(ISRE),1994年起,每两年举办一次需求工程国际会议(ICRE)。一些关于需求工程的工作小组相继成立,使需求工程的研
2、究得到了迅速进展。,1)需求概述,4,对系统应该提供的服务和所受到的约束进行理解、分析、建立文档、检验的过程需求工程,(1).什么是软件需求工程?(2).软件需求工程的任务是什么?(3).需求工程过程(4).软件需求分析方法,5,什么是需求工程?,教学管理系统:,描述:开发一个教学管理系统,目的要减少手工操作、减少教学干事往主楼来回的跑、减少学生办任何事情都要到教学办公室。同时,还要方便教师上网登成绩、发通知、同学的注册信息的完整性、有效性。,6,软件需求的重要性,软件需求无疑是当前软件工程中的关键问题,没有需求就没有软件。,美国于1995年开始对全国范围内的8000个软件项目进行跟踪调查。,
3、分析失败的原因发现,与需求过程相关的原因占了45%,而其中缺乏最终用户的参与以及不完整的需求又是两大首要原因,各占13%和12%。,未完成,完成未实施,完成,7,第二章 软件需求工程 2.1 软件需求的基本概念,可行性研究的任务,可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。,可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。,8,第二章 软件需求工程 2.1 软件需求的基本概念,可行性的四个主要研究方面:技术可行性研究:当前技术是否可行 经济可行性研究:系统产生的效益是否超过成本 操作可行性
4、研究:系统在用户中是可操作的吗,法律可行性研究:技术、经济、操作可行性都符 合法律规范,可行性研究的任务,9,第二章 软件需求工程 2.1 软件需求的基本概念,了解用户的要求和现实环境,从技术、经济和操作和法律等方面研究并论证软件系统的可行性。,可行性研究任务,虽然可行性研究阶段已经粗略了解用户的需求,甚至还提出了一些可行的方案,但是这些分析的太多细节被忽略。因此为了彻底的了解用户“系统到底要做什么”,必须进行系统的“需求分析”。,可行性研究内容(1).经济可行性研究(2).技术可行性研究(3).操作可行性研究(4).法律可行性研究(5).其它问题的研究,10,第二章 软件需求工程 2.1 软
5、件需求的基本概念,软件需求的困难,软件需求是软件工程中最复杂的过程之一:(1)应用领域的广泛性,它的实施无疑与各个应用行业的特征密切相关。(2)非功能性需求建模技术的缺乏,及其与功能性需求有着错综复杂的联系,大大增加了需求工程的复杂性。(3)沟通上的困难,由于系统分析员、需求分析员等各方面人员有不同的着眼点和不同的知识背景,给需求工程的实施增加了人为的难度。,11,2).在系统环境下定义软件,系统工程关注系统环境下的各个元素系统元素包括:实事、原理、规则、连接逻辑、计划和方法系统工程是分层次的:,全局领域视图,商业领域视图,金融领域视图,教育领域视图,xxxx领域视图,.,实事元素视图,原则元
6、素视图,规则元素视图,逻辑元素视图,.,详细视图,详细视图,详细视图,详细视图,.,12,产品工程层次,业务过程工程层次,在系统工程环境下的软件工程分为:业务过程-使业务能有效地使用信息体系产品过程-根据确定的能力映射的工作产品,信息全局视图,业务域视图,软件视图,业务域视图,硬件视图,.,信息系统视图,信息系统视图,功能视图,数据视图,详细视图,详细视图,详细视图,详细视图,.,完整产品视图,.,.,.,行为视图,系统需求分析,软件设计实现,13,信息全局视图,业务域视图,业务域视图,.,信息系统视图,信息系统视图,详细视图,详细视图,.,.,1.全局视图定义具有独立整体业务领域的目标和信息
7、规程,3.信息系统视图建立特定信息系统的基本需求,并映射到软件体系结构和程序构件,4.详细视图构造内部数据结构及相应的技术实现并集成,2.业务域视图在全局视图中,选定具体业务领域的信息实体、功能和交互形式,业务过程工程层次,14,例如,教育领域,大学管理业务,大学教务信息系统,学科设置,课程设置,教师设置,学生设置,.,例如,制造企业领域,工厂生产业务,仓库管理信息系统,成品管理,原料管理,设备管理,仪器管理,.,例如,政务领域,政府业务,市政管理信息系统,商业网点,广告管理,煤气管网,污水管网,.,业务过程工程层次举例,15,软件视图,硬件视图,功能视图,数据视图,详细视图,详细视图,.,完
8、整产品视图,.,行为视图,产品过程工程层次说明,1.完整产品视图信息和控制需求产品功能和行为产品性能设计接口约束,2.分配整体产品需求到硬件工程、软件工程、人力工程和数据工程,3.对指定的软件,进行行为、功能和数据的建模分析,4.对确定的部分,进行体系结构设计、接口设计和构件设计,16,产品过程工程层次举例,例如,控制功能产品-CLSS,条码阅读器,流速脉冲器,分流器,PC机,软件,软件数据建模,软件行为建模,软件功能建模,输入功能构件,输出功能构件,控制功能构件,操作界面构件,例如,监测功能产品-海下声纳监测,脉冲发生器,PC机,软件数据建模,软件行为建模,软件功能建模,采集声波功能构件,控
9、制脉冲输出构件,延时计算功能构件,操作界面构件,声波采集器,软件,17,系统分析方法-系统建模,系统模型模板,用户界面处理,输入处理,处理和控制功能,输出处理,维护和测试,18,系统模型例子-CLSS系统,传送带分类系统,请求,询问,分流命令,格式化报告数据,带速指示器,诊断数据,条形码,分类站 操作,条形码 阅读,传送带,分类站,中央 主机,分类站 操作,系统语境图:system context Diagram(SCD),19,系统模型例子-CLSS系统精化,数据库存取子系统,分流命令,脉冲触点输入,条形码,分类站 操作,条形码 阅读子系统,传感器 数据获得 子系统,分流控制站,中央 通信
10、驱动,诊断子系统,分流控制子系统,报告格式化子系统,条形码解码子系统,通信状态,条码阅读器状态,传感器状态,分流状态,分流控制状态,格式化报告数据,条形码数据,带速,操作请求,询问报告,显示,部件号,分类报告,报告请求,箱位置,CLSS报告,分类记录,key,BCD状态,条形码获得请求,系统流图(System Flow Diagram),20,顶层系统流图,SFD的结构表示,当系统流图用一张图表示不下的时候,采用结构SFD方式,B,A,A的系统流图,C,B的系统流图,C的系统流图,21,功能需求与非功能需求,功能需求是对系统应提供的服务、功能以及系统在特定条件下的行为描述。例如:图书管理系统,
11、要求以下功能:(1)数据维护,录入、修改、更新等(2)基本业务功能,读者借、还书籍,预留操作、书籍编目、入库,更新等。(3)数据库管理:对书籍借、还及读者信息进行统一管理(4)信息查询:实现专用、通用、条件等各种信息查询功能。,22,非功能需求指不之接与系统功能相关的一类需求.主要反映对系统的约束,与系统的总体特性有关。如可靠性、反应时间、存储空间等,非功能需求,产品需求,机构需求,外部需求,交互需求,实现需求,标准需求,互操作需求,道得需求,法规需求,可靠性需求,可用性需求,效率需求,存储需求,可移植性需求,安全性需求,非功能需求类型,23,需求分析是一种软件工程活动,该活动定义功能、数据和
12、行为的规约、和其他系统的接口约束。,2.2 需求工程过程,需求工程的基本活动,需求获取,需求分析与建模,需求规格说明,需求有效性验证,初步需求说明,系统分析模型,需求规格说明书,确认需求文档,需求工程过程,24,2.3 软件需求获取技术,常用需求获取技术面谈法:面谈前要拟定提纲、谈后认真分析、掌握人际交流的技能。问卷调查法:多项选择问题、分段评分、对回答问题排序。会议讨论:会上确定双方确认原型法:对交流有问题或核心问题作原型面向用例的方法:对一组动作序列的描述,25,确定需求开发过程编写项目目标和范围文档将用户群分类并归纳各自特点选择各类用户的产品代表建立起典型用户的核心队伍让用户代表确定使用
13、实例召开应用程序开发联系会议分析用户工作流程确定质量属性和其它非功能属性通过检查当前系统的问题报告来进一步完善需求跨项目重用需求,需求获取的过程举例,某出版社系统调查表,需求获取调查举例:,某出版社系统调查表,28,软件需求是系统工程与软件设计之间的桥接,软件需求分析的原则1)问题信息域必须被表示和理解2)软件完成的的功能必须被定义3)软件的行为必须被表示(行为是事件作用后的结果)4)信息、功能和行为必须分开建模5)分析过程应该从粗略到详细,需求分析:需求分析解决项目做什么,界定项目范围.不关心如何做,2.4 需求分析与建模,常用的分析方法论有功能分析法结构化分析法(SA)信息建模法面向对象分
14、析法(OOA)主要介绍SA和OOA,29,需求分析规约(P214),软件需求规格说明:软件需求分析任务的提交产品,需求规格说明:(参考样例)1.引言 1.1编写目的 1.2项目背景 1.3定义 1.4参考资料2.任务概述 2.1目标 2.2运行环境 2.3条件与限制3.数据描述 3.1数据字典(或数据库描述)3.2数据采集,4.功能需求 4.1功能划分 4.2功能描述5.性能描述 5.1数据精确度 5.2时间特性 5.3适应性6.运行需求 6.1用户界面 6.2硬件接口 6.3软件接口 6.4故障处理7.其它需求,30,方法示意图,包括三大部分:1)数据建模2)功能建模3)行为建模,结构化分析
15、方法,数据字典,实体-关系图,数据流图功能层次图,状态变迁图,数据对象描述,加工规约,控制规约,需求建模,SA方法的基本思想分解抽象,SA需求分析的步骤,当前系统,目标系统,物理模型,逻辑模型,逻辑模型,物理模型,模型化,抽象化,改进,建立,怎么做,做什么,当前系统,目标系统,需求定义,32,数据建模,使用工具:实体 关系图,实体数据 对象A,实体数据 对象B,关系,表示:一对多 表示:一对一 表示:一个或没有,数据流图(DFD)作用:描述逻辑模型的图形工具,表示数据在系统内的流动和处理(功能细节)情况的表示图。DFD既提供了功能建模的机制,也提供了信息流建模机制。,功能建模,功能建模和信息流
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程需求 软件工程 需求 PPT 课件

链接地址:https://www.31ppt.com/p-5610142.html