第一讲需求工程导论
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
d, 31.1%
, 16.2%
150 100 100 100 100
预期值 实际值
Challen ged, 52.7%
50 0 费用 时间
61
功能
1.2 90年代的软件生产状况调查 —— Standish Group 1995
大公司开发项目的平均成本是232.2万美元, 中等公司是133.1万美元,小型公司是43.4 万美元 大约31%的项目在完成之前被取消,52.7 %的项目成本是原来预算的189% 大公司9%按预算交付,小公司16%按预算 交付
50's
60's
1.1软件的发展 —— 软件危机
1968年北大西洋公约组织的计算机科学家在联邦德国召 开的国际学术会议上第一次提出了“软件危 机”(software crisis)这个名词。 软件危机指的是在计算机软件的开发和维护过程中所遇到 的一系列严重问题
开发成本超出预算,实际进度比预定计划一再拖延。 用户对“已完成”系统不满意的现象经常发生。 软件产品的质量往往靠不住。Bug一大堆,Patch一个接一个。 软件的可维护程度非常之低。 软件通常没有适当的文档资料。 软件的成本不断提高。 软件开发生产率的提高赶不上硬件的发展和人们需求的增长
课程介绍
课程安排 课程的目的和背景 教学大纲和主要内容 参考书目
课程安排
每周4*50分钟(8周)其中 第一周(9月5号上午)需求工程的基本知识一 第二周(9月12号上午)需求工程的基本知识二 第三周(9月19号上午)需求工程的获取技术 第四周(9月26号上午)需求工程的建模技术一 第五周(10月3号上午可能放假)需求建模技术 二,课程设计指导 第六周(10月10号)需求管理技术 第七周(10月17号)主要的需求分析方法介绍 第八周(10月24号)复习考试
经典文献
1. 2. 3. 4. 5. 6.
7. 8.
9. 10.
11.
12.
13.
14. 15.
16. 17.
Davis, A., A Taxonomy for the Early Stages of the Software Development Life Cycle, Journal of Systems and Software, 8(4): 297-311. 1988 Pohl, K., The Three Dimensions of Requirements Engineering. In: Rolland, C.; Bodart, F.; Cauvet, C. (Eds.) Proceedings of the 5th Conference on Advanced Information Systems Engineering. Lecture Notes in Computer Science 22: 275-292, Springer Verlag, 1993. Davis, A. M., Software Requirements: Objects, Functions and States, Prentice Hall, 1993. Flowers S., Software Failure: Management Failure, New York: Wiley, 1996. Grady, Jeffrey O., System Requirements Analysis, Mcgraw-Hill, 1993 Gunter, Carl A., Gunter, Elsa L., Jackson, M. and Zave, P., A Reference Model for Requirements and Specifications. IEEE Software 17(3), 2000 Jackson, M., Software Requirements and Specifications, Addison Wesley/ ACM Press, 1995 Loucopoulos, P., and Karakostas, V., System Requirements Engineering, McGraw-Hill Book Company Europe, 1995 Jackson, M., The meaning of requirements, Annals of Software Engineering 3: 5-21, 1997 Zave, P., Classification of Research Efforts in Requirements Engineering. ACM Computing Surveys, 29(4): 315-321, 1997 Zave, P., and Jackson, M., Four Dark Corners of Requirements Engineering, ACM Trans. Softw. Eng. Methodol. 6(1): 1-30, 1997 Ian Sommerville and Peter Sawyer, Requirements Engineering: A Good Practice Guide.Chichester, England: John Wiley&Sons, 1997 Kotonya, G., and Sommerville, Ian, Requirements Engineering: Processes and Techniques. John Wiley & Sons Ltd, 1998. Robertson, S., and Robertson, J., Mastering the Requirements Process, Addison-Wesley. 1999. Nuseibeh B, and Easterbrook S., Requirements engineering: A roadmap. Proc. of the 22nd Int'l Conf. on Software Engineering, Future of Software Engineering Track: 35-46. ACM Press, 2000. Bray, Ian K., An Introduction to Requirements Engineering, Addison-Wesley, Reading, MA, 2002 Davis, Alan M., Just Enough Requirements Management: Where Software Development Meets Marketing, Dorset House Publishing, 2005
获得对目前代表性需求工程方法和技术的 一些实践经验
预备知识
软件工程
软件开发过程 基本的软件建模思想 基于逻辑的方法
基本的形式化建模手段
命题逻辑 谓词逻辑 简单的模态逻辑
基本状态变迁系统
应用软件开发的工程实践经验
参考书目
软件需求工程原理和方法,金芝编写科学 出版社 需求分析与系统设计 LESZEK.A 马素霞 等 译
1.2 90年代的软件生产状况调查 —— 影响因素[Standish Group 1995]
问题项目的影响要素 缺少用户输入 不完整的需求说明 需求变化 缺乏高层管理支持 技术能力不足 影响指数 12.8% 12.3% 11.8% 7.5% 7.0%
缺乏资源
不切实际的期望 目标不清晰
6.4%
5.9% 5.3%
对成功项目的影响指数为53.9% 对问题项目的影响指数为55.6% 对失败项目的影响指数为60.9%
综合来看,需求因素
1.2 90年代的软件生产状况调查 ——ESPITI,1996
欧洲软件协会ESI 欧洲软件过程改进培训计划项目ESPITI 17个国家的超过3800个组织
主要问题 60 50 40 30 20 10 0
第一讲. 需求工程导论
主要内容
1.
1. 2.
软件的需求问题
软件的发展 软件生产状况调查
2.
3. 4.
需求问题的原因分析 需求工程 需求工程师
1.1软件的发展 ——60年代的发展
机器为中心
指令码、汇编语言 BIOS 批量事务处理、计算性工作
应用为中心
3GL, OOL OS, Virtual Machine 基本业务处理,应用处理
不现实的时间要求
新技术的影响 其他
4.3%
3.7% 23.0%
1.2 90年代的软件生产状况调查 —— 影响因素[Standish Group 1995]
失败项目的影响要素 影响指数
不完整的需求说明
缺少用户输入
13.1%
12.4%
缺乏资源
不切实际的期望 缺乏高层管理支持
10.6%
9.9% 9.3%
1.1软件的发展 ——90年代的发展
机器为中心
指令码、汇编语言 BIOS 批量事务处理、计算性工作
应用为中心
3GL, OOL OS, Virtual Machine 基本业务处理,应用处理
企业为中心
4GL, CBD Middleware EAI, BPR, ERP, ...
50's
60's
90's
需求管理 文档制作 软件测试 需求规格说明 文档 项目管理 编码
次要问题
不是问题
%
1.2 90年代的软件生产状况调查 ——需求问题的典型案例[Bray2002]
PROMS(演出权益协会),11M£,1992,未能以常人 能理解和检查的形式表述软件需求,软件规格说明也 考虑不周(与客户沟通的问题) RISP(西萨克斯地区信息系统计划), 43M£ ,1990, 缺少清晰的项目范围定义(需求的边界问题) TAURUS(伦敦股票交易), 75M£(1.4B£), 1993,未能 协调不一致的需求(不一致需求的管理问题) LASDS(伦敦救护车服务派遣系统), 1992,社会服务领 域糟糕的需求分析(需求不清晰) ATC(空中交通控制系统), 1.8B£,1998-2001,缺乏健 壮的需求规格说明(需求没有搞清楚就匆忙开始工作 )
课堂作业
随堂练习 课程设计报告一份
考试和评分标准
随堂练习20% 课程设计案例分析报告30% 课程结束考试50%
课程的目的
了解需求工程研究和实践的现状,以及进行 进一步研究的背景知识
需求工程在软件工程中的地位和角色 需求工程的本质 需求工程方法学 当前的代表性研究
需求wenku.baidu.com化
缺乏计划 额外的无用功能 缺乏IT管理 技术能力不足 其他
8.7%
8.1% 7.5% 6.2% 4.3% 9.9%
1.2 90年代的软件生产状况调查 —— 影响因素[Standish Group 1995]
需求因素
用户参与(用户输入) 高层管理支持 清晰的需求说明 切合实际的期望 清晰的目标和前景 需求变化 额外的无用功能
1.1软件的发展 —— 软件工程
概括来说,软件危机包含两方面问题:一、 如何开发软件,以满足不断增长,日趋复 杂的需求;二、如何维护数量不断膨胀的 软件产品。 解决方案:软件工程
[IEEE] :(1)应用系统化的、学科化的、定量 的方法,来开发、运行和维护软件,即,将工 程应用到软件。 (2)对(1)中各种方法的研究”
EAI:企业应用集成,CBD:基于组件的开发
1.2 90年代的软件生产状况调查 ——Standish Group 1995
365家公司的8380个项目
成功项目Success:在预计的时间之内,在预算的成本之下,完成 预期的所有功能 问题项目Challenged:已经完成,软件产品能够正常工作,但在 生产中或者超支,或者超期,或者实现的功能不全 失败项目Impaired:因无法进行而被中途撤销,或者最终产品无 法提交使用 250 222 Success Impaire 200 189
1.2 90年代的软件生产状况调查 —— 影响因素[Standish Group 1995]
成功项目的影响要素 影响指数
用户参与
高层管理支持 清晰的需求说明 正确的项目计划 切合实际的期望 细化的项目里程碑 员工能力 主人翁精神 清晰的目标和前景 努力工作 其他
15.9%
13.9% 13.0% 9.6% 8.2% 7.7% 7.2% 5.3% 2.9% 2.4% 13.9%