需求工程导论

软件生产中的需求问题

软件项目分为3种类别:

  1. 成功项目:预期时间、预算下完成预期功能
  2. 问题项目:完成功能,但超期或超支,或实现功能不全
  3. 失败项目:无法进行而被撤销,产品无法使用

image-20240311210212193

软件还可以分为3种类别:

  1. 面向专业用户的纯工具型软件
  2. 面向普通用户的纯工具型软件
  3. 应用型软件

image-20240311211955049

需求工程

image-20240311212324729

需求基础

需求的定义

image-20240311212442364

满足需求就是解决问题

问题域

解决问题必须涉及的事件和事物

是需求的背景,理解需求就必须先理解问题域

问题域的背景信息又被称为问题域特性

解系统

软件系统通过影响问题域来帮助人们解决问题

在解系统中软件起着主要的作用,它是软件解决方案在通用计算机上的实现

解系统域问题域之间存在可以互相影响的接口,以实现交互活动

image-20240311212852123

问题域描述

来自用户的需求

需求规格说明

解决方案以对外交互的方式定义了软件系统的功能,所以解决方案被称为软件系统的需求规格声明

image-20240311213230893