嵌入式软件开发中的书面需求指南
1. 书面文档创建的常见陷阱
在软件开发过程中,创建适量的书面文档是一项重要工作,但也存在一些常见的陷阱。
1.1 以文档无法更新为由放弃文档
有人认为“花时间在文档上没有意义,因为文档无法保持更新,只有源代码中的内容才会更新”。然而,问题并非在于文档不能更新,而是开发团队没有维护文档的意识。这种情况导致设计过程忽略了除实际实现之外的文档,开发者觉得这些文档无用,进而不进行维护。实际上,开发者应该考虑添加一两个简单的文档是否能提高开发效率。如果这些文档看起来有用、简单且简短,开发者可能会有动力去维护它们。
1.2 项目结束时再创建文档
这种做法存在两个问题。其一,项目的结束时间往往不确定,或者会出现新的危机,导致旧项目的文档被搁置,转而投入新项目。其二,设计文档的目的是辅助设计过程,而不仅仅是记录历史。例如,自动流程图生成器生成的流程图可能无人阅读,对代码创建和后期维护都没有帮助。真正有价值的流程图应能传达关键信息,特别是在设计阶段。
2. 书面需求概述
2.1 重要性
每个系统都有需求,无论是否被书面记录下来。书面记录需求是良好开发过程的重要组成部分。如果没有书面需求,很容易遗漏重要功能,对系统的预期功能产生混淆,甚至开发出不符合要求的系统。跳过书面需求阶段,会将需求捕获推迟到效率较低的形式,如将需求隐含在代码中,这会显著增加发现和纠正需求问题的成本。
2.2 可能的症状
需求问题的常见症状包括:
- 没有一个单独的书面文档涵盖系统的所有需求。
- 需求文档存在,但过于