软件需求分析第1章需求工程导论.ppt

上传人:b****2 文档编号:2155554 上传时间:2022-10-27 格式:PPT 页数:34 大小:363.50KB
下载 相关 举报
软件需求分析第1章需求工程导论.ppt_第1页
第1页 / 共34页
软件需求分析第1章需求工程导论.ppt_第2页
第2页 / 共34页
软件需求分析第1章需求工程导论.ppt_第3页
第3页 / 共34页
软件需求分析第1章需求工程导论.ppt_第4页
第4页 / 共34页
软件需求分析第1章需求工程导论.ppt_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

软件需求分析第1章需求工程导论.ppt

《软件需求分析第1章需求工程导论.ppt》由会员分享,可在线阅读,更多相关《软件需求分析第1章需求工程导论.ppt(34页珍藏版)》请在冰豆网上搜索。

软件需求分析第1章需求工程导论.ppt

第1章.需求工程导论主要内容1.软件的需求问题1.软件的发展2.软件生产状况调查2.需求问题的原因分析3.需求工程4.需求工程师1.1软件的发展60年代的发展无需求处理草图分析1.1软件的发展软件危机与软件工程n“软件危机”(softwarecrisis)。

n软件工程qIEEE:

(1)应用系统化的、学科化的、定量的方法,来开发、运行和维护软件,即,将工程应用到软件。

q

(2)对

(1)中各种方法的研究”n工程化生产方法q需求分析:

系统需求分析与软件需求分析1.1软件的发展60年代的发展无需求处理草图分析需求分析DFD/ERD需求分析面向对象1.1软件的发展90年代的发展1.290年代的软件生产状况调查StandishGroup1995n365家公司的8380个项目q成功项目Success:

在预计的时间之内,在预算的成本之下,完成预期的所有功能q问题项目Challenged:

已经完成,软件产品能够正常工作,但在生产中或者超支,或者超期,或者实现的功能不全q失败项目Impaired:

因无法进行而被中途撤销,或者最终产品无法提交使用1.290年代的软件生产状况调查StandishGroup1995n大公司开发项目的平均成本是232.2万美元,中等公司是133.1万美元,小型公司是43.4万美元n大约31的项目在完成之前被取消,52.7的项目成本是原来预算的189%n大公司9%按预算交付,小公司16%按预算交付1.290年代的软件生产状况调查影响因素StandishGroup1995成功项目的影响要素影响指数用户参与15.9高层管理支持13.9清晰的需求说明13.0正确的项目计划9.6切合实际的期望8.2细化的项目里程碑7.7员工能力7.2主人翁精神5.3清晰的目标和前景2.9努力工作2.4其他13.91.290年代的软件生产状况调查影响因素StandishGroup1995问题项目的影响要素影响指数缺少用户输入12.8不完整的需求说明12.3需求变化11.8缺乏高层管理支持7.5技术能力不足7.0缺乏资源6.4不切实际的期望5.9目标不清晰5.3不现实的时间要求4.3新技术的影响3.7其他23.01.290年代的软件生产状况调查影响因素StandishGroup1995失败项目的影响要素影响指数不完整的需求说明13.1缺少用户输入12.4缺乏资源10.6不切实际的期望9.9缺乏高层管理支持9.3需求变化8.7缺乏计划8.1额外的无用功能7.5缺乏IT管理6.2技术能力不足4.3其他9.91.290年代的软件生产状况调查影响因素StandishGroup1995n需求因素q用户参与(用户输入)q高层管理支持q清晰的需求说明q切合实际的期望q清晰的目标和前景q需求变化q额外的无用功能n综合来看,需求因素q对成功项目的影响指数为53.9q对问题项目的影响指数为55.6q对失败项目的影响指数为60.91.290年代的软件生产状况调查ESPITI,1996n欧洲软件协会ESIn欧洲软件过程改进培训计划项目ESPITIn17个国家的超过3800个组织1.290年代的软件生产状况调查需求问题的典型案例Bray2002nPROMS(演出权益协会),11M,1992,未能以常人能理解和检查的形式表述软件需求,软件规格说明也考虑不周nRISP(西萨克斯地区信息系统计划),43M,1990,缺少清晰的项目范围定义nTAURUS(伦敦股票交易),75M(1.4B),1993,未能协调不一致的需求nLASDS(伦敦救护车服务派遣系统),1992,社会服务领域糟糕的需求分析nATC(空中交通控制系统),1.8B,1998-2001,缺乏健壮的需求规格说明主要内容1.软件的需求问题2.需求问题的原因分析1.应用软件的模拟特性2.需求问题的技术原因分析3.需求工程4.需求工程师2.1应用软件的模拟特性软件的三种类型软件类别纯工具型软件应用型软件专业用户普通用户评判标准功能的复杂性使用的高效性技术的先进性功能的有用性使用的方便性技术的可行性功能的“模拟”性使用的方便性技术的可行性关注点创新性有效性模拟性示例系统编程环境DBMSOffice语言翻译MISEAI2.1应用软件的模拟特性软件的分析活动2.1应用软件的模拟特性软件模拟性的实践调查n对应用型软件的“模拟”特性理解及应用问题qCapersJonesCapers1996在调查了几百个公司之后发现超过75的企业在需求处理环节存在不足。

q2000年Nikula等人在对芬兰的中小型公司进行需求处理实践情况评价时发现Nikula2000:

在以30分为标准线的情况下,75%的公司竟然在10分以下。

qHofmann等人在欧洲的需求工程实践调查中发现仅有约1/3的项目有明确的需求处理过程Hofmann2001。

qJuristo等人在对欧洲的150多名RE实践者进行调查后发现,在需求处理的诸多技术当中,需求获取和冲突协商的技术没有得到充分的应用Juristo2002。

q研究也发现当软件生产面临时间、市场等其他压力时,漠视“模拟”特性的情况就更为严重Lubars1993,Francisco20032.2需求问题的技术原因分析n非技术性和社会性因素q组织机构文化、社会背景、商业目标、利益协商n关注软件系统和现实之间的互动效应q软件系统环境的组织机构文化、社会背景和系统涉众的目标与利益比软件内部的数据流与状态更应该得到重视n解决方案和具体应用环境相关的q不能忽视具体应用环境中的相关因素,例如组织机构的文化、组织结构的规范、组织的行业规范、组织的社会背景等等n单纯通过技术的运用来建立一个一致、完整的需求模型是不太可能的q面对冲突要能够分析社会原因和组织机构方面的原因,引导涉众进行利益协商2.2需求问题的技术原因分析n结构化分析和面向对象分析具有一定的先天缺陷q编程设计分析q设计和编程都有构建高质量(健壮性、可维护性、适应性等等)软件的共同目标,而且使用相同的概念和组织机制保证了从设计到编程的平滑过渡,所以,它们在设计领域的应用也取得了成功q但是需求分析除了拥有构建高质量软件的目标之外,还有一个更加重要的目标是理解现实2.2需求问题的技术原因分析n以“企业”为中心的软件反映了软件规模日益扩大q一方面提高了需求处理中非技术性和社会性因素的影响比重q另一方面也进一步放大了传统技术在需求处理阶段的不适应性2.2需求问题的技术原因分析n需求错误的高代价性主要内容1.软件的需求问题2.需求问题的原因分析3.需求工程1.简介2.基本活动3.需求工程与系统工程4.需求工程特性4.需求工程师3.1需求工程n是软件工程的一个分支q它关注于软件系统所应予实现的现实世界目标、软件系统的功能和软件系统应当遵守的约束q同时它也关注以上因素和准确的软件行为规格说明之间的联系q关注以上因素与其随时间或跨产品族而演化之后的相关因素之间的联系3.2需求工程的基本活动3.3需求工程与系统工程3.4需求工程的特性必要性n软件开发是这样一个工程问题q利用通用的计算机结构,构建一个有用的软件系统,来满足人们的某些目的n计算机应用于现实世界的广泛性q新的问题和新的解决方案q定义问题就是需求工程的任务3.4需求工程的特性重要性nFrederickBrooksBrooks1987q“开发软件系统最为困难的部分就是准确说明开发什么。

最为困难的概念性工作便是编写出详细技术需求,这包括所有面向用户、面向机器和其它软件系统的接口。

同时这也是一旦做错,将最终会给系统带来极大损害的部分,并且以后再对它进行修改也极为困难。

”n容易忽略需求工程重要性的地方q问题广为人知n电梯调度、图书管理q问题小而简单n出错也无所谓3.4需求工程的特性复杂性n处理范围广泛q现实世界和计算机世界n涉及诸多参与方q客户、用户、领域专家、需求工程师、软件开发者、系统维护者等n处理内容多样q功能需求、非功能需求、环境及其约束n处理活动互相交织q需求开发的各项活动虽然在理论上具有顺序处理的特性,但在实际执行过程中往往是迭代和互相交织的n处理结果要求苛刻q正确性、完整性和一致性主要内容1.软件的需求问题2.需求问题的原因分析3.需求工程4.需求工程师1.知识要求2.技能要求4.1需求工程师需要具备的知识n软件技术q尤其是软件建模与分析技术n认知学和社会学等方面的知识q认知心理学q人类学q社会学q语言学n哲学知识q掌握涉众的信仰与理念(认识论)q分析在现实中观察到的各种现象(现象学)4.2需求工程师需要具备的技能n专业技能q需求工程的相关知识n分析技能q抽象能力q整合能力q系统化思想n交流技能q交谈和提问的技巧q倾听的技巧4.2需求工程师需要具备的技能n观察技能n建模技能n写作技能q文档组织能力q语言驾驭能力n创新技能q发现连用户都没有意识到的潜在需求n协调能力本章小结n从20世纪60年代末期软件工程产生起,需求分析就一直是软件开发的重要主题n20世纪90年代的调查状况表明,单纯的需求分析已经不能很好的解决软件生产中的“需求”问题n应用型软件的模拟性和一系列的技术原因表明软件生产需要进行一个比需求分析更加复杂和完整的需求工程n需求工程是软件工程当中一项重要和复杂的活动,需求工程需要具备一定的知识和技能才可以很好的执行需求工程活动

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 起诉状

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1