软件工程 软件需求与软件需求规约 第1篇随笔

2、软件需求与软件需求规约

1. 何为需求?

定义问题的基本要素是 “需求”

一个需求是一个有关”要予构造”的陈述,用以描述待开发产品(或项)功能上的能力、性能参数或者其它性质。

2.IEEE标准830-1998要求单一需求必须具有5个基本性质

  • 必要的(Necessary)。是要求的吗?
  • 无歧义的(Unambiguous)。只能用一种方法解释吗?
  • 可测试的(testable)。可以对它进行测试吗?
  • 可跟踪的(Traceable)。可以从一个开放阶段到另一个阶段对它进行跟踪吗?
  • 可测量的(Measurable)。可以对它进行测量吗?

注意:确定一个需求是否满足以上五个性质是复杂耗时的过程。

3.需求分类

  • 功能:功能需求规约了系统或者系统结构必须执行的功能。
  • 性能:规约了一个系统或者系统构件必须具有的性能特性。
  • 外部接口:规约了系统或系统构件必须与之交互的硬件、软件或数据库元素。它也可能规约其形式、时间或者其它因素。
  • 用户接口
  • 硬件接口
  • 软件接口
  • 通讯接口
  • 设计约束:限制了系统或系统构件的设计方案。 需要考虑下面是个方面:
  • 法制政策
  • 硬件限制
  • 与其他应用接口
  • 并发操作
  • 审计功能
  • 控制功能
  • 高级语言需求
  • 握手协议
  • 应用的关键程度
  • 安全考虑
  • 质量属性:规约了软件产品必须具有的一个性质是否到达质量一个所期望的水平属性 描述 可靠性 软件系统在指定环境中没有失败而正常运行的效概率 存活性 当系统的某一个部分系统不能运行时,该软件继续运行或支持关键功能的可能性 可维护性 发现和改正一个软件故障或对特定的范围进行修改所需求的平均工作 用户友好性 学习和使用一个软件系统的容易程度 安全性 在一个预定的时间内,使软件系统安全的可能性 可移植性 软件系统运行的平台类型

1.定义需求的基本格式;—-需求规约

概念;

一个需求规约是一个软件项/产品/系统所有需求陈述的正式文档,是一个软件产品/系统的概率模型

基本性质:

IEEE标准还规定SRS必须具有以下4个性质:

  • 重要性和稳定性程度
  • 可修改的
  • 完整的
  • 一致的

2.表达需求规约的三种风格

  • 非形式化的规约 即以一种自然语言来表达需求规约
  • 半形式化的规约 即以半形式化符号体系(包括术语表、标准化的表达格式等)来表达需求规约
  • 形式化规约 即以一种基于良构数学概念的符号体系来编制需求规约,一般往往伴有解释性注释的支持

3.需求规约的作用

  • 需求规约是软件开发组织和用户之间一份实事上的技术合同,是产品功能及其环境的体现
  • 需求规约是一个管理控制点
  • 对于产品/系统的而设计,需求规约是一个正式的、受控的起始点
  • 需求规约是创建产品验收计划和用户指南的基础。

Original: https://www.cnblogs.com/shuisanya/p/16636080.html
Author: 水三丫
Title: 软件工程 软件需求与软件需求规约 第1篇随笔

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/581446/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 离线版centos8安装docker笔记

    嗨嗨哈哈,已经很久没有坐下来胡编乱造一点笔记了,平时云服务器搞惯了,一个命令就安装好了docker了的,但这次生不逢时的新机房就没那么幸运了,有多不逢时超乎想象,不仅仅服务器没有外…

    Linux 2023年6月14日
    0100
  • MySQL实现备份案例(2)

    案例1:MySQL8.0实现数据库冷备份和还原 10.0.0.10 — MySQL8.0 #停止数&a…

    Linux 2023年6月7日
    0110
  • Cisco GNS3教程,GNS3搭建IPv6 6rd环境,Linux 配置 IPv6 6rd详析

    Cisco GNS3 IPv6 6rd实验 1、回顾 前文:https://www.cnblogs.com/kingpop/p/14054321.html在描述Cisco GNS3…

    Linux 2023年6月6日
    0102
  • VMware ESXi 7.0 U2 SLIC 2.6 & Unlocker 集成 Intel NUC 网卡、USB 网卡和 NVMe 驱动

    404. 抱歉,您访问的资源不存在。 可能是URL不正确,或者对应的内容已经被删除,或者处于隐私状态。 [En] It may be that the URL is incorre…

    Linux 2023年5月27日
    0103
  • 【原创】Linux v4l2框架分析

    背景 Read the fucking source code! –By 鲁迅 A picture is worth a thousand words. –…

    Linux 2023年5月27日
    081
  • Redis使用Swap,但系统可用内存充足

    最近生产环境遇到一个很奇怪的问题,系统内存32G,redis使用8G左右,剩余的内存都被系统cache使用,从表面上看系统可用内存有20G左右。但是系统运行过程中,redis时不时…

    Linux 2023年6月14日
    098
  • 国庆专属头像一键生成搭建教程,附源码!

    国庆节马上就要来啦! 没有一个像样的微信头像怎么行。 为此小编为大家带来了一款国庆节国旗头像生成源码,有服务器、域名的朋友可以自行下载上传至服务器之后提供给大家使用。 没有服务器、…

    Linux 2023年6月7日
    0128
  • 同一台电脑生成多份ssh私钥和公钥,映射多个GitHub账号

    当我们使用 Git 进行代码版本控制时,经常出现一台电脑需要连接多个Git 账号的情况,此时需要在一台电脑上生成多份 ssh 私钥和密钥,同时映射多个 Git 账号;这里我们需要同…

    Linux 2023年6月14日
    098
  • CentOS导入CA证书

    把CA证书放到如下目录 /etc/pki/ca-trust/source/anchors 再命令行运行 /bin/update-ca-trust 如下所示的操作步骤 删除证书只需要…

    Linux 2023年6月6日
    0100
  • WEB自动化-10-Page Object 模型

    10 Page Object 模型 10.1 概述 在针对一个WEB页面编写自动化测试用例时,需要引用页面中的元素( 数据)才能进行操作( 动作)并显示出页面内容。如果编写的测试用…

    Linux 2023年6月7日
    087
  • Golang环境安装

    一、下载地址 Golang: Downloads – The Go Programming Language GoLand编辑器: Download GoLand: A…

    Linux 2023年6月13日
    0110
  • 记一次从源码泄露到getshell(二)

    0x00 前言 文章所述漏洞已经提交至漏洞平台,且所有恶意操作均已复原 0x01 源码泄露 http://www.xxx.com.cn/www.zip 老规矩拿到源码先通关关键词找…

    Linux 2023年5月28日
    0110
  • 字符串

    20、【剑指Offer学习】【面试题20:表示数值的字符串】 38、【剑指Offer学习】【面试题38:字符串的排列】 46、【剑指Offer学习】【面试题46:把数字翻译成字符串…

    Linux 2023年6月13日
    0117
  • CMU15-445 数据库导论 Storage01

    CMU15-445 01 Storage 1. 参考资料: [1] CMU15-445:Database Systems [Andy Pavlo] https://15445.co…

    Linux 2023年6月6日
    0104
  • 最新超详细的VMware虚拟机的下载与安装

    一、了解VMware VMware虚拟机软件是一个”虚拟PC”软件,它使你可以在一台机器上同时运行二个或更多Windows、DOS、LINUX系统。与&#8…

    Linux 2023年6月15日
    0135
  • 聊聊Mysql主从同步读写分离配置实现

    Hi,各位热爱技术的小伙伴您们好,好久没有写点东西了,今天写点关于mysql主从同步配置的操作日志同大家一起分享。最近自己在全新搭建一个mysql主从同步读写分离数据库简单集群,我…

    Linux 2023年6月14日
    098
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球