03_需求分析.pdf

上传人:qwe****56 文档编号:69622744 上传时间:2023-01-07 格式:PDF 页数:36 大小:1.57MB
返回 下载 相关 举报
03_需求分析.pdf_第1页
第1页 / 共36页
03_需求分析.pdf_第2页
第2页 / 共36页
点击查看更多>>
资源描述

《03_需求分析.pdf》由会员分享,可在线阅读,更多相关《03_需求分析.pdf(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、软件工程软件工程朴 勇朴 勇大连理工大学软件学院email:第第3章章 需求分析需求分析第第3章章 需求分析需求分析 为了开发出真正满足用户需求的软件产品,首先必为了开发出真正满足用户需求的软件产品,首先必须知道用户的需求。须知道用户的需求。传统的软件工程方法学采传统的软件工程方法学采 传统的软件工程方法学采传统的软件工程方法学采用用结构化分析结构化分析(Structured Analysis,SA)技术完成需求分析工作技术完成需求分析工作。2010/9/14大连理工大学软件学院2需求分析的任务需求分析的任务 3.1 需求分析的任务需求分析的任务 3.2 与用户沟通获取需求的方法与用户沟通获取

2、需求的方法3.与用户沟通获取需求的方法与用户沟通获取需求的方法 3.3 分析建模与规格说明分析建模与规格说明 3.4 实体实体联系图联系图 3 5 数据规范化数据规范化 3.5 数据规范化数据规范化 3.6 状态转换图状态转换图 3.7 其它图形工具其它图形工具 3 8 验证软件需求验证软件需求 3.8 验证软件需求验证软件需求 3.9 小结小结2010/9/14大连理工大学软件学院3概述概述概述概述 需求分析是需求分析是发现、求精、建模、规格说明和复审发现、求精、建模、规格说明和复审的的过程过程过程过程。获取(当前的情况获取(当前的情况和和需要解决需要解决的问题)的问题)分析分析编写规格说明

3、编写规格说明反复求精反复求精多次细化多次细化 编写规格说明编写规格说明 需求验证需求验证(一份付出,十份收获一份付出,十份收获)多次细化多次细化 工具:工具:IBM Rational RequisitePro、Borland 2010/9/14大连理工大学软件学院4CaliberRM、IBM Rational DOORS(2008)方法:建立模型,便于理解。方法:建立模型,便于理解。模型模型,对对事物做出的事物做出的一一种抽象种抽象,是无是无歧义歧义的描述的描述。模型模型,对对事物做出的种抽象事物做出的种抽象,是无是无歧义歧义的描述的描述。模型由一组图形符号和组织这些符号的规则组成。模型由一组

4、图形符号和组织这些符号的规则组成。结构化分析就是一种建立模型的活动,通常建立结构化分析就是一种建立模型的活动,通常建立数据模型、功能模型和行为模型数据模型、功能模型和行为模型。用分析模型表示软件需求,然后要给出准确的软用分析模型表示软件需求,然后要给出准确的软件需求规格说明。件需求规格说明。模型既是软件设计的基础模型既是软件设计的基础也是编写软件规格说也是编写软件规格说 模型既是软件设计的基础模型既是软件设计的基础,也是编写软件规格说也是编写软件规格说明的基础。明的基础。2010/9/14大连理工大学软件学院5文本的需求文本的需求文本的需求文本的需求需求陈述需求陈述2010/9/14大连理工大

5、学软件学院6 在分析软件需求和编写软件规格说明的过程中,在分析软件需求和编写软件规格说明的过程中,软软件开发者和软件用户件开发者和软件用户都起着关键的都起着关键的、必不可少的作必不可少的作件开发者和软件用户件开发者和软件用户都起着关键的都起着关键的、必不可少的作必不可少的作用。用。用户与开发者之间需要通信、沟通的内容非常多,用户与开发者之间需要通信、沟通的内容非常多,在双方交流信息的过程中很容易出现误解或遗漏在双方交流信息的过程中很容易出现误解或遗漏在双方交流信息的过程中很容易出现误解或遗漏在双方交流信息的过程中很容易出现误解或遗漏,也可能存在二义性。,也可能存在二义性。不仅在整个需求分析过程

6、中应该采用行之有效的通信技术,不仅在整个需求分析过程中应该采用行之有效的通信技术,集中精力过细工作集中精力过细工作集中精力过细工作集中精力过细工作,对需求分析的结果对需求分析的结果(分析模型和规格说明分析模型和规格说明)必须严格审查。必须严格审查。2010/9/14大连理工大学软件学院7 尽管目前存在许多不同的结构化分析方法,但是,尽管目前存在许多不同的结构化分析方法,但是,所有这些分析方法都遵守下述所有这些分析方法都遵守下述准则准则。所有这些分析方法都遵守下述所有这些分析方法都遵守下述准则准则。必须理解和表示问题的信息域,根据这条准则应该建立必须理解和表示问题的信息域,根据这条准则应该建立数

7、数据模型据模型据模型据模型。必须定义软件应完成的功能,这条准则要求建立必须定义软件应完成的功能,这条准则要求建立功能模型功能模型。必须表示作为外部事件结果的软件行为,这条准则要求建立必须表示作为外部事件结果的软件行为,这条准则要求建立行为模型行为模型。行为模型行为模型必须对描述信息、功能和行为的模型进行分解,用必须对描述信息、功能和行为的模型进行分解,用层次层次的的方式展示细节方式展示细节业务业务 技术技术方式展示细节方式展示细节。分析过程应该从分析过程应该从要素信息移向实现细节要素信息移向实现细节。业务业务 技术技术逻辑 物理逻辑 物理要素要素 细节细节2010/9/14大连理工大学软件学院

8、8要素要素 细节细节3 1 需求分析的任务需求分析的任务3.1 需求分析的任务需求分析的任务系统的综合要求系统的综合要求 系统的综合要求系统的综合要求数据要求数据要求功能需求功能需求性能需求性能需求性能需求性能需求可靠性和可用性需求可靠性和可用性需求出错处理需求出错处理需求出错处理需求出错处理需求接口需求接口需求约束约束约束约束逆向需求(不应该做的)逆向需求(不应该做的)2010/9/14大连理工大学软件学院9将来可能提出的要求将来可能提出的要求需求分析的任务需求分析的任务(2)需求分析的任务需求分析的任务(2)系统的数据要求系统的数据要求任何软件系统本质上都是信息处理系统任何软件系统本质上都

9、是信息处理系统任何软件系统本质上都是信息处理系统任何软件系统本质上都是信息处理系统建立数据模型(建立数据模型(E-R图)图)数据字典数据字典层次方框图层次方框图层次方框图层次方框图 Warnier图图2010/9/14大连理工大学软件学院10需求分析的任务需求分析的任务(3)需求分析的任务需求分析的任务(3)模模 系统的逻辑系统的逻辑模模型型数据流图数据流图、E-R图图、状态转换图状态转换图、数据字典数据字典、数据流图数据流图、E R图图、状态转换图状态转换图、数据字典数据字典、算法描述算法描述修正系统的开发计划修正系统的开发计划 修正系统的开发计划修正系统的开发计划2010/9/14大连理工

10、大学软件学院113 2 与用户沟通获取需求的方法与用户沟通获取需求的方法3.2 与用户沟通获取需求的方法与用户沟通获取需求的方法软件需求分析总是从方或多方之间的通信始软件需求分析总是从方或多方之间的通信始 软件需求分析总是从软件需求分析总是从两两方或多方之间的通信方或多方之间的通信开开始始。为了达成共识,必须要沟通。为了达成共识,必须要沟通。从开始通信到真正相互理解的道路通常是充满坎坷的。从开始通信到真正相互理解的道路通常是充满坎坷的。良好的通信技术有助于加快理解的过程良好的通信技术有助于加快理解的过程。用户不懂技术用户不懂技术;开发开发良好的通信技术有助于加快理解的过程良好的通信技术有助于加

11、快理解的过程。访谈访谈访谈访谈(或称为会谈或称为会谈)是最早开始运用的是最早开始运用的获取获取(不是分析不是分析)用用用户不懂技术用户不懂技术;开发开发者不懂业务;沟通需要桥梁。者不懂业务;沟通需要桥梁。访谈访谈(或称为会谈或称为会谈)是最早开始运用的是最早开始运用的获取获取(不是分析不是分析)用用户需求的技术,也是迄今为止仍然广泛使用的主要的需求户需求的技术,也是迄今为止仍然广泛使用的主要的需求分析技术分析技术分析技术分析技术。2010/9/14大连理工大学软件学院12领域分析领域分析了解了解领域专家领域专家领域书籍领域书籍领域分析领域分析、了解了解背景、学习术语背景、学习术语领域书籍领域书

12、籍现有软件及其文档现有软件及其文档其它任何材料,如网站等其它任何材料,如网站等访谈访谈正式正式访谈访谈非正式非正式(休闲聊天、面对面休闲聊天、面对面)观察观察(简单简单)用用简易应用规格说明技术简易应用规格说明技术(简单简单)用用例分析例分析(头脑风暴头脑风暴)原型化原型化2010/9/14大连理工大学软件学院13 访谈有两种基本形式,分别是访谈有两种基本形式,分别是正式正式的和的和非正式非正式的访谈。的访谈。正式:系统分析员将提出一些事正式:系统分析员将提出一些事先准备好的具体问题。先准备好的具体问题。如,询问客户公司销售的商品种如,询问客户公司销售的商品种类、雇用的销售人员数目以及信息反馈

13、时间应该多快等。类、雇用的销售人员数目以及信息反馈时间应该多快等。在非正式的访谈中,将提出一些可以自由回答的开在非正式的访谈中,将提出一些可以自由回答的开放性问题,以鼓励被访问的人员表达自己的想法,放性问题,以鼓励被访问的人员表达自己的想法,例如,询问用户为什么对目前正在使用的系统感到例如,询问用户为什么对目前正在使用的系统感到2010/9/14大连理工大学软件学院14不满意。不满意。访谈访谈访谈访谈 调查大量人员的意见时,分发调查大量人员的意见时,分发调查表调查表是一是一个十分有效的做法。个十分有效的做法。在对用户进行访谈的在对用户进行访谈的在对用户进行访谈的在对用户进行访谈的过程中使用情景

14、分析过程中使用情景分析技术往往非常有效技术往往非常有效。技术往往非常有效技术往往非常有效。情景分析情景分析就是对用户就是对用户运用运用目标系统解决某目标系统解决某运用运用目标系统解决某目标系统解决某个具体问题的方法和个具体问题的方法和结析结析2010/9/14大连理工大学软件学院15结结果进行分果进行分析析。面向数据流自顶向下求精面向数据流自顶向下求精面向数据流自顶向下求精面向数据流自顶向下求精 数据决定了需要的处理和算法,是需求分数据决定了需要的处理和算法,是需求分析的出发点析的出发点析的出发点析的出发点。结构化分析方法结构化分析方法面向数据流的自顶向面向数据流的自顶向结构化分析方法结构化分

15、析方法面向数据流的自顶向面向数据流的自顶向下的逐步求精进行需求分析的方法。下的逐步求精进行需求分析的方法。高层数据流图高层数据流图从输出端溯从输出端溯 从输出端从输出端回回溯溯 并逐步细节化并逐步细节化2010/9/14大连理工大学软件学院16并逐步细节化并逐步细节化面向数据流自顶向下求精面向数据流自顶向下求精面向数据流自顶向下求精面向数据流自顶向下求精面向数据流自顶向下求精过程2010/9/14大连理工大学软件学院17简易应用规格说明方法基本准则简易应用规格说明方法基本准则简易应用规格说明方法基本准则简易应用规格说明方法基本准则 在中立地点举行由开发者和用户双方出席的会议。在中立地点举行由开

16、发者和用户双方出席的会议。制定准备制定准备会会议和参加议和参加会会议的规则。议的规则。会会会会 提出一个议事日程,这个日程应该足够正式,以便能够涵提出一个议事日程,这个日程应该足够正式,以便能够涵盖所有要点盖所有要点;同时这个日程又应该足够非正式同时这个日程又应该足够非正式,以便鼓励以便鼓励盖所有要点盖所有要点;同时这个日程又应该足够非正式同时这个日程又应该足够非正式,以便鼓励以便鼓励自由思维。自由思维。由由一一个个“协调人协调人”来主持会议来主持会议 由个由个协调人协调人来主持会议来主持会议。使用一种“定义机制”(例如,工作表、图表等)。使用一种“定义机制”(例如,工作表、图表等)。目标是目

17、标是标识问题标识问题提出解决方案要素提出解决方案要素商讨不同的方法商讨不同的方法以以 目标是目标是标识问题标识问题、提出解决方案要素提出解决方案要素、商讨不同的方法商讨不同的方法以以及在有利于实现目标的氛围中指定及在有利于实现目标的氛围中指定初步的需求初步的需求。2010/9/14大连理工大学软件学院18快速建立软件原型快速建立软件原型快速建立软件原型快速建立软件原型 构建原型的要点是,它应该实现用户看得见的功能构建原型的要点是,它应该实现用户看得见的功能(例如例如屏幕显示或打印报表屏幕显示或打印报表)省略目标系统的省略目标系统的“隐含隐含”功能功能(例例屏幕显示或打印报表屏幕显示或打印报表)

18、,省略目标系统的省略目标系统的隐含隐含功能功能(例例如修改文件如修改文件)。快速原型应该具备的第一个特性是“快速原型应该具备的第一个特性是“快速快速”。”。快速原型应该具备的第二个特性是“快速原型应该具备的第二个特性是“容易修改容易修改”。”。构建原型的方法和工具构建原型的方法和工具4GL工具工具可重用的构件可重用的构件形式形式 构建原型的方法和工具构建原型的方法和工具:4GL工具工具、可重用的构件可重用的构件、形式形式化规格说明和原型环境。化规格说明和原型环境。2010/9/14大连理工大学软件学院193 3 分析建模与规格说明分析建模与规格说明3.3 分析建模与规格说明分析建模与规格说明

19、分析建模分析建模 结构化分析实质是结构化分析实质是一一种创建模型的活动种创建模型的活动。通过需求通过需求结构化分析实质是种创建模型的活动结构化分析实质是种创建模型的活动。通过需求通过需求分析而建立的模型必须达到下述的三个基本目标。分析而建立的模型必须达到下述的三个基本目标。描述用户的需求描述用户的需求 描述用户的需求描述用户的需求。为软件设计工作奠定基础。为软件设计工作奠定基础。定义一组需求,一旦开发出软件产品之后,就可以用这组需求为标准来验收该产品。定义一组需求,一旦开发出软件产品之后,就可以用这组需求为标准来验收该产品。2010/9/14大连理工大学软件学院20处处理理处处理理规规规规数数

20、数数据据据据数据数据数据数据流图流图流图流图E E-R R图图图图规规规规格格格格据据据据对对对对象象象象数据数据数据数据字典字典字典字典流图流图流图流图图图图图描描描描象象象象说说说说明明明明字典字典字典字典述述述述明明明明状态转换图状态转换图状态转换图状态转换图控制规格说明控制规格说明控制规格说明控制规格说明控制规格说明控制规格说明控制规格说明控制规格说明2010/9/14大连理工大学软件学院21分析模型的结构软件需求规格说明软件需求规格说明软件需求规格说明软件需求规格说明 软件需求规格说明软件需求规格说明分析阶段的最终成果。分析阶段的最终成果。软件需求规格说明的框架软件需求规格说明的框架

21、。软件需求规格说明的框架软件需求规格说明的框架。见见3 软件需求规格说明书框架软件需求规格说明书框架.doc 自然语言:容易书写、容易理解自然语言:容易书写、容易理解 形式化方法形式化方法:无歧义无歧义、明确明确形式化方法形式化方法:无歧义无歧义、明确明确2010/9/14大连理工大学软件学院223 4 实体实体联系图联系图3.4 实体实体联系图联系图 数据模型包含三种相互关联的信息:数据模型包含三种相互关联的信息:数据数据对象对象、描述数据对象、描述数据对象属性属性及数据对象彼此及数据对象彼此间相互连接的间相互连接的关系关系间相互连接的间相互连接的关系关系。2010/9/14大连理工大学软件

22、学院23ER模型表示方法模型表示方法ER模型表示方法模型表示方法 ER图中包含图中包含实体实体(即数据对象即数据对象)、关系和属、关系和属性性三种基本三种基本成分成分性性三种基本三种基本成分成分。2010/9/14大连理工大学软件学院24课程课号 Characters(6)学生学号()选课0,n10,n课号课名学时教员地点Characters(6)Variable characters(40)IntegerTYPE_NAMEVariable characters(30)学号姓名性别班级电话Characters(8)TYPE_NAMEIntegerVariable characters(30)V

23、i blh(15)地点时间Variable characters(30)Variable characters(30)电话 Variable characters(15)Powerdesigner生生成成Powerdesigner生成生成课程g成成的概念模型的概念模型Powerdesigner生成生成的逻辑模型的逻辑模型课号课名学时教员Characters(6)Variable characters(40)IntegerTYPE_NAME学生学号姓名性别Characters(8)TYPE_NAMEInteger1,11,1地点时间Variable characters(30)Variable

24、characters(30)班级电话gVariable characters(30)Variable characters(15)选课1,110 n选课0 n1,1选课学号课号成绩Characters(8)Characters(6)10,n0,n成绩 Integer2010/9/14大连理工大学软件学院25ER图的建立图的建立ER图的建立图的建立 数据库原理详细介绍了数据库原理详细介绍了ER图的画法。图的画法。ER图绘制时最容易犯的问题图绘制时最容易犯的问题不能把握实不能把握实 ER图绘制时最容易犯的问题图绘制时最容易犯的问题:不能把握实不能把握实体间的静态和动态关系体间的静态和动态关系。体间

25、的静态和动态关系体间的静态和动态关系 一般来说,静态关系都需要在模型中体现,如一般来说,静态关系都需要在模型中体现,如学生的选课情况。学生的选课情况。动态关系要视情况而定动态关系要视情况而定。动态关系要视情况而定动态关系要视情况而定。原则是只对需要做持久化的数据建模。原则是只对需要做持久化的数据建模。2010/9/14大连理工大学软件学院263 5 数据规范化数据规范化3.5 数据规范化数据规范化第范式第范式 第第一一范式范式 每个属性值都必须是原子值,即仅仅是一个简单值而每个属性值都必须是原子值,即仅仅是一个简单值而不含内部结构不含内部结构 第第二二范式范式第范式第范式 满足第一范式的条件,

26、而且每个非关键字属性都由整满足第一范式的条件,而且每个非关键字属性都由整个关键字决定个关键字决定(而不是由关键字的而不是由关键字的一一部分来决定部分来决定)个关键字决定个关键字决定(而不是由关键字的部分来决定而不是由关键字的部分来决定)第三范式第三范式符合第范式条件符合第范式条件而且个非关键字属性不能仅仅而且个非关键字属性不能仅仅 符合第符合第二二范式条件范式条件,而且而且一一个非关键字属性不能仅仅个非关键字属性不能仅仅是对另一个非关键字属性的进一步描述(即一个非关是对另一个非关键字属性的进一步描述(即一个非关键字属性值不依赖于另个非关键字属性值键字属性值不依赖于另个非关键字属性值)2010/

27、9/14大连理工大学软件学院27键字属性值不依赖于另键字属性值不依赖于另一一个非关键字属性值个非关键字属性值)3 6 状态转换图状态转换图3.6 状态转换图状态转换图 状态转换图状态转换图(状态图状态图)通过描绘系统的状态通过描绘系统的状态及引起系统状态转换的事件及引起系统状态转换的事件来表示系统来表示系统及引起系统状态转换的事件及引起系统状态转换的事件,来表示系统来表示系统的的行为行为。状态是任何可以被观察到的系统行为模式。状态是任何可以被观察到的系统行为模式。事件事件是在某个特定时刻发生的事情,引起是在某个特定时刻发生的事情,引起系统从一个状态转换到另一个状态的转换系统从一个状态转换到另一

28、个状态的转换系统从一个状态转换到另一个状态的转换系统从一个状态转换到另一个状态的转换。2010/9/14大连理工大学软件学院28状态转换状态转换图图状态转换状态转换图图2010/9/14大连理工大学软件学院29号码验证号码验证无效号码无效号码无效号码无效号码号码验证号码验证有效号码有效号码电话系统的状态图2010/9/14大连理工大学软件学院303 7 其他图形工具其他图形工具3.7 其他图形工具其他图形工具 Warnier图图2010/9/14大连理工大学软件学院31其他图形工具其他图形工具(2)其他图形工具其他图形工具(2)IPO图图 IPO图是输入、处理、输出图的简称图是输入、处理、输出

29、图的简称 左边框中列出有关的输入左边框中列出有关的输入 左边框中列出有关的输入左边框中列出有关的输入 中间框中列出主要的处理中间框中列出主要的处理 右边框中列出产生的输出右边框中列出产生的输出 处处理理的顺序暗示了执行的顺序的顺序暗示了执行的顺序处的顺序暗示了执行的顺序处的顺序暗示了执行的顺序 箭头指出数据通信的情况箭头指出数据通信的情况2010/9/14大连理工大学软件学院32其他图形工具其他图形工具(3)其他图形工具其他图形工具(3)IPO图图2010/9/14大连理工大学软件学院333 8 验证软件需求验证软件需求3.8 验证软件需求验证软件需求 验证需求的方面验证需求的方面一一致性致性

30、:任何任何一一条需求不能与其他需求条需求不能与其他需求致性致性:任何条需求不能与其他需求任何条需求不能与其他需求相互矛盾相互矛盾 完整性:包含用户需要的每一个功能或完整性:包含用户需要的每一个功能或性能性能性能性能 实现性:硬件、软件技术都可以实现。实现性:硬件、软件技术都可以实现。有效性有效性确实能够解决用户面对的问题确实能够解决用户面对的问题 有效性有效性:确实能够解决用户面对的问题确实能够解决用户面对的问题。2010/9/14大连理工大学软件学院34需求验证的方法需求验证的方法需求验证的方法需求验证的方法大规模的项大规模的项 验证需求的一致性验证需求的一致性 自然语言书写自然语言书写:人

31、工技术审查人工技术审查目比较困难,多采用风险目比较困难,多采用风险模型挑选重模型挑选重自然语言书写自然语言书写:人工技术审查人工技术审查 形式化描述:软件工具形式化描述:软件工具模型挑选重模型挑选重要部分进行要部分进行详细审查详细审查。验证需求的现实性验证需求的现实性 开发经验开发经验仿真或性能模拟技术仿真或性能模拟技术详细审查详细审查。开发经验开发经验、仿真或性能模拟技术仿真或性能模拟技术 验证需求的完整性和有效性验证需求的完整性和有效性 用户验证用户验证原型原型2010/9/14大连理工大学软件学院35 原型原型作业作业作业作业 见“软件工程习题”文档要求。见“软件工程习题”文档要求。2010/9/14大连理工大学软件学院36

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 财经金融

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