—— 不容忽視的開發(fā)準則
莫非定理超营,又稱莫非定律、墨菲定理虏劲、摩菲定理托酸、或者梅非定理,是美國的一名工程師愛德華?墨菲作出的著名論斷柒巫。墨菲定律主要內容是:事情如果有變壞的可能励堡,不管這種可能性有多小,它總會發(fā)生堡掏。
莫非定理的原句是這樣的:If there are two or more ways to do somethingand one of those ways can result in a catastrophe,then someone will do it.(如果有兩種或以上選擇念秧,其中一種將導致災難,則必定有人會作出這種選擇布疼。)這就告訴我們摊趾,事情往往會向你所想到的不好的方向發(fā)展,只要有這個可能性游两。墨菲定律的適用范圍非常廣泛砾层,它揭示了一種獨特的社會及自然現(xiàn)象。它的極端表述是:如果壞事有可能發(fā)生贱案,不管這種可能性有多小肛炮,它總會發(fā)生,并造成最大可能的破壞宝踪。
莫非定理更形象的解釋:假定你把一片干面包掉在地毯上侨糟,這片面包的兩面均可能著地。但假定你把一片一面涂有一層果醬的面包掉在地毯上瘩燥,常常是帶有果醬的一面落在地毯上秕重。因此莫非定理顯示,凡事可能出岔子厉膀,就一定會出岔子溶耘。那么技術風險能夠由可能性變?yōu)橥话l(fā)性的事實。
如果我們把這一片面包的一面定為事情的好的一面服鹅,另一面定義為壞的一面凳兵,通常我們的印象是結果的好壞都會各半。我們習慣的會認為企软,事情不會總是出現(xiàn)糟糕的一面的庐扫。而事實上,如果面包的糟糕的一面涂有果醬,那么事情的結果形庭,往往出乎我們的意料杰妓。這是因為出壞的情況和條件更成熟,用莫非定理來講碘勉,那么就一定就會現(xiàn)壞的結果巷挥,而事實上確實也是如此。
上面說的例子差不多是同概率的事件验靡,我們也許會有些誤解倍宾,可能理解的也不是很清楚。但是我們會發(fā)現(xiàn)另外一個問題胜嗓,如果我們希望某件事情不會發(fā)生高职,往往越是希望不發(fā)生,可能它越是偏偏發(fā)生辞州,并且造成重大的損失怔锌。我們不希望發(fā)生是因為我們知道它一旦發(fā)生,必然就會引起重大損失变过,同時我們又知道它發(fā)生的概率是非常小的埃元,因此我們常常就會忽略了對這種小概率事件做更正確的處理,通常會認為小概率事件不可能發(fā)生媚狰,但是事實上通常就會因為疏忽某個隱患導致它真的發(fā)生岛杀。
因此,在處理事情時崭孤,要盡可能的把事情考慮的更全面类嗤,并且對每一種出現(xiàn)的情況作出相應的處理。不要寄希望于小概率事件不會發(fā)生辨宠,而是要更加全面的做好各項應對措施遗锣。具體可以做到兩點,一是盡可能的把事情發(fā)生的概率降低嗤形,二是對這一概率問題的出現(xiàn)做出相應的必要處理準備精偿。
我們做程序開發(fā)也應當如此,我們誰都不敢保證我們可以寫成不出Bug的程序派殷,因此也不敢保證我們會開發(fā)出不出問題的產品还最。因此,莫非定理在這里就變得非常重要了毡惜。按照我們平常的思維我們總會忽略掉一些小概率的問題,并且認為這個基本不可能發(fā)生斯撮。因此我們常常會很大意的忽略掉這些問題的處理经伙,雖然通常情況下也沒有見到有什么問題的出現(xiàn)。但是這并不代表它就不會再發(fā)生了,也許現(xiàn)在不發(fā)生帕膜,但是終會有一天它就會發(fā)生枣氧,甚至會造成很糟糕的損失。這時候垮刹,莫非定理的地位就體現(xiàn)出來了达吞。莫非定理,它能很好的強調了這種意外結果的嚴重性荒典,通過這個定理可以將一些看似不可能發(fā)生的隱患問題極端的放大顯現(xiàn)出來酪劫。這就好像是我們在使用顯微鏡看細菌一樣,平時它們是不可見的寺董,但是通過顯微鏡就可以很清晰的看到它們的存在覆糟。因此會提醒我們更好的對細菌去關注和提高對它們的警惕性。這樣遮咖,在平常我們的思維里有很多因為我們的慣性思維習慣導致的問題缺陷滩字,在這個定理下就會很顯而易見,因此我們就會很自然的去重視這些問題御吞,并且就會去考慮到下一步的相應的對應措施麦箍。從而,莫非定理的出現(xiàn)可以幫助我們更好的改善產品陶珠,更重要的是可以很清晰的給我們指明需要改善的方向内列。只有這樣才能保證我們可以開發(fā)高質量的程序,研發(fā)出高質量的產品背率。
因此话瞧,莫非定理提示我們,在程序的開發(fā)過程中寝姿,或者說產品的開發(fā)過程中交排,對我們將要遇到的問題要有良好的預測性,而且要盡可能全面的預測到各種可能出現(xiàn)的情況饵筑,并且對每一個可能出現(xiàn)的問題做好相應的應對措施埃篓。這樣才能保證我們開發(fā)的產品能夠高質量、高標準根资,從而減少不必要的浪費和損失架专。
由此可見,在開發(fā)過程中對整體把控的重要性玄帕。要開發(fā)出優(yōu)秀的產品部脚,我們是需要盡可能的發(fā)現(xiàn)各種問題和解決各種問題。這不是說裤纹,只是在開發(fā)過程中遇到問題再解決問題委刘,這樣的發(fā)現(xiàn)問題和解決問題是沒有意義的,這樣本身就是一個問題,沒有從根本上去解決問題锡移。這就需要從整體上去衡量和預測問題呕童。只有這樣,預測出的問題才可能全面淆珊。
綜合上述的分析夺饲,我們可以依照莫非定理這一個準則,找出我們需要解決的各種隱患問題施符,通過我們的累積知識或者技術往声,去解決這些問題。只有將發(fā)現(xiàn)問題和解決問題結合在一起操刀,才能達到真正的理想效果烁挟。莫非定理的提出者就是一位工程師,這個定理的產生也出自于工程的本身骨坑,所以莫非定理在工程上的作用是不可估量的撼嗓。因此,莫非定理也會在工程的開發(fā)上扮演著不可能估量的角色欢唾。