diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | description | 1 | ||||
-rw-r--r-- | parnas-a-rational-design-process.rst | 28 |
3 files changed, 22 insertions, 8 deletions
@@ -1,3 +1,4 @@ *.html *.bak *~ +description diff --git a/description b/description deleted file mode 100644 index 4244d11..0000000 --- a/description +++ /dev/null @@ -1 +0,0 @@ -A Chinese translation for D L Parnas and P C Clements. 1986. A rational design process: How and why to fake it. IEEE Trans. Softw. Eng. 12, 2 (February 1986), 251-257.
\ No newline at end of file diff --git a/parnas-a-rational-design-process.rst b/parnas-a-rational-design-process.rst index f64a825..e263a76 100644 --- a/parnas-a-rational-design-process.rst +++ b/parnas-a-rational-design-process.rst @@ -64,7 +64,7 @@ Page 1 徐梦旗 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -理性设计过程:如何、为何要仿制它 +理性设计过程: 如何、为何要仿制它 摘要 @@ -85,15 +85,26 @@ Page 2 田遍地 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -一个理性的设计过程:如何和为什么伪造它? +理性设计过程: 如何、为何要仿制它 -DavidL.Parnas 加拿大维多利亚湾,维多利亚大学计算机科学系和美国华盛顿计算机科学和系统分支海军研究实验室,Paul C. Clements美国华盛顿特区计算机科学与系统科海军研究实验室。 -1.寻找哲人之石:为什么我们要一个理性的设计过程? +**David L.Parnas** - 加拿大维多利亚大学计算机科学系,美国华盛顿海军研究实验室计算机科学和系统分支 +**Paul C. Clements** - 美国华盛顿海军研究实验室计算机科学与系统分支 - 一个理性的人总是有一个很好的理由来做他所做的事情。所采取的每一步都可以被证明是达到一个明确目标的最好方法。我们大多数人都认为自己是专业人士。然而,对许多观察家来说,通常的软件设计过程似乎是相当不合理的。程序员似乎经常在没有任何理由的情况下做出决定。他们一开始就没有明确说明他们要建设什么。他们做出了一系列的设计决策,但并没有清楚地说明为什么他们会以自己的方式做事。他们的目标从来没有明确过;他们的理由很少被解释。 - 我们中的许多人对这样的设计过程并不满意。这就是为什么对软件设计、编程方法、结构化编程和相关主题进行研究的原因。理想情况下,我们希望从一个要求的陈述中导出我们的程序,在同样的意义上,定理是从公开的证明中的公理导出的。所有可以被分类为“自顶向下”的方法都是我们希望有一个理性的、系统的软件设计方法的结果。 +I. 寻找哲人之石: 为什么要理性设计过程? +````````````````````````````````````````````````````````````` + +理性的人做事总有理由。每一步都是实现既定目标的最佳选择。大多数人自认为 +是专业人士。 然而,在观察家看来,通常软件设计过程显得相当不理性。程序 +员经常在没有理由的情况下做决定,没说清要做什么就动工了。他们做很多决定, +却说不清那么决定的理由。目标不明确,也很少解释如此决定的理由。 + + +很多人不满意这样的设计过程。 所以就有对软件设计、编程方法、结构化编程 +以及相关主题的研究。 理想情况下,我们希望像从公理中推出定理那样,从需 +求中获得程序。 所有 “自顶而下” 的方法, 都是我们渴望拥有理性、系统的软件 +设计方法的结果。 @@ -472,7 +483,10 @@ vii. 如何假装理想的过程? 我们相信此种类比同样适用于软件。 阅读软件文档是为理解这个程序,而不是 再现程序产生过程。 我们提供读者需要的合理化的文档。 -我们的文档在一个重要的方面与理想化的文档不同。 我们 **记录所有我们考虑过与排除的备选方案** , 包括记录文档的早期版本的决定。 对于每个备选方案,我们解释为什么当初会考虑它或为什么会最后排除它。 这样不管多长时间以后,我们(或维护者)有同样的问题就能从这些记录中找到答案。 +我们的文档在一个重要的方面与理想化的文档不同。 我们 **记录所有我们考虑 +过与排除的备选方案** , 包括记录文档的早期版本的决定。 对于每个备选方 +案,我们解释为什么当初会考虑它或为什么会最后排除它。 这样不管多长时间 +以后,我们(或维护者)有同样的问题就能从这些记录中找到答案。 |