システム設計6 プロジェクト管理の仕組み (その38)

更新日

投稿日

◆システム設計は仮説と検証の繰り返し 

 
 前回は、システム(ここでは製品も含めてシステムと呼ぶことにします)に必要とされる要件を漏れなくリストアップする方法について解説しました。化粧品の自販機を例題にして、漏れなく要件を考えるための手法として FURPS+ を紹介し、品質特性に注目して要件をリストアップすることや、その品質特性は形を変えながらブレークダウンされるものであることなどを説明しました。これにより、そのままでは曖昧な顧客や企画部門からの要求やニーズが、製品開発におけるシステム設計の入力として適切なレベルの要件となったわけです。
 
 次に行うことは、開発すべきシステムをハードウェアやソフトウェアといったサブシステムに分けて、それぞれの要件を明確にすることです。サブシステムは、ハードやソフトという単位に分かれることもあれば、ユーザインタフェース・サブシステム、処理エンジンサブシステム、出力サブシステムというように、ハードやソフトを含む機能単位に分かれることもあります。
 
 今のところ、どのようなサブシステムにするのかについては、これまでの製品開発の流れや開発者の経験などにより決まるものと考えておきましょう。また、サブシステムではなく、ブロックと呼んでいたりモジュールと呼んでいたり、開発現場によって様々だと思いますが、ここではサブシステムで統一したいと思います。
 
 まず、わかっていただきたいことは、サブシステムに分ける作業は本質的に試行錯誤となる作業だということです。仮説と検証を繰り返しながら徐々にサブシステム構成を改善することが、適切なサブシステム構成を作るための確実な方法なのです。そして、この試行錯誤のために必要となるのが、仮説として考えたサブシステム構成の良し悪しを検証する手段、手法が確立していることです。仮説を評価できなければよりよいものにすることはできません。
 
 この検証作業の基本は、作成したシステム要件を実現するためにサブシステムがどのような処理の流れ、データ・信号の流れとなるのかを明らかにし、どのようなサブシステム間のやりとりになっているのかを確認することです。複雑な処理ややりとりになっている場合は、サブシステムを見直してより簡単なやりとりにできないかを考えます。この試行錯誤が適切にできるかどうかがカギとなります。経験を積んでいる人やセンスが良い人というのは、最初の仮説のレベルが高かったり、少ない試行錯誤でシンプルなやりとりにすることができるということなのですが、このような人であっても、頭の中でこの試行錯誤をやっているのであって、試行錯誤なしにはシステム設計を行うことはできません。
 
 システム設計経験が浅かったり、飛び抜けたセンスを持っていない場合は、この試行錯誤がどれだけできるのかがシステム設計の良し悪しに直結します。今回紹介するサブシステム構成の検証方法を確立・定着させ、試行錯誤の時間をできるだけ確保することにエネルギーを使うことができるような仕組みを作ってほしいと思います。
 
 それでは、例題である化粧品の自販機についてサブシステムへのブレークダウンをやってみましょう。開発の制約のひとつに「既存の缶ジュース自販機を流用して開発作業を最小限に抑える」というものがありましたので、既存のサブシス...

◆システム設計は仮説と検証の繰り返し 

 
 前回は、システム(ここでは製品も含めてシステムと呼ぶことにします)に必要とされる要件を漏れなくリストアップする方法について解説しました。化粧品の自販機を例題にして、漏れなく要件を考えるための手法として FURPS+ を紹介し、品質特性に注目して要件をリストアップすることや、その品質特性は形を変えながらブレークダウンされるものであることなどを説明しました。これにより、そのままでは曖昧な顧客や企画部門からの要求やニーズが、製品開発におけるシステム設計の入力として適切なレベルの要件となったわけです。
 
 次に行うことは、開発すべきシステムをハードウェアやソフトウェアといったサブシステムに分けて、それぞれの要件を明確にすることです。サブシステムは、ハードやソフトという単位に分かれることもあれば、ユーザインタフェース・サブシステム、処理エンジンサブシステム、出力サブシステムというように、ハードやソフトを含む機能単位に分かれることもあります。
 
 今のところ、どのようなサブシステムにするのかについては、これまでの製品開発の流れや開発者の経験などにより決まるものと考えておきましょう。また、サブシステムではなく、ブロックと呼んでいたりモジュールと呼んでいたり、開発現場によって様々だと思いますが、ここではサブシステムで統一したいと思います。
 
 まず、わかっていただきたいことは、サブシステムに分ける作業は本質的に試行錯誤となる作業だということです。仮説と検証を繰り返しながら徐々にサブシステム構成を改善することが、適切なサブシステム構成を作るための確実な方法なのです。そして、この試行錯誤のために必要となるのが、仮説として考えたサブシステム構成の良し悪しを検証する手段、手法が確立していることです。仮説を評価できなければよりよいものにすることはできません。
 
 この検証作業の基本は、作成したシステム要件を実現するためにサブシステムがどのような処理の流れ、データ・信号の流れとなるのかを明らかにし、どのようなサブシステム間のやりとりになっているのかを確認することです。複雑な処理ややりとりになっている場合は、サブシステムを見直してより簡単なやりとりにできないかを考えます。この試行錯誤が適切にできるかどうかがカギとなります。経験を積んでいる人やセンスが良い人というのは、最初の仮説のレベルが高かったり、少ない試行錯誤でシンプルなやりとりにすることができるということなのですが、このような人であっても、頭の中でこの試行錯誤をやっているのであって、試行錯誤なしにはシステム設計を行うことはできません。
 
 システム設計経験が浅かったり、飛び抜けたセンスを持っていない場合は、この試行錯誤がどれだけできるのかがシステム設計の良し悪しに直結します。今回紹介するサブシステム構成の検証方法を確立・定着させ、試行錯誤の時間をできるだけ確保することにエネルギーを使うことができるような仕組みを作ってほしいと思います。
 
 それでは、例題である化粧品の自販機についてサブシステムへのブレークダウンをやってみましょう。開発の制約のひとつに「既存の缶ジュース自販機を流用して開発作業を最小限に抑える」というものがありましたので、既存のサブシステム構成を活かしたものをサブシステム構成の第1版としました。これを図74 に示します。
 
R&D
図74.サブシステム構成(第1版)
 
 図74 では、サブシステムとして「金銭管理」「商品管理」「操作管理」「状態管理」の4つとしています。既存の自販機システムが金銭、商品、ユーザインタフェース(操作)のブロックに別れており、それぞれを流用することができるだろうという目論見です。繰り返しになりますが、大切なのは、考えたサブシステム構成を検証し、よりよい構成にできる余地があるかどうかを検討できる仕組みです。次回では、実際の検証作業を解説します。
 
 

   続きを読むには・・・


この記事の著者

石橋 良造

組織のしくみと個人の意識を同時に改革・改善することで、パフォーマンス・エクセレンスを追求し、実現する開発組織に変えます!

組織のしくみと個人の意識を同時に改革・改善することで、パフォーマンス・エクセレンスを追求し、実現する開発組織に変えます!


「技術マネジメント総合」の他のキーワード解説記事

もっと見る
普通の組織をイノベーティブにする処方箋 (その22)

 前回は形式知の問題点の解説しましたが、今回はイノベーションを起こす上で必要となる5つの要素についてです。 ◆関連解説『技術マネジメントとは』 &nb...

 前回は形式知の問題点の解説しましたが、今回はイノベーションを起こす上で必要となる5つの要素についてです。 ◆関連解説『技術マネジメントとは』 &nb...


技術戦略  研究テーマの多様な情報源(その39)

    良いアイデアを創出するための大きな枠組みには『発散』と『収束』を繰り返すがあります。前回は収束思考の解説をしました。今回は、また...

    良いアイデアを創出するための大きな枠組みには『発散』と『収束』を繰り返すがあります。前回は収束思考の解説をしました。今回は、また...


IPランドスケープとは~技術企業の高収益化:実践的な技術戦略の立て方(その11)

    ◆ IPランドスケープで何か見えると思っていないか?  「当社でも遅ればせながらIPランドスケープ、らしきものを始めたん...

    ◆ IPランドスケープで何か見えると思っていないか?  「当社でも遅ればせながらIPランドスケープ、らしきものを始めたん...


「技術マネジメント総合」の活用事例

もっと見る
スケールド・アジャイル・フレームワーク (SAFe) の導入開始

        はたして僕が勤める企業はスケールド・アジャイル・フレームワーク (SAFe) を上手く導入で...

        はたして僕が勤める企業はスケールド・アジャイル・フレームワーク (SAFe) を上手く導入で...


ソフトウェア開発の成果物による進捗管理 プロジェクト管理の仕組み (その16)

 前回は、計画時の見積もり精度を上げるための基準モデルと、進捗を見える化するための基本ツールである基本メトリクスセットのひとつ、作業成果物メトリクスについ...

 前回は、計画時の見積もり精度を上げるための基準モデルと、進捗を見える化するための基本ツールである基本メトリクスセットのひとつ、作業成果物メトリクスについ...


システム設計5 プロジェクト管理の仕組み (その37)

 それでは、機能以外にも注目してシステム要件をリストアップするにはどうしたらよいでしょうか、 そのための手法として FURPS+ を紹介したいと思います。...

 それでは、機能以外にも注目してシステム要件をリストアップするにはどうしたらよいでしょうか、 そのための手法として FURPS+ を紹介したいと思います。...