自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

軟件開發(fā)的真正問題:管理太復(fù)雜

原創(chuàng)
開發(fā) 項(xiàng)目管理
軟件開發(fā)工程一般都非常復(fù)雜,但更復(fù)雜的管理方式并不能解決問題。一位經(jīng)驗(yàn)豐富的架構(gòu)師撰文總結(jié)自己的經(jīng)驗(yàn)說,管理者和開發(fā)者可以參考敏捷開發(fā)的思路,并致力于剔除那些低效的開發(fā)步驟。

【51CTO精選譯文】項(xiàng)目越來越大,軟件開發(fā)越來越復(fù)雜,管理者有時會感覺自己需要通過更加復(fù)雜的管理方法來解決這一問題。然而這被證明是不成功的。Lott先生是一位擁有30余年軟件開發(fā)經(jīng)驗(yàn)的程序員、DBA、項(xiàng)目管理以及軟件架構(gòu)師,近日撰寫了一篇博文描述了自己解決復(fù)雜問題的一些經(jīng)驗(yàn)。51CTO開發(fā)頻道將此博文翻譯,內(nèi)容如下。

有人總喜歡拿“軟件危機(jī)”說事。我們無法足夠快、足夠低成本或足夠好的開發(fā)軟件。我同意埃德斯加·狄克斯特拉(Edsger Wybe Dijkstra)的觀點(diǎn),軟件開發(fā)確實(shí)非常非常復(fù)雜。那么我的結(jié)論是否指軟件成本緣于其復(fù)雜性?不,我認(rèn)為軟件成本高的原因來自于使用了錯誤的行為來管理軟件的高成本。

控制的誤解

人們關(guān)于控制的最大誤解當(dāng)屬項(xiàng)目計(jì)劃。我認(rèn)為,軟件開發(fā)項(xiàng)目管理工具,尤其是微軟的Project,是我們犯下的最大錯誤。至于證據(jù),大家可以了解一下敏捷開發(fā)方法。敏捷開發(fā)的一個關(guān)鍵元素是削減(或消除)軟件開發(fā)相關(guān)的項(xiàng)目管理愚蠢行為。

我認(rèn)為,軟件開發(fā)工程一般都非常復(fù)雜,一個大的MPP文件并不能削減其復(fù)雜性,也不會有助于任何人理解其復(fù)雜性。我認(rèn)為,我們不應(yīng)該嘗試征服這種復(fù)雜性,那是一種非常愚蠢的行為。如果你發(fā)現(xiàn)自己需要一個非常復(fù)雜的文檔來征服許多非常復(fù)雜的復(fù)雜性,你正在犯錯。

簡潔性說明

我認(rèn)為,用戶開發(fā)經(jīng)歷非常有用,因?yàn)樗鼈儗④浖_發(fā)的復(fù)雜性簡化為我們可以清楚表達(dá)和記憶的東西。這讓我們更有機(jī)會去裂解它。

如果用例要求一個大的復(fù)雜文檔,我們可能正在錯過本質(zhì)的東西。它應(yīng)該有一個簡潔、易記和非常容易寫到便箋條上的總結(jié)。它可以有一個詳細(xì)的技術(shù)性附錄。但它必須有一個簡潔、易于表達(dá)清楚的總結(jié)。

如果你無法輕松的解釋清楚用例,就說明它有些過于復(fù)雜了。

架構(gòu)

一個架構(gòu)圖可能非常有幫助。作為地基的架構(gòu)必須是經(jīng)過反復(fù)分析后確保是正確的。你必須絕對自信它的可行性。就如同任何數(shù)學(xué)方面的分析,你需要圖標(biāo)和公式,而且你需要展示你的工作。

架構(gòu)不需要故弄玄虛,而需要務(wù)實(shí)。一些簡潔的公式(便于記憶)再加上合理的解析,效果會好的多。

工作分解結(jié)構(gòu)(WBS)問題

