8.2 验证遵循的原则
验证目标系统的需求的正确性该从哪些方面着手呢,或者说正确需求应该遵循的原则有哪些?一般来说,有以下4点原则。
(1)一致性。
所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。
(2)完整性。
需求必须是完整的,需求规格说明书应该包括用户需要的每一个功能或性能。
(3)现实性。
指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的。说“现有的硬件技术和软件技术”是因为对硬件技术的进步可以做些预测,对软件技术的进步则很难做出预测,只能从现有技术水平出发判断需求的现实性。(https://www.daowen.com)
(4)有效性。
必须证明需求是正确有效的,确实能解决用户面对的问题。
好了,现在已经知道验证需求要遵循哪些原则,接下来说说如何遵循这些原则。
(1)验证需求的一致性:当需求分析的结果文档是用自然语言书写的时候,除了靠人工技术审查、验证软件系统规格说明书的正确性之外,目前还没有其他更好的“测试”方法。而且,这种非形式化的规格说明书是难于验证的,特别在目标系统规模庞大、规格说明书篇幅很长的时候,人工审查的结果是冗余、遗漏和不一致等一些问题可能因没被发现而继续保留下来,以致软件开发工作不能在正确的基础上顺利进行。为了克服上述困难,人们提出形式化的描述软件需求的方法。当使用形式化的需求陈述语言书写软件需求规格说明书时,可利用相关软件工具验证需求的一致性,从而有效地保证软件需求的一致性。
(2)验证需求的现实性:为了验证需求的现实性,分析员应该参照以往开发类似系统的经验,分析现有的软、硬件技术实现目标系统的可能性,必要的时候可采用仿真或性能模拟技术,辅助分析软件需求规格说明书的现实性。
(3)验证需求的完整性和有效性:只有系统的目标用户才真正知道软件需求规格说明书是否完整、准确地描述了他们的需求。因此,检验需求的完整性,特别是证明系统确实满足用户的实际需要(即需求的有效性),只有在与用户的密切合作下才能完成。然而许多用户并不能清楚地认识到他们的需要(特别在要开发的系统是全新的,以前没有使用类似系统的经验时,情况更是如此),不能有效地比较陈述需求的语句和实际需要的功能。只有当他们有某种软件系统可以实际使用和评价时,才能完整确切地提出他们的需要。理想的做法是先根据需求分析的结果开发出一个软件系统,请用户试用一段时间以便认识到他们的实际需要是什么,在此基础上再写出正式的“正确的”规格说明书。但是,这种做法将使软件成本增加一倍,因此实际上几乎不可能采用这种方法。使用原型系统是一个比较现实的替代方法,开发原型系统所需要的成本和时间可以大大少于开发实际系统所需要的。用户通过试用原型系统,也能获得许多宝贵的经验,从而可以提出更符合实际的要求。