我們總是在不斷地犯錯, 然後從錯誤中學習。 本文將幫助你梳理和反思軟體發展領域的各種固有觀點。 因為有很多觀點是錯誤的, 或者存在誤區的。
接下來, 將列舉 50 個軟體發展領域最常見的誤區:
編寫單元測試 = 測試驅動開發;
提供100%測試覆蓋率報告 = 代碼工作做得很好;
通過中央機器來構建和部署專案 = 持續集成;
每個開發人員通過遠端將代碼 check in 到中央倉庫庫分支中, 該分支之後會合並到主分支 = 持續集成;
花更多時間編碼 = 承諾;
寫了很多代碼的人 = 極客;
團隊中被大家依賴的開發者 = 明星開發者;
CTO 和架構師不會寫代碼;
承諾 = 估算;
CTO 只負責管理開發團隊, 不需要理解業務;
大而全的產品 = 理所當然會成功;
想法很難得而且很珍貴, 執行力則不值錢;
開發人員不需要瞭解業務領域, 業務分析師和產品經理才應該瞭解業務;
開發人員很便宜, 想換就換;
MVP = 精益創業;
小而美的明星產品都源自精益創業;
初創公司不會做 TDD, 因為他們沒有時間;
大企業也不會做 TDD, 因為他們雇用的開發人員都異常聰明, 不需要 TDD;
初創公司希望雇用的開發人員自帶銷售潛能, 並且沒有給予員工足夠的股權或工資;
企業希望憑藉自己的品牌聘請優秀的開發人員;
不成熟的文化 = 開放的文化;
縮減組織層次中的級別 = 扁平化管理;
能夠推測使用者需求並向產品添加功能 = 產品管理;
MBA 畢業生才能成為產品經理;
功能豐富 = UX 豐富;
銷售產品並不難;
一款成功的產品主要原因是功能和性能, 與設計無關;
代碼性能比可讀性更重要;
代碼簡潔比容易維護更重要;
產品經理 > BA > 開發人員 > UX 專家 > QA;
任務就是敏捷中的用戶故事;
將故事點添加到 bug 中 = 改進速度;
SAFe 是最安全的敏捷;
速度提高 = 靈敏度提高;
TDD 純粹是浪費時間, 只有平庸的開發者會去用;
平庸的開發人員才需要結對程式設計;
擁有敏捷證書 = 敏捷專家;
SAFe 是可擴展的敏捷;
推測最終用戶需求 = 業務分析;
使用框架和程式設計語言能夠解決可擴展性問題;
雲 = 可擴展性;
機器學習只需熟悉演算法, 不需要業務領域知識;
分析與業務領域無關;
敏捷教練的優勢在於他知道如何使用 Jira 等工具;
軟體工藝就是使用 Jenkins、SonarQube 等工具;
DevOps 團隊也就是基礎設施管理團隊;
敏捷是管理開發人員的新方式;
UX 和 UI 沒區別;
全棧開發者 = 前端開發人員+後端開發人員+基礎架構開發人員;
產品經理就是專案經理。
原文:
https://hackernoon.com/50-common-misconceptions-in-the-world-of-software-development-7144566c54f9
作者:Karthik Sirasanagandla
譯者:安翔,