リーン開発とは?新規サービス開発で注目される理由と導入メリット

リーン開発とは?新規サービス開発で注目される理由と導入メリット

リーン開発は、「無駄を抑え、効率性を重視した開発」という意味を持っています。「こんな物があったらな」という仮説を立てて、効果を計測するために構築を行い評価と学習を1サイクルとし、できるだけ短い単位でこのサイクルで繰り返していく方法です。

そんなリーン開発について、7つの原則をもとに本記事では解説していきます。

1章では、そもそもリーン開発とは何か解説していきます。

1-1.無駄を抑え、効率性を重視した開発

リーン開発は、「無駄を抑え、効率性を重視した開発」という意味を持っています。

「こんな物があったらな」という仮説を立てて、効果を計測するために構築を行い評価と学習を1サイクルとし、できるだけ短い単位でこのサイクルで繰り返していく方法です。

経営の際にも用いられるものでもあり、市場において必要とされるものを仮説し検証を重ねていき、結果として必要最低限の資源で最大限の効果を得ることができます。

システムの開発についても同様で、開発したけど、改善箇所が多かったり、全然売り上げに繋がらなかったり、受託者としては完成物が検収で合格できなかったりと無駄なことはよくあります。

そのため、仮説~評価を短いサイクルで繰り返すこの開発手法を活用することで、無駄を減らし、効果を最大限にするため取り入れられています。

もう少し分かりやすく、ECサイトの開発を例に解説していきます。新しくサイトの開発行う際に、まずはユーザーのニーズを仮説していきます。

どの機能が重要なのか無駄なのかなどを見極めるために仮説を基にしたプロトタイプを構築し、調査を行います。その結果、商品レビューと直感的な検索機能を重要としており、逆にレコメンド機能などは不要であると判明しました。この結果を基に開発を進めていきます。

1-2.アジャイル開発との違い

アジャイル開発とは

アジャイル開発とは、システム開発のサイクルである、「企画」→「設計」→「実装」→「テスト」を機能単位で回すことを呼びます。

システム開発は様々な機能の集合体からなっています。その様々な機能を機能単位に分解して開発を進めていくことです。

例えば、1つのシステムが機能A、機能B、機能C、機能Dの集合体から成るとした場合、以下のようなサイクルで開発を進めることになります。

違いとしてはリーン開発同様にシステム開発をサイクルとして回していきますが、仮説を行い検証する作業がありません。また目的も異なります。

リーン開発は無駄を排除し効率性を重視していますが、アジャイル開発では柔軟性などを重視しており要件の変化に対応しやすくすることが目的になっています。

アジャイル開発の詳細は、「アジャイル開発とは?メリット・デメリット、事例を含めて解説」の記事をご参照ください。

1-3 MVP開発との違い

MVP開発は、想定されるユーザーに対して必要最低限の機能をもった開発をすることです。

想定されるユーザーに一部機能が実装できた段階で触ってもらい、ユーザーからフィードバックをもらいながら必要な機能の肉付けをしていきます。

これを繰り返して完成形に近づけていきます。

MVP開発

リーン開発はプロセス全体の効率化と継続的な改善を目指す手法であり、MVP開発は製品の最低限の価値を早く市場に提供し、顧客ニーズを検証しながら進めるアプローチという違いとなります。

リーン開発の構築のフェーズからはMVP開発が関わってきており、上記の説明の通り開発を進めていきます。

MVP開発の詳細は、「MVP開発とは?進め方とアジャイル開発との関係性を解説」の記事をご参照ください。

お問い合わせはこちら

リーン開発は、無駄を排除し効率性を重視した開発手法ですが、前提として7つの原則があります。

これらは、メアリー・ポッペンディークとトム・ポッペンディーク(著)「リーンソフトウエア開発~アジャイル開発を実践する22の方法~」にて記されています。

2-1.ムダを排除する

無駄を排除することはリーン開発において重要な事の1つです。

製品の価値に影響を与えないものを無駄とし省いていく必要があります。

