有趣的话题!
首先,在我的个人网络中没有软件架构师使用 UML 作为设计系统的唯一方法,而且我也知道没有软件架构师按照执行机械测试所需的详细级别创建 UML。
其次,我个人非常不喜欢UML建模工具。如果实现了这样的正式验证方法,它很可能会出现在 Rational Rose 之类的东西中——我很久以前就发誓我再也不会接近它了。
然而,话虽如此,在正式的软件商店中,通常具有需求可追溯性,通常以矩阵形式实现,在一个轴上显示业务需求,在另一轴上显示设计工件。这样,您可以看到是否有任何需求与相应的解决方案不匹配,或者解决方案中是否存在不满足特定业务需求的元素。
保持这个矩阵更新是一件痛苦的事情,所以它不经常在敏捷团队中使用,但如果你正在为银行或航天飞机构建软件,那么它是一项很有价值的技术。
这可以告诉您您的设计是否完整,但不能告诉您它是否“正确”。
据我所知,如果不构建和测试或不依赖人类经验和知识,就无法判断设计是否“正确”。