|
本連載は、「組込システム」をテーマとしたコーナーです。大手メーカー新規商品、特注品、試作機等の組込システムを約30年間に渡って開発してきた実績にもとづいて、毎回、関連のさまざまなトピックを紹介していきます。第14回は、組込システム技術の進化とシステムズエンジニアリングについて解説いたします。 |
|
||||||||||||||||||||
組込システムの進化とシステムズエンジニアリング | |||||||||||||||||||||
■組込システムの進化と技術の本質 今から50年前、世の中にマイクロコンピュータが登場しました。マイクロコンピュータは、家電をはじめとした機器のあらゆるところに使用され、私たちの生活は大きく変化しました。この中でマイクロコンピュータを専用機器に組み込むための技術として組込システム技術が構築されていきました。 組込システム技術の本質は、使用される環境・利用者の様々な使い方・生活活動・ハードウェアの特性などを徹底的に配慮した設計により、安全・安心・快適を実現する技術です。組込システムは一般のコンピュータ用途と異なり、様々な悪環境でも使用され、いたずら操作を含む誤操作や誤使用が行われることもあり、ハードウェアの劣化や部分故障が発生している状況でも使い続けられる場合もあります。
さらに、組込システムはコスト制限が極めて厳しく、できるだけ安価なハードウェア構成で、利用用途に特化した最大効率を発揮することが必要です。近年、IoTなどの通信技術が進化し、スマートハウス・スマートシティなどのIT技術が生活に浸透してきており、組込システム技術は、IT技術を生活に組み込む技術として進化しています。 ■システム開発の困難化 IT技術の進化により、第4次産業革命やDX(デジタルトランスフォーメーション)など、IT技術による生活や事業の革新が期待されています。しかし、要求事項の拡大化が進む中で前述のように人や環境までを総合的に配慮しなければならないために、新しいシステムを創造することが難しくなってきています。 (1)複雑化 社会は、「モノ」から「コト」の時代になり、商品の所有に価値を見出す傾向から、所有では得られない体験や経験に価値を見出す傾向に変化してきています。感性という視点がより重要になり、社会に組み込まれるシステムも多様化・複雑化が進み、考慮しなければならない視点や分析対象の範囲が拡大しています。 (2)多分野の専門家知識の必要性 IoTなどの通信技術の進化により、様々な機器・人・社会が自在につながるようになりました。これにより、独立していた製品やサービスなどの事業領域も、垣根を越えて相互につながりあう時代になりました。新たな価値の発見と大きなリスクの発生は、すべてつながりの関係の中から発生します。安全・安心・快適な生活を実現するためには、様々な異なる専門知識が必要な機器・環境・組織活動・規則やしくみなどの膨大な要素を統合的に捉える必要があります。 (3)不連続な進化 新たなつながりは価値や生活様式を変化させ、それまでの関係や規則までもが変化します。これにより、システムに対する要求自体も変化し、従来とは非連続な進化を行います。隣接する分野の事業の垣根を超えた連携や進出により、産業構造の関係やシナジーの構造も流動的に変化します。このため、最初からすべてを見通すことが出来ません。 ■システムエンジニアリングからシステムズエンジニアリングへ 従来のシステム開発から多くの異なった要素を含む困難なシステム開発に対応するためにシステムズエンジニアリングが提唱されています。システムズエンジニアリングは、INCOSE(The InternationalCouncil on Systems Engineering)において「システムを成功させるための複数の専門分野にまたがるアプローチと手段である」としています。システムズエンジニアリングは、複数のシステムから構成され、個々のシステムには、ITシステムだけでなく社会組織のしくみや産業/サービスなども含みます。システムズエンジニアリングでは、従来のシステム開発に比べ特に配慮すべき要素として下記の(1)~(3)が挙げられています。これらは、システムエンジニアリングでも重要ですが、特に複数システム間の分析に時間をかけて入念に分析を行う必要があります。 (1)俯瞰 システム全体の俯瞰は、分析対象を構成する要素間のつながりによる作用や影響を多面的な視点で動的に捉え、新たな価値の可能性や課題発生の可能性などを早期に発見してシステムを最適な方向に導くことです。複雑なシステムであるほど、全体を俯瞰し個別のシステム間の関係を最適に構築することが重要になります。 しかし、俯瞰を行うためには、それぞれのシステムの概要や振る舞いが頭の中に入っている必要があり、複数人による分担ができません。そのため、環境や対象となる人の活動などを含む各構成要素の概要が頭の中に描けるまでの助走期間が必須です。この時間を配慮せず、俯瞰は優秀なエンジニアだけが可能と誤解している場合が多くあります。 また、俯瞰を行うためには、すべての各個別のシステムの詳細な専門知識が必要となり、一人ですべてをカバーすることは不可能です。しかし各システムの関係者は、自分の領域以外との関係については、表面的にしか見えません。また、それぞれのシステムの関係者間には相反した利害関係も多く存在します。 全体を俯瞰する人は、その時点の知識から全体を俯瞰し、新たな価値の可能性や心配についての検討が必要なシチュエーションを抽出し、出来る限り具体的に関係する部門の専門家に提示します。各専門家は、具体的なシチュエーションの提示を受ければ、それに対する様々な専門的な知見を出すことが出来ます。 全体を俯瞰する人は抽出した専門家の知見をもとに、より深くシステム全体の俯瞰を行い、専門家にさらに詳細な意見を聞くためのシチュエーションを抽出するというスパイラルアップにより、個々の専門家の集合では達成できない高い付加価値の実現、多様な専門分野に関わる知見を有機的に統合した全体設計を行うことができます。 (2)モデル化 複雑な構成要素をもつシステムの検討を行うためには、多くの要因が複合して絡み合うため、システムの振る舞いを忠実に表現することは不可能です。モデル化とは、特定の観点から観たときに必要な情報を残し不要なものをそぎ落とすことにより、複雑な現象を単純化して捉えること、およびその単純化した構造で分析対象を表現することです。 特にシステム間をまたがる分析を行うためには、対象が社会組織や経済活動における利害関係や文化の違いによるひずみなど、様々な次元の要因が存在するため、モデル記述の表現書式にこだわらずに出来るだけ多くのモデルを作成することが必要となります。多様な異なる専門分野の関係者間の共通理解を促進するため、着目する視点をベースに、それぞれの関係者に合わせた理解できるモデルを作成します。最初は、厳密に詳細化して理解できないより、不正確でも概要がわかりやすいことから開始します。 理解が高まることにより、モデルに様々な要因を付加していくことが可能になると同時に分析が深くなり、システム間を有機的に統合したモデルに成長していきます。さらにモデルが複雑になれば、階層化を行い、下位層のモデルと分離していくことで、モデルを必要以上に複雑にせず、分析を深めていくことができます。 (3)不連続な進化 アジャイル開発とは、一度にすべてを開発するのではなく、小さな単位で開発と検証を行い、反復的にシステムを改善・拡張して行くものです。これにより、初期の不確定要素に対応でき、想定外の新たなシナジーの発見や部門をまたがるリスクの発見に戦略的に対応しながら、最適なシステムに最短で近づいていくことが出来ます。実際に開発しながら進めることができるため、実使用による新たな発見や関係者の巻き込みを効率的に行うことが出来ます。 最初に全体を俯瞰し、試作が必要な不確定要素を明確にして、そのための最短作成方法を検討することが重要です。どうしても作成が容易なところから試作を始めがちですが、そうすると得られるものがあまりありません。個別システムごとの利害関係が相反するなど困難なところに踏み込むことにより新たな発見や具体的な本当の課題に気付きます。そのための試作の分析や準備に十分工数をかけることが必要なのです。試作実施中でも、必要に応じて立ち止まり徹底的に評価し、躊躇なく戻ることも重要です。
|
|||||||||||||||||||||
|
(Up&Coming '21 春の号掲載) | |||
Up&Coming |
LOADING