一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

為了在軟件工程中獲得成功,我們必須更像心理學(xué)家而不是工程師

  愛因斯坦曾經(jīng)說過,如果他有一小時(shí)來拯救世界,他會花 55 分鐘來定義問題,只花 5 分鐘去尋找解決方案。除了在問題和解決方案上所花費(fèi)的時(shí)間比例之外,我完全同意他對于在設(shè)法解決問題之前先理解問題的重視程度。

  沒有充分理解問題的后果

  在軟件工程中,理解問題是在系統(tǒng)需求定義階段早期必須完成的工作。一個(gè)沒有被充分理解的問題,將導(dǎo)致定義不清和不完整的需求,并最終導(dǎo)致不成功的項(xiàng)目。多年來,有關(guān)失敗的項(xiàng)目和相關(guān)費(fèi)用的統(tǒng)計(jì)數(shù)字一直令人失望。僅舉其中幾個(gè)作為示例:

  根據(jù) Standish Group 的數(shù)據(jù):

  • 41% 的項(xiàng)目無法增加價(jià)值和產(chǎn)生足夠的投資回報(bào) (ROI)
  • 49% 的項(xiàng)目超出最初的成本估計(jì)
  • 只有 28% 的項(xiàng)目在預(yù)算范圍內(nèi)按時(shí)完成

  Standish Group 還將缺乏成功的原因歸結(jié)為以下因素:

  • 缺乏用戶參與
  • 業(yè)務(wù)目標(biāo)不明確
  • 無法捕獲基本需求
  • 缺乏對項(xiàng)目范圍的控制
  • 缺乏高管的支持

  IDC (International Data Corporation) 甚至更具體地指出了失敗的原因。他們發(fā)現(xiàn),在軟件開發(fā)中超過 80% 的失敗由需求發(fā)現(xiàn)、管理或分析中的問題直接導(dǎo)致的。

  并且根據(jù) IAG Consulting 的數(shù)據(jù),超過 40% 的 IT 預(yù)算將用于對較差的需求規(guī)范上。

  這些數(shù)字證明愛因斯坦是正確的。

  為什么不愿意投入時(shí)間

  就軟件開發(fā)而言,投入時(shí)間去理解問題,意味著要理解業(yè)務(wù)目標(biāo),正確識別利益相關(guān)者,提出正確的問題以探討問題,并使用合適的技術(shù)來描述系統(tǒng)應(yīng)該做什么,以及為什么要?jiǎng)?chuàng)建這個(gè)系統(tǒng)。雖然這看起來很明顯,軟件行業(yè)的人都明白必須要這樣做,但為什么花時(shí)間去理解問題卻很困難呢?

  我認(rèn)為困難源自以下原因:

  • 急于針對所需要的某件事情找到一個(gè)快速的解決方案,這是人性的特點(diǎn)。一個(gè)沒有經(jīng)驗(yàn)的分析師會覺得沒有詳細(xì)理解需求就去解決問題是一個(gè)特別大的挑戰(zhàn)。通常情況下,他考慮是否使用在以前的項(xiàng)目中創(chuàng)建的組件,即使用戶不斷解釋自己的困難也是徒勞。這種對解決方案的焦慮出現(xiàn)在許多層面。項(xiàng)目經(jīng)理和區(qū)域協(xié)調(diào)員都只有在他們看到像代碼行這樣實(shí)實(shí)在在的東西時(shí)才會感覺到進(jìn)步。只要他們不會在忽略理解業(yè)務(wù)問題的重要性時(shí)鼓勵(lì)開始實(shí)施,這就不是一個(gè)問題。
  • 系統(tǒng)分析師和工程師不愿意冒險(xiǎn)進(jìn)入他們通常不熟悉的知識領(lǐng)域,例如,業(yè)務(wù)流程和行業(yè)專業(yè)知識。談?wù)摫砀瘛?bào)告、函數(shù)和數(shù)據(jù)總是更容易一些的。
  • IT 專業(yè)人士在大多數(shù)大專院校中并沒有接受此學(xué)科領(lǐng)域的相應(yīng)培訓(xùn)。我們在計(jì)算機(jī)科學(xué)和工程方面受到了良好的培訓(xùn)。我們了解操作系統(tǒng)、統(tǒng)計(jì)、微積分、物理、編譯器和編程語言等。但沒有關(guān)注人文學(xué)科或心理學(xué),所以我們可以學(xué)著與缺乏這些技術(shù)知識的人溝通。
  • 在項(xiàng)目過程中,較低的用戶參與程度往往涉及到級聯(lián)開發(fā)流程(又稱為瀑布 開發(fā))所強(qiáng)加的文化,該流程在巴西仍被廣泛使用,僅在項(xiàng)目開始定義需求的時(shí)候以及項(xiàng)目結(jié)束驗(yàn)收系統(tǒng)的時(shí)候,才需要用戶參與。

  改變文化的三種方式

  好消息是,我們有辦法克服這些困難。要實(shí)現(xiàn)在軟件工程學(xué)科中實(shí)現(xiàn)或提高成熟度所需的文化轉(zhuǎn)變,則需要在以下三大支柱的建設(shè)方面進(jìn)行投資:流程、工具和人員。

  投資于流程

  在流程方面,在最近幾年已經(jīng)有巨大的發(fā)展。一些值得注意的示例包括,傳統(tǒng)的 Rational Unified Process、Agile Unified Process 或 XP (eXtreme Programming) 等敏捷流程,或 Scrum 項(xiàng)目管理方法。每個(gè)方法都有自己的特點(diǎn),并且不同程度地強(qiáng)調(diào)要維護(hù)與需求相關(guān)的基本要點(diǎn),如:

  • 用戶和利益相關(guān)者的持續(xù)參與
  • 并非在項(xiàng)目開始時(shí)指定所有需求,而是以迭代方式指定需求。
  • 使用適當(dāng)?shù)募夹g(shù)來促進(jìn)流程

  在名為 Agile Modeling: Effective Practices for ExtremeProgramming and the Unified Process 的這本書中,Scott W. Ambler 解釋了建模和文檔在任何軟件項(xiàng)目中的重要性,包括使用敏捷方法的項(xiàng)目。他強(qiáng)調(diào),如聯(lián)合應(yīng)用程序開發(fā) (JAD)、用例、訪談和觀察等傳統(tǒng)的技術(shù),可以適應(yīng)敏捷流程,而利益相關(guān)者的持續(xù)參與則是成功的關(guān)鍵。取決于不同的流程,發(fā)生變化的是,使用該技術(shù)的正式程度,以及花在該活動上的時(shí)間。

  投資于工具

  至于工具,一些極端的敏捷開發(fā)只捍衛(wèi)紙張的使用。另一些則使用多種技術(shù)和工具。考慮到該系統(tǒng)將在組織中保留幾年或幾十年,并且將接受維護(hù),我們必須利用資源使其記錄和修改更容易。除了地理分布的開發(fā)變得習(xí)以為常這個(gè)事實(shí)外,對協(xié)作開發(fā)支持工具的需求已非常緊迫。

  在這方面,對于正式程度要求較低的項(xiàng)目中的敏捷開發(fā)以及往往要接受監(jiān)管和審計(jì)的傳統(tǒng)項(xiàng)目來說,IBM® Rational® Requirements Composer 都是一個(gè)非常好的選擇。它構(gòu)建于 IBM® Rational® Jazz™ 技術(shù)之上,這是一個(gè)協(xié)作式平臺,并且它包括支持問題理解、需求發(fā)現(xiàn)和需求定義階段的特性。

  投資于人員

  至于人員,我們首先需要選擇有適當(dāng)經(jīng)驗(yàn)的分析師,并提供培訓(xùn)和指導(dǎo)。有些技術(shù)和最佳實(shí)踐可以改善團(tuán)隊(duì)合作。Donald Gause 和 Gerald Weinberg (見 參考資料)將 問題 定義為在 感知的 當(dāng)前狀態(tài)期望狀態(tài)之間的現(xiàn)有 差距從這個(gè)意義上講,問題有不同的解決方式。

  提供期望的狀態(tài)并非總是最好的解決方案。改變對當(dāng)前狀態(tài)的看法,可能會改變對問題的定義。例如,Microsoft 所收到的大部分關(guān)于產(chǎn)品(如 Word)的改進(jìn)請求,都要求增加該產(chǎn)品已經(jīng)具備的特性。

  更好的解決辦法應(yīng)當(dāng)是改變目前的看法,也許通過培訓(xùn)可以實(shí)現(xiàn)。解釋在解決方案中所涉及的成本和其他方面,這可能會改變客戶對期望狀態(tài)的看法。有時(shí),客戶要求的特性并不會解決他們的問題,所以他們不會使用這些特性,這是因?yàn)樗麄儗ζ谕麪顟B(tài)的感知可能是扭曲的。這方面的證據(jù)有 Standish Group 所公布的一個(gè)數(shù)字:“通常,系統(tǒng)中有 20-40% 的代碼行從未被使用”。

  分析問題的其他好處

  問題分析技術(shù)教我們要問正確的問題,將關(guān)注點(diǎn)轉(zhuǎn)移到探討不同的觀點(diǎn),并分解問題以找出看似問題實(shí)則只是一種表現(xiàn)的根源。

  最令人印象深刻的是,這些技能一般能幫助其他領(lǐng)域的專業(yè)人士為獲得成功做好準(zhǔn)備。銷售能否成功與對客戶業(yè)務(wù)問題的理解能力有關(guān)。營銷人員必須了解市場需求和消費(fèi)者行為。良好的溝通和問題分析能力有助于我們處理家庭關(guān)系。要理解十幾歲孩子的行為背后的原因,可能比您在了解客戶的情況時(shí)所面臨的阻力和困難更大。您需要知道如何與帶有不同觀點(diǎn)的人打交道,以及如何讓自己站在別人的立場,以真正了解他們的困難和需要。有些人天生就具有這種能力,而其他人必須認(rèn)識到自己的局限性,并通過適當(dāng)?shù)募记珊团嘤?xùn)來磨練自己的技能。

  奇妙的是,37 年前,Gerald Weinberg 出版了一本名為 The Psychology of Computer Programming 的書,該書在今天仍然適用,因?yàn)橐恍┗镜暮兔黠@相同的問題已經(jīng)持續(xù)了幾十年。根據(jù) Gerald Weinberg 的書,是否懂得應(yīng)用一點(diǎn)心理學(xué)和人文科學(xué)可能是一個(gè)人的成功以及軟件開發(fā)團(tuán)隊(duì)的成功的關(guān)鍵。  

  為什么高管的支持至關(guān)重要

  為了讓三大支柱(流程、工具和人員)可以在組織內(nèi)部和諧地合作,高管的支持非常關(guān)鍵,因?yàn)楸仨毻咨铺幚?“昨天獲得” 的焦慮和壓力。數(shù)字表明,只是維持現(xiàn)狀對業(yè)務(wù)和 IT 都是不利的。應(yīng)該考慮使用一些方法來改變軟件工程的未來,并因此改變?nèi)藗儗?IT 的看法,使其成為一個(gè)能夠通過技術(shù)創(chuàng)新增加業(yè)務(wù)價(jià)值的成本中心。

