1.4、软件工程

软件工程

指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来解决软件问题的工程。目的是为了提高软件生产率、提高软件质量、降低软件成本。 IEEE对软件工程的定义是:讲系统的、规范的、可度量的工程化方法应用于软件开发、运行和维护的全过程及以上方法的研究

软件工程由方法工具过程三部分组成
方法 是完成软件工程项目的技术手段,支持整个软件生命周期
工具 是人在开发软件活动中智力和体力的扩展与延伸,自动或者半自动的支持软件的开发和管理
过程 贯穿于软件开发活动的各个环节,对软件开发的质量、进度、成本进行评估、管理和控制,包括人员组织、计划跟踪与控制、成本估算、质量保证和配置管理等


1、需求分析做什么

概念 :

用户对系统在功能、行为、性能、设计约束等方面的期望。IEEE中的定义是:指用户解决问题或达到目标所需要的条件或能力,是系统或系统部件要满足合同、标准、规范或其他正式规定文档所需具有的条件或能力,以及反映这些条件或能力的文档说明。

1.1、需求的层级

软件需求就是软件必须完成的事以及必须具备的品质。需求是多层次的,包括业务需求用户需求系统需求,这三者是从目标到具体,从整体到局部,从概念到细节。

1、业务需求:反映企业或客户对系统高层级的目标要求(高层级需求)
2、用户需求:描述用户的具体目标,用户想要什么,以及要这些做什么(用户需求)
3、系统需求:从系统的角度说明软件的需求,包括功能需求、非功能需求、设计约束等

1.2、质量功能部署

质量功能部署(Quality Function Deployment, QFD),是一种将用户要求转化成软件需求的技术。目的是最大限度提升软件工程过程中用户满意度。

QDF将软件需求分为三类,分别是
1、常规需求:系统应该做到的,实现的越多,用户越满意
2、期望需求:用户想当然认为系统应该做到,但是不能正确表达的功能,没有实现会让用户不满意
3、意外需求:用户要求范围外的功能或性能,开发人员控制,实现会高兴,不实现也没关系

1.3、需求获取

需求获取是一个确定和理解不同的项目干系人的需求和约束的过程。常见的方式有:用户访谈、问卷调查、采样、情节串联版、联合需求计划等。

1.4、需求分析(SA software analysis)

把杂乱无章的用户要求和期望转化为用户需求,输出需求规格说明书SRS(software requirement specification)

SA方法分析需求的核心是数据字典,分三个模型:
1、数据模型:常用实体关系(E-R)图描述实体、属性,以及实体间的关系;
2、功能模型:常用数据流图(DFD data flow diagram),从数据传输加工的角度,用图形符号描述数据在系统间的传递情况;
3、行为模型:又称状态模型,常用状态转换图(STD state transform diagram)描述系统状态和引起系统状态转换的事件,表示系统行为,指出作为特定事件的结果将执行哪些动作

OOA基本任务是运用OO方法对问题域进行分析和理解,正确认识其中的事务及其关系,包括:
用例模型:一种描述系统需求的方法,使用用例的方法来描述系统需求的过程就是用例建模;
分析模型:描述系统的基本逻辑结构,展示对象和类如何组成系统,以及如何保持童心,实现系统行为;

一个好需求应具备:可验证性、无二义性、完整性、一致性、可测试性、确定性、可跟踪性、正确性、必要性等

1.5、软件需求规格说明书

需求开发活动的产物,目的是使项目干系人与开发团队对系统的初始规定有一个共同的理解,使之成为整个开发工作的基础。
是一个技术文档,非管理文档,不包括项目预算、进度计划、风险分析等管理内容。

1.6、需求验证

通过需求评审和需求测试工作来对需求进行验证。
需求验证/需求确认包括以下内容:

1、SRS正确的描述 了预期的、满足项目干系人需求的 系统行为和特征
2、SRS中的软件需求是从系统需求、业务规格和其它内容正确推导出来的;
3、需求是完整的和高质量的;
4、需求的表示在所有地方都是一致的;
5、需求为继续惊喜系统设计、实现和测试提供了足够的基础

需求管理步骤总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值