成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

為什么管理技術債務如此重要

移動開發
本文將討論快速還清技術債務至關重要的原因以及失敗的后果,以及如何解決軟件開發人員在嘗試優先處理技術債務時面臨的一些常見問題。

如果軟件開發商希望更快地采取行動,留住頂尖人才,避免從頭開始重新編寫應用程序,那么管理技術債務非常重要。

每家軟件開發商都有一定數量的技術債務,這是在短期內將不成熟的項目推向市場而在之后不斷進行完善和補充的額外開發工作。技術債務可以表現為糟糕的設計決策、急需的重構、技術升級和未解決的問題。

就像承擔金融債務一樣,技術債務可以為企業爭取更多的時間,但必須在未來以利息償還。與金融債務一樣,承擔和管理技術債務也有明智和不明智的方法。

本文將討論快速還清技術債務至關重要的原因以及失敗的后果,以及如何解決軟件開發人員在嘗試優先處理技術債務時面臨的一些常見問題。

[[431163]]

為什么要減少技術債務?

首先解決最重要的問題:為什么要減少企業的技術債務?畢竟,企業的一些應用程序到目前運行良好,而且肯定還有更重要的功能工作需要完成。

雖然這種推理方式很容易讓人接受,但企業會采用類似的方法來管理其金融債務嗎?債務通常產生利息,如果償還債務的速度很慢,其利息就會迅速增加。

如果你每個月只用信用卡支付最低還款額,那么最終可能會償還原始借入金額的數倍。因此盡快擺脫金融債務顯然是值得的。

償還技術債務需要一些時間和精力,它確實讓開發人員不能完成開發其他功能的工作。但是,盡早還清技術債務是值得的。

以下探討一下軟件開發商償還技術債務的一些好處:

  • 它可以讓軟件開發商在未來行動更快。
  • 它可以讓留住頂尖的人才。
  • 它可以幫助軟件開發商避免每隔幾年重新編寫整個應用程序。

(1) 行動更快

解決技術債務的一個常見阻力是,“我們沒有時間”。那么管理技術債務會節省時間嗎?

每當有人說沒有時間償還技術債務時,這通常是一種借口。事實表明,拉動圓輪的手推車比拉動方輪的手推車更容易、更快捷。然而,很多企業可能正在拉著方輪手推車卻沒有意識到這一點。

Martin Fowler在他發表的一篇名為“高質量軟件是否值得付出代價?”的文章中闡述了解決技術債務和保持高代碼質量的好處。

他表示,一些軟件開發商無視技術債務并允許其代碼庫的質量下降。雖然他們一開始可能會更快地發布功能,但隨著時間的推移,他們的交付速度會越來越慢。

糟糕的設計決策、開放的錯誤、過時的技術或任何可能的東西,最終都會導致功能開發停止,因為處理復雜和有缺陷的代碼庫變得越來越困難。另一方面,一些軟件開發商了解保持高代碼質量、解決技術債務和及早修復錯誤的重要性。

雖然他們在開始交付新功能方面確實起步較慢,但在很短的時間內,他們開始在向客戶交付價值方面超過其他開發商。那是因為他們在維護代碼庫的正常運行方面所采取的謹慎措施可以防止隨著時間的推移陷入困境。

(2) 留住頂尖人才

事實表明,未能解決技術債務的軟件開發商會失去一些人才。因為沒有人喜歡在一個具有缺陷的系統中工作,也沒有人喜歡在很難取得進展的項目中工作。很少有開發人員喜歡使用“遺留代碼”或使用已有幾十年歷史的技術。

那么當開發人員體驗下降時,他們該怎么辦?那些能夠找到更好工作的開發人員將會離職。換句話說,企業的一些頂尖人才離職,而其他的員工將會由于缺乏所需技能以及其他原因留下來。

因此,如果企業想留住頂尖的人才,需要表明它與開發人員一樣重視高質量的代碼。

