ソフトウェア開発にまつわる10個の神話【第1回】
エンジニアをいくら増やしても「納期遅れ」を回避できないのはなぜ?
さまざまな“神話”が存在するソフトウェア開発業界。人員の増加とテストの扱い方における、生産性の向上に関する神話の真実を解き明かす。
ソフトウェア開発業界には、誤解に基づく“神話”があふれている。それらを否定するのは難しいことではない。にもかかわらず企業の経営層や産業教育に携わる教育者、そしてソフトウェア開発チーム自体にさえも、神話は根強く残っている。ソフトウェア開発業界に関する、よく知られた神話を紹介する。
神話1「開発の遅延はエンジニアを増やせば解消する」
「ソフトウェア開発プロジェクトに人員を加えると、生産性が瞬く間に向上する」――。これはソフトウェア開発によくある神話だ。
新しいエンジニアがチームに加わると、最初はたいてい1人当たりの生産性が低下する。新人をプロジェクトに順応させるために、他のエンジニアが開発に集中する時間が奪われてしまうからだ。さらに新人が一人前になるには時間が掛かる。
ソフトウェア開発では、大規模なチームよりも小規模なチームの方が、生産性や適力、敏しょう性を保ちやすい傾向にある。「スクラム」提唱者であるケン・シュウェーバー氏とジェフ・サザーランド氏による、スクラムのガイドライン「Scrum Guide」は、チームのメンバーを10人以内にすることを推奨する。スクラムは、メンバーに役割やタスクを割り振り、メンバー同士の連携を取りながらプロジェクトを進めるソフトウェア開発手法だ。
「遅れているソフトウェア開発プロジェクトに人員を加えても、プロジェクトがさらに遅れるだけにしかならない」という「ブルックスの法則」がある。ソフトウェア開発チームの人員が増えるほど、それに応じた見返りが得にくくなる。
神話2「TDDは時間の無駄だ」
ソースコードを書く前に、前もってテストコード(テスト用プログラムのソースコード)を書くべし――。こうした考えに沿ったソフトウェア開発手法が「テスト駆動型動開発」(TDD:Test Driven Development)だ。
よくあるソフトウェア神話に「TDDは時間の無駄だ」がある。これは事実ではない。
エンジニアはソフトウェアのソースコードを書く前に、そのソフトウェアがどのように動作するのかを考える必要がある。外部ソフトウェアとの連携方法も考慮しなければならない。TDDはテストコードにより、これらの動作を網羅的に検証することを求める。
TDDを採用するかどうかにかかわらず、最終的にはテストコードを書く必要がある。そのことを考えれば、ソースコードが完成してからテストコードを書くよりも、ソースコードがどう動くのかを考えながらテストコードを書く方が、時間の節約になると考えられる。
次回は、3つ目と4つ目の神話を紹介する。
TechTarget発 エンジニア虎の巻
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
TechTarget発 エンジニア虎の巻
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[富士ソフト株式会社] 受注業務は既に変革のステージ 出遅れて競争力を失わないためのDX戦略 -
市場調査・トレンド
[富士ソフト株式会社] 受注業務でありがち 「今は困っていない」と見直しを先送りにすることの弊害 -
製品資料
[富士ソフト株式会社] 「B2B EC」選定を製品比較から始めると迷走する理由 -
技術文書・技術解説
[SB C&S株式会社] 「Everpure FlashArray」技術詳細解説資料:概要から認証、サイジングまで解説 -
市場調査・トレンド
[セコムトラストシステムズ株式会社] EDR導入を成功に導くロードマップ:選定/稟議/運用のつまずきを防ぐコツ
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Windows」の不要なファイルを安全に消して容量を空ける方法
-
2
生成AIが普及しても「技術書」を手放せないエンジニアの本音
-
3
IT業界の女性は9割が10年で消える 人材枯渇を招く“見えない壁”の正体
-
4
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
5
VMware離れの現実解 2500台のVM移行に挑む製造大手の全記録
-
6
ChatGPTの「GPT」とは? 仕組みや用途など“ChatGPTの基本”を解説
-
7
【漫画付き】ひとり情シス協会が明かす、RAG導入でしくじる企業「2つの共通点」
-
8
生成AIのルール整備が進む一方で活用は遅れがち? 日本企業のAI利用状況
-
9
なぜ「素性の知れないハッカー」に金を払うのか? 報奨金制度の意外な実利
-
10
脱VMwareの真実:データセンター大手がNutanixを選んだ「コスト以上の理由」
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
-
4
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
5
プログラミング不要で誰でも実現できる、ネットワーク運用管理の自動化とは
-
6
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
7
東大教授と考える、AI時代の「データ主権」「信頼性」「ガバナンス」の在り方
-
8
Linux初心者でも知らないとまずい「RHEL」「SLES」の違いとは?
-
9
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
10
ランサムウェア攻撃“究極の対策”はこれだ
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー