软件的运行状态只有一种,可能吗?

GJB5000/CMMI需求开发过程中有个实践——开发运行方案和场景,这一实践对应的实证是软件需求规格说明的“3.1 要求的状态和方式”。

因为所谓场景,就是引起状态转换的行动。当软件满足特定条件,就会执行某个行动,产生一种或多种结果。而软件需求规格说明的3.1节就是要求描述软件的每种状态、每种状态适用的需求以及状态之间的转换,所以这一章节就是“开发运行方案和场景”的结果展示。

在GJB5000评价过程中,发现很多项目的软件需求规格说明描述软件的运行状态时,都说“本软件只用一种运行状态”,这可能吗?

在GJB438C中,对于软件运行的状态和方式给出了很多例子,如空闲、就绪、活动、事后分析、训练、降级、紧急情况、后备、战时和平时等。

对于每个软件,我们可以套用这些例子逐一分析软件是否具备多个状态。

  • 一个信号接收软件。软件接收前需要检查接口是否正常,检查完成后软件就进入“就绪”状态,之后软件接收、存储信号,这时软件不就是“活动”状态吗?

  • 一个数据处理软件。软件对接收到的数据进行处理,这时软件是“活动”状态,数据处理完成之后,根据需要给出不同的分析报告,这时就是“事后分析”状态。

  • 很多用于作战的软件,都会分“战时”和“平时”(系统联试、地面测试)状态。

  • 特别是“空闲”和“活动”,一个软件没有工作的时候状态是“空闲”,一旦开始工作状态就是“活动”,这对每个软件是不是都会具备的两种状态?

那么,对于军用软件来说,运行状态只有一种,可能吗?

这正是:

状态变化为场景,场景状态有多种

参考标准去分析,场景可能不唯一

作者简介:王小双,长期从事GJB5000推广、实施、评价、改进的工作,创建《软件工程之思》微信公众号,一直在《软件工程之思》分享GJB5000、CMMI、软件工程的知识和感悟。现致力于GJB5000咨询以及软件过程改进、软件工程能力提升的研究工作。

软件的运行状态只有一种,可能吗?》来自互联网,仅为收藏学习,如侵权请联系删除。本文URL:https://www.hashtobe.com/1141.html