=========================================================================== 分科会 - F1 組込みソフトウェア開発技術者教育 ------------------------------------------------------------------------ B会場 (容量:10x7x3=210名 参加者:30名程度) チェア:名古屋市工業研究所 小川清先生 会場の様子: 比較的まばらであり、学生もそこそこ参加していた。見回してみたところ、アカ デミックサイドの方の方が多くおられるように感じた。 =========================================================================== 以下、時系列に議論を追う。 注:発言をいただいた方は、匿名とした。 ============================ 自己紹介 兼 ポジショントーク ============================ 産からAさん ・産学の産の立場 ・組込みの知識よりもアプリの知識が多い技術者に対する教育を行った。 ・時間制約やリアルタイム性など、組込みシステムの基本的な考えを判っても らえない。 ・組込みの知識を得るためのベース環境(文献など)が足りないのではないか? --- 産からBさん ・最近の組込みソフトウェアは多岐にわたりすぎて、知らないといけないこと が多すぎる #アセンブラやOSの知識だけではく、ネットワークやコンテンツなどへ ・顧客が求めているのは「コンテンツ」 -> コンテンツによってすべての評価が決まる (コンテンツ重視のアプリ ケーション開発) --- 大学からC先生 ・大学としては「チームワークで仕事をこなすことを体験してもらいたい」 ・個人的には「問題対処能力のある人間を開発する」 --- 大学からD先生 ・教育の方針 : 「ものづくり教育」 組込みシステムは、HW/SWが一体となってシステムを構成している -> どちらが欠けてもいけない (PC単体で閉じない開発) 研究の話 : FPGA, 教育用ボード, VHDLの本など ・ソフトウェア教育 言語を教えるばかり, PC上での作業 -> 制御、通信などの概念が足りない, 割り込みは知識としてのみ, も のが作れない -> 応用プログラムの設計/製作環境が必要だろう ・MPU - マイクロチップ社のPICを用いたボード (教育用テストベッド) の紹介 ・上記ボードを用いた教育の例 - 50ms, 500ms の時間に関わる処理を同時に実行させる -> シングルタスクからスタートして、割り込み, マルチタスキングなど の学習 ・より上位の教育用テストベッドの紹介 - NIOS + TOPPERS/JSP - OSとハードをセットにして提供 --- 産学2名づつのポジショントークを終了したところで、技術者教育について具 体的な活動をされている SESSAME のアクティブメンバーからSESSAMEの紹介が あった。 SESSAME 「組込みソフトウェア管理者・技術者育成研究会」の話題 ・飯塚戦略 (SESSAME発足書) : 日本のソフトウェアに関する危惧と対処戦略 の表明 ・ネットワーク、人、書籍などから知識へのポインタを探す (文献ポインタ) ・教材の作成, セミナーの開催 日本の組込み開発の現状 ・つらいことばかりで面白くない開発 -> 日本の技術者はだめになってしまうのでは という危惧 -> 問題自体はまだ顕在化していない ・品質低下は経営課題 -> とはいっても経営者ばかりが叫んでもダメ SESSAMEの活動を通じて判ったこと ・品質改善ができる人材は足りない -> 技術サイド, 管理サイド両方の教育が必要 ・育成 : 組込みのドメインは広い (多くの知識が必要) -> 教材の提供, 技術/管理両サイドそれぞれを対象としたセミナーの開始 --- SESSAME : 具体的なお仕事内容 ・魔法の箱 : 初心者向けの童話風のドキュメント(MST2001で配布) -> 組込み開発のイメージをつかんでもらいたい (組込みに興味はあるが開発を経験していない技術者が対象) ・文献ポインタ集 : 関連知識へのリンク キーワード : 要求,定義,システム設計,ソフトウェア設計,プログラミン グ,テスト,メンテナンス -> 関連する知識をあらかた網羅する ・SESSAME用語集 : 組込み開発に必要な用語とその説明 約200種類のキーワードを網羅 ・ワーキンググループ 教育カリキュラム用の例題が必要 -> 設計/実装サンプルの要望 電気ポットをテーマに、パラレルで異なる設計手法で開発を行う。 #reactive automaton/structured oriented/object oriented の3チーム --- #ディスカッションへ # (まずは企業サイドの方からのコメントを求める方向へ) # (議論というより、ポジショントークの続きのような状態) =============== 会場から Eさん =============== ・組込みソフトウェア開発が業務の中心, そのため教育も重要。 ・広い知識が必要だということに同意。 -> 完璧には対応できない。ある意味あきらめて対応するのも必要か。 -> 対象を根本の部分に絞る必要がある ・H8マイコンボード開発 : 新人が良くわからないところで詰まっている -> はまったポイントを知識ベースとして保存 ・簡単な時計を作ると言うテーマ (割り込みハンドリング, タイマー処理) - ほとんどイベントドリブンになる -> 対応できない (or すべて割込み ハンドラ中で記述してしまう) - 気楽に自動変数を取る -> スタックあふれ - 関数のネスト回数を考えていない -> スタックあふれ #---------------------------------- # Q: mainの処理って要るのかどうか? # # A: 1. mainの処理が必要だという要求がある。 # 2. mainの周期が2-3ms、これが同期クロックにもなっている。 # 3. 割込みはイベント抽出のみで、多くはmain内で処理を行っている。 # 4. この方がとっつきやすいと考えている。 # #mainが常に必要だとは思っていない。 #---------------------------------- ======== 会場から Fさん ======== ・今年から新人研修担当になった -> 自分自身の再教育にもなっている ・子供は興味のないことはまったくしない (逆に興味のあることは一生懸命) ( Motivation first の教育 ) -> 興味が沸かないことはやらない。 新人の消極的対応が目立つ (最低限の知識しか身につけようとしない) 「でもしか」エンジニアの教育問題。 -> 高い向上心を持たない人達のベースを上げないと、全体の上昇もない -> 興味の高さが製品の品質の高さに、スキルの低さが品質の低さにつな がる [重要な問題] ・「教育者自身の質」は十分なのだろうか? -> やる気があっても、上司の理解/知識ベースが不足していると、質の低 さが部下に伝播する ====== チェア ====== ・開発に多くの有能な技術者が取られている -> 教育は二の次になりがち ・社内教育セミナーが社外教育セミナーと同じ 顧客を抱え込むための対外教育を、内部に対しても行う -> これでは社員(技術者)は育たない ・松下/デンソーの社内教育に興味がある 大学編入の時ボードの勉強をする必要があった -> 松下の本が非常に参考になった # 教育面でいろいろ協力して何かをやりたいと考えている ・大学の卒研 学生の考え : 「ソフトウェアエンジニアになれば食っていけると思って来た」 -> 1/10くらいしかプログラムを書けない (Motivationの低下) 残りの9人は? -> 半分は企業に入るとちゃんとやれるように再教育さ れている #企業の新人教育に何か特徴的なものがあるのでは? #特に人材派遣系の会社では、学生の更生率が高い ・「自分よりできる人間の弟子になる(徒弟制度)のが最も早い」と考えている 所属学生:「組込み系」がやりたい -> なら高田先生の所に行け # TOPPERS/JSPカーネル読みに参加するなど積極的に活動 # その他さまざまな成果、1年で非常に成長した。 ======== Gさん ======== ・地元企業対象のセミナー (ボードプログラミング) - 優良企業の技術者がセミナーを聞きにくる -> 現状 : 優秀な人ほど開発に、教育どころではない -> 教育の機会に恵まれないために 埋もれている人材がいるのではな いか # チャンスを与えることが必要 ・組込みシステム関連の研究室に派遣されて身につけたこと - もともとは情報系でなかったので新鮮だった - OSは魔法の箱 -> 案外簡単なプログラム カーネルコードを見たことで、精神的なハードルの低下 / Motivationの向上 ==== Hさん ==== ・Motivationの高さによって、問題に対処する姿勢が変わる ・研究室の姿勢 「やる人間は放っておいてもやる」 -> Motivationを高めることが必要 #-------- # モチベーションが重要という点では、ほぼ意見が同じ # ・問題はそれほど大きく変わらない # -> 大学だからどうとか、企業とかではなく、もっと基本的な問題か? #-------- ======== Bさん ======== ESEC教育セッション : 21世紀を勝ち残るための技術者教育 教育の対象は、どういう人が対象なのかによって大きく変化する。 ・一人前でない人を一人前にする教育 ・特に優秀なエンジニアを作る教育 (とんがったエンジニア教育) [一人前でない人を一人前にする教育] ・誰にでもわかるような方法で、誰にでもわかるようなものを作る #RTOS(ITRON), リアルタイム性 ・どこでやるのか? (企業/教育機関) -> 企業は、大学にもう期待していない #「大学は高等職業訓練校であるべき」という意見も ・理論ばかりで技術がない プログラミング技術などが足りない -> 大学の環境でもこのような教育はできるはず [優秀なエンジニアを作る (とんがったエンジニア)] ・モチベーションを高めるためにインセンティブを与える -> みんな同じ対応であったら意味がない(やる気がでない) # いい意味での差別化の必要性、能力を持った人を優遇すべき ・本当にできる人は勝手に伸びる -> 教育が必要な対象は一般の人 ====== チェア ====== ・カーネル勉強会のお話 「Give and Take」の精神 (参加するなら何かしろ) ・SESSAMEの用語でも同じ精神 - 出さない人がいる -> 提出しない人をどうするか? (やることをやらない人への対処法) #やめさせるべきか? ============= SESSAMEのかた ============= ・ワークショップにくる人は特異 - 多くの日本人の反応は「ふ〜ん」くらいでおしまい -> 情報交流の足りない世界 #社内教育をする人を教育する必要性の再確認 ・大学の職業訓練校化には反対 -> 大学で教育ばかりやっていると出世しない (教官の評価は論文ベース) #"潰れる" とか "研究室の評価=教官の評価" とか言われない限り、 #この体質は変わらない ========== C先生 ========== ・JABEE (日本技術者教育認定機構) 本気になってやろうとしているが、やったところで優秀な技術者は出てこ ないのが本音 - 問題発見能力/問題解決能力を持つような人材として卒業させたいの は確か (実施もしている) - 問題を共有できる学生を囲い込むための餌を撒く (研究室を強くした い) -> 「教えて終わり」ということはない #優秀な人材は戦力となるのは企業も研究室も同じ 議論 : 大学では本当に"教育"を行っているのだろうか? #--------------------------------------------- #Q: 研究者のポストは、サラリーマンのポストよりも少ない # -> ほとんどの大学が高等職業訓練校化してしまうのも仕方ない? # #A: 問題解決できる人間は勉強できる # 研究者教育とは、言い換えれば本当の技術者教育でもある # #Q: 「研究者 = 本当の技術者」は本当に正しいのか? # 「囲い込む」という表現 # -> 囲い込む必要もない(大学に残らない)学生は、結局ダメ学生。 # こういう学生がどんどん卒業して、企業に入る。 # 即戦力となる学生が必要 # -> 大学の先生は本気で教育しているのか? #--------------------------------------------- #以下、上記議論のAnswerを兼ねてのトーク ======== I先生 ======== ・短期的なメリットは少ない ・長期的に見ると、教育しないとどんどんセンスがなくなっていく 「職業訓練校」問題 -> 訓練校になれない (大学で教えるのは技術者教育ではない) - Pure Academicな先生には教えられない - バックグラウンドの教育を行う程度で十分ではないか? ======== D先生 ======== ・独立行政本人問題 : 資金繰り 「モノにならない研究は、論文にはなるかもしれんが金にはならない」 -> そんなことはもう言っていられない ・「やれない/わからない」ではなく、「やらない」ではないか? -> まず第一歩が必要 (とにかく「やってみる」) -> 指導者が学生以上にやらないと学生はついてこない #企業の方にもコメントを求める ================= Jさん ================= ・リターンがない - 所属会社は成果主義 : 目標を定め達成を確認、評価につながる #途中で 単純な結果のみだったのが、プロセスも評価するように変化 した - 成果主義がモチベーションの向上につながる -> 自分ではやったつもり でも上の評価では十分ではない -> モチベーションの低下 ・好きでやっている人には勝てない - 好きだということがやる気につながる -> きっかけ (褒められた, 収入, 達成感 など) が必要 ============== Kさん(エンジン系のお仕事) ============== ・10年前くらいは資料がまったくなかった -> 自分で勉強するのが基本、これである程度のレベルまでは来れる ・中堅で停滞する人とそうでない人の違い -> 対象に興味をもてるかどうかの違い #レース関係もやっているが、興味を持たせることで寝ずにやるように なる ・大学で技術を教える必要があるか -> 自ら首を突っ込んでくれるような学生を育てて欲しい =================== C先生 =================== ・教育は行っている ・学生のやる気はすさまじい ・興味を持った人間のモチベーションを高める教育が必要 -> 首を突っ込んでくれる学生は、教官から見てもかわいい #--------------------------------------- #Q: (Fさんに対し)レース応用は量産品に役に立つのか #A: 立たない。意外と枯れた技術ばかりで作られていることが多い。 # しかし新規技術を適用することに抵抗がない。 #--------------------------------------- -------- #話が終盤に入り、次回の分科会に向けたまとめの議論に ======================= 来年までに何ができるか? ======================= SESSAME ・初級中級エンジニア10万人教育カリキュラム ・教育をする人のモチベーション向上 -> 「教育って面白くってやめられないよ」というコラム ・教育のやり方 Fundamentalな考える能力をつける方法は、企業では教えられない -> この部分は大学で教えるべき ・大学との情報交換の方法 -> 企業から来ている院生に授業を担当させる #教官は何を教えたいのかを説明させる -> 企業から依頼を受けてやることも多い Bさん ・所属会社には技術研修センターがある。(SWに限らず) - 第一線の技術者を呼んで講習を行う - OJTで知識を具象化、結果をレポート -> 技術者教育になっていると考えている #非常に大きな会社ならできる。そうでないところはどうする? ・徒弟制度 - 優秀なエンジニアは優秀な教育者か? * 無意識な知識は伝えられない * 知識は盗んで得ることが重要、この時点でもう弟子は優秀 * 優秀な人の下についたら優秀になれるかどうかは判らない ・モチベーションの話 - 日本人のハングリー精神の不足 #やらなくてもどうにかなる。くいっぱぐれることはないという安堵感。 -> 命の危険を感じなければ動かないのか? ・プログラミング技術の差が非常に大きい - 非常に難しい課題を与える (LEGO MindStorm) * 意外に難しい課題を与えてあげる * 見捨てられたほうはついてこない 東陽テクニカから ・UMLロボコン (MindStorm)を今年の3月に開催した。 ・非常に盛況であった。(6mコースを2つ 100人近くが座り込んで見入っていた。) ・自分で勉強することを覚えた管理者が社内で利用する -> あとは放っておけば勝手にやる -------- ==== 所感 ==== 教育に関しての話は「モチベーション」「大学教育」という2点に終始したよう に感じた。大学教育はSWEST2で、モチベーションに関してはSWEST3である程度話 題に上ったことを思い出す。そろそろターゲットと目的を絞った議論(具体性を 持たせた議論)が必要ではないかと感じた。また具体性という点では、「理系文 系どちらがえらい?」といった議論でよく「理系と文系と無能は分けろ」という 話があるが、それと同じような印象を受けた。 ディスカッションの中で、優秀な技術者は開発に取られて教育に手が回っていな いと言う話が出たが、今回のセッションに関しても同様で、教育に関していろい ろ意見を持っておられそうな方は、技術的な情報収集のために他のセッションに 出席してしまっているように感じた。 記録者の個人的な意見ではあるが、教育者対決(大学 vs 企業)という話題でも盛 り上がれそうなのではないかと感じた。