6種辦法實現精益軟體
這篇文章提出的觀點很大程度上與我共鳴。
介紹
與10年前的類似功能軟體相比,我們今天寫的軟體很大,執行任何現代軟體所需的記憶體和資源都非常高,增強的使用者體驗和功能只是增加的大小的一部分,原因還有更多。
所有現代設計模式、程式碼架構等都是教會我們如何應對這種複雜性,而不可能從根本上消滅它。
兩條法則非常準確地反映了軟體的狀態:
1. 記憶體越來愈大,軟體擴充套件了才能填充可用記憶體。
2. 硬體卻變得越來越快,但是軟體變得慢更多。
簡化軟體的方法在於用訓練有素的方法將其返回本質。
“FAT軟體”的原因
導致複雜性的一個主要原因是軟體擁有的功能太多,這些不一定都是使用時所必需的功能,我們不斷新增新功能和擴充套件,並且與原始系統的任何不相容性將被忽略或傳遞無法識別。
當系統的強大到透過功能數量來衡量時, 數量變得比質量更重要 ,每個新版本都必須新增功能,即使它真的不需要新增任何功能。
1.所有功能,所有時間
軟體的單體設計是使軟體複雜化的主要原因之一,每個可以想象得到的功能都是系統設計的一部分,隨著時間的推移,大多數功能都變得無關緊要,但會繼續對系統產生影響。
2.對某些人來說,複雜性就是力量。
當我建議將去除一些不必要的靈活性並使事情標準化以降低複雜性和提高可維護性時,PM當時的反應至今記憶猶新。
不可理解性應引起人們的懷疑,而不是欽佩。
3.沒有足夠的時間
時間壓力是笨重軟體的首要原因。我們沒有足夠的時間從程式碼中刪除已棄用的功能並改進我們認為可接受的解決方案。
六種辦法幫助保持軟體“精益”
1. 強型別語言
使用強型別語言有助於以更簡單的方式設計複雜系統,它允許編譯器精確定位錯誤和介面,並且可以更自信地使用和更改抽象。
2.找到適當的分解
系統應該被分解成模組,模組應該被分解成元件,元件應該有單一的責任,整個系統應該在層次結構中進行分解,同時最小化複雜性並且去除重複程式碼。
3.可擴充套件性
可擴充套件性是保持系統從一開始就簡化的先決條件。它還允許定製系統以適應新的更改和刪除已棄用的擴充套件。
4.永遠不應該構建複雜的軟體
認為複雜系統需要設計師和程式設計師的紀律是不正確的,完全無法理解的系統,至少在單個個體的重要程度上,應該永遠不會建立起來。
5.溝通是關鍵
隨著時間的增長,溝通問題變得占主導地位,複雜的團隊結構促成複雜的軟體。
6.降低複雜性應該是目標
降低軟體的複雜性和規模應該是每個開發步驟的目標,在系統規範中,對於詳細的程式設計設計 - 每個步驟都必須有意地消除系統中任何不必要的複雜性。
結論
本主題確實觸及了軟體團隊的敏感神經,當我和我的團隊討論這個時,他們的回答就是“不同意,這是銷售需要的功能。“,”現在沒有必要保持軟體小。我們擁有更大的機器和更好的工具“等藉口。
我明白了。我在某種程度上也不會同意,但不是因為保持軟體精益是錯誤的,而是因為它很難,儘管如此,我希望在設計系統時牢記這些想法應該可以減少軟體的複雜性。
相關文章
- 精益思想和軟體開發
- 精益看板管理和敏捷軟體開發敏捷
- 【精益生產】精益改善乏力,看新型精益體系模式如何構建模式
- 軟體開發中的精益和敏捷 - Aram Koukia敏捷
- 優思學院|什麼是精益生產?企業如何實現精益生產?
- IT職場:如何打造精益辦公系統?
- BPM如何幫助企業實現精益管理?
- 精益軟體開發與精益管理:從一家關閉的汽車廠重煥青春說起
- 將看板應用於軟體開發:從敏捷到精益敏捷
- 【精益生產】精益知識大全
- 如何實現精益採購?這5點很重要
- 僅需6步,實現虛擬物體在現實世界的精準放置
- 軟體產品管理辦法 (轉)
- 如何在精益生產中成功實現5S?
- 成都房地產行業如何實現精益生產?行業
- 從0到1,企業如何實現精益生產?
- 【知識分享】供應鏈管理如何實現精益化?
- 【精益生產】詳解精益物流改善方法
- 【精益生產】精益六西格瑪質量管理執行體系推進案例
- 看《精益創業》作者埃裡克•萊斯評價《精益創業實戰》創業
- 精益工廠佈局四步法
- 服裝企業如何通過精益生產實現盈利
- 廣州H科技基於精益生產實現智慧製造
- 實現精益生產的5個原則是什麼
- 天行健諮詢 | 實現精益生產的手段有哪些?
- IT業如何實施精益六西格瑪?
- 滴滴業務研發的精益實踐
- ERP與條碼系統整合實現精益化可追溯
- 三維模擬模擬如何實現精益工廠佈局?
- 重慶工廠進行精益佈局的優勢體現在哪?
- 自述:如何利用線上協作軟體實現高效辦公
- 張馳諮詢:企業實施精益生產培訓的最大障礙,只把精益培訓作為一種工具和方法
- 精益創業分享創業
- 《精益創業實戰》姐妹篇《精益擴張》上市,手把手教創業者如何“從1到10”,實現10倍擴張創業
- Oracle實現連乘的辦法Oracle
- 精益管理顧問 | 如何使用5why分析法?
- 精益敏捷萬法歸宗:把有意義的事,做到敏捷
- 倉庫怎麼做精益現場管理改善?