2022-01-09 10:50:09|已瀏覽:108次
這些問題導致軟件宕機、返工等質量問題時有發(fā)生。
01了解基本原則的工程師,代碼質量和開發(fā)效率更勝一籌關于軟件質量,業(yè)界普遍認為有3個決定性要素:人、過程和工具。如何基于這些要素提升代碼的質量和開發(fā)效率,是軟件工程研究者和實踐者一直在努力的方向。不同的公司有不同的文化背景,雖然開發(fā)不同的軟件項目有不同的實踐過程,但所要遵守的基本原則都是一樣的。大量實踐證明——
了解軟件開發(fā)基本原則的工程師,比那些不了解基本原則的,編寫代碼的質量和開發(fā)效率明顯勝出一籌。
原則 1 質量第一QUALITY IS #1
無論如何定義質量,客戶都不會容忍低質量的產品。質量必須被量化,并建立可落地實施的機制,以促進和激勵質量目標的達成。即使質量沒達到要求,也要按時交付產品,這似乎是政治正確的行為,但這是短視的。從中長期來看,這樣做是自殺。質量必須被放在首位,沒有可商量的余地。Edward Yourdon 建議,當你被要求加快測試、忽視剩余的少量 bug、在設計或需求達成一致前就開始編碼時,要直接說“不”。
原則 7 盡早把產品交給客戶GIVE PRODUCTS TO CUSTOMERS EARLY
在需求階段,無論你多么努力地試圖去了解客戶的需求,都不如給他們一個產品,讓他們使用它,這是確定他們真實需求的最有效方法。如果遵循傳統(tǒng)的瀑布式開發(fā)模型,那么在 99% 的開發(fā)資源已經耗盡之后,才會第一次向客戶交付產品。如此一來,大部分的客戶需求反饋將發(fā)生在資源耗盡之后。和以上方法相反,可在開發(fā)過程的早期構建一個快速而粗糙的原型。將這個原型交付給客戶,收集反饋,然后編寫需求規(guī)格說明并進行正規(guī)的開發(fā)。使用這種方法,當客戶體驗到產品的第一個版本時,只消耗了 5%~20% 的開發(fā)資源。如果原型包含合適的功能,就可以更好地理解和把握最有風險的客戶需求,最終產品也就更有可能讓客戶滿意。這有助于確保將剩余的資源用于開發(fā)正確的系統(tǒng)。
原則 17 只要可能,購買而非開發(fā)IF POSSIBLE, BUY INSTEAD OF BUILD
要降低不斷上漲的軟件開發(fā)成本和風險,最有效的方法就是,購買現成的軟件,而不是自己從頭開發(fā)。確實,現成的軟件也許只能解決 75% 的問題。但考慮一下從頭開發(fā)的選擇吧:支付至少 10 倍于購買軟件的費用,且要冒著超出預算 100% 且延期的風險(如果最后能夠完成!),并且最終發(fā)現,它只能滿足 75% 的預期。對一個客戶來說,新的軟件開發(fā)項目似乎最初總是令人興奮的。開發(fā)團隊也是“樂觀的”,對“最終”解決方案充滿了希望。但幾乎很少有軟件開發(fā)項目能夠順利運行。不斷增加的成本通常會導致需求被縮減,最終研發(fā)出的軟件可以滿足的需求也許跟現成的軟件差不多。作為一個開發(fā)者,應該復用盡可能多的軟件。復用是“購買而非開發(fā)”原則在較小范圍內的體現。
原則 22 技術優(yōu)先于工具TECHNIQUE BEFORE TOOLS
一個沒規(guī)矩的木匠使用了強大的工具,會變成一個危險的沒規(guī)矩的木匠。一個沒規(guī)矩的軟件工程師使用了工具,會變成一個危險的沒規(guī)矩的軟件工程師。在使用工具前,你應該先要“有規(guī)矩”(即理解并遵循適當的軟件開發(fā)方法)。當然,你也要了解如何使用工具,但這和“有規(guī)矩”相比是第二位的。我強烈建議,在投資于工具以對某項技術“自動化”之前,先手工驗證這項技術,并說服自己和管理層:這項技術是可行的。在大多數情況下,如果一項技術在手工操作時不靈,那么在自動操作時也不靈。
原則 37 要承擔責任TAKE RESPONSIBILITY
在所有工程學科中,如果一個設計失敗,工程師會受到責備。因此,當一座大橋倒塌時,我們會問“工程師哪里做錯了?”當一個軟件失敗了,工程師很少受到責備。如果他們被責備了,他們會回答,“肯定是編譯器出錯了”,或“我只是按照指定方法的 15 個步驟做的”,或“我的經理讓我這么干的”,或“計劃剩余的時間不夠”。事實是,在任何工程學科中,用最好的方法也可能產出糟糕的設計,用最過時的方法也可能做出精致的設計。不要有任何借口。如果你是一個系統(tǒng)的開發(fā)者,把它做好是你的責任。要承擔這個責任。要么做好,要么就壓根不做。
本文由培訓無憂網長沙牛耳教育課程顧問老師整理發(fā)布,希望能夠對想在長沙參加影視動漫培訓的學生有所幫助。更多課程信息可關注培訓無憂網電腦IT培訓頻道或添加老師微信:15033336050
注:尊重原創(chuàng)文章,轉載請注明出處和鏈接 http://m.universityresearchassociates.com/news-id-13967.html 違者必究!部分文章來源于網絡由培訓無憂網編輯部人員整理發(fā)布,內容真實性請自行核實或聯系我們,了解更多相關資訊請關注程序開發(fā)頻道查看更多,了解相關專業(yè)課程信息您可在線咨詢也可免費申請試課。關注官方微信了解更多:150 3333 6050