您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 软件工程课件-2第二章软件要求定义
软件工程任课教师:程丽计算机与信息学院第二章软件要求定义2.1可行性研究2.2项目开发计划2.3软件需求分析第二章软件要求定义课程的任务、目的和基本要求–了解可行性研究的任务–了解可行性研究的任务–理解并掌握可行性研究的步骤–学会使用系统流程图设计具体问题–掌握成本—效益分析方法–了解需求分析的特点、原则、任务和方法第二章软件要求定义2.1可行性研究2.1.1可行性研究的任务2.1.2可行性研究的具体步骤2.1.3系统流程图2.1.4成本-效益分析2.1.5可行性研究的文档第二章软件要求定义2.1可行性研究可行性研究的目的:提出问题→有无解决的办法→是否值得去做技术可行性:确定技术风险,项目实现的可能性经济可行性:考虑投入—产出,市场前景,经营策略社会可行性:考虑合同、责任、侵权、用户组织的管理模式及规范问题第二章软件要求定义2.1.1可行性研究的任务确定项目规模和目标研究正在运行的系统-系统流程图建立新系统的高层逻辑模型-简单数据流图导出和评价各种方案推荐可行的方案编写可行性研究报告,交使用部门审查第二章软件要求定义2.1.2可行性研究的具体步骤用图形符号描述项目处理流程、范围和功能处理输入/输出连接换页连接数据流文档联机存储磁盘显示人工输入人工操作辅助操作通信链路第二章软件要求定义2.1.3系统流程图例子:人工系统计算工资和编制报表工资处理过程:每月末教师把他们当月实际授课时数登记在课时表上,由各系汇总后交给财务科。职工把他们当月完成承包任务的情况登记在任务表上,汇总后交给财务科。会计根据这些原始数据计算每名教职工的工资,编制工资表、工资明细表。然后,把记有每名教职工工资总额的工资表报送银行,由银行把钱打到每名教职工的工资存折上,同时把工资明细表发给每名教职工。教师课时表任务表职工工资支付系统工资表工资明细表银行教师职工有形效益:货币的时间价值、投资回收期、纯收入效益表现无形效益:从性质上、心理上进行衡量第二章软件要求定义2.1.4成本-效益分析货币的时间价值F=P*(1+n*i)(不计复利)P=F/(1+n*i)i----利率P---现在值(元)n----年数F---将来值(元)第二章软件要求定义2.1.4成本-效益分析第二章软件要求定义2.1.4成本-效益分析投资回收期使累计的经济效益等于最初投资费用所需的时间投资回收期越短,就越快获得利润纯收入整个生存周期之内的累计经济效益(折合成现在值)与投资之差例子:计算工资和编制报表系统经济可行性分析假设现有系统每个月由两名会计用半个月时间计算工资和编制报表,一名会计每个月的工资约2000元,因此,每年为此项工作花费的人工费约2.4万元。假设开发系统需要4人月,每人月8000元,购买硬件需要1万元,开发成本总计4.2万元。系统开发后,每月需要人力和物资250元,每年维护费1000元,全年合计投资4000元。开发成本人力(4人月,8000元/人月)3.2万元购买硬件1.0万元总计4.2万元新系统的运行费用人力和物资(250元/月)0.3万元/年维护0.1万元/年总计0.4万元/年现有系统的运行费用2.4万元/年每年节省的费用2.0万元年节省现在值(以5%计算)累计现在值120000元19047.62元19047.62元220000元18181.82元37229.44元320000元17391.30元54620.74元投资回收期2.28年纯收入12620.74元第一年现在值:20000/(1+0.05*1)=19047.62(元)第二年现在值:20000/(1+0.05*2)=18181.82(元)第三年现在值:20000/(1+0.05*3)=17391.30(元)第二年累计现在值:19047.62+18181.82=37229.44(元)第三年累计现在值:37229.44+17391.30=54620.74(元)投资回收期:2.28年纯收入:54620.74-42000=12620.74(元)在可行性研究后提交的文档,包括引言可行性研究前提对现有系统的分析所建议的系统可选择的其它系统方案投资及效益分析社会因素方面的可行性分析结论第二章软件要求定义2.1.5可行性研究的文档案例分析某校在校生近5000人,每学期在期中都要进行一次对教师的教学质量测评,要求所有学生都要参加。以前测评的方式是手工操作,由教务处发出书面问卷调查表,每个同学填写完成后交回到教务处。然后教务处再使用手工的方法对问卷进行统计汇总,最后得出学生对每一位教师的总体评价。这种方法一方面浪费了大量的财力、人力,另一方面统计繁琐且容易出错。考虑到现在学校校园网已经建成,为节省开支,提高效率,学校决定委托计算机系开发一套基于校园网的《教师教学网络测评系统》1、问题的提出案例分析2、问题分析系统分析人员经过与学校教务部门及各相关单位进行充分的调查后,了解了该项目的一些背景资料与基本要求。教师测评分两大部分,一是师德测评;二是教学质量测评。师德测评有4项指标,教学质量测评有14项指标。系统要实现的目标是:•所有学生在指定时间内在指定机房的计算机上完成对任课教师的测评打分,测评过程全部采用选择的方法,不需要输入任何信息•所有的测评数据保存在学校中心服务器上,有较为严格的安全措施•系统能对所有的数据进行统计汇总,得出每一位教师的测评结果,并能进行排序、输出。……系统开发的大体费用在1.2万元左右,开发周期大约6个人月。案例分析案例文档之一——系统定义报告用户单位:XX学校教务处负责人:XXX开发单位:XX学校计算机系分析员:XXX项目名称:基于校园网的教学质量测评系统问题概述:教师教学质量测评每学期必须进行一次,原有的手工方法存在资源浪费、效率极低、结果不准确等问题。……(其它的相关说明)项目目标:开发一个效率高且相对通用的教师教学网络测评系统。项目规模:开发成本大约1.2万元,开发周期约6个人月。可行性研究:建议进行一周,费用不超过500元。3、系统定义报告测评数据库测评设置测评人员管理人员数据处理数据提交验证验证测评测评结果教师教学网络测评系统流程图案例分析可行性研究最终生成可行性研究报告案例文档之二——可行性研究报告1.引言1.1编写目的本报告分析了《教师教学网络测评系统》开发的可行性,请院领导审阅并对是否进行该系统的开发做出批示。1.2项目背景建议进行《教师教学网络测评系统》的开发。(背景介绍略)我院计算机系具备进行该软件系统开发的能力并承担本软件系统的开发与维护工作。该软件系统由我院教务处使用。……案例分析对值得开发的项目制定开发计划,并以此对项目的费用、进度和资源进行控制和管理,包括项目概述实施计划人员组织及分工交付期限第二章软件要求定义2.2项目开发计划案例文档之三—软件项目开发计划书1.引言1.1编写目的为保证《教师教学网络测评系统》的开发成功,按期交付使用,特编写项目开发计划,请参与开发的人员遵照执行。1.2项目背景(略)1.3定义《教师教学网络测评系统》以下简称《测评系统》。。。。。。项目开发计划案例分析2.3.1需求分析的特点2.3.2需求分析的原则2.3.3需求分析的任务2.3.4需求分析的方法2.3.5需求分析的文档第二章软件要求定义2.3软件需求分析1.什么是需求分析需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明书)的过程。第二章软件要求定义2.3.1需求分析的特点2.需求获取的目的清楚地理解所要解决的问题完整地获取用户需求第二章软件要求定义2.3.1需求分析的特点3.需求获取的难点问题复杂交流障碍不完备性和不一致性需求易变第二章软件要求定义2.3.1需求分析的特点1.原则能够表达和理解问题的数据域和功能域能够把一个复杂问题按功能进行分解并逐层细化建模第二章软件要求定义2.3.2需求分析的原则2.模型的作用在建模过程中了解系统通过抽象降低复杂性有助于回忆所有的细节有助于开发小组间的交流有助于与用户的交流为系统的维护提供文档第二章软件要求定义2.3.2需求分析的原则3.模型的类型数学模型描述模型图形模型第二章软件要求定义2.3.2需求分析的原则1.问题识别2.分析与综合、导出软件的逻辑模型3.编写文档第二章软件要求定义2.3.3需求分析的任务1.问题识别从用户需求入手,找出功能性和非功能性需求(1)功能性需求:定义系统做什么(描述系统必须支持的功能和过程)(2)非功能性需求(技术需求):定义系统工作时的特性(描述操作环境和性能目标)第二章软件要求定义2.3.3需求分析的任务一问题识别功能性和非功能性需求包括的内容(1)功能(2)性能(3)环境(4)界面(5)用户或人的因素(6)文档(7)数据(8)资源(9)安全保密(10)软件成本消耗与开发进度(11)质量保证第二章软件要求定义2.3.3需求分析的任务一问题识别(1)功能需求系统做什么?系统何时做什么?系统何时及如何修改或升级?第二章软件要求定义2.3.3需求分析的任务一问题识别(2)性能需求软件开发的技术性指标例如:•存储容量限制•执行速度、相应时间•吞吐量第二章软件要求定义2.3.3需求分析的任务一问题识别(3)环境需求•硬件设备:机型、外设、接口、地点、分布、温度、湿度、磁场干扰等•软件:操作系统网络数据库第二章软件要求定义2.3.3需求分析的任务一问题识别(4)界面需求•有来自其它系统的输入吗?•有到其它系统的输出吗?•对数据格式有规定吗?•对数据存储介质有规定吗?第二章软件要求定义2.3.3需求分析的任务一问题识别(5)用户或人的因素•用户类型?•各种用户熟练程度?•需受何种训练?•用户理解、使用系统的难度?•用户错误操作系统的可能性?第二章软件要求定义2.3.3需求分析的任务一问题识别(6)文档需求•需哪些文档?•文档针对哪些读者?第二章软件要求定义2.3.3需求分析的任务一问题识别(7)数据需求•输入、输出数据的格式?•接收、发送数据的频率?•数据的准确性和精度?•数据流量?•数据需保持的时间?第二章软件要求定义2.3.3需求分析的任务一问题识别(8)资源需求•软件运行时所需的数据、软件、内存空间等资源。•软件开发、维护所需的人力、支撑软件、开发设备等。第二章软件要求定义2.3.3需求分析的任务一问题识别(9)安全保密要求•需对访问系统或系统信息加以控制吗?•如何隔离用户之间的数据?•用户程序如何与其它程序和操作系统隔离?•系统备份要求?第二章软件要求定义2.3.3需求分析的任务一问题识别(10)软件成本消耗与开发进度需求•开发有规定的时间表吗?•软硬件投资有无限制?第二章软件要求定义2.3.3需求分析的任务一问题识别(11)质量保证•系统的可靠性要求?•系统必须监测和隔离错误吗?•规定系统平均出错时间?•出错后,重启系统允许的时间?•系统变化如何反映到设计中?•维护是否包括对系统的改进?•系统的可移植性?第二章软件要求定义2.3.3需求分析的任务一问题识别(1)对现实环境调查,获得当前系统的物理模型教师教师课时表汇总清单工资表工资107张计算机系206王财务科206李银行职工任务表职工工资工资明细表工资明细表第二章软件要求定义2.3.3需求分析的任务二导出逻辑模型(2)去掉非本质因素,抽象出当前系统的逻辑模型教师教师课时表原始数据工资表审核数据有效性计算工资银行存钱职工任务表职工工资明细表工资明细表第二章软件要求定义2.3.3需求分析的任务二导出逻辑模型分析阶段中常用的模型(逻辑模型)•数据流图(DFD)•实体―联系图(ERD)•类图•实例图•时序图•状态图•协作图•事件列表•数据流定义•数据元素定义•……第二章软件要求定义2.3.3需求分析的任务二导出逻辑模型功能分解法:功能、子功能、功能接口结构化分析方法:数据流图、数据字典信息建模方法:实体、属性、联系面向对象的分析:实体、属性、关系
本文标题:软件工程课件-2第二章软件要求定义
链接地址:https://www.777doc.com/doc-213362 .html