【软件工程基础】软件需求

简介: 【软件工程基础】软件需求

正文


在进行需求获取之前,首先要明确需要获取什么,也就是需求包含哪些内容。软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。通常这些需求包括功能需求、性能需求、用户或人的因素、环境需求、界面需求、文档需求、数据需求、资源使用需求、安全保密需求、可靠性需求、软件成本消耗与开发进度需求等,并预先估计以后系统可能达到的目标。此外,还需要注意其他非功能性的需求。具体内容如下。


需求 说明
功能需求 考虑系统需要做什么,在何时做,在何时以及如何修改或升级
性能需求 考虑软件开发的技术性指标。例如,存储容量限制、执行速度、响应时间及吞吐量
用户或人的因素 考虑用户的类型。例如,各种用户对使用计算机的熟练程度,需要接受的训练,用户理解、使用系统的难度,用户错误操作系统的可能性等等(千万不要把用户当做和你一样的专业人士
环境需求 考虑未来软件应用的环境,包括硬件和软件。对硬件设备的需求包括机型、外设、接口、地点、分布、湿度、磁场干扰等;对软件的需求包括操作系统、网络、数据库等
界面需求 考虑来自其他系统的输入,到其他系统的输出,对数据格式的特殊规定,对数据存储介质的规定
文档需求 考虑需要哪些文档,文档针对哪些读者。
数据需求 考虑输入、输出数据的格式,接收、发送数据的频率,数据的准确性和精度,数据流量,数据需保持的时间。
资源使用需求 考虑软件运行时所需要的数据、其他软件、内存空间等资源;软件开发、维护需要的人力、支撑软件、开发设备等
安全保密需求 考虑是否需要对访问系统或系统信息加以控制,隔离用户数据的方法,用户程序如何与其他程序和操作系统隔离以及系统备份要求等。
可靠性需求 考虑系统的可靠性要求,系统是否必须检测和隔离错误;出错后,重启系统允许的时间等
软件成本消耗与开发进度需求 考虑开发是否有规定的时间表,软/硬件投资有无限制等
其他非功能性需求 如采用某种开发模式,确定质量控制标准、里程碑和评审、验收标准、各种质量要求的优先级等,以及可维护性方面的要求。


目录
相关文章
|
2月前
|
人工智能 程序员 开发工具
『软件工程1』详解软件是什么
该文章探讨了软件工程的基本概念,包括软件的定义、特征、软件危机的原因及其应对策略等内容。
|
6月前
|
测试技术 uml
【软件工程】揭秘需求工程的奥秘:构建成功软件的基石
【软件工程】揭秘需求工程的奥秘:构建成功软件的基石
|
6月前
|
测试技术
【软件工程】高效需求分析在软件工程中的精要
【软件工程】高效需求分析在软件工程中的精要
194 0
|
6月前
|
安全 网络协议 测试技术
网络工程设计教程系统集成方法第3版-第1章 网络工程设计概述
网络工程设计教程系统集成方法第3版-第1章 网络工程设计概述
169 0
|
数据库管理
软件工程——什么是软件
软件工程——什么是软件
575 0
|
开发者
软件工程高效学 | 实践工具:Kitten
软件工程是计算机领域的一门专业基础课,它对于培养开发者的软件素质、提高开发者的软件开发能力与软件项目管理能力具有重要意义。本篇介绍实践工具——Kitten。
306 0
软件工程高效学 | 实践工具:Kitten
|
监控 测试技术 开发者
软件工程高效学 | 软件项目的开发模型
软件工程是计算机领域的一门专业基础课,它对于培养开发者的软件素质、提高开发者的软件开发能力与软件项目管理能力具有重要意义。本篇介绍软件项目的开发模型。
171 0
软件工程高效学 | 软件项目的开发模型
|
机器学习/深度学习 设计模式 人工智能
软件工程高效学 | 软件工程基础
软件工程是计算机领域的一门专业基础课,它对于培养大家的软件素质、提高大家的软件开发能力与软件项目管理能力具有重要意义。本篇介绍软件工程的发展过程以及典型的软件工程方法等相关内容。
89 0
软件工程高效学 | 软件工程基础
|
测试技术
【软件工程基础】需求工程
【软件工程基础】需求工程
152 0
|
存储 BI 数据处理
软件工程之软件需求分析
软件需要解决的是用户所面临的现实问题,但是,这些现实问题需要由软件技术人员来解 决。情况往往是,开发软件的技术人员精通计算机技术,但并不熟悉用户的业务领域;而用户 清楚自己的业务,却又不太懂计算机技术。
1664 0