圍繞技術債務的五個大神話

2021-10-05 21:14:00 字數 3507 閱讀 7334

在軟體公司中,人們經常談論技術債務,通常將其歸咎於發生的不良情況,例如

即使經常提及技術債務,也很少以每個人都能理解的方式對其進行解釋。 錯誤的觀念和錯誤的資訊經常導致對話。 達到臨界點時,技術債務可能會很大,可能會使產品陷於癱瘓甚至整個公司。 因此,對於每個人來說,更好地了解它是什麼以及如何對其進行管理很重要。

技術債務是許多態別的**問題的總稱,其最終結果是使一段**難以使用—開發人員難以閱讀,理解和進行更改,而又不會產生不可**的結果和不良***。

以下是一些技術債務型別,按嚴重程度分組:

嚴重程度低

中等嚴重性

高度嚴重

嚴重程度

隨著技術債務的累積,開發人員的生產力下降。 組織必須超越圍繞技術債務的神話,以便人們可以採取協調一致的行動來控制它。

太多的時候,術語「 高科技債」時,表明是一些獨大,不好的東西,這是不可避免的增長非晶雲,一定要吞下整個**庫在不久的將來。 用這種方式表徵技術債務會導致無所作為和絕望。

實際上, 「技術債務」包含許多離散的問題-與錯誤類似,但對終端使用者不可見,並且主要影響開發人員的生產力。 像錯誤一樣,技術債務問題可以逐項列出,確定大小,優先順序並逐步解決。

並非所有的技術債務都是平等產生的-頻繁修改的主線**中的問題比很少接觸的**中的問題更具影響力。

通過在電子**或問題***中記錄問題來量化技術債務。 記錄頻率,影響,修復成本以及其他重要的優先順序因素。 將這些問題作為乙個團隊進行排名,注意不要忽視影響到每個人的頻繁發生的「剪紙」問題,這總計會浪費大量時間。

⭐根據每個專案對團隊的影響程度來確定特定技術債務問題的清單。

科技公司的人們對科技債務的**有強烈的看法。 產品經理可能會說,技術欠債來自懶惰或不稱職的開發人員編寫糟糕的**。 開發人員可能會說,匆匆忙忙的專案(首先是產品上市時間)導致編寫高質量**的時間不足。 等等。

實際上,存在技術債務的三個主要原因:

1.故意的技術債務是由團隊捷徑提供原型或在較短的期限內造成的。 工程流程的跳過步驟(例如重構,自動測試覆蓋,同行評審,錯誤處理和日誌記錄)可在短期內節省時間,但會增加技術負擔。 與財務貸款類似,團隊將以未來的「利息」支付(以較低的生產率形式)為代價獲得短期利益,直至償還債務。

2.當由於缺乏經驗,能力不足或缺乏動力而對**進行不良的設計時,就會發生無意的技術債務。 在功能強大的團隊中,這些事情將通過對**和設計的同行評審來發現。 但是如果團隊因審查期限太短而忽略了審查,那麼技術債務可能會被忽略。 意外的技術債務的另乙個**是針對誤解的要求編寫**。

3.隨著時間的流逝而產生的技術債務發生在對**片段的增量增強和錯誤修復導致結構的逐步喪失時; 有時稱為「腐爛」。 它只能通過重構來防止,這需要花費額外的時間。 另外,隨著客戶使用方式的改變,舊的要求或功能可能會過時,並且如果不刪除或重構其**,則將成為技術債務。

技術債務有多種原因,因此團隊坦誠坦誠,承擔責任並避免指責至關重要。 無意識的技術債務是最隱蔽的,因為它通常是可以避免的,並且不會產生任何有益的***。

⭐在設計和編碼階段,請有經驗的開發人員進行同行評審和指導,以杜絕意外的技術債務。

一些工程師說,技術債務非常昂貴,絕不應該故意造成。 這是乙個錯誤的陳述,因為技術債務在正確使用時是一種有價值的工具,類似於公司借錢進行時間緊迫的投資。

在三種情況下,有意的技術債務是合理的:

1.構建原型或演示。該團隊正在提供概念證明或原型,以獲取新產品或功能的動手反饋。 或互動式演示以幫助關閉主要客戶,合作夥伴或融資回合。 正確的高速,低成本方法是偷工減料,並建立稍後將丟擲的**。

2.上市時間至關重要。由於團隊無法控制的原因,需要加快新產品或功能的開發。 偷工減料可以節省寶貴的時間。 在截止日期結束後不久,將在不久的將來改進**,而不是將其丟棄。