(3) 避免從頭開始重寫應用程序

為什么企業要從頭開始重寫他們的應用程序?有時候,這是一個很充分的理由,例如他們需要擺脫過時的技術,同時實現平臺的現代化。

但通常由于開發速度問題,需要從頭開始重新編寫應用程序,而開發人員的體驗將變得很痛苦。軟件開發商不得不決定從頭開始重新編寫應用程序,并為此花費了數年的時間和數百萬美元費用。

重新開始開發一個新項目也許很有趣。開發人員可以選擇最喜歡的編程語言和工具,并且可以“以正確的方式”設計一切。當然,其他開發人員在未來可能會對其代碼產生是一種遺留應用程序的感覺。

但是這種情況可以避免嗎?是的,如果企業優先解決技術債務并防止事情一開始就失控,可能就會避免完全重寫應用程序。

為什么技術債務沒有得到解決

軟件開發商認為盡快減少技術債務是一件好事。那么為什么技術債務沒有得到解決的情況如此普遍呢?

其中有幾個原因:

  • 開發人員認為功能工作更重要。
  • 開發人員認為解決技術債務不是他們的問題。
  • 開發人員與產品和工程管理人員相互推諉。
  • 開發人員無法有效說服產品和工程管理人員。

以下為這些原因探索一些應對方法:

(1) 認為功能工作更重要

發布新功能很重要。因為沒有功能,產品就沒有價值。但是企業不能在開發全部功能之后才推出產品。

當有人表示功能工作更重要,并且不能優先解決技術債務時,那么功能工作現在真的更重要嗎?客戶真的會喜歡采用充滿錯誤并且運營緩慢的應用程序?

企業需要為客戶提供價值,那么一定要提供良好的用戶體驗,這意味著確保應用程序性能良好,并且不讓客戶感到沮喪或阻止他們使用錯誤的應用程序。

允許同時處理功能工作和技術債務的一個很好的折衷方案是在每個項目中花費大約70%~80%的時間開發新功能,每個項目花費20%~30%的時間來修復錯誤和解決技術債務。

(2) 技術債務不是開發人員的問題

如果開發人員有這種感覺,這可能是潛在工程文化出現問題的征兆。他們希望在這樣的環境中工作,每個人都對代碼庫感到自豪,并具有主人翁感,并希望將其做到最好。如果沒有相同的價值觀和愿景,那么很難一起工作。

這里的解決方案是或者嘗試在更積極的方向上影響工程文化,或者可以讓一些開發人員離職去找到一個更適合的公司。

(3) 與產品和工程管理人員相互推諉

經驗不足的開發人員可能有一些恐懼,因為他們可能會知道有一些重要的技術債務需要解決,這將導致內部沖突,但他們害怕表達這種擔憂。也許是因為他們認為直言不諱會對他們產生不利影響,或者可能會危及他們的工作職位。

重要的是要記住,作為軟件開發人員,通常了解企業在任何時間面臨的技術債務數量。當技術債務繼續被取消優先級或被忽視時,開發人員實際上有義務表達這些擔憂,并不再推諉產品管理或工程管理人員。

(4) 無法說服產品和工程管理人員

第四個問題也許是最關鍵的問題。開發人員通常認為解決技術債務很重要,并且已經向產品管理和工程管理人員提出了這一點,但他們并沒有聽從。

在這種情況下,與其感到無助,不如更清楚地表達他的擔憂。如果只是說“我們需要解決這個問題”,但沒有提供任何明確的解釋或原因,那么就不能有效地溝通。

開發人員應該提供背景信息,說明優先處理技術債務很重要的原因,以及這會給業務帶來什么好處。用他們可以理解的術語來解釋事物尤其重要。