#T#我發(fā)現(xiàn),具有復(fù)雜工作分解架構(gòu)的項(xiàng)目又多加了一層復(fù)雜性和無用的管理。軟件的成本非常高,那么讓我們嘗試通過增加管理來削減我們的成本。但是,這種為削減人力而增加人力的做法并沒有實(shí)際意義。

與其浪費(fèi)時間增加工作量,還不如確定一個人選,由其實(shí)現(xiàn)更有效的決策和保持開發(fā)進(jìn)度保持正常。

更多的推出局部解決方案,這比每周狀態(tài)報告更具價值。在理解詳細(xì)設(shè)計(jì)過程方面,更多的與產(chǎn)品擁有者交流,比一個精心編寫的計(jì)劃更有價值。

反駁項(xiàng)目管理的辯解

我們或許會這樣為項(xiàng)目管理辯護(hù):通過消除“障礙”或“低效”,它可以讓軟件開發(fā)過程更高效。我也曾經(jīng)相信這些,但現(xiàn)在我的觀點(diǎn)變了。

讓我們一起看一些項(xiàng)目管理可能會消除的那些所謂障礙:

◆用戶參與。更確切的說,無需用戶參與。我認(rèn)為項(xiàng)目管理這種做法除了傷害用戶外沒有其它效果。如果用戶不通過積極回答問題或檢查近期結(jié)果來幫助軟件開發(fā),那么開發(fā)出來的軟件不會創(chuàng)造任何價值?,F(xiàn)在就停止工作,發(fā)現(xiàn)哪些事情是用戶真正需要的。

◆技術(shù)資源。協(xié)調(diào)技術(shù)資源(數(shù)據(jù)庫管理員的、系統(tǒng)管理員的、獨(dú)立測試者的等)并不需要一個復(fù)雜的計(jì)劃、狀態(tài)會議或報告。它只需相關(guān)人士之間的幾個電話。簡單直接而有效。

◆決策。項(xiàng)目經(jīng)理不是產(chǎn)品所有者,也不是用戶,也不是技術(shù)專業(yè)人員,不會理解軟件開發(fā)過程中的危險所在。實(shí)際上,他們只是在一場他們無法完全理解的會話中擔(dān)當(dāng)一個服務(wù)者的角色。如果他們能夠做到不去承擔(dān)不屬于自己的任務(wù)而堅(jiān)持服務(wù)理念,這也不錯。

我不明白我們?yōu)楹蝺H僅把重點(diǎn)放在IT項(xiàng)目管理上。敏捷開發(fā)人士的觀點(diǎn)是正確的。通過真正削減成本和復(fù)雜性的做法來削減成本和復(fù)雜性,而不是通過增加管理。

原文:The Problem With Software Development is...  作者:slott

責(zé)任編輯:yangsai 來源: 51CTO.com
相關(guān)推薦

2011-07-08 08:37:05

軟件開發(fā)

2016-12-14 14:09:56

華為軟件DevOps

2012-08-20 10:34:07

軟件開發(fā)開發(fā)軟件

2023-01-09 16:08:19

2017-04-13 10:08:30

軟件開發(fā)開發(fā)

2014-10-08 09:34:23

git并行管理并行工程

2011-09-30 09:28:27

Linus Torva管理

2022-08-30 18:46:24

安全軟件開發(fā)測試軟件

2009-02-10 17:11:53

SaaSSaaS開發(fā)PaaS

2015-03-02 09:35:07

軟件開發(fā)

2011-08-10 08:58:14

項(xiàng)目管理

2012-02-20 09:58:38

ibmdw

2019-07-01 16:14:29

開發(fā)者技能工具

2017-03-17 08:15:17

敏捷軟件開發(fā)軟件開發(fā)

2012-06-18 09:34:14

2020-06-24 11:21:47

軟件開發(fā)面試

2024-11-07 12:14:36

2010-03-04 09:50:14

企業(yè)定制軟件開發(fā)

2022-07-19 16:31:29

軟件開發(fā)Kubernetes容器

2022-03-14 22:54:57

軟件開發(fā)性能
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號