我目前正在更新设计文档,以使其对未来的开发人员来说是正确的和最新的。
当前,该文档仅关注事实,介绍设计的方式。提出的任何决定都没有理由。我认为,掌握基本原理很重要,这样开发人员才能知道事情为什么如此,因为这很可能会影响未来的决策。对于我来说,不可能为所有设计决策(尤其是在我开始从事该项目之前所做的决策)添加依据,但是我正在本部门尽我所能。
但是,考虑到项目的要求,某些设计决策是非常糟糕的决策。不过,也有一些不错的。
我最初的想法是,我应该讨论设计问题以及针对这些问题的潜在解决方案或变通办法,以引起未来维护者的注意,但是我不确定设计文档是否适合进行此类讨论和提供信息。我不希望其他人在该系统上工作并更新文档时使设计“批判”猛增到“撕毁该设计的新特性”,因为这显然是不合适的。
我的经理会支持任何一个决定,所以这取决于我。无论采用哪种方法,生成的文档都将进行正式版本控制,并通常在执行开发任务之前将其提供给系统上的开发人员。期望新的开发人员在开始开发工作之前先熟悉与给定软件系统相关的文档。
问题:
- 设计文件应遵循原始事实(“这就是设计”)和基本原理(“这就是设计的原因”)还是应该用于指出设计中可能存在问题的无缺陷问题未来的开发商?
- 如果不应该使用设计文档来捕获这些信息,那么应该通过讨论设计原理,权衡和已知问题(不是缺陷,因为可以跟踪缺陷)的讨论,应该捕获哪种类型的文档,以及应该捕获什么其他类型的文档?使用其他工具)?