最近のIT企業の新人研修(技術研修)で取り上げられている主なテーマは、コンピュータ基礎、データベース、ネットワーク、セキュリティ、アルゴリズム、プログラミング言語、システム開発です。今回は、私がデータベース研修の第1日目で指導している内容を紹介しましょう。研修初日の第一声には、大いに気を使います。新人さんの興味を引く話をしなければならないからです。

そもそもデータベースって何だろう

 いろいろと試してみましたが、研修初日の第一声はクイズがよいようです。データベースという言葉の意味を問うクイズです。言葉の意味から、データベースの目的を知ってもらいます。

【クイズ】
データベースの「ベース」とは、どういう意味ですか?
(ア)土台(イ)基礎(ウ)基地

 正解は(ウ)の「基地」です。クイズを出題するときは、新人さんに答えを見抜かれないように工夫してください。最後の(ウ)が正解なのですから、それを挙げる前に「ええと、後は何にしようかな」などと言って、あたかも(ウ)という選択肢をいいかげんに追加したように思わせましょう。

 新人さんが(ア)か(イ)を選んでくれたら、しめたものです。「残念でした。正解は(ウ)です」「え~っ?」という雰囲気になれば、この後の話に興味を持ってくれます。データベースというアイディアが、戦争中に生まれたこと。軍事戦略に必要な情報を集めて一元管理し、常に最新の状態に正しく保ち、必要なときにすぐに利用できるようにするためのものだったこと。現在は、ビジネス戦略においてデータベースが使われていること。データベースシステムを実現する手段として、コンピュータが適していること。などを話します。

 話を聞いてくれた新人さんに「データベースシステムを作ってほしいというお客様は、どのような問題を抱えているのと思いますか?」と質問します。答えは「現状では、情報があちこちに散在していて、どれが最新かわからず、すぐに利用できない」「コンピュータを使えば、データベースシステムが構築できることを知っているが、具体的にどうしたらよいかがわからない」です。だから我々ITエンジニアが、お客様のためにデータベースシステムを作るのです。と話を締めくくります。

身近なデータベースシステムを想像してみよう

 データベースシステムを作るには、お客様の業務を分析しなければなりません。具体例として、新人さんに、すでに存在している身近なデータベースシステムを想像させます。インターネットのショッピングサイトがイメージしやすいでしょう。「アマゾンや楽天で買い物をした経験があるよね。どんなデータベースになっているか想像してこらん」と言って、図を描かせるのです。

 この想像図の作成は、研修の後半でER図によるモデリングを教える際の導入となるものです。この時点では、「商品」「顧客」「購入」「発送」「入金」など、大きなくくりでデータのかたまりを挙げさせるだけで十分です。指導する際に注意してほしいのは、このようにデータベースという視点で業務分析を行うのは、コンピュータシステム構築の一技法であって、他にも技法があると伝えておくことです。先々のアルゴリズム研修では処理の流れを考えます。Javaによるプログラミング言語研修では、オブジェクトの集合体としてシステムを構築します。このように、別の技法もあるのだと伝えましょう。様々な技法を応用できる柔軟な頭を持つことが、ITエンジニアにとって大事なことなのですよ。

この先の研修の進め方

 第一声のクイズからここまでで、1時間ぐらいになります。この後は、DBMS(dababase management system)の存在と役割を知らせ、パソコンにMySQL(フリーのDBMS)をインストールして、SQLを使った実習に進みます。講師が説明するだけという時間は、極力避けてください。リレーショナルデータベース、正規化、トランザクションといった話は、実習に合わせて説明した方が理解しやすいはずです。

 SQLを使った実習では、社員名簿のようなテーブルを1つ作らせ、それに対して登録、検索、更新、削除を行わせます。ある程度慣れたら「SQLの千本ノックだ!」と言って、様々な条件(はじめは講師が出題しますが、新人さんにも問題を出してもらいます)でデータを検索するSQL文を考えさせ、実際に結果を試す実習を繰り返します。新人さんから「隣の人と違うSQLでも同じ結果が得られたのですが、どちらのSQLがいいでしょう?」といったイイ質問が出ることを目指してください。そのためには、恥ずかしがらずに仲間同士で大いに教え合う雰囲気を作ることです。雰囲気作りも、講師の重要な仕事です。

...データベース研修の1日目は、こんな内容です。新人さんに感想を聞くと「楽しかった」と言ってくれますが、いかがでしょう。皆様のご意見をお待ち申し上げます。