多くの時間を使い開発するソフトウェア開発では、いかに無駄を排除し、効率性を高められるかが大事です。

2-2.知識を作り出す

開発チームの学習を強化していくことは重要なことです。

開発には失敗が付き物であるため、幅広い開発知識をつけておく必要があります。

またチーム全体として的確な判断ができるように経験を積むことも需要です。

2-3.決定をできるだけ遅らせる

効率を上げることが意味合いとして含まれているのに、決定は遅らせることが原則となります。

開発において、正しい決定を出すためには、正しい情報を判断の根拠となる量を確保することが必要となります。

例えば効率を意識したばかりに、早まった決断によって大幅な修正が発生するリスクがあり、それによって無駄な作業も増加することは目に見えてしまいます。

できるだけ遅らせることで無駄をなくすための正しい破断をすることができるでしょう。

2-4.できるだけ早く提供する

開発期間をできるだけ短縮させ、素早くリーリスができるようにすることが原則の4つ目です。

目的としてはリーン開発は無駄なく効率的に開発を進めることであり、

そのために可能な限り早くリリースすることが原則の1つとして存在します。

また、依頼を受けて開発する場合は顧客に対して短い期間で開発し確認してもらうことで、顧客が期待する内容を素早く開発することを可能としており、信頼も得やすくなります。

2-5.権限を移譲する

チームメンバーに権限を移譲することが原則の5つ目となります。

多くの組織では基本的に統括者が権限を持つことがあるかと思いますが、全てではないにせよ、チームメンバーに権限を移譲し、自律的に動いてもらいます。

この原則により、メンバー間での尊重や独創的なアイデアの醸成、判断力などを高めることができ、チームとして効率が良くなることが期待できるでしょう。

2-6.全体を最適化する

全体を最適化することが6つ目の原則です。

システムが完成したとしても、そのシステムが価値を生み出し、課題の解決や成果につながる必要があります。

本当に良いとされるシステムは課題に対して的確にアプローチができており、それを目指すことが重要であり、最適化できている状況です。

2-7 品質を作りこむ

7つ目の原則は品質を作りこむことです。

開発が進みテスト工程で欠陥が発覚した場合には修正コストなど手間が余計にかかってしまいます。

そのために、品質を作りこみ、欠陥となる箇所を限りなく0に近づけることが重要となってきます。

とはいえ、欠陥は高い確率で発生することもまた事実であるため早い時点で欠陥を発見することも重要です。

リーン開発のメリットとデメリットについて、解説していきます。

3-1.メリット

リーン開発のメリットとしては無駄なく開発ができること、そして品質を高めることができる点です。

リーン開発は無駄なく効率よく開発を進めることであるため、もちろんメリットとしてあげられます。

品質については1章でも触れましたが、ユーザーが本当に求めている機能に絞って開発を進めるため、無駄なものが無く使いやすいシステムを開発することができます。

また、本当に必要な機能を開発することから、コスト面でもメリットがあります。

例えば、開発の仕事受けると仮定し、顧客管理システム開発において400もの機能の開発がオーダーされたとします。

顧客管理システムで重要となるのは、顧客情報や交渉経緯、売上などであり、これらが優先的に開発が行われます。

その後に実際の利用データなどからよく使用される機能などを分析し、開発の優先が決められていきます。

その中で不必要となる機能もあぶりだすことができ、結果的に400の内、200もの機能は不要となれば、開発コストをダウンさせることができます。

3-2.デメリット

リーン開発のデメリットとしては、継続的に無駄を探し続けることの大変さや導入時の障壁が考えられます。

仮説を基に構築したプロトタイプの検証を続けていくことは、進めれば進めるほどいずれは頭打ちになります。

そして多くのプロジェクトには納期が存在し、いつまでも続けられるものでもありません。

時間との兼ね合いを考慮し、可能な限り改善をし続けられるような工夫が重要です。

お問い合わせはこちら

リーン開発はすべてのシステム開発に適しているわけではありません。市場や利用者のニーズを検証しながら開発を進める手法であるため、プロジェクトの性質によって向き・不向きがあります。

