需求工程主要内容;
1、需求的种类和定义
这是需求工程根本的出发点,也正因为这样,对于此业界还是有基本公认的概念。
需求的定义(IEEE1990):用户(人或系统)为解决问题或达成目标所需要的特性或条件;为满足合同、规范、规格说明书或其他正式文档要求,系统或系统组件必须满足的特性或条件;以上所描述的特性或条件的文档化的表现形式。
需求的种类分为:
(1)功能需求,是系统或系统组件应实现的功能,用系统的语言描述系统应该做什么;
功能需求的典型例子是功能、过程描述、场景以及系统对于特定输入的反应,还有数据和接口需求,以及业务流程和工作流。
(2)质量需求,指产品或组件需要表现的定性的特点,如性能、安全、可用性,以及可测试性、可维护性、可迁移性;
(3)约束,是一种组织的或技术的需求,限制系统的实现方式,如成本、市场分析、流程、基础设施、营销、组织、文档
2、需求的十步获取法
(1)明确利益相关方和利益相关方;
(2)确定关键成功因素;
(3)商定愿景、范围和上下文,系统上下文确定做什么,也确定不做什么;
(4)有条不紊地开发需求,注意用“负面需求”描述不允许发生的场景、情况和行为;
(5)文档化和结构化需求;
(6)需求建模,关键的问题是需求如何关联?环境和需求相互之间如何影响?
(7)分析需求,主要回答这些问题:需求如何相互影响?哪个需求可以重用?是否可以重复使用以前的解决方案?哪些需求将占用绝大多数的工作量?有没有工作量大,但对目标贡献不大的需求?
(8)核查需求,如完整性、一致性、可验证性、无矛盾性、可扩展性和可读性;
(9)排定需求的优先级;
(10)确定你的假设和需求。