3.需求可能會改變。構建新產品或功能需要猜測客戶真正想要的東西。 如果保證需求有變化,那麼偷工減料和編寫短命的**可以減少返工的成本。

故意增加技術債務可能是「滑坡」-團隊應謹慎行事!

團隊應該討論增加技術債務的理由,並決定將來是否要丟棄或改進**。 清楚地記錄決策,並與所有人進行溝通,確保團隊中的每個人都對戰略保持一致。 由於過去的經驗,有些人可能會有負面的情緒反應。 團隊需要明確的界限。 定期檢查規則,以使每個人保持一致。制定時間表以預算時間以盡快解決技術債務。避免嚴重的技術債務-晦澀的**,過於複雜的**和不足的測試覆蓋範圍是如此有毒,以至於這些除非扔掉**,否則捷徑永遠都不值得。定期更新技術債務清單(無論是在電子**中還是在問題***中)。 確認解決技術債務的時間表提供了足夠的時間來解決這些問題。

仔細建立新的技術債務:使團隊按照規則進行調整,量化並記錄其影響,並承諾制定解決方案,以備將來使用。

技術債務經常被視為開發人員的士氣問題。 這種觀點嚴重低估了技術債務對整個公司的影響。

技術債務以間接但深刻的方式影響著每個人 :

開發團隊只是技術債務的「煤礦中的金絲雀」-如果他們不滿意,那麼除非採取任何措施,否則將來每個人都有可能不滿意。

⭐對所有利益相關者進行技術債務影響方面的教育。具體說明高優先順序問題領域和解決問題的行動計畫。

被忽略時,技術債務會迅速累積-加劇了速度,質量和士氣的拖累。 當其影響變得顯而易見時,情況似乎很可怕。 由於缺少特定技術債務專案的清單,該組織將其視為龐大的無定形雲。 不久,開發人員就丟擲了「完全重寫」一詞,描述了解決這種情況的唯一方法。

這是危險的領域,因為即使得出的結論沒有根據,它也可能活出自己的生命,成為自我實現的預言:

認為``完全重寫''是唯一解決方案的開發人員從宿命論的角度認為當前的**庫已無濟於事,這可能導致採用編碼捷徑使情況變得更糟。與此同時,利益相關者不願承受鉅額**和風險完全重寫。 重寫通常會遇到問題,花費的時間比預期的要長得多,並且最終會匆匆忙忙-導致全新的技術債務!

在極少數情況下,有必要進行完全重寫; 但更詳細的增量修復計畫通常是最合適的,一次重寫幾個模組或元件。 團隊必須採取嚴格的方法,確定最高優先順序的專案並首先解決它們。 自動化的測試覆蓋是必不可少的,因為清除後會立即發現任何***或破損。

⭐避免說「完全重寫」,而是使用技術債務清單來確定每個季度要修復的元件/模組。

為了有效地管理技術債務,公司需要擺脫神話和誤解,這些誤解和誤解阻礙了對特定問題及其處理方式的有意義的討論。

您可以通過教育人員來解決自己公司中的技術債務。 消除神話-偉大的第一步是建立最壞問題的清單,並制定解決方案。

from:

防止 DDoS 攻擊的五個 大招 !

提到 ddos 攻擊,很多人不會陌生。上週,美國當地時間 12 月 29 日,專用虛擬伺服器提供商 linode 遭到 ddos 攻擊,直接影響其 web 伺服器的訪問,其中 api 呼叫和管理功能受到嚴重影響,在被攻擊的一周之內仍有部分功能不可用,嚴重影響其業務和成千上萬使用 linode 服務的...

盤點多數企業容易犯的五個大資料錯誤

如今,大資料革命驅動了現代工業發展,每天都有越來越多的企業採用大資料技術。然而,儘管大量資料已經存在和應用了很長時間,但如何使用它,仍然存在許多嚴重的錯誤。以下是企業容易犯的5個主要的大資料錯誤,以及使用者避免這些錯誤可以採取的措施。1.使用大資料確認,而不是發現 大資料在用於提供以前被忽視的見解和...

ept技術 提公升撲克技術的五個實用技巧

撲克是一項困難的遊戲,如果你不持續提公升自己的技術,你顯然會落伍,最終成為一名輸家,不要讓這種事情發生!這裡有五條能讓你持續擁有競爭力的建議。有些想法你也許已經聽過,但是真正將其擺到重要位置會讓你受益匪淺。向你玩的級別裡比你厲害的玩家學習 雖然看世界級玩家的對局很有趣而且激動人心,但是實際上並不是最...