例如,開發人員采用自己的術語進行解釋:“我們真的需要花一些時間來測試,來增加我們在這個回購協議中的代碼覆蓋率。由于我們缺乏測試,經常會引入錯誤,我們必須在這些問題已經投入生產后花時間修復這些問題。讓我們的測試套件處于更好的狀態將使我們對代碼更有信心,并確保我們的客戶在使用應用程序時也有更好的體驗。” 但這種說法可能并不能讓產品管理和工程管理人員理解。

或者說:“我們現在有30個面向客戶的錯誤。這些給我們的客戶帶來了糟糕的體驗,甚至導致一位客戶取消了與我們的合同。我真的認為我們需要修復這些錯誤,而不是開發一些新功能。”這將使產品管理和工程管理人員可以理解。

而這么說:“我們的持續集成管道花費的時間太長。我們必須等待一個多小時才能獲得反饋以查看我們的構建是否通過,而這種延遲的反饋循環使得完成任務需要很長時間。我認為我們需要花一些時間優化構建,讓它更快地完成,這樣我們所有的工程師都可以更快地行動。試想一下,如果我們的構建每次運行快10分鐘,100名工程師每天創建5次新構建,那么我們可以完成多少工作。每天節省的開發時間超過83小時(10*100*5/60)。” 這可能讓產品管理和工程管理人員了解工作的艱巨性。

結論

承擔技術債務是不可避免的。但是,選擇如何處理技術債務可以決定運營的成敗。希望開發人員受到啟發并有能力解決目前在自己的角色中面臨的技術債務。這樣做將使企業成為更好的工作場所,并為用戶帶來更好的體驗。

 

責任編輯:趙寧寧 來源: 企業網D1Net
相關推薦

2020-11-05 10:50:09

物聯網數據技術

2022-11-21 18:02:04

前端測試

2020-04-21 11:03:34

微服務數據工具

2023-04-10 15:41:35

2018-04-24 15:53:52

2021-09-30 10:19:29

物聯網安全物聯網IOT

2021-11-29 11:40:46

FPGA芯片數據中心

2011-12-01 10:55:16

超級計算機高性能計算Top500

2023-10-08 14:36:59

2022-08-22 13:17:19

智能建筑樓宇自控物聯網

2021-09-07 13:25:31

物聯網安全物聯網IOT

2021-04-16 17:37:28

數據智能照明物聯網

2021-08-30 17:14:22

物聯網IOT

2009-07-23 08:40:37

VMware遷移備份歸檔

2023-07-21 11:51:25

2015-11-12 18:20:43

微服務 Docker

2022-07-06 10:33:39

技術債務CIO

2024-03-22 11:27:54

電纜管理數據中心

2019-12-13 17:36:00

機器學習設計數學

2021-11-09 13:59:47

物聯網安全設備
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲喷水 | 国产精品美女久久久久久久网站 | 久久国产精品一区二区三区 | 成人免费网站 | 久久噜噜噜精品国产亚洲综合 | 久久久久国产精品一区二区 | 成人午夜| 欧美精品一区二区三区在线播放 | 欧美精品一区二区蜜桃 | 亚洲午夜精品久久久久久app | 国产在线精品一区二区三区 | 日韩免费视频一区二区 | 免费99视频| 免费看欧美一级片 | 亚洲在线看 | 91久久久精品国产一区二区蜜臀 | 久久久久久高潮国产精品视 | 久久国产一区二区 | 91精品国产乱码久久久久久久久 | 999久久久精品 | 天天躁人人躁人人躁狂躁 | 日韩在线国产 | 欧美亚洲综合久久 | 99精品99| 久久天天综合 | 夜夜爽99久久国产综合精品女不卡 | 91免费电影 | 高清久久久 | 国产精品毛片无码 | 国产一区中文字幕 | 日日日干干干 | www.色婷婷 | 美女中文字幕视频 | 成年女人免费v片 | 精品视频在线观看 | 亚洲一区二区精品视频 | 国产成人高清 | 成人午夜黄色 | 伊人春色在线 | 国产一区二区三区在线免费观看 | 久久久久一区二区三区 |