人材不足解消の足掛かりとして、未経験者に向けた教育カリキュラムを提示することが有効であると考えました。この教育カリキュラムを基に、教育機関や教育サービス企業、組み込み分野に属する企業の人材育成部門などで、組み込み分野への入門教育が開発されることを期待しています。
未経験者を対象とした教育カリキュラムにおいては、組み込みシステムの仕組みや動作など、本質的な理解が必要です。これを実現するには、実際にソフトウェアを実装してハードウェアを直接制御する体験をする実機演習を教育カリキュラムに取り入れるべきであると考えました。また、ソフトウェアエンジニアリング教育とともに、仕事の進め方/作法、品質や生産性の重要性などを経験することによって体得することも未経験者向けの教育カリキュラムには必要と考えました。
前述したとおり、未経験者向けカリキュラムでは教育対象を「組み込みソフトウェア開発未経験者」といった広範な人材像に設定しています。実際に教育カリキュラムを開発する際は、教育機関であれば「情報工学系学科の学生」、企業であれば「組み込み開発部門に配属された新入社員」や「エンタープライズ系の開発技術者」のように、対象を限定するはずです。
また教育の目標も、教育機関では「職種や技術分野を限定しない広範な技術分野」とし、企業では「組織として必要とする職種やレベル、自社の開発対象製品に関連する技術分野」といったように設定が変わるはずです。
従って、未経験者向けカリキュラムで提示した教育内容をすべて行う必要はありません。教育対象や教育目標の人材像に即して、不要なものは削除し、不足しているものは追加を行い、おのおのにとって適切な教育カリキュラムにチューニングされることを期待しています。
未経験者向けカリキュラムは履修の前提条件として、ITスキル標準(ITSS)の研修ロードマップの入門講座である「IT基本1コース」「IT基本2コース」相当の教育カリキュラムの修了もしくは相当の技術や知識を習得済みであること、としています。組み込み分野でも非組み込み系分野においても、共通に必要となる基礎的な技術が存在します。例えば、「ネットワークの技術」「マネジメント技法」「リーダーシップ」「コミュニケーション」などのパーソナルスキルなどです。これらはITSSの教育ロードマップなどに準拠した教育カリキュラムなどで提供されており、未経験者向けカリキュラムでは範囲外としています。既存の教育カリキュラムを活用して、新規に開発する部分を極力少なくするためです。
組み込み分野の開発者としての“たしなみ”として身に付けておくべき技術知識や技能があります。未経験者向けカリキュラムの「組込みシステム技術」は、組み込み分野特有の基礎的な技術要素や開発技術に関する知識や技能の習得を目的としています。
座学による講習だけでなく、実機を使った演習を推奨しています。これは、単なる知識レベルでとどめるのではなく、実際に動作させてその技術の本質的な部分を体感し、理解することが組み込みシステムにかかわる開発者に必要と考えているからです。
使用頻度の高いC言語を中心としたプログラミングに関する技術を演習形式で習得するのが、未経験者向けカリキュラムの「組込みプログラミング演習」の目的です。
組み込みシステムのプログラミングでは、非組み込み系にはない「メモリ管理」「ハードウェア制御」「排他制御」「アセンブラとの結合」など、留意すべきさまざまな事項があります。C言語の文法といった非組み込み系分野と共通の部分ではなく、組み込み開発特有のプログラミングに関する技術を中心に実施します。
多くの組み込み開発がプロジェクト体制で推進されています。そのため、共同作業やプロジェクトにおける役割分担を理解し、プロジェクト管理にかかわるスキルやパーソナルスキル(コミュニケーション、リーダーシップ、ネゴシエーションなど)の習得は組み込み分野へエントリする人材にとって重要な課題です。
これまで履修した内容を、プロジェクト型の演習で要件定義からテストまでの一連のソフトウェアライフサイクルとして実際に体験することにより、技術の実践的な習熟度を高めて定着させることが「組込みソフトウェア開発プロジェクト型演習」の目的です。
Copyright © ITmedia, Inc. All Rights Reserved.