ここではリーン開発が効果を発揮しやすいプロジェクトを紹介します。

4-1. 新規サービス開発

リーン開発が最も効果を発揮するのが新規サービス開発です。新しいサービスや事業では、

  • 本当に市場ニーズがあるか
  • どの機能が求められているか
  • 利用者が継続して使うか

を事前に正確に把握することは困難です。そのため、まずは最小限の機能でリリースし、利用者の反応を確認しながら改善を繰り返すリーン開発との相性が非常に良いと言えます。

4-2. Webサービス・SaaS開発

WebサービスやSaaSはリリース後も継続的な改善が前提となります。利用状況を分析しながら、

  • 画面改善
  • 機能追加
  • UI/UX改善

を継続的に実施できるため、リーン開発の考え方を取り入れやすいプロジェクトです。

4-3. MVP開発

新規事業の立ち上げではMVP(Minimum Viable Product)開発が採用されることがあります。リーン開発は、

  • 仮説
  • 構築
  • 計測
  • 学習

を繰り返す開発手法です。そのため、MVPを早期に市場へ投入し、ユーザーの反応を検証しながら改善を進める開発と非常に相性が良いと言えるでしょう。

4-4. リーン開発が向いていないプロジェクト

一方で、リーン開発が適さないケースもあります。例えば、

  • 要件があらかじめ確定しているシステム
  • 法規制の厳しい業務システム
  • 官公庁向けシステム
  • 大規模基幹システム

などです。これらのプロジェクトでは、「要件変更が少ない」「事前の設計品質が重視される」「厳格な管理が求められる」ため、ウォーターフォール開発などの手法の方が適している場合があります。プロジェクトの特性に合わせて最適な開発手法を選択することが重要です。

リーン開発の流れについて、解説していきます。

5-1.仮説 

まずは仮説を行います。 

「こんな物があったらいいな」や開発を受ける企業であれば「この機能必要?」という観点から仮説を立てていきます。

次の構築ではプロトタイプを作成していくため、漠然とした仮説よりも具体的な仮説を立てるようにしましょう。

5-2.構築

仮説を基に検証するためのプロトタイプの構築を行います。

ここでMVP開発と関連が出てきます。MVP開発は必要最低限の機能が付いた試作品の開発する手法であり、仮説に基づき作られます。

5-3.計測 

構築で作られた試作品を計測していきます。

実際に試作品を使用してもらい、フィードバックを獲得していきます。できるだけ多くのユーザーからデータを取得するのが好ましいですが、あえて小人数に絞っても問題ありません。

5-4.学習 

計測で得られたデータを基に学習を進めていきます。

データの分析により、ユーザーの傾向やあまり使われていないことなど、本当に必要なのかを検証していきます。

ちなみにですが「なぜ」を5回繰り返していくと物事の本質が分かるといわれています。

その観点で、「なぜユーザーから使われていないのか?」などなぜを繰り返して検証していくことをおすすめします。

5-5.意思決定

最後に、学習から得られた検証結果を基に意思決定を行います。

ここでいう意思決定は、必要か不必要かなど無駄になっているかを判断することです。

仮説→構築→計測→学習の一連の流れを実際の開発を進めていく前に繰り返すことで、無駄を抑え、効率的な開発ができます。また、ユーザーニーズを満たした、より質の高い開発が可能になります。

ICDでは、

  • MVP開発
  • アジャイル開発
  • リーン開発
  • Webサービス開発

などに対応しています。新規事業やサービス開発において、「まずは小さく始めたい」 「市場ニーズを検証しながら開発したい」 「開発コストを抑えながらリスクを減らしたい」といったご相談にも対応可能です。

また、様々な体制を組むことが強みでもあり、オフショア開発、ニアショア開発、オンサイト(常駐型)開発、受託開発など…お客様の状況に合わせてご提案いたします。相談は無料!なのでお気軽にお問い合わせください。

お問い合わせはこちら
お問い合わせ