ハイブリッド開発って?特徴やメリットについて解説!
ハイブリッド開発とは?
ハイブリッド開発とは、システム開発における手法である「ウォーターフォール開発」と
「アジャイル開発」を組み合わせた手法です。両方のメリットを活かしつつ、デメリットを補う「良いとこ取り」のような手法と言えます。
ウォーターフォール開発は、事前に決めた要件やスケジュールに沿って計画的に開発を進める手法です。大規模なシステムにも対応できる反面、開発中に仕様変更しにくい点が弱点でした。
それに対してアジャイル開発は、クライアントのニーズにあわせて柔軟に進められる開発手法です。臨機応変に開発していけますが、要件が曖昧になりやすいなどの弱点があります。
ハイブリッド開発は、これらの弱点を補うために新たに生まれた開発手法です。「開発序盤と終盤はウォーターフォール開発、中盤はアジャイル開発」など、工程や時期に分けてそれぞれの開発手法を組み合わせるといった使い方ができます。さらに、プロジェクトの特徴や課題に応じて、その組み合わせ方を変えていくといったことも可能です。
ハイブリッド開発手法
(ウォーターフォール+アジャイルスクラム)
ハイブリッド開発手法とは、システム開発における「ウォーターフォール開発手法」と「アジャイル・スクラム開発手法」を組み合わせる手法のこと。
工程や時期に合わせて進め方を組み替えられることが特徴です。
ハイブリッド開発の中でも、どちらの特徴を多く取り入れているかによって「ウォーターフォール寄りのハイブリッド」「アジャイル寄りのハイブリッド」などと表現することもあります。
ウォーターフォール開発について
ウォーターフォール開発は、1970年に開発された手法です。システムの要件を細かく決めたのち、計画的に開発を進める特徴があります。
ウォーターフォールという名前は、その名の通り「滝」を意味します。上流から下流へ水が流れるように工程を進めていき、後戻りできないといった意味合いがあります。ウォーターフォール開発も、要件定義・設計・開発・テストと一つずつ進めていき、順番に各工程を終わらせていく特徴があります。
ウォーターフォール開発の特徴はこちら
ハイブリッド開発手法
(ウォーターフォール+アジャイルスクラム)
ハイブリッド開発手法とは、システム開発における「ウォーターフォール開発手法」と「アジャイル・スクラム開発手法」を組み合わせる手法のこと。
工程や時期に合わせて進め方を組み替えられることが特徴です。
ウォーターフォール開発のメリット
ウォーターフォール開発のメリットは、以下の通りです。
・プロジェクト全体の見通しがつきやすい
・予算や人員の確保がしやすい
・進捗管理が行いやすい
明確な要件定義を決定してから進めていくウォーターフォール開発では、プロジェクト全体を把握しながら開発していけるメリットがあります。プロジェクトのスケジュールや開発内容、それに応じた予算・人員の確保も行いやすいため、開発を確実に進行していけるでしょう。
ウォーターフォール開発のデメリット
ウォーターフォール開発のデメリットは、以下の通りです。
・修正が発生した際に工数が増える
・要件変更の際に再度見積もり工程が発生するためリリースまでの納期が遅れる
・クライアントからの意見を反映させにくい
開発初期に仕様を決定するウォーターフォール開発では、柔軟な開発がしにくい点にデメリットがあります。修正する必要があれば、以前の工程に戻ってやり直しになるでしょう。また、開発途中にクライアントの新たな意見が生まれても、簡単には反映できません。
アジャイル開発について
アジャイル開発は「すばやい・機敏」などの意味を持つ言葉です。開発とテストを繰り返しながら進めていくことで、臨機応変なシステム開発を目指します。開発途中で要件が変化することを前提に、クライアントの意見を取り入れながら進めていくことが可能です。
アジャイル開発は1990年頃に提唱された手法です。当時一般的であったウォーターフォール開発の弱点を踏まえ、よりよい開発を行うことを目的に採用されるようになりました。
アジャイル開発の特徴はこちら
アジャイル・スクラム
開発手法
アジャイルスクラム開発手法とは、開発期間を「スプリント」と呼ばれる短いサイクルに分けて開発を行うこと。 仕様変更や機能追加に柔軟に対応できることが特徴です
アジャイル開発のメリット
アジャイル開発のメリットは、以下の通りです。
・開発スピードが早い
・柔軟な対応ができる
・クライアント、ユーザーの意見を反映しやすい
アジャイル開発は、システムの機能ごとに設計・開発・テストといった各工程を行い、スピード感を重視して開発を進めます。当初の予定にこだわらず、開発を進めながらよりよいシステムを目指していくことから、柔軟な開発が可能です。
アジャイル開発のデメリット
アジャイル開発のデメリットは、以下の通りです。
・スケジュールの調整が難しい
・開発の方向性が定まらない場合がある
柔軟に進めていけることがメリットのアジャイル開発ですが、プロジェクト全体のスケジュールを掴みにくく、進捗管理がしにくいというデメリットがあります。また、クライアントの意見を取り入れられる反面、システムの方向性がいつの間にかブレてしまったというケースも存在します。
ハイブリッド開発のメリット
ここからは、ハイブリッド開発のメリットを一つずつ見ていきましょう。
メリット①詳細の仕様書が固まっていても、クライアントのフィードバックを反映しつつ進めることができる
仕様を明確に定めることで開発の見通しをつけられるウォーターフォール開発ですが、システムを発注するクライアントの要望を反映しにくいことが弱点でした。
ハイブリッド開発では、仕様書はしっかり固めつつも、クライアントの意見を取り入れることを意識して開発を進めるケースがあります。「レビュー」と呼ばれるミーティング形式の検証を行うことで、クライアントの意見を伺うといった施策があります。レビューは1~2週間に1度程度と、こまめに設けることが一般的です。
クライアントから定期的にフィードバックを受けることで、開発期間が伸びたり、予算や人員が追加されたりすることによる手間を防ぎます。
メリット②開発方針の主軸がブレにくい
ハイブリッド開発では、プロジェクトの初期に方向性や大枠を固めるケースがあります。
柔軟にプロジェクトを進めるアジャイル開発では、システムの方向性がブレやすいことが欠点でした。しかしハイブリッド開発では、初期にウォーターフォール開発的な観点から「スケジュールと要件」を決定することで、ブレにくい開発を行うことが可能です。
この場合、プロジェクトの中盤ではアジャイル開発の進め方で開発を行います。すでに大体の「スケジュールと要件」を決定しているため、スピード感がありつつも、見通しのついた状況の中で進めていけるでしょう。アジャイル開発の弱点をウォーターフォール開発で補う、ハイブリッド開発ならではのメリットと言えます。
メリット③修正が発生した場合でも工数負担が少ない
修正が発生した時の負担が少ないことも、ハイブリッド開発のメリットの一つです。
アジャイル開発は、修正や変更のリスクを抑えるために、システムを小さな単位に分けて開発やテストを行う手法でした。ハイブリッド開発でもその特徴を取り入れ、修正に対するリスクが少ない開発を行います。また、プロジェクトの序盤で作成した要件は、修正のたびに書き換えるといったことも不要です。
このメリットにより、手戻りにかかる時間や費用を削減し、プロジェクトをスムーズに進行することができます。
ハイブリッド開発の2つの種類
ハイブリッド開発は「ウォーターフォール開発先行型」「アジャイル開発先行型」の2種類に細分化されます。それぞれの特徴や、適しているプロジェクトについて見ていきましょう。
ウォーターフォール開発先行型のハイブリッド開発
ウォーターフォール開発を大枠としてプロジェクトを進める開発手法です。
序盤に行う要件定義・設計と、終盤に行うテストをウォーターフォール型開発のように行うことを意味します。スケジュールをしっかりと決めてから開発に進むため、進捗が把握しやすいウォーターフォール開発のメリットを活かすことが可能です。
プロジェクトの中盤では、アジャイル開発のように進行します。クライアントとも進捗を共有しつつ、進捗が見えにくいというウォーターフォール開発のデメリットを補います。
「開発すべきシステムがすでにある程度明確であるが、予想外の事態には備えたい」といったケースに適している開発手法です。また、クライアントから「進捗状態を見ながら、追加機能の搭載や改善を頼みたい」といった要望がある時にも採用されます。
アジャイル開発先行型のハイブリッド開発
アジャイル開発を先行にしてプロジェクトを進める開発手法です。
システムの完成形が見えにくい場合にこの手法を採用し、機能を小さい単位に分けて少しずつ開発を始めます。開発している段階でイメージが定まれば、仕様について再度定義し、ウォーターフォール開発的な方向に切り替えます。その後はスケジュールに沿って、進捗を的確に管理しながら開発を進めることが一般的です。
クライアントが自分の望むものを理解していなかったり、漠然としていたりする場合には、このアジャイル開発先行型のハイブリッド開発を採用します。仕様変更に弱いウォーターフォール開発の弱点を補うため、導入部分をアジャイル開発的に行う手法と言えるでしょう。
ハイブリッドテクノロジーズのハイブリッド開発
<ハイブリッドテクノロジーズの提供サービス>
ハイブリッドテクノロジーズでは、ビジネスデザイン、UIUXデザイン、設計、実装、テスト、リリース、運用、保守まで一気通貫してサービスを提供しております。500名以上の経験豊富なエンジニアにより、迅速かつ高品質なシステム開発が可能です。 アジャイル開発、ウォーターウォール開発、ハイブリッド開発と言った様々な開発手法に対応しており、契約形態に関しましてもラボ型契約と受託型契約の2つから選択いただけます。お客様の状況や開発内容に応じて、開発手法と契約形態を柔軟にご指定いただけますが、それぞれの開発手法、契約形態の特徴の親和性から、アジャイル開発ではラボ型契約が、ウォーターウォール開発とハイブリッド開発では受託型契約を選択されるクライアント様が多数を占めます。
ラボ型開発について: ラボ型開発 サービス
受託型開発について: 受託開発 サービス
ハイブリッド開発手法
(ウォーターフォール+アジャイルスクラム)
ハイブリッド開発手法とは、システム開発における「ウォーターフォール開発手法」と「アジャイル・スクラム開発手法」を組み合わせる手法のこと。
工程や時期に合わせて進め方を組み替えられることが特徴です。
<ハイブリッドテクノロジーズが選ばれる理由>
弊社ではクライアント企業様及びエンドユーザー様の声を聞き、UIUXを意識したビジネスデザインを行なっております。 テーマを決めて分析し、仮説を立ててビジネスデザインを行い、プロトタイピング、検証、フィードバックを受け、再度分析から始める。 この一連の流れを、アジャイルスクラム開発に精通した500名以上のエンジニアが光速で回していくことにより、最速でより良いものを実現していきます。 ハイブリッドテクノロジーズには市場の声を現実にするための仕組みとメンバーが揃っています。
システム開発の成功事例
システム開発での成功事例をご紹介します。
見守りサービス (株式会社otta)
サービス内容
位置情報履歴を、無料スマホアプリやメールを通じて保護者様に伝えるサービス
サービス上の課題/目指したいサービス
課題
共働き世帯や高齢者の増加など、社会構造の変化により、子どもや高齢者の見守りへのニーズが急速に高まっている。一方で、見守る方々の高齢化や地域コミュニティの変化により担い手は減少方向にあり、この需給ギャップを埋めるには、見守りの仕組みの生産性を大幅に向上させなければならない。
目指したいサービス
IoTを活用した見守りサービスのパイオニア企業として、見守り活動の生産性の飛躍的な向上に貢献するとともに、従来のサービスでは困難であった、多くの方々にご利用いただける料金体系を目指すこと。
クライアントの課題/要望
・追加開発体制のリソースが不足している
・既存ベンダーの開発チームと組み合わせながら、チームを構築したい
・事業状況に応じて柔軟にリソースを調整したい
当社を選択していただいた理由
キャピタル案件であり、HTからの投資次第で開発も頼みたいという理由から
当社ご提案内容
業界ラボ型(ストック)開発+保守にて提案
toB向け見守り管理システム開発
・今後の基盤変更も意識しながら登園バス管理システムの管理画面を作成し、サービス展開をしていきたい
・今後の開発体制構築も視野に入れつつまずはスモールに体制を構築しつつ今後の足掛かりとしたい
リソース活用し柔軟に対応できることと、javaを中心に進めていたが、よりモダンな言語を基盤に開発を進めたいという要望に対し、得意分野であった。
学習履歴データの可視化システム(放送大学学園)
サービス内容
学習履歴データ可視化システムの開発
サービス上の課題/目指したいサービス
課題
オンライン授業システムのデータベースには多量の学習履歴データが蓄積されており、このデータを学内の担当者が活用できるよう整備し、学生指導のためのヒントとして、あるいは学生に受講を促すための情報源として活用したいという意向があった。
目指したいサービス
・学外に開示する「サービス」ではなく、学内担当者用の「ツール」であること
・コマンドラインで操作可能なツールであること
・追加機能の実装をできるようにすること
クライアントの課題/要望
・社内で開発体制を保持していないこと
・金額をミニマムに抑えながら安定的な運用を実現したい
当社を選択していただいた理由
充分に仕様を満たす提案内容と他社と比較して最も安価な金額で入札提示したため。
当社ご提案内容
学習履歴データベースとBIツールの開発
オンライン授業システムのデータベースに蓄積された学習履歴データを活用するにあたって、実運用されているDBの処理とバッティングしないように、MongoDBに格納する処理にて開発を進めました。またMongoDBにデータを格納する際、他データとの連携も考慮し、汎用的なExperienceAPIに準拠したデータ形式を採用しました。
個人情報の扱いにおいては、開発人員含め、学生の個人情報の漏洩を防ぐため、学生の識別子を匿名化しての実装を実施しました。
DocIT (株式会社ドキットメディカルサービス)
サービス内容
働き口を探す医療従事者と、働き手を求める病院をつなぐマッチングプラットフォーム
サービス上の課題/目指したいサービス
課題
高額な紹介料がネックとなりスポットで人が必要な際に苦心をする病院の課題解決
目指したいサービス
休日や長期出張の空き時間を有効活用したい医師と、長期連休などで一時的に人手が必要となる病院をマッチングすることで医師の働き方の多様化を実現するサービス
クライアントの課題/要望
・サービス構想はあるが、実現させる開発パートナーが必要
・上流工程からの開発サポートが必要
当社を選択していただいた理由
開発にあたってサービス設計から本開発まで、一緒に伴走し考えながら開発してくれるパートナーとして安心感を感じて頂き、当社を選ばれました。
当社ご提案内容
ラボ型(ストック)開発にて提案
1.医療求人の性質を鑑みた機能提案、システム設計・開発
本サービスでは失敗の許されない医療系求人を取り扱うため、求人マッチングをする前に信頼のできる医師・病院であることを確認できることが重要となります。 そこで、実際に求人マッチングした医師・病院による相互レビュー機能を実装することで、信憑性の高いレビュー情報を蓄積することを提案・実現しました。 また、求人マッチング前に病院担当者と直接チャット出来る機能も実装することでレビューでは分からない定性的な情報確認も可能としました。 アジャイルスクラム手法の開発を取り入れることにより、システム開発の進捗報告を実際に動くシステム画面をお見せしながらデモンストレーション形式で毎週行いました。
2.定期的なスプリントを繰り返し、顧客と一緒に品質を高めるプロセスにて進行
実際に動くシステムを毎週見ていただくことで、開発進捗についての安心感やお客様も気がついていなかった新たな改善点がを発見でき、それを修正して再度デモンストレーションを行いました。この一連の流れを回すことで、お客様の求めるものを高い品質でご提供しました。
3.デザインを用いた視覚的なアウトプットで、具体的なシステムイメージを共有
Webサービス開発に初めて挑戦するお客様のため、お客様が思い描くビジネスを実現するためのシステムイメージを具体化していくデザインサポートも担当。求人情報サービスという特性上、さまざまな情報要素が混在する中で、目に見える形でデザインを整理・提案し、お客様からのフィードバックを受け、再提案を繰り返すことで、よりユーザーにとっての最適なWebサービスのための設計・提案・実現を行いました。
THINK, Reviewers (株式会社スパイス ボックス)
サービス内容
独自の「ソーシャルリスニング」手法をもって、企業と生活者の 間に生きたコミュニケーションを構築するサービス
サービス上の課題/目指したいサービス
課題
インフルエンサーの評価指標としてフォロワー数とエンゲージメント数が重要視されているケースが多いが、商品販売施策においては保存数が重視される。保存数を把握した上でインフルエンサーと企業のマッチングを行うプラットフォームが存在していなかったため、新たなサービスとしてスピード感を持ってサービス開発を行いたい。
目指したいサービス
・サービス名「THINK」:Twitter調査における既存システムの安定的かつ継続的な運用を維持しつつ、インフラコストを削減すること。
・サービス名「Reviewers」:インフルエンサーマーケティングで投稿保存数という指標を重要視するインフルエンサーマッチングプラットフォームの新規立ち上げをすること。
クライアントの課題/要望
・開発が発生した際に、都度RubyonRailsの対応人員を増やすのが難しい
・インフラ周りに強いメンバーがいない
・金額をミニマムに抑えながら安定的な運用を実現したい
・追加開発が発生した場合には、知見を維持した状態で取り組める体制がほしい
当社を選択していただいた理由
・開発リソースの柔軟性とインフラなど対応範囲の幅広さが先方ニーズにマッチしていたこと
・定常運用の際にもコストを抑えて対応できること
当社ご提案内容
受託型開発(フロー)にて提案
インフラ知見を持つディレクション人材をアサインメントすることで、インフラ周りの調整や業務対応にスピード感を持って対応できる体制を構築
インフラ/保守/開発を幅広く対応可能、かつ、コストミニマイズなオフショア体制をご提案しました。
ディレクション人材がインフラの知見を持ち、定常作業はベトナム側で行えるようにマニュアル化を行い、コストミニマイズしながらも幅広い知見を活かせる体制提案を行いました。
新規の開発が発生した際に、既存チームの知見を活かしながら適宜開発者を追加して、素早く開発を実行できる体制を実現しました。
まとめ
ハイブリッド開発の特徴やメリット、種類などについて解説してきました。ハイブリッド開発は、従来の開発手法であるウォーターフォール開発とアジャイル開発を組み合わせることで、それぞれのメリットを活かすことができます。
ウォーターフォール開発とアジャイル開発は、どちらがよいということはなく、それぞれのメリットやデメリットを理解し、プロジェクトに適した方法を採用することが大切です。各手法の強みを取り入れたハイブリット開発も視野に入れ、状況に応じた開発環境を構築するとよいでしょう。