1 背景
前文以实例的形式讨论了用例生成、需求检查等功能。这些功能可行的前提,是需求逻辑能够被计算机程序正确的识别、计算。
所谓需求结构化,是将非结构化需求转换为结构化需求的过程。而所谓结构化需求,是指基于明确语法表达的需求。结构化需求是半形式化的(semi-formal),可以转换为严格语义的形式化模型。
![](https://i-blog.csdnimg.cn/blog_migrate/1959f8d067d33f781c9c96d2df592310.png)
将需求结构化后,需求能够被计算机程序自动化处理,实现需求缺陷检查、基于需求的用例生成等功能。这一方法已经在多个工程应用中展现出显著价值,例如对系统需求生成十万级别的覆盖用例、对复杂决策逻辑进行缺陷检查等。
功能是好的,但是先要解决的眼前问题是:结构化需求从哪里来?
2 一般而言
一般而言,需求有三种情况:一是非结构化需求,典型是以自然语言描述的需求;二是结构化需求,一般是基于特定工具形成的设计开发产物;第三种,则属于灰色地带,即虽然有语法约束,但是由人工编写,语法没有得到严格执行和检查,导致结构化不彻底。
![](https://i-blog.csdnimg.cn/blog_migrate/6cac2004a010dc416a1690e812e6e9a7.png)