summaryrefslogtreecommitdiff
path: root/parnas-a-rational-design-process.rst
diff options
context:
space:
mode:
authorHui Lan <lanhui@zjnu.edu.cn>2021-04-30 20:00:06 +0800
committerHui Lan <lanhui@zjnu.edu.cn>2021-04-30 20:00:06 +0800
commitdec505585902878d289b6db18c87b61b182f16f2 (patch)
treed63de671a6e11377a0203d15caaf0bcb863c5da4 /parnas-a-rational-design-process.rst
parent8770d413cd231671f283a944d7e0fb3ef91414d1 (diff)
parnas-a-rational-design-process.rst: revise the translation for pdf page 3.
Diffstat (limited to 'parnas-a-rational-design-process.rst')
-rw-r--r--parnas-a-rational-design-process.rst37
1 files changed, 17 insertions, 20 deletions
diff --git a/parnas-a-rational-design-process.rst b/parnas-a-rational-design-process.rst
index 82708b4..fa2ba4f 100644
--- a/parnas-a-rational-design-process.rst
+++ b/parnas-a-rational-design-process.rst
@@ -111,7 +111,7 @@ I. 寻找魔法石: 我们为什么想要理性设计过程?
很多人不满意这样的设计过程。 这就是为什么会有对软件设计、编程方法、结
构化编程以及相关主题的研究。 理想情况下,我们希望像从公开出版的公理中
推出定理那样,从需求中推出程序。 所有能被归类为“自顶向下” 的方法, 都
-是我们渴望拥有理性的、系统的软件设计方法的结果。
+是我们渴望拥有理性的、系统的软件设计方式的结果。
@@ -120,34 +120,31 @@ Page 3
(徐闰钞 翻)
-(所有可以被归类为“自顶向下”的方法都是我们希望有一种合理又系统的软件设计方法的结果。)
-
-本文既带来坏消息,也带来好消息。坏消息是,在我们看来,我们永远找不到哲
-学家之石。 我们永远找不到一个能让我们以完美地理性去设计软件的过程。好
-消息是我们可以伪造它。 我们向别人展示我们的系统, 就像理性设计师那样。
-进一步的好消息是这样做是值得的。
+本文带来坏消息和好消息。坏消息是,在我们看来,我们将永远找不到魔法石。
+我们将永远找不到能让我们以完美地理性方式去设计软件的过程。好消息是我们
+可以伪造它。 我们能向别人呈现我们的系统, 就像理性设计师那样。附加的
+的好消息是这样做值得。
II. 为什么软件设计“过程”总是理想化?
`````````````````````````````````````````````````````````````
-实际上软件项目永远不会按照上面的建议(像从公理中推出定理那样,从需求中
-获得程序)进行。 部分原因如下:
+我们永远不会看到软件项目像上面的建议进行。 一些原因罗列如下:
-1. 大多数情况下,委托构建软件系统的人并不能确切地知道他想要什么,也无
- 法告诉我们他确实想要的东西(说不清楚)。
+1. 大多数情况下,委托构建软件系统的人不知道他们确切想要什么,也无
+ 法告知我们他们确实知道的东西。
-2. 即使我们知道了所有需求,也还需要知道很多其他事情来设计软件。 许多细
- 节只有在我们开始实施时才会浮出。 期间我们学到的东西会使我们原先的设
- 计失效,我们必须回溯。
+2. 即使我们知道了需求,还有很多其它为设计软件我们需要知道的事实。 许多
+ 细节只有在我们进行实现时才会为我们所知。 我们学到的东西会使我们
+ 的设计失效,我们必须回溯。
-3. 即使没有2的困难,经验表明,人类无法完全一下子理解那么多细节。 为了
- 设计和建立正确的系统,我们必须考虑所有细节。 设计软件的过程就是试图
- 分离各个关注点的过程。 我们在每个关注点上工作,因其信息量可管理。
- 然而,在我们达到可管理的信息量前,我们必然会犯错误。
+3. 即使我们在开始之前就知道了所有相关事实,经验表明,人类无法完全理解
+ 过多必须要考虑的细节,以设计构建正确的系统。设计软件的过程是我们试
+ 图分离关注点的过程,以便我们工作时信息量易管理。然而,在我们到达那
+ 点前,我们必然会犯错误。
-4. 即使我们能够掌握所有需要的细节,稍大点的项目都会由于外部原因而发生
- 变化。 其中一些变化可能会使以前的设计决定失效。
+4. 即便我们能够掌握所有需要的细节,除了最不重要的项目,所有项目都会由
+ 于外部原因发生变化。 其中一些变化会使以前的设计决定失效。