it知識庫為了在軟件工程中獲得成功,我們必須更像心理學(xué)家而不是工程師,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产视频 每日更新 | 久久香蕉精品 | 国产高清免费的视频 | 国内精品久久久久久影院老狼 | 亚洲逼院 | 日韩天天摸天天澡天天爽视频 | 亚洲国产第一 | 久久精品资源 | 美女福利视频一区 | 婷婷夜夜躁天天躁人人躁 | 欧美黑人xxxxx性受 | 亚洲国产视频网 | 欧美午夜色大片在线观看免费 | 99亚洲精品视频 | 久久性妇女精品免费 | 日韩午夜在线观看 | 国产小视频在线 | 91精选视频在线观看 | 中文有码中文字幕免费视频 | 美国一级毛片aa黑寡妇 | 亚洲成a人片在线网站 | 久久国产99 | 国亚洲欧美日韩精品 | 国产精品久久久久亚洲 | 超级碰碰青草免费视频92 | 91精选视频 | 亚洲一区二区三区福利在线 | 美女三级在线 | www.婷婷| 四虎永久免费在线 | 午夜精品久久久久久中宇 | 国产愉拍精品视频手机 | 久久精品这里热有精品2015 | 韩国欧洲一级毛片免费 | 欧美亚洲国产精品第一页 | 国产一级一极性活片 | 国内久久久久影院精品 | 婷婷色在线观看 | 欧美激情国产一区在线不卡 | 亚洲国产精品久久婷婷 | 色哟哟www视频在线观看高清 |