プログラミング教育の現場から

プログラミングとはどういうものかを知っている人が、
仕様を作り、設計をするべき

市川 照久 教授
静岡大学情報学部 情報社会学科 教授

1965年慶應義塾大学卒。三菱電機株式会社にて情報システムの開発および研究に長年携わる。その経験を活かして民間企業出身者として教育の道へ転身。新潟国際情報大学を経て、2002年現職の静岡大学情報学部社会学科教授に就任。企業が望む人材を自ら育てるべく教鞭を執る。IS(Information System)のモデルカリキュラムを情報処理学会情報処理教育委員会で作成し、ISのパイオニアとして、同学会情報システムと社会環境研究会の主査も務める。『情報の処理と活用』(サイエンス社、2001年)など著書・論文多数。

静岡大学の情報学部の学習研究内容について教えてください。

※静岡大学情報学部の構成図
理系の情報科学科は紫色、
文系の情報社会学科は緑色で表現されている。
(出典:静岡大学情報学部案内)

静岡大学の情報学部は、文系と理系の融合した全国でもユニークな文工融合の学部なんですよ。文系の「情報社会学科」と、理系の「情報科学科」から成り立っていて、文系の「情報社会学科」には文系入試で、理系の「情報科学科」には理系入試で選抜された学生が入学してきます。実際に、文系の人材と理系の人材が混ざり合う、特色のある学部です。

この学部では、従来の工学部のように技術中心に学ぶのではなく、文系的要素、たとえば情報モラルとか社会環境といった面も併せて学びます。現代の情報社会においては、利用者や地域・社会といった立場からモノが見られる技術者が求められていると考えられるからです。民間にいた私の経験からも、このように双方をバランスよく兼ね備えている人材の重要性を痛感しています。

また、文工融合とはいえ、技術の教育にも力をいれています。CSプログラムでは、半導体チップからOSまで自分で作成して、自分のコンピュータを作り上げるというカリキュラムを2、3年次に実施しています。これは、日本技術者教育認定機構(通称JABEE)の情報分野の認定第一号となった技術者育成プログラムの一部であり、日本中の情報教育の中で、オリジナルな半導体チップからOSまで自作するのは、ここだけという特徴あるカリキュラムです。

貴校のVBAプログラミングの取り組みは?

プログラミングに関しては、1年次に統一してC言語を学びます。その後、情報科学科ではC言語を活用した応用やJAVAなどを学びますが、情報社会学科では、その後は特にプログラミング授業はありません。ですが、さまざまな演習の中でVBAを活用しているケースが多々あります。

特に「プログラミング言語」として教えているわけではないので、VBAとかプログラム言語の学習であるということを意識していない学生も多いですね。特に、文系で入学してきた学生は文系意識が強いですので、「プログラミングの習得」という言葉を強調してしまうと、文系の学生が引いてしまうんです。

例えば実際には、統計やデータベース、あるいはCAIシステムといった演習の中で、実際にVBAを使ってシステムを組んでいきます。分野としても、地理学や心理学の先生など、利用されている教員は大勢いらっしゃいます。
(※CAI:Computer Assisted Instruction。コンピュータを用いて、各生徒の理解度に応じた学習内容を提供し、個別指導を実現する教育システム。コンピュータ支援教育)

私自身も課題演習の中にVBAを取り込んでいます。情報マネジメント演習という科目の中で、実際に学生たちにVBAでシステムを組ませています。

上記演習の課題として、学生から提出されたプログラムをデモしていただいた。ある学生が作成したシステムは、仮想のビデオショップの販売・在庫管理システム。Excel VBAで組まれている。学生は、このような小規模システムの要件定義から設計・プログラミングまで自分自身でこなす。そして、その学生の多くが、卒業後、SEとして社会に羽ばたいていく。

「プログラミング」と情報教育についてどのように考えていらっしゃいますか?

私は、プログラミングとはどういうものかを知っている人が仕様を作るべきだと思っています。「仕様を決め、設計をし、アルゴリズムを駆使して情報システムを作り上げる」という思考やデザインができる人材の育成です。

その訓練には、プログラミングの経験が有効だと思っていますが、そのプログラミング自体は単なる手段にすぎません。また、プログラミングそのものをあまりにも強調してしまうと、コンピュータ嫌いの学生を作ってしまう。プログラミングは頭の訓練には良いが、嫌いになってしまっては元も子もないので、文系の学生もすんなりと勉強できるような、思考過程の教育を行うよう心がけています。

また、日本は情報教育として「デザイン」を教えていない、という欧米からの批判もありますので、そういった意味からもプログラミング自身ではなく、情報システムのデザインを教えることが大切であると考えています。

今後の情報教育の方向性は?

昔は、コンピュータの処理が今ほど早くなく、ひとつひとつの処理に時間がかかったため、アルゴリズムの差がソフトウエアやプログラムの良否となって表れました。今は、ハードウエアの進歩により、性能的にはプログラムの良否が目立たなくなりましたね。

そうは言っても、プログラムが部品化され、その部品を組み立ててシステムを構築する上で、別の問題がクローズアップされてきました。

そのひとつがモデル化です。問題解決をするためには、モデル化が必要不可欠になります。モデル化は、抽象化といった言葉に置き換えられることもありますが、モデリングを教えることが情報教育の中の重要な課題の一つとなっていると考えています。

ただし、モデリングを教えるのは非常に難しいんです。「これが正解」というものがないですから。いわば「絵」を教えるのと一緒であり,上手な絵と下手な絵はありますが,正解の絵というのはありませんね。実務を知らない学生相手に大変教えにくい技術ですが,できるだけ多くの事例を見せながら,良し悪しを実感させるような教育を心がけたいと思っています。

一覧にもどる
高等教育「情報B」教材無料サンプル

株式会社 オデッセイ コミュニケーションズでは、高等学校「情報B」、大学・専門学校の「プログラミング入門」「アルゴリズム学習」の授業ですぐにご利用いただける無料サンプルをご用意いたしました。プログラミング言語としてExcel VBAを利用しているので、Excelがインストールされていれば特に環境を準備する必要がなく、授業への導入が容易です。Excel VBAで、プログラミングの授業をはじめてみませんか?

※監修:大岩 元(慶應義塾大学環境情報学部教授)/作成:株式会社 オデッセイ コミュニケーションズ

高等教育「情報B」教材無料サンプルのダウンロードはこちら