软件工程第三章需求分析.ppt
《软件工程第三章需求分析.ppt》由会员分享,可在线阅读,更多相关《软件工程第三章需求分析.ppt(63页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程第第3 3讲讲 需求分析需求分析第第3 3讲讲 需求分析需求分析n3.1 需求分析的目标与任务n3.2 需求分析的一般步骤n3.3 结构化分析描述方法n3.4 结构化分析方法SAn3.5 数据建模与分析n3.6 支持SA的工具S-Designorn3.7 需求分析规格说明书3.1 3.1 需求分析的目标与任务需求分析的目标与任务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,和和6 6项)占了项)占了44.1%44.1%
3、。这些数。这些数据突出地显示了软件产品需求在软件开发中的重要性。据突出地显示了软件产品需求在软件开发中的重要性。n需求分析任务需求分析任务准准确确地地定定义义未未来来系系统统的的目目标标,确确定定为为了了满足用户的需求系统必须满足用户的需求系统必须做什么做什么。将将需需求求分分析析成成果果以以“软软件件需需求求规规格格说说明明书书(SRS)(SRS)”的形式表达出来。的形式表达出来。需求分析的目标需求分析的目标软软件件需需求求分分析析的的目目标标是是准准确确理理解解用用户户的的要要求求,进进行行细细致致的的调调查查分分析析,将将用用户户的的非非形形式式化化的的要要求求转转化化为为完完整整的需求
4、定义(需求规格说明)。的需求定义(需求规格说明)。需需求求分分析析阶阶段段研研究究的的对对象象是是项项目目的的用用户户要要求求。要要求求可可能包括:能包括:功能要求功能要求性能要求性能要求运行环境要求运行环境要求数据要求数据要求可靠性要求可靠性要求安全保密要求安全保密要求用户界面要求用户界面要求可移植性需求可移植性需求可复用性需求可复用性需求外部接口要求外部接口要求资源使用要求资源使用要求软件成本消耗与开发进度要求软件成本消耗与开发进度要求其其它它非非功功能能性性的的限限制制和和要要求求,如如法法规规需需求求、质质量量标标准准、验验收收标准、可维护性要求等标准、可维护性要求等功能需求n描述系统
5、所预期的功能和服务,包括功能描述,输入和输出,异常等。n全面,一致,准确 系统能提供适当的文档浏览器供用户在线阅读各类文档。性能需求n应该尽量以可量化、可验证的方式表示。速度每秒处理的事务数 事件响应时间 屏幕刷新频率规模 内存需求量 最大并发响应量 压缩率 可靠性需求n产品在规定的条件下和规定的时间内完成规定功能的能力 失败平均时间无效概率平均失效间隔时间系统对所有输入的磁卡均无法工作,软件必须重启失效率1次/1000天在磁卡未损坏情况下,磁条中的数据无法读出失效率1次/1000个交易可移植性n可移植性是指与软件可从某一环境转移到另一环境的能力有关的一组属性目标系统,数据库依赖于目标的语句比
6、例接口需求n如果新系统需要与已存在的系统一起工作,则已存在的系统接口必须被精确的定义。常见的有两种接口:n过程接口n数据结构接口需求案例alipay_payto.aspn%nINTERFACE_URL=https:/ creatAlipayItemURLnPublic Function creatAlipayItemURL(service,subject,body,out_trade_no,price,quantity,seller_email,show_url,receive_name,receive_address,receive_zip,receive_phone,receive_mob
7、ile,buyer_email,discount,logistics_fee_1,logistics_payment_1,logistics_type_1)nn需求分析的主要完成者及其相关角色需求分析的主要完成者及其相关角色系统分析员系统分析员用户用户管理人员管理人员软件开发人员软件开发人员 (1)(1)需求获取需求获取:需求引出、需求引出、问题识别问题识别被开发软件做什么、做到什么程度。被开发软件做什么、做到什么程度。(2)(2)需求提炼需求提炼:分析建模:分析建模主要有主要有2 2类需求:功能性需求和非功能性需求类需求:功能性需求和非功能性需求(3)(3)需求描述需求描述:编写文档:编写文
8、档编编写写软软件件需需求求规规格格说说明明书书SRS SRS(Software Software Requirement Requirement SpecificationSpecification)无无二二义义性性、完完整整性性、可可验验证证性性、一一致致性性、可可修修改改性性、可可跟跟踪踪性、性、非计算机人员能理解、注释非计算机人员能理解、注释编写初步用户手册、验收测试计划、修改软件计划编写初步用户手册、验收测试计划、修改软件计划(4)(4)需求验证需求验证:需求分析评审。:需求分析评审。一致性、现实性、完整性、有效性一致性、现实性、完整性、有效性 3.2 3.2 需求分析的一般步骤需求分
9、析的一般步骤需求获取的复杂性需求获取的复杂性 交流障碍交流障碍用户意见不统一用户意见不统一错误的要求错误的要求提供的信息不完整、不清楚提供的信息不完整、不清楚分析人员或客户理解错误分析人员或客户理解错误需求永远不会稳定需求永远不会稳定(1)需求获取)需求获取需求获取的基本方法需求获取的基本方法 建建立立由由用用户户、分分析析员员、领领域域专专家家组组成成的的联联合合分分析小组。析小组。调查研究调查研究。这是获取需求的最主要的方法。这是获取需求的最主要的方法。分析整理和确认需求分析整理和确认需求。(1)需求获取)需求获取调查研究的方式调查研究的方式 按按用用户户的的不不同同层层次次,分分别别召召
10、开开调调查查会会,了了解解用用户户对对待待开开发系统的想法和建议。发系统的想法和建议。向用户领域专家或在关键岗位上工作的人个别咨询。向用户领域专家或在关键岗位上工作的人个别咨询。实地考察,跟踪现场业务流程。实地考察,跟踪现场业务流程。查阅与待开发系统有关的资料。查阅与待开发系统有关的资料。使用各种调查工具,如数据流图、系统流程图等。使用各种调查工具,如数据流图、系统流程图等。建立原型系统减少分析风险建立原型系统减少分析风险(1)需求获取)需求获取n自己的经验自己的经验 (1)(1)调研前做好必要的相关背景知识准备调研前做好必要的相关背景知识准备(2)(2)拟出一份详细的问题清单拟出一份详细的问
11、题清单可能每天都在改变可能每天都在改变。(3)(3)从从业业务务流流程程入入手手,引引导导客客户户根根据据自自己己的的需需要要进进行分析和介绍行分析和介绍(4)(4)通过用户获取重要的原始资料(如表单,文件)通过用户获取重要的原始资料(如表单,文件)(5)(5)善于聆听,不要强加自己的任何假设善于聆听,不要强加自己的任何假设(2)分析建模)分析建模n主要目标:主要目标:(1)(1)描述用户的需求;描述用户的需求;(2)(2)建立软件设计的基础;建立软件设计的基础;(3)(3)定义可用于软件确认测试的依据。定义可用于软件确认测试的依据。n2 2种分析模型种分析模型结构化分析模型结构化分析模型面向
12、对象分析模型面向对象分析模型n结构化分析模型结构化分析模型n面向数据流进行需求分析的方法n结构化分析方法适合于数据处理类型软件的需求分析n具体来说,结构化分析方法就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止。3.3 3.3 结构化分析方法结构化分析方法n 结构化分析模型结构化分析模型3.3.1数 据 流 图 DFD(Data Flow Diagram)数据流:表示被加工数据及其流向。加工(含编号):把输入数据变换成输出数据。数据存储:保存数据。数据源点或终点:信息生产者(数据源点)和信息消费者(数据终点)。源点源点终点终点
13、1A2B3C1Fcefdba数据流图示意图数据流图示意图b2.12.22.3de各班学生用书表各班学生用书表教材存量表教材存量表n数据流图实例数据流图实例例:从用户调查中了解到某高校向学生销售教材的手续是:先由系办公室的张秘书开一购书证明,学生凭证明找教材科的王会计开购书发票,向李出纳员交付书款,然后到书库找赵保管员领书。注意:注意:数据源数据源数据终点数据终点没有输出!没有输出!加工加工加工加工没有输入!没有输入!加工加工加工加工数据源数据源数据终点数据终点数据源数据源数据存储数据存储数据源数据源数据存储数据存储数据存储数据存储数据存储数据存储数据流必须数据流必须起于且起于且/或或止于加工止
14、于加工加工至少有加工至少有一个输入数一个输入数据流和一个据流和一个输出数据流输出数据流3.3.2 E-R3.3.2 E-R模型模型 E-R E-R E-R E-R模型模型模型模型不涉及数据世界的数据结构、存取路不涉及数据世界的数据结构、存取路不涉及数据世界的数据结构、存取路不涉及数据世界的数据结构、存取路径、存取效率等问题。它径、存取效率等问题。它径、存取效率等问题。它径、存取效率等问题。它可以转换成数据库中的可以转换成数据库中的可以转换成数据库中的可以转换成数据库中的数据模型数据模型数据模型数据模型。数据分析建模过程包括:数据分析建模过程包括:概念设计概念设计ER模型模型/EER模型模型逻辑
15、设计逻辑设计把把ER模型模型/EER模型转换成关系模型,用模型转换成关系模型,用SQL表示表示SQL的三种用途的三种用途DDL数据定义数据定义 DML数据操纵数据操纵 DCL数据控制数据控制物理设计物理设计E-RE-R图中表示实体联系的符号如下:图中表示实体联系的符号如下:例例例例:在教学管理中,一个教师可以教零门、在教学管理中,一个教师可以教零门、在教学管理中,一个教师可以教零门、在教学管理中,一个教师可以教零门、一门或多门课程,每位学生也需要学习几门课一门或多门课程,每位学生也需要学习几门课一门或多门课程,每位学生也需要学习几门课一门或多门课程,每位学生也需要学习几门课程。因此,教学管理中
16、涉及的对象程。因此,教学管理中涉及的对象程。因此,教学管理中涉及的对象程。因此,教学管理中涉及的对象(实体)有实体)有实体)有实体)有学学学学生、教师和课程。生、教师和课程。生、教师和课程。生、教师和课程。n n进一步,要确定属性。例如,进一步,要确定属性。例如,1.1.学生具有学号、姓名、性别、年龄、学生具有学号、姓名、性别、年龄、专业(其它略)等属性;专业(其它略)等属性;2.2.课程具有课程号、课程名、学分、课程具有课程号、课程名、学分、学时数等属性;学时数等属性;3.3.教师具有职工号、姓名、年龄、职教师具有职工号、姓名、年龄、职称等属性称等属性;3.3.3 3.3.3 数据词典数据词
17、典DDDD(Data DictionaryData Dictionary)4 4类类数数据据:数数据据项项、数数据据流流、数数据据存存储储、加加工工处处理理精精确确地地、严严格格地地定定义义并并以以字字典典式式顺顺序序将将它它们们组组织织成成词词条条,使使得得用用户户、分分析析员员和和开开发发人人员员有有共共同的理解。同的理解。可可以以使使用用=、+、可可选选、重重复复、(可可有有/可可无无)等符号描述。等符号描述。数据词典的词条中应包含以下信息:数据词典的词条中应包含以下信息:名称名称 别名或编号别名或编号 描述:组成、组织结构描述:组成、组织结构 类型、长度、取值范围等类型、长度、取值范围
18、等 何处使用:使用该词条的加工何处使用:使用该词条的加工 。例例 发票发票数据流名:发票数据流名:发票 别名:无别名:无 组组成成:发发票票=学学号号+姓姓名名+书书号号+单价单价+数量数量+总价总价+书费合计书费合计 何何处处使使用用:由由“审审查查并并开开发发票票”产生;由产生;由“开领书单开领书单”接收接收例例 书费合计书费合计数据项名:书费合计数据项名:书费合计 别名:无别名:无 类型:类型:flaotflaot 取取 值值 范范 围围:00.00-00.00-99.9999.99例例 学号学号数据项名:学号数据项名:学号 别名:无别名:无 组成:学号组成:学号=8=8数字字符数字字符
19、88 取取 值值 范范 围围:20000001-20000001-2999999929999999数据词典数据词典实例实例数据存储名数据存储名:库存记录库存记录 别名别名:无无 简述简述:存放库存所有可供货存放库存所有可供货 物的信息物的信息 组成:货物名称编号生产厂家单组成:货物名称编号生产厂家单价库存量价库存量 组织方式:索引文件,以货物编号为关组织方式:索引文件,以货物编号为关键字键字 查询要求查询要求:要求能够立即查询要求能够立即查询 例例 库存记录库存记录n加工说明加工说明/处理描述处理描述加工说明描述了数据加工的输入,实现加工的过程以及产生的输出。加工说明指明了加工的约束和限制,与
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 第三 需求 分析
限制150内