软件工程[2].ppt
《软件工程[2].ppt》由会员分享,可在线阅读,更多相关《软件工程[2].ppt(93页珍藏版)》请在课桌文档上搜索。
1、软件工程2,软件工程第2章 软件项目的需求分析,软件工程2,第2章 软件项目的需求分析,本章要点1、了解软件需求分析的原则和任务2、了解软件需求的获得方法3、掌握结构化分析方法及其描述工具4、了解需求规格说明和需求评审的主要内容,软件工程2,需求与需求分析,一、需求分析的特点需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。,软件工程2,需求与需求分析,需求分析难点主要体现在以下几个方面:1、问题的复杂性2、交流障碍3、不完备性和不一致性4、需求易变性,软件工程2,需求与需求分析
2、,二、需求分析的任务需求分析的基本任务是要准确地定义新系统的目标,为了满足用户需要,回答系统必须“做什么”的问题。,软件工程2,需求与需求分析,用户需求分为两大类:功能性需求和非功能性需求。前者定义了系统做什么,包括系统的所有输入、输出以及如何从输入映射到输出;后者定义了系统工作时的特性,例如系统对效率、可靠性、安全性、可维护性、可移植性、吞吐量以及符合某种标准等的要求。,软件工程2,需求分析的任务就是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统是“做什么”的问题。,软件工程2,需求与需求分析,三、需求分析的步骤1、问题识别双方确定对问题的综合需求。这些需求包括:(1)功能需求
3、:指所开发的软件必须具备什么样的功能,这是最重要的。(2)性能需求:指待开发的软件的技术性能指标,如存储容量、运行时间等限制。,软件工程2,需求与需求分析,(3)环境需求:指软件运行时所需要的软、硬件(如机型、外设、操作系统和数据库管理系统等)的要求。(4)用户界面需求:即人机交互方式、输入输出数据格式等。,软件工程2,需求与需求分析,2、分析与综合,导出软件的逻辑模型分析人员对获取的需求,进行一致性的分析检查,在分析、综合中逐步细化软件功能,划分各个子功能。这里也包括对数据域进行分解,并分配到各个子功能上,以确定系统的构成及主要成分,并用图文结合的形式,建立起新系统的逻辑模型。,软件工程2,
4、需求与需求分析,3、编写文档(1)编写“需求说明书”,把双方共同的理解与分析结果用规范的方式描述出来,作为今后各项工作的基础。,软件工程2,需求与需求分析,(2)编写初步用户使用手册,着重反映被开发软件的用户功能界面和用户使用的具体要求。(3)编写确认测试计划,作为今后确认和验收的依据。(4)修改完善项目开发计划。,软件工程2,需求与需求分析,4、需求分析评审系统定义的目标是否与用户的要求一致系统需求分析阶段提供的文档资料是否齐全文档中所有描述是否完整、清晰、准确反映用户要求与所有其他系统成分的重要接口是否都已经描述,软件工程2,需求与需求分析,四、需求分析的原则1、划分(可以把一个复杂问题按
5、功能进行分解并可逐层细化),软件工程2,需求与需求分析,2、抽象(捕获问题空间的“一般/特殊”或“特例”关系)3、投影(捕获问题空间的多维“视图”),软件工程2,结构化分析,一、结构化方法概述1、结构化方法结构化方法是软件工程产生后首先提出来的软件开发方法,它也是一种实用的开发方法,由结构化分析、结构化设计和结构化程序设计构成。,软件工程2,结构化分析,2、基本思想:该方法基于模块化的思想,采用“自顶向下,逐步求精”的技术对系统进行划分。分解和抽象是它的两个基本手段。,软件工程2,结构化分析,3、特点它是使用最早的开发方法,使用时间也最长是面向数据流进行需求分析的方法非常适合于数据处理类型的软
6、件的需求分析相应的支持工具多,发展较为成熟,软件工程2,结构化分析,4、优点:(1)简单、实用(2)适合于瀑布模型,易为开发者掌握(3)成功率较高(4)特别适合于数据处理中的应用,对其他领域的领域也基本适应,软件工程2,结构化分析,5、存在问题(1)对于规模较大的项目,特别复杂的应用不太适应(2)难于解决软件重用的问题(3)难于适应需求的变化(4)难于彻底解决维护问题,软件工程2,结构化分析,二、数据流图Data-flow diagram,DFD数据流图是SA方法中用于表示系统逻辑模型的一种工具,它以图形的形式描绘数据在系统中流动和处理的过程。结构化分析方法把任何软件系统都视作一个数据变换装置
7、,它接受各种形式的输入,通过变换产生各种形式的输出。,软件工程2,结构化分析,DFD就是一种描述数据变换的图形工具,是结构化分析方法最普遍采用的表示手段,但数据流图并不是结构化分析模型的全部,数据字典和小说明为数据流图提供了补充,并用以验证图形表示的正确性、一致性和完整性,三者共同构成了结构化分析的模型。,软件工程2,结构化分析,1、基本图形符号(数据流图的四个基本成分),方框,表示数据的源点或终点,圆或椭圆,表示加工,软件工程2,结构化分析,1、基本图形符号(数据流图的四个基本成分),双杠,表示数据存储,箭头,表示数据流,软件工程2,结构化分析,加工:是对数据进行处理的单元,它接受一定的输入
8、数据,对其进行处理,并产生输出。数据存储:信息的静态存储。,软件工程2,结构化分析,数据源或终点:表示系统和环境的接口,是系统之外的实体,可以是人、物或其他软件系统。其中,数据源是数据数据流的起点,终点是数据流的最终目的地。数据流:表示数据和数据流向。,软件工程2,结构化分析,2、实例:飞机票预订系统问题描述:旅行社凭订票单进行机票的预订,售票员查询航班目录文件,检查是否有满足预订条件的机票,如果有,那么将费用记入记帐文件,并准备机票,最后将帐单和机票交给旅客。,软件工程2,旅行社,旅客,预订机票,准备机票,记帐,订票单,航班目录,记帐文件,航班,机票,费用,帐单,飞机票预订系统的数据流图,软
9、件工程2,结构化分析,加工的命名规则:每个加工都要有名字,加工的名字最好使用动宾词组在分层的数据流图中,加工还应编号,顶层的加工名就是软件项目的名字,软件工程2,结构化分析,数据流:数据流表示数据和数据流向,通常由一组数据项组成。数据流可以从加工流向加工,也可以从数据源流向加工,从加工流向终点,还可以从加工流向数据存储文件,或从数据存储文件流向加工,一般流入或流出数据存储文件的数据流不需要标出名字,有数据存储的名字就可以了。,软件工程2,结构化分析,两个加工之间可以有多个数据流,这些数据流之间没有任何联系,数据流图也不表明它们的先后次序。数据流命名方法:数据流的名字用名词,或名词词组;命名时应
10、尽量使用现实系统中已有的名字;把现实环境中传递的一组数据(这组数据组成一个数据流)中最重要的那个数据的名字作为数据流的名字,软件工程2,结构化分析,数据存储文件的命名方法:和数据流的命名方法相似。数据存储指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。,软件工程2,结构化分析,数据源和终点:表示系统和环境的接口,是系统之外的实体,命名时应符合环境的真实情况。,软件工程2,结构化分析,3、数据流图的层次结构比较大的软件系统的数据流图有上百张,多至上千张。把整个系统画在一张图中,不仅凌乱,而且层次不清、难以理解,有必要把数据流图分成多层。数据流图之间用编号反映系统的层次结构。,软件工程2
11、,软件工程2,软件工程2,结构化分析,4、画数据流图(1)画系统的输入输出画系统的输入输出即先画系统的顶层数据流图。下图为飞机机票预订系统的顶层图:,软件工程2,旅行社,旅客,飞机票预订系统,订票单,机票,帐单,飞机票预订系统顶层图,软件工程2,结构化分析,(2)画系统内部 画系统内容即画下层数据流图。一般将层号从0开始编号,采用自顶向下,由外向内的原则。,软件工程2,结构化分析,5、实例:描述银行取款过程的数据流图取款过程的描述:储户凭借存折到银行取款,银行工作人员对存折的合法性进行检验,检验的过程需要读取银行的帐卡,如果不符合取款条件,那么将检验出的问题告知储户,如果符合取款条件,进行记帐
12、处理,将取款信息写入帐卡和存折,进行付款操作,将现金和存折交给储户。,软件工程2,描述银行取款过程的数据流图,软件工程2,结构化分析,三、数据字典数据字典以一种准确的和无二义的方式定义所有被加工引用的数据流和数据存储,通常包括三类内容:数据流、数据存储、数据项。,软件工程2,软件工程2,例如:存折,软件工程2,软件工程2,结构化分析,四、小说明小说明是用来描述加工的,在一个分层的数据流图中,上层的加工通过细化分解为下层的更具体的加工。原则上,只要说明了最底层的基本加工,就可以理解上层的加工,所以可以只描述基本加工。,软件工程2,结构化分析,小说明集中描述一个加工“做什么”,即加工逻辑,指用户对
13、这个加工的逻辑要求,这个加工的输入数据和输出数据的逻辑关系。目前小说明一般还是用自然语言、结构化自然语言、判定表和判定树等来描述。,软件工程2,结构化分析,1、结构化自然语言(结构化英语)结构化自然语言是介于形式语言和自然语言之间的一种语言,它虽然没有形式语言那样严格,但具有自然语言简单易懂的特点,同时又避免了自然语言结构松散的缺点。,软件工程2,结构化分析,结构化自然语言的语法通常分为内外两层,外层语法描述操作的控制结构,如顺序、选择、循环等,这些控制结构将加工中的各个操作连接起来。内层语法一般没有什么限制,就用自然语言描述。,软件工程2,例如:商店业务系统处理中“检查发货单”,软件工程2,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程
链接地址:https://www.desk33.com/p-235694.html