《软件需求工程(第2版)》一导读

简介: 许多人经过研究发现,当软件开发项目失败时,软件需求问题通常正是核心问题。因此,在软件开发过程中,必须极早和有效地发现和解决与软件需求相关的问题。

image

前 言

随着计算机应用的不断发展和深入,人们需要收集和处理的信息规模急剧增大,其中计算机软件在信息收集和处理中起着至关重要的作用。由于软件已成为信息基础设施并具备密集型特点,使得软件一方面日益成为人们生活中的一部分,如电子政府、电子商务和手机等,人们也日益依赖软件。另一方面,一些高尖端的技术领域,如航空航天、国防军事等领域,对软件的质量提出了很高的要求。然而,软件开发的开发状况和质量远未达到人们的期望和要求,例如,大部分软件产品不能在预期计划和预算经费内完成,软件的质量低下等。软件质量所导致的软件故障和失效,常常对人们的工作和生活带来诸多不便,甚至造成重大损失。虽然产生上述问题的原因有很多,但软件需求问题可以说是其中的一个最大原因。许多人经过研究发现,当软件开发项目失败时,软件需求问题通常正是核心问题。因此,在软件开发过程中,必须极早和有效地发现和解决与软件需求相关的问题。

在很长一段时间里,人们并没有充分认识到软件需求的作用,软件工程界也一直没有将需求工程作为一个独立的部分进行深入的分析和研究。直到20世纪90年代中期,随着软件系统开发中出现的诸多问题,人们才逐渐认识到软件需求在整个软件开发中的重要性。通过一系列关于软件需求的重要学术会议进行广泛深入的研究和讨论,才使得需求工程作为一门独立的子学科正式形成。需求工程是指应用工程化的方法、技术和规格来开发和管理软件的需求。需求工程的目标就是要获取高质量的软件需求。与软件工程中传统的需求分析概念相比,需求工程突出了工程化的原则,强调以系统化、条理化和可重用的方法和技术进行与软件需求相关的活动,从而有利于提高所有与软件需求相关的活动及其过程的可管理性,降低需求开发和管理的难度和成本。

目 录

第1章 需求工程概述
1.1 需求工程的重要性
1.2 什么是软件需求
1.3 软件需求的分类
1.4 需求规格说明
1.5 需求工程定义
1.6 其他一些基本概念
第2章 软件工程与需求工程
2.1 软件工程
2.2 软件开发过程模型
2.3 需求工程在软件开发中的地位
2.4 软件需求的开发和管理过程
第3章 需求获取
3.1 确定需求开发计划
3.2 确定项目的目标和范围
3.3 确定调查对象
3.4 实地收集需求信息
3.5 确定非功能需求
3.6 在收集需求信息中应注意的问题
3.7 使用场景技术的需求获取
第4章 需求分析
4.1 建立系统关联图
4.2 分析需求的可行性
4.3 构建用户接口原型
4.4 确定需求的优先级
4.5 需求建模
4.6 建立数据词典

相关文章
|
2月前
|
机器学习/深度学习 自然语言处理 Devops
探索软件测试自动化的新思路
在当今快节奏的软件开发领域,传统的软件测试方法已经无法满足快速迭代和高质量交付的需求。本文将探讨如何借助最新的技术手段和方法,为软件测试自动化注入新的活力,提高测试效率和质量。
|
10月前
|
Web App开发 安全 数据安全/隐私保护
一文带你了解五款提高工作效率的软件,赶紧收藏!
人类与99%的动物之间最大差别在于是否会运用工具,借助好的工具,能提升几倍的工作效率。
124 0
|
7月前
|
存储 安全 网络安全
推荐5款助你高效工作的小软件
现在,有很多实用的工具和软件可以帮助我们更高效地完成各种任务。以下是5款值得推荐的工具软件,能够极大地提高我们的工作效率。
41 1
|
12月前
|
测试技术
「需求工程」需求工程——需求验证(第4部分)
「需求工程」需求工程——需求验证(第4部分)
|
12月前
|
SQL 自然语言处理 安全
「需求工程」需求工程-介绍(第1部分)
「需求工程」需求工程-介绍(第1部分)
sbs
|
SQL Oracle 关系型数据库
软件需求工程
前言之前看过一些系统分析相关,偏信管、软工专业的书:《系统分析与设计方法》,《软件需求》。 需求工程 部分对实际开发工作有不少帮助。相信很多开发也不太了解信管或者软工,更多关注于具体领域的前沿技术,所以这些概念应该能用到。文中部分是引用书中原文,部分是个人观点。文中产品,软件,系统是类似的含义。2020.7.10 —— by zz。需求需求一词的字典义是“被命令或强制性的东西;需要或者必要”,和软
sbs
569 1
软件需求工程
|
设计模式 网络安全
全面的软件知识结构
全面的软件知识结构
93 0
08.需求工程
脑图如下所示
666 0
|
数据库 测试技术
关于软件的任务到底是什么的思考
原文:关于软件的任务到底是什么的思考 阅读本文需要有DDD,DCI的知识背景。 首先,我觉得软件是用来被用户使用的,也就是说软件是用来帮用户完成一些事情的。从下面的用例图可以很好的理解用户与软件的关系:   上图是超市里的一个营业员处理一笔销售的一个用例。
1233 0