需求工程阅读笔记02
需求问题是当前软件开发面临的主要问题,成功项目,问题项目,失败项目
成功项目的影响因素:用户的参与、高层管理支持、清晰的需求说明、正确的项目计划、切合实际的期望、细化的项目里程碑。需求因素对项目的成败具有很重要的作用
软件的模拟特性:某种情况的计算与实际事件的发生,现实世界对虚拟世界进行限定,应用型软件和纯工具软件在生产中具有不同的关注点和评判标准应用软件模拟性具体指:目的性。软件的开发是据此设立的。正确性。软件具备的功能能够保证目标的正确实现。现实可理解性。软件系统是在现实的基础上,通过影响现实的某些环节或者改变各部分的通信方式,最终达到某些目的或者解决某些问题
需求问题具体原因分析:
1、非技术性和社会性因素重视不足。
2、传统需求分析方法的缺陷。
3、软件规模的日益扩大、需求问题的高代价性
需求工程的三个主要任务:
1、需求工程必须说明软件系统将被应用的环境及其目标,说明用来达成这些目标的软件功能,还有说明在设计和实现这些功能时上下文环境对软件完成任务所用的方式,方法所施加的限制和约束,即需要做什么和为什么这样做
2、需求规格说明是需求工程最为重要的成果,是项目计划、设计、测试、用户手册编写等很多后续软件开发阶段的基础工作
3、需求工程还需处理目标、功能和约束随着时间的演化情况
需求工程的基本活动:主要包括需求开发与需求管理两个方面。需求开发是因为需求工程的“需求”性而存在的‘需求管理是因为需求工程的“工程”特性而存在的。需求获取的目的是从项目的战略规划开始建立最初的原始需求。需求分析的目的是保证需求的完整性和一致性。需求规格说明书的目的是将完整的、一致的需求与能够满足。需求验证是需求开发中的最后活动,首要目的是保证需求及其文档的正确性。需求管理是对需求开发所建立的需求基线的管理,它在需求基线完成之后正式开始,并在需求工程阶段结束之后继续存在,在设计、测试、实现等后续软件系统开发中保证需求作用的持续性、稳定发挥。