リーンなソフトウェアデリバリー

トヨタ生産方式(TPS)のシステム開発への適用

ホーム=>グループ見出しページ=>詳細ページ

リーンなソフトウェア・デリバリー

1.ソフトウェア・デリバリーに必要なリーン原則

 『リーン』と言う考え方は、主に製造業で提唱されてきましたが、リーンの原則の多くは以前からソフトウェア開発にも様々な形で存在していました。

 ソフトウエア・デリバリーのリーンは、インプット、アウトプット、付加価値活動(プロセス)で構成するプロセスの中で付加価値を創造しないムダなステップを排除するアプローチです。製造業やサービス産業と同様なアプローチです。

 リーンの考え方には、重要な価値フローの概念があります。端的に言えば製品やサービスをジャスト・イン・タイムで生産し提供すると言う事に尽きます。その為に7つのムダを排除しようとするものです。


 反復型(イタラティブ)の開発は、ソフトウェアのバリュー・チェーン(フロー)を実現する最も優れた手法です。製造業で在庫回転率を上げる(フローを澱みなく流す)には、サイクルタイム短縮が重要なファクターですが、同様にソフトウエア開発では、アジャイルでの短いイタレーション(1週間など)実現が効果を発揮します。


 また、フローを促進する為に生産の平準化も大きな要素です。ソフトウエアの現場では、開発チームのベロシティーをある水準で出来るだけ均等化する事が重要です。


.リーンなソフトウェア開発に必要な7つの原則

原則1:ムダ取り

原則2:品質の作りこみ

原則3:学習する組織(チーム)

原則4:直前での決断

原則5:短期納期(素早い提供)

原則6:作業者(開発チーム)の尊重

原則7:全体最適

.ソフトウェア製造工程におけるムダの排除

7つのムダ

1.作りすぎのムダ

2.手持ちのムダ

3.運搬のムダ

4.加工そのものムダ

5.在庫のムダ

6.動作のムダ

7.不良をつくるムダ

7つのムダ

1.作りすぎのムダ
 顧客に使用されない機能、実際には不要な機能、真のビジネス価値を生まない機能などの余分な機能を作らない。StandishのCHAOSレポートによるとソフトウェアの全機能の65%は全くあるいは殆ど使用されていない。

2.手待ちのムダ
 仕様の提示遅れによる製造開始遅れでの待機、許可待ち、ビルド待ち、障害発生によるテスト待ち。

3.運搬のムダ
 複数プロジェクトでの作業の切り替え、仕様入荷チェック、納品出荷チェックの提供&受領双方での重複チェック。

4.加工そのもののムダ
 開発現場で機能していない作業項目例えば余分な事務処理、報告書作成や作業分担の誤りによる過剰な作業。

5.在庫のムダ
 最終工程で使用されない文書や計画、コンポーネントなどの中間的な作業成果物と待ち状態で仕掛中のプログラム。

6.動作のムダ
 関係者の作業場所の移動や複数の開発ソールを使用して開発ソール間の切替・移行。

7.不良をつくるムダ
 バグの作り込み~一要求仕様要件)、設計、コードの欠陥。

ビジネス価値からソフトウェアの機能へ

1.反復とディジタル・モデルで価値フローを作る
 ソフトウエア・デリバリーでは、反復型開発によってフローが作り出されます。顧客の要求把握(ユースケース)から設計まで更にはプログラミング、テストと出来る限り澱みないフローを作り上げる事に注意を払わないといけません。

2.コラボレーションと自動化でムダの削減
 顧客やプロジェクトのステークホルダー間のコラボレーションを今までのやり方から変更し、フローとプルの概念を実行する為には、緊密な、且つ頻繁なコラボレーションが必要となります。

3.ソフトウェア・デリバリー・プロセスの透過性『見える化』
 生産プロセスを視覚的に管理することはリーンの必須の条件です。

4.サイクルタイムのスピードアップ
 イタレーション(反復)の期間を短縮化すると共にテスト等の自動化によるスピードアップを考慮します。

参考資料