diff options
author | Hui Lan <lanhui@zjnu.edu.cn> | 2021-07-24 16:27:16 +0800 |
---|---|---|
committer | Hui Lan <lanhui@zjnu.edu.cn> | 2021-07-24 16:27:16 +0800 |
commit | 536bb1f8a39bb7c25d6ddfbaf168b2e84cd0a6c6 (patch) | |
tree | e90d03b350ee819367ddab66fcf602999a42cad9 /parnas-a-rational-design-process.rst | |
parent | 0a3eb60ea26a3b533fb0bb6a6ca936eb6ec8125a (diff) |
parnas-a-rational-design-process.rst: 融入欧阳芳的翻译 (PDF page 18).
Diffstat (limited to 'parnas-a-rational-design-process.rst')
-rw-r--r-- | parnas-a-rational-design-process.rst | 46 |
1 files changed, 21 insertions, 25 deletions
diff --git a/parnas-a-rational-design-process.rst b/parnas-a-rational-design-process.rst index fb09aaa..339ae5f 100644 --- a/parnas-a-rational-design-process.rst +++ b/parnas-a-rational-design-process.rst @@ -580,34 +580,30 @@ Page 17 Page 18 ----------------------------------------------------------------------------------- -(方梓安 翻) +(方梓安 翻, 欧阳芳 改) -VII. 现在, 如何假装理想的过程? +VII. 现在, 我们如何假装理想的过程? `````````````````````````````````````````````````````````````````````````````` -上文描述了我们希望遵循的理想过程,以及这一过程所产生的文档。 我们通过 -产生文档来假装这个过程。 我们用上文描述的顺序去试着产生一系列文件。 如 -果某部分信息缺失,我们在文档相应位置注明此处信息缺失,然后着手设计(设 -计时假定该部分信息会改变)。 如果我们发现错误,就会更改错误,并更改后 -续文件的错误。 将文档作为设计的媒介。在设计决定在所有层面都获准并纳入 -文档前,该设计决定无效。不管中途我们如何经常犯错,最终的文档都会准确、 -更容易理解。 我们不展示事情发生的方式,我们展示我们希望它们发生的方式, -以及事情本身。 - -甚至数学,许多人认为最理性的学科,也遵循上述过程。 数学家不断地改进他 -们的初始证明,通常最后的证明与初始证明很不一样。 初始证明往往来自痛苦 -的发现之旅。 有了初始证明后, 数学家的理解慢慢加深, 会去简化证明。最 -终, 数学家找到了一个更简单的证明,使定理的真实性更明显。 更简单的定 -理证明出版了,因为读者对定理蕴含的真理比对定理的发现过程更感兴趣。 - - -我们相信此种类比同样适用于软件。 阅读软件文档是为理解这个程序,而不是 -再现程序产生过程。 我们提供读者需要的合理化的文档。 - -我们的文档在一个重要的方面与理想化的文档不同。 我们 **记录所有我们考虑 -过与排除的备选方案** , 包括记录文档的早期版本的决定。 对于每个备选方 -案,我们解释为什么当初会考虑它或为什么会最后排除它。 这样不管多长时间 -以后,我们(或维护者)有同样的问题就能从这些记录中找到答案。 +上文描述了我们希望遵循的理想过程,以及在这过程中会产生的文档。 我们通过 +产生(如果我们用理想的方式做事会产生的)文档来假装这个过程。 我们试图用之前描述过的顺序去产生文档。 如 +果我们无法得到某部分信息,我们在文档相应位置注明,然后着手设计(犹如期望这部分信息将会改变)。 +如果我们发现错误,就会更改错误,并更改后续文件的错误。 我们将文档作为设计的媒介,并且,在将设计决定纳入 +文档获得所有层面的批准之前,不认为已经做出了任何设计决定。不管中途我们如何磕磕绊绊,最终的文档都会更容易理解并且准确。 +我们不展示事情的实际发生过程,我们展示我们希望它们发生的过程,以及事情本身。 + +即使是数学,许多人认为最理性的学科,也遵循上述过程。数学家勤勉地润色他 +们的证明,通常展示一个与他们最初发现的证明很不一样的证明。初始证明通常是痛苦 +的发现过程的结果。当数学家们致力于证明时,理解加深,证明简化。最 +终, 某一数学家找到了一个更简单的证明,使定理的真理性更明显。更简单的证明出版了,因为读者对定理的真理性感兴趣,而非发现的过程。 + + +我们相信类似推理同样适用于软件。阅读软件文档的人们想要理解这个程序,而不是 +再现程序的发现过程。我们提供他们需要的合理化的文档。 + +我们的文档在一个重要方面与理想化的文档不同。 我们制定**记录所有我们考虑 +过与拒绝的备选方案**的政策,包括在文档的早期版本中记录的决定。 对于每个备选方 +案,我们解释为什么它被考虑并且为什么最后被拒绝。 几个月,几周,甚至几个小时后,当我们奇怪我们当初为什么那样做时,我们可以回去并找到原因。二十年后,维护者会有很多同样的问题,并会从我们的文档中找到他的答案。 |