需求规范的初稿已经完成,现在是时候评估需求,审查规范.此过程的一部分是确保规范中没有相当大的差距.毋庸置疑,这些差距导致了高度不准确的估计,不可避免的范围在项目后期蔓延,并最终导致死亡进程.
有哪些优秀,有效的技术可以精确定位缺失和隐含的要求?
我很高兴重新访问已接受的答案,只要有人提交更好,更全面的解决方案.
相对于通用/整体模型评估模型元素的生命周期,例如
acquisition --> stewardship --> disposal
Run Code Online (Sandbox Code Playgroud)
为了对规范中实体的生命周期进行更细粒度的分析,请为需求中的主要实体制作一个粗略矩阵;这是一个矩阵,其中操作/应用程序作为行,实体作为列。在每个单元格中,如果应用程序创建实体,则放置 C,R 表示读取,U 表示更新,D 表示删除,或 E 表示“编辑”;“E”包含 C、R、U 和 D(大多数“主表维护”应用程序将是 E)。然后检查每一列的 C、R、U 和 D(或 E);如果缺少一项(E 除外),请判断是否需要它。矩阵的行和列可以重新排列(手动或使用亲和力分析)以形成通常对应于子系统的有凝聚力的实体和应用程序组;这可能有助于稍后的物理系统分配。
将“用户”实体列添加到 CRUDE 矩阵并指定每个应用程序(或功能或功能区域或任何您想要调用的需求的处理/行为方面)是否接受来自用户的输入也很有用,为用户生成输出,或与用户交互(我为此使用 I、O 和 N,并且始终将用户设置为第一列)。这有助于确定哪里需要用于数据输入和报告的用户界面。
目标是检查规范的完整性;上述技术可用于检查实体的生命周期是否相对于所识别的实体和应用程序是“封闭的”