diff options
-rw-r--r-- | parnas-a-rational-design-process.rst | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/parnas-a-rational-design-process.rst b/parnas-a-rational-design-process.rst index 8b8209d..eed51ee 100644 --- a/parnas-a-rational-design-process.rst +++ b/parnas-a-rational-design-process.rst @@ -158,15 +158,15 @@ Page 4 6. 我们经常被从相关项目获得的、或从课上听到的先入为主的设计思想、或自己发明的思想所拖累。 有时候我们会为尝试或使用自己喜欢的想法而去从事某个项目。 这些想法也 - 许不是经由理性过程从需求中产生;它们可能从其他来源自发地出现。 + 许不是经由理性过程从需求中导出的;它们可能从其他来源自发地产生。 7. 由于经济因素,我们常被鼓励去使用为其他项目开发的软件。在其他情况下, 我们也许会被鼓励与另一个正在进行的项目共享我们的软件。 如此产生的软 件可能不是任一个项目的理想软件,即,不是单纯地根据需求开发的软件,但是这 - 样的软件也足够好且节省力气。 + 样的软件也足够好且节省精力。 由于所有这些原因,软件设计者以理性、无错误的方式从需求中获得设计这样的 -情形是不现实的。我们相信从来没有系统以这种方式开发,或许将来也不会有。 +情形是相当不现实的。我们相信从来没有系统以这种方式开发,而且将来也不会有。 即使是教科书和论文中各种小程序开发也不是真实的。这些小程序是经过修改和 润色的,直到作者向我们展示了他希望看到的样子,而非实际发生的情况。 @@ -555,9 +555,9 @@ Page 19 (刘莉莉 翻, 王蓉 改) -我们几年前为演示理想过程所写的软件需求文档,可作为这个过程取得成功的一个例证 [9]。通常,人们假设:需求文件是在编码前产生的,之后就不会再被使用了。 然而,事实证明并非如此。满足该需求文档的软件的原始版本,现在仍在修订。软件每次更改后,负责测试的机构大量使用这个文档来选择他们要做的测试。当需要新的改变时,需求文档被用于描述什么必须改变、什么不能改变。软件投入使用后,这个过程中产生的第一份文档一直被用了很多年。明确的消息是,如果文档精心制作,它将在很长时间都有用。反过来说,如果文档将被大量使用,那么把它做对是值得的。 +我们几年前为演示理想过程所写的软件需求文档,可作为这个过程取得成功的一个例证 [9]。通常,人们会假设需求文件是在编码前产生的,之后就不会再被使用了。 然而,事实证明并非如此。满足该需求文档的软件的原始版本,现在仍在修订。软件每次更改后,负责测试的机构大量使用这个文档来选择他们要做的测试。当需要新的改变时,需求文档被用于描述什么必须改变、什么不能改变。软件投入使用后,这个过程中产生的第一份文档一直被用了很多年。明确的消息是,如果文档精心制作,它将在很长时间都有用。反过来说,如果文档将被大量使用,那么把它做对是值得的。 -成为一个理性的设计师很难,而且我们可能永远做不到。在我们尝试遵循这个过程当中,我们常发现在一些地方继承了一个没有明确理由的设计决策。 一个例子是我们要用的等式中的常量值。当我们询问常量的推导时, 我们发现,要么推导不存在,要么推导无效。当进一步追问时,我们被告知做这个决策是“因为它起作用 ( **because it works** )”。在这种情况下,设计师可以立一个研究项目去找出为什么它起作用, 或简单地“与它友好相处 ( **Get On With It**) ”。为我们的工作付钱的人已经把 **GOWI** 作为对许多此类问题的标准回答,并且我们不认为真正的工作会有所不同。然而, 每当我们把“因为它们起作用”作为决策理由时,我们将记录这个诚实的理由,而非误导以后的软件维护者去认为我们那么做有什么深刻的、哲学的理由。 +成为一个理性的设计师很难,而且我们可能永远做不到。在我们尝试遵循这个过程当中,我们常发现在一些地方继承了一个没有明确理由的设计决策。 一个例子是我们要用的等式中的常数。当我们询问常量的推导时, 我们发现,要么推导不存在,要么推导无效。当进一步追问时,我们被告知做这个决策是“因为它起作用 ( **because it works** )”。在这种情况下,设计师可以立一个研究项目去找出为什么它起作用, 或简单地“与它友好相处 ( **Get On With It**) ”。为我们的工作付钱的人已经把 **GOWI** 作为对许多此类问题的标准回答,并且我们不认为真正的工作会有所不同。然而, 每当我们把“因为它们起作用”作为决策理由时,我们将记录这个坦诚的理由,而非误导以后的软件维护者去认为我们那么做有什么深刻的、哲学的理由。 Page 20 |