軟體開發過程中的等待

來源:互聯網
上載者:User

等待在軟體開發過程中的浪費比例應該是最大的。

下面這些種等待,在你的項目中是否也發生過呢?

(1)等待客戶確認
(2)等待上司命令
(3)等待環境構築
(4)等待前一個階段的成果物
(5)等待Bug修改完畢
(6)等待測試結果
(7)等待UI設計圖
(8)等待不知道什麼——莫名其妙的等待

其實大可不必發生這些等待。

首先,要弄明白髮生等待的原因,只有這樣才能夠找到根本去消除一些不必要的等待。

等待是怎麼發生的呢?

第一種等待工序定義錯誤造成的。

為什麼兩個工序之間需要空閑時間呢?因為這兩個工序是由不同的人來完成的。一個人工作的時候另外一個人必須等待。

---------------

比如:以Bug修改為例,測試人員登記Bug後,開發人員需要分析一下Bug產生原因,進行影響性分析,進而提出解決方案,並修改bug,自己驗證後再提交給測試人員確認。

整個過程中,測試人員基本處在等待狀態。

如果說這是因為工序就是這樣定的,沒有辦法,只能等待,那就有些遺憾了。

在分析出問題的現象之後應該繼續分析問題的實質。
之所以迴歸測試的過程需要等待的原因是流程本身設計有誤。也就是說,測試需要等待的流程設計導致了等待的發生。

設想一下,如果把測試放在前面,而代碼修改放在後面會怎麼樣呢?

也就是說,測試案例是通過自動化的測試代碼來表達的。
開發人員只要運行測試代碼就可以知道代碼的修改是否正確。那麼,此時測試代碼已經書寫完成了的測試人員大可以去做別的工作(比如增加新的測試案例),而無需等待。

--------------------

再比如,需求文檔發送給客戶後,需要等待的客戶確認,只有等客戶確認了之後才能夠開始開發工作。

這也是工序要求如此,前一工程不完成,後一工序無法開始。

其實並不是這樣的,這種等待是因為溝通方式選擇錯誤。

需求採用文檔書寫就導致了必須要等待。如果(功能性)需求採用可以工作的原型來展示(也就是說直接開始開發工作,並且用開發出來的成果物向客戶展示),那麼只要客戶確認說OK,就可以直接將原型轉成可以工作的軟體(比如修改開發版/發布版標誌位)。換句話說,需求確認結束,開發也就基本完成了。如果客戶說要變更,那就按要求變更,直到客戶確認OK即可。

至於非功能性需求,如效能、安全、容錯等可以通過會議討論,白板拷貝的方式留下確認,馬上進入開發對應,而無需等待。

上述兩種等待是工序設計錯誤導致的等待,可以通過調整工序來規避。

第二種等待是由於管理不到位造成的。

比如:由於沒有對需求確認文檔進行管理,導致需求細節不明,需要回憶、搜尋。在回憶搜尋、期間無法進行後續工作所形成的等待就是管理不到位造成的。

但是,反過來講,如果要將所有的確認細節進行文檔整理,也是需要花費工時的,二者之間的得失如何權衡?Team Dev會出於自我保護的目的而留下文檔記錄。但是這種做法還會形成別的浪費。比如:咬文嚼字。

那麼功能性需求應該是怎麼記錄的呢?故事卡,編號。

 

更有甚者,全員停機殺毒...

 

管理不到位的問題,可以通過改善管理方式進行規避。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.