From ce15ae8b1a0f8b7cdf719702e754debd80632cfb Mon Sep 17 00:00:00 2001 From: Hui Lan Date: Mon, 18 Jul 2022 09:31:12 +0800 Subject: =?UTF-8?q?parnas-a-rational-design-process.rst:=20=E8=9E=8D?= =?UTF-8?q?=E5=85=A5=E8=93=9D=E6=B0=B8=E5=86=9B=E7=9A=84=E7=BF=BB=E8=AF=91?= =?UTF-8?q?=E6=94=B9=E8=BF=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- parnas-a-rational-design-process.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'parnas-a-rational-design-process.rst') diff --git a/parnas-a-rational-design-process.rst b/parnas-a-rational-design-process.rst index c6aeacf..6db167b 100644 --- a/parnas-a-rational-design-process.rst +++ b/parnas-a-rational-design-process.rst @@ -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 -- cgit v1.2.1