解説

対話で教える
コンピュータアーキテクチャ

都倉信樹

基応
専般

大阪電気通信大学

アーキテクチャ教育の困難を感じませんか？
コンピュータサイエンス（CS）の中心的科目であ☆1❏ 新しいアーキテクチャ教育教材
すでに飽和した感のあるコンピュータシステムの教育に，学生が興味を持っていろいろ考え始めるよ」や「OS」の講義の現状はど

うな材料を提供したいと考えた．そこで，メモリにうだろうか．教えにくくなっているのではないか．

機能を埋め込む機能メモリという発想でなにが可能

その理由はいくつかある．コンピュータの出現かかを考えていき，それを次々展開していろいろな課

らすでに 60 年余が経過し，アイディアが出尽くし，

題を提出する．だんだん考えは違う対象にも及んで，標準的アーキテクチャが固まってしまった．本来こ新しいアーキテクチャへ考えが及ぶという構成を考の種の分野では種々な方法を考えて，そのときの技えた．その提示方式として対話形式を採用する．教術で最も合理的なものを比較検討して選択すること

材をどういうスタイルで提示するかに悩むところでが重要である．しかし，講義学習の時間は十分取れあるが，積極的な卒研生，あるいは修士の学生（●）

ない制約がある．また，欧米の大学教科書は一般にと筆者（◆）の対話形式として記述することを選択し非常に分厚く内容豊富で説明が丁寧で分かりやすいている．

る，「アーキテクチャものが多い．しかし，日本では，薄い教科書が求め教材の作成というと，教科書（本文，演習問題，

られ，その記述は標準的な 1 つの方式を紹介して終補足材料など），演習問題・回答集，プレゼン素材，

わることが多く，説明も少なくあまり分かりやすく

試験問題，採点基準等々多くの文書を作成することはない．なぜその方式が考えられ，主流になったのと考える方もおられよう．ここではそれらを全部揃かなど何も分からない．この教材の「空間的制約」のえてみせることはできない．むしろ，教材の作成のもと，一通りの標準的な方法だけが講義され，学生際にどういうストーリーを立てるか，いわば設計段

はわくわく感など感じることはない．いろいろな代

階をお見せしたい．

案の中からそのときどきの目的や技術水準に応じて最適な選択をしてきたことを知り，今後新しい課題❏ ストーリーについてに自由に発想し，それを冷静に評価するという方法，

筆者はこれまでいくつかのテーマで，教材として発想を身に付けてほしいし，学生が興味を持っていストーリーを立てて使ってきた．たとえば，自動改ろいろ考え始めるにはどうしたらいいかという問題

札機の秘密，バーコードの秘密（郵便局の使うバー

意識で本稿を書いた．

コードも含む）．これらは，普通何気なく見ている
ものから出発し，なんのために，どのように，とい☆1アーキテクチャ．最近はソフトウェアやシステムのアーキテクチャという言葉遣いもされるようになったが，ここでは，コンピュータ
あるいはコンピュータシステムのアーキテクチャの意味である．

162 情報処理 Vol.53 No.2 Feb. 2012

うような疑問を発することから始める．1 つの謎が解けると，次の謎が浮かんでくる．できあがったも対話で教えるコンピュータアーキテクチャのの仕組みを単に説明するのではなく，どうしてその間でのやりとりの中で，相手が考える部分は細か

ういう発想が生まれ，そのためにどういう技術をく記述する必要がなくなり，ストーリー部分を取り使ったかなどを結果的には伝えるのだが，できるだ

出しやすい．

け謎ときの連続になるように構成する．こういう謎は筆者だけでなく，多くの人がやはり興味を持ってくれる．こうやって，ある対象について，つぎつぎ

昔語りから対話は始まったと疑問を持って調べて，仮説を立てる．どうしても◆ 70 年代，ミニコン pdp11（ピーディーピー イレ

その仮説が自分の集めた証拠では確認できないこと

ブン）を知ってしばらくして思いついたアイディアもある．実は，これらのストーリーは放送大学の情が今回の話の発端なんだけど．．．

報工学という TV 講義で使って，その現場ロケを挿● 先生，待ってください．ミニコン，pdp11 っ

入することもあった．そのとき，ロケ先で担当者にて聞いたことありません．

聞いて謎を解決することもできた．こうしてだんだ◆ え？（昭和も遠くなりにけり！［表紙がすれ切ん補強し膨らませていく．聞き手に疑問を次々投げれかかかった pdp11 のハンドブック

かける素材は，学生に考えさせる講義になる．聞き丁寧に説明を始める］）pdp11 はユニバスという共手も退屈せずに聞いてくれるし，インタラクティブ

通バスを持ち，メモリも周辺機器も一様にアクセスな講義にもなる．

できる仕組みになっていた．なお，メモリは 16 ビッ

ある数学者と話をしたとき，ストーリーを感じさ

2）

を取り出し

ト 1 ワード（2 バイト 1 ワード）で，バイトアドレス

せる数学の名著が少なくないと言われ，いくつか例がついている．．．

もご教示いただいた．少し専門的なので，ここでは● それ，ハンドブックに書いてあるのですね．

最近見つけた本，『清水健一：大学入試問題で語る◆ そうです．この小さいハンドブックはインター

1）2）を例として挙げる．入試問題から出

ネットでも読めます ．アーキテクチャの勉強を始発し，数論の中でのどういう問題かを述べ，少し条

めるのにかっこうの参考書となります．英語で非常件を変えると未解決な問題となるという例を多数挙に分かりやすいのでぜひ読んでみてください．プロ

げてあり，実に興味深く最後まで読ませる力のあるグラマの立場から新しいアイディアを持ち込んだ非数学の本である．

常に斬新なミニコンピュータで，現在の多くのプロ

数論の世界』

筆者のストーリーは，放送大学の TV 講義，面接

セッサにその影響が見られます．また，プログラミ

授業で放送大学学生に，出前講義で高校生に，鳥取

ング言語 C，オペレーティングシステム UNIX 等

環境大学の学部講義，あるいは，大阪大学の大学院の発想に大きく作用したと言えます．

の講義でというようにいろいろな機会に使った．もちろん，細部は講義の目的や聴き手のマチュリティ，❏ 電源周波数クロック

時間に応じて，表現を変えたり数式の扱い，あるい◆ このミニコンには Line Frequency Clock（電は取り上げる疑問を変えたりはするが，基本的な謎

源周波数クロック）というのがあり，それは電源の解きはまったく同じものが使える．そして，ストー

1 サイクルを単位として時間間隔を知りました．こリーがしっかりできていれば，最後まで興味を持っ

れは商用電源を信号源とする簡単な波形変換回路て付き合ってくれることも確信できた．ただ，これ（正弦波から方形波に変換する）と制御回路からなりらのストーリーは私の頭の中にあり，文章で書くとます．そして，割り込みを許可すると，1/60sec ご

長くなるし，あるレベルに固定した記述になる．ことに割り込みを発生します（西日本の話）．

れを外部に取り出して見せる方法はないかと模索し

図 -1 を見てください．動作開始時はリセットさてきて，今回試すのが対話形式の記述である．二者れるが，（OS が）a=65382 番地（番地は 10 進表現）

情報処理 Vol.53 No.2 Feb. 2012163

LineLine
Time
Time
Clock
Clock
StatusStatusRegister
Register(LKS)
(LKS)

15
65382
65382
↑
a

7766

bit6

INT ENB（Interrupt Enable）
１にセットしておくと，CLOCK（bit7）が１になるたびに割り込みをかける．
プログラムまたはリセットあるいは起動シーケンスでクリアされる．

bit7

CLOCK
電源に同期して毎 1/60 秒（あるいは 1/50 秒）ごとに１にセットされる．LKS
を読む，リセットする，あるいは，START スイッチを押すと０にクリアされる．

0

INT ENB
CLOCK
CLOCK INT ENB

図 -1

電源周波数クロック状態レジスタ（右表にビットの説明）の 6 ビット目（INT ENB 割り込み許可）ビットに 1

れらを設定しておいて，制御レジスタのビット r/w

をセットすると以後 7 ビット目が 1 になるたびにを 1 にし，start/done ビットを 1 にすると，ディス割り込みがかかる．7 ビット目は動作開始時 OS がクからの読み出しが行われ，DMA（Direct Memory

reset 命令を発することで 0 にクリアされるが，電Access）方式☆ 2 で，指定したセクタのデータがメモ源から作った信号の変化したところで，ハードウェ

リに転送される．転送が終わったところで，割り込

アが 7 ビット目を 1 とセットする．OS の時刻処理みをさせるなら，制御レジスタの割り込み許可ビッ

ルーチンが，a=65382 番地を読む（read access する）

トを 1 に設定しておく．制御／状況レジスタは 1 つ

ことで 7 ビット目がクリアされる．そして，OS ののレジスタに集約することが多いのです．

システムクロックを 1/60 秒分進めて割り込み処理から戻る．60 回この操作を行えば，1 秒経過したこ❏ メモリ空間に置かれた IOとになる．こうして OS は実時間を保持したのです．

◆ これらの制御／状態レジスタ，データレジスタ
が，機器ごとに数ワードずつメモリの特定番地に設［課題案 1］この電源周波数クロックの回路を設計す

定されます．制御レジスタに書き込むことで動作のる課題も面白い．電源の正弦波を入力として 1/60

起動などを指示し制御し，結果やデータは状態レジ

秒ごとに，CLOCK ビットを 1 にセットする働き

スタ，データレジスタで読み取れます．この方式でをする回路である

は，主記憶アクセスのバスと別に入出力バスを設● 時間も電力会社に依存していたのですね．いまけず，1 つのバスで，プログラムで周辺機器を直接ならもっと精度の高いクォーツのクロックを使いま

操作できました．チャネル装置を使う大型機に比すよね．

べ，格段にコストが安く，かつ，標準品ではない機◆ そうです．そもそもコンピュータが実時間をど器でも，公開されているバスの規約に合わせ，未使

うやって知るのか，どの程度の精度が得られている用の番地にそれらの制御／状態レジスタ，データレ

かは本質的な問題だよね．もう 1 つ例を挙げます．

ジスタ類を配置し，プログラムを作成して，容易に接続することができたのです．このように，ある❏ ディスクインタフェース番地にアクセスして，1 語のデータの読み書きをす◆ 電源周波数クロックより複雑な装置の例としてるメモリの 1 部に，特定の機能を持つレジスタ群

ディスクがあります．複雑な機器の場合は指示すべき事項が増えるので，レジスタの数が増えます．今から思えばごくごく小さい当時の磁気ディスクでも次のようなものは必要でした．サーフェイス番
号，トラック番号，セクタ番号，メモリブロックス
タート番地，メモリブロックサイズ等です．これらのデータを入れる複数のレジスタがあります．こ164 情報処理 Vol.53 No.2 Feb. 2012

☆2

DMA：コンピュータに接続した種々の装置と主記憶間のデータ転送を中央処理装置 CPU が取り仕切る方式を PIO（Programmed
Input/Output）という．これに対し，CPU のお世話にならずに装置が自律的に動いてデータ転送を行うのが DMA 方式である．PIO だとハードウェアは簡単というメリットはあるものの，CPU が IO の世話をするので CPU の効率はいいとは言えない．DMA では，装置ごとの DMA 制御器に指示を与えるのは CPU だが，たとえば，
ワンブロックのデータ転送を指示されれば，DMA 制御器がすべての転送を終えて，割り込みをかけるという方式がとれるので，CPUの負担は減る．なお，別の見方では，分散制御方式とも言え，共通
バスにアクセスする権利の調整のためバスアービタが必要になる．

対話で教えるコンピュータアーキテクチャメモリ
空間0を配置でき，メモリと同様にそれらのレジスタを読み書きできる仕組みで入出力機器を制御する方法を，

割り込み
ベクトル等

memory-mapped IO（図 -2）と呼んでいました．
主記憶と同じメモリ空間の一部，最後の 4k 語分を

CPU

主記憶
（メモリ）

READ/
WRITE

それらのレジスタを置くために使いました．なお，
割り込みベクトル等はメモリ空間の 0 番地に近い方

出入力装置
レジスタ群

の下位空間を使いました．
65535

● はい．

図 -2

展開
❏ 2 進データの重み

aａ

dd

a+2
a+2

w(d)

メモリ空間に配置された IO←←◆ この仕組みで，当時いくつかのアイディアをここに
2進パターンｄ進パターン を書き込む
d を書き込む
ここに２

a 番地に書き込んだデータの重み
番地に書き込んだデータの重み w(d)が得られる
w(d) が得られる

持っていました．1 つ紹介します．番地 a に 2 進デー

図 -3

重み算出器

タ d を書き込むと，次の語（番地 a ＋ 2）のレジスタにそのデータの「重み」w(d) が得られるという演算

い．当時はサブルーチンコールのオーバヘッドも気機能を持たせたものです（図 -3）．

になる時代ですからこの発想は魅力的でした．

● 重みってなんでしたっけ？

● サブルーチンコールでどんなオーバヘッドが必◆ 重み（weight）は 2 進データ中の 1 の数です．2 進

要なのですか？

パターン d から，その重み（の 2 進表現）を求める◆ サブルーチンコールでは，ただサブルーチンの組合せ回路は「論理設計」の演習でやらなかった？

ところへ飛ぶだけでは済みません．パラメータを引一切記憶にありませんけど．
●（きっぱり）

き渡すとか，結果をもらうとか，サブルーチン内で．
．じゃ，復習にいいから最低 2 通りの組合◆ ？．

レジスタを使うなら，レジスタのデータを退避してせ回路を提案してください．なお，結構複雑になるおくとか，いろいろ準備と後始末が必要です．これので，小さい桁数から考えて桁数の増加にどう対応

らがこの場合のオーバヘッド（Overhead）となります．

するかを考えるといいでしょう．

まだそう高速でない時代のコンピュータです．少しでも早く動くことが求められました．いろいろ工夫［課題案 2］このように論理設計の問題が作れる．こを凝らして，こういう問題も 1 つ 1 つ改善されてれはちょっと難しい部類になります．回答は何通りきました．

もできますので，いろいろ自由に考えて利害得失を● そうなんですか．

考えるといい．．ほかにどういうこ● はあ．それはそうとして．

［課題案 3］このようなデータに対する演算機能を提とができるでしょうか．

供するものについて，そのインタフェースと，内部◆ それは工夫次第．このように，メモリにデータでの処理の仕方を問う演習問題は多数作れるを転送したら，計算結果がメモリのどこかに書かれ◆ なにか 1 つのデータに対して，計算して結果をてくるという機能を持ったメモリです．単にデータ出してくれるような例を考えてみてください．たとの入れ物というだけでなく，データの加工もするメ

えば，最初ちょっと設定して，あと次々データをほモリという意味で，機能メモリ functional memory

しいというような．．．

とか function in memory と呼んでもいいかもしれな● ひらめきました．乱数生成器！

どうです？

情報処理 Vol.53 No.2 Feb. 2012165

READ/WRITE

S register
状態／制御
専用
CPU

CPU
READ/
WRITE

D register
データ
図 -4

窓口レジスタ◆ なるほど．いい例を考えましたね．よく検討しれますが，柔軟なシステムを作りたいとすれば，当てください．
．
．
（注：最大長系列，乱数，レジスタ

然プロセッサを置き，ソフトウェアを使ってという転送表現，ハードウェアによる乱数発生などが話題考えになりますね．

になったが，紙面の都合で省略します）◆ そう．そういうサーバ側のアーキテクチャをど結構です．じゃ，他の例はどうです？

うすればいいかを考えるのが，また，非常に面白● はい，三角関数 sin x の計算などどうでしょう．

い．高速な応答を求められる機能ならハードウェア（注：三角関数は浮動小数点表示，たとえば 3 語ので作ってもいいが，サーバ側にもプロセッサとメモ入力に対し，3 語の出力が得られるということで議リがあって，クライアントからの要求を引き受ける論する．sin x を作るなら，当然ほかの FORTRANと考えてもいいですね．むしろ，この考えの方が柔の種々の数値計算の関数なども用意したくなるとい軟性があって，いろいろな発想が湧いてくると思いう話になる．それらは同じインタフェースレジスタ

ます．両者の間に存在するレジスタ群を窓口レジスの未使用の上位 8 ビットで区別するとか，データ型

タ（図 -4）と呼ぶことにしましょう．そのうち，デーの変換なども扱えることを議論．省略）

タを置くレジスタを D レジスタ，制御／状態レジ
スタを S レジスタと略称します．

❏ 実現法● そうみると，結構問題がたくさん作れますね．

◆ ここまでの話を少し整理しましょう．アプリ

クライアントは従前の CISC で作り，このサーバ

ケーションプログラムや OS が動く通常の世界か側は RISC で作るというようなこともあっていいら，このレジスタという窓を通して，計算してほしわけですね．いままで習ったことをいろいろ思い出

いと求められるわけです．通常の世界の方が当然主しながら，どうすればいいかを考えるといいですね．

で，依頼されて計算する方が従です．主従の関係を◆ そう，課題・問題群を提出するのがこの対話のmaster-slave という言葉を使うこともあるが，すこ目的なので，そう思ってくれるといい．

し言葉がよくない．なにかいい言葉はない？
● やはりクライアントとサーバという見立てができます．ただ，クライアント―サーバというとほか

データ構造・オブジェクトの扱いと混同する心配もありますけど，この文脈だと了解◆ ここまで 1 変数関数を扱ったが，多変数関数なしていただけば，別にネットワークの世界などとはらどうだろう．

混同されないでしょう．

● 多分そうなるだろうと，ちょっと考えましたが，◆ 整理すると，通常の計算が展開される方がクラ1 変数のときと変わり映えしないのです．つまり D

イアント側で，そこからリクエストを受け取り計

レジスタを必要数設置し，そこにデータを用意し算して結果を返すサーバがあるということですね．

て，S レジスタを通して「計算始め」といえば，結果サーバをどう実現するか？

が帰ってくるというだけで，D レジスタが増える● 専用回路を用意するハードウェア方式も考えらだけです．

166 情報処理 Vol.53 No.2 Feb. 2012

対話で教えるコンピュータアーキテクチャpush

D ← data（data を書き込むと自動的に push される）

empty

スタックが空のとき 1，そうでないとき 0

top

D のデータを読むだけ（変化なし）

full

スタックが一杯のとき 1，そうでないとき 0pop

S.pop ← 1（S の pop ビットが 1 の間は pop 作業継続中．終わると自動的に 0 に戻る）

pop

1 とすると，1 語分 POP する

Init

1 とすると，初期化する

busy

1 のとき新しい指令は受け付けない．0 のとき S，D
レジスタに書き込める

isEmpty S.empty で表示（1 ならスタック空，0 なら空でない）
isFullInitStackS.full で表示（スタックが一杯のとき 1 と表示）
S.Init ← 1（スタックの初期化をする．このビットが1 の間は作業継続中で，終了すると 0 に戻る）
表 -1

INT ENB 1 で割り込み許可．誤操作のときに割り込み
表 -2

スタックの状態語のビット

スタックのインタフェース◆ そうだね．じゃ，今日は違う問題群を考えていきます．

きましょう．
「データ構造とアルゴリズム」という講● このシンプルなスタックでいいのかがちょっと義を聞きましたね．

心配です（以下，式の計算をスタックで実現する方● はい．これはコンピュータサイエンスの最重要法，アルゴル流言語のスコープルールを採用するよのコア科目ですから，ちゃんと勉強しましたよ．任

うな場合なども議論のテーマとなる．略）．

しといてください．

● 少し思ったのですが，こういう話をすると，な◆ おっ！ 心強い言葉だね．いろいろなデータ構造

んでもサーバ側に任せないといけないと思う人がいが出てきましたね．

ますが，クライアント側でもちろん，これらのデー

スタックから考えましょうか．スタックもここで考えている機能メモリに埋め込めます．

タ構造は扱えるので，どっちがいいかのメリットデメリットを考えてやればいいことですね．
◆ そう，そういう考え方が大事です．いろいろな❏ スタック案を比較検討して，適切なのを選ぶのです．

◆ たとえば，1 語のデータを push したり，pop したりでき，top のデータはいつも直接見られるとい［課題案 4］キュー，プライオリティキュー，表など

は簡単にできますね．
うスタック（stack）の課題も面白い．まずインタフェースを考えるが，● はい．データレジスタ D と，状態レジスタ S と余裕があれば，内部での実現も検討してみるといいを用意します．そして，表 -1 のようにすればいい◆ 抽象データ型の考えもこの方法となじむこともと思います．

分かったと思います．ここまで来れば次はオブジェ◆ 有限サイズのスタックという考え方でインタクト指向ですね．さあ，どうなるでしょう．

フェースを考えましたね．
● はい．抽象データ型のところでそういうことを❏ オブジェクト

聞きました．

● オブジェクト指向プログラミングで扱うオブ◆ これはスタックの機能について整理したものでジェクトをサーバ側に預けるというのは適当かどう

すが，具体的な S レジスタのビット割り当ての案をかはちょっと分からないのです．たとえば，基本作ってみてください．

データ型に相当する整数などのオブジェクトをわざ● 図は省いて，ビット割り当てと役割を表 -2 にま

わざこんなインタフェースを通して渡す必要はない

とめてみます．

気がします．ただ，システムの複雑な機能やセキュ◆ 状態レジスタのビットの位置は，システム内でリティが問題になるようなクラスに属するものを一定の規約を設けて，同じ意味のビットは同じ位置

サーバ側に任せて，クライアントからはメッセージにくるようにすると，プログラムミスを減らせる

を窓口レジスタを通してオブジェクトに送るというし，ハードウェアで制作する場合，回路を標準化で形が考えられますね．大体制御レジスタは空きビッ

情報処理 Vol.53 No.2 Feb. 2012167

トがあるので，そこで，あるオブジェクトに対する● 私も薄々そういう予感がありました．プログラ

メソッドの区別をすれば，1 つのオブジェクトに多ムから OS に要求を発するスーパーバイザコール

数のレジスタを用意する必要はなくなりますね．

（SVC，supervisor call）も，この窓口レジスタのやり◆ そうだね．そういう切り分けが有用となる可能方で自然に実現できます．スーパーバイザコール

性があります．それから，new(p) でインスタンスをは，プログラム割り出し，OS へのリクエスト等種々

次々作るようなときにどうしますか．

の用語があるが，実行中のプログラムから OS にい● これはサーバ側にメソッドの処理を任せるが，くつかのパラメータを伴って，依頼の種類を番号

データはクライアント側に置いて，そのアドレスをで伝えるものです．したがってパラメータを D レ

窓口レジスタに書いて，サーバからそのアドレスでジスタに設定し，依頼の種類を S レジスタに設定

アクセスしてもらうという方法で，クライアント側

し，サーバ側に伝えればいままでと同じ形で実現でにデータを持つことはできます．

きます．クライアント側のメモリ空間にサーバ側が◆ そう，そういう考え方もできるし，データもサー

DMA のようにアクセスすることでクライアントのバ側に押しつけたければどうする？

メモリの読み書きをする．こうして，通常の OS の

● うーん．そうですね．窓口は 1 つだけど，生成機能はここでいうサーバ側にすべて持っていけるのされるインスタンスを区別するためにタグ（一連番ですね．クライアント側はユーザタスクの実行のみ号）を用意して，それを使ってサーバ内にあるオブをやり，サーバ側に OS がいて，サービスするとい

ジェクトの実体データを区別すればよいと思います．

う役割分担ができます．

◆ そういう考え方もできるね．こうすれば，デー◆ そうですね．さて，OS だと思えばどうなるか．

タはサーバ側に隔離することもできる．結局，オブ

宿題を出しておいたでしょう．

ジェクトだからといって特にこれまでと変わるとこ● 次のようなことを考えました．いわゆるマルチ

ろはない．その実現法はいろいろ考えられるというタスクが簡単にできるようになります．各タスクはことで，課題がいくつも作れるでしょう．特に，クタスク番号で管理します．たとえば，仮に 0 から

ラスライブラリで提供されているようなオブジェク

31 とすれば，32 タスクを扱えます．

トをこういう仕組みで利用するのも面白いと思われ

タスクごとに使う高速レジスタ群を，タスクレ

ます．その際，継承などのクラスにかかわる概念をジスタと仮に呼びます．これには，そのタスク用

どうするかもありますし，そのためにどういう仕掛のプログラムカウンタ PC，プログラム状態語 PSW

けが必要で効果があるかの検討も必要ですね．

（むしろ，タスク状態語と呼ぶ方がいい），汎用レジ● なるほど．まだまだ深く考える問題はあるといスタなどが含まれます．タスク番号が 32 個あれば，うことですね．

タスクレジスタを 32 個用意し，タスク番号で切り替えて使います．普通のメモリはキャッシュを使うとして，仮想ブロックと実ブロックの対応は OS 側

OS とセキュリティが管理しています．対応表はタスク番号をアドレス◆ 実は今までの話を振り返ると，サーバ側はクラの上位ビットにつけて，変換表（連想記憶）を検索し，イアントのいろいろな要求を聞いて，データ処理を

実ブロックアドレスを見つけてアクセスするわけでしたり，入出力を代行したりします．ということは，す．OS は，クライアント側の実行タスク番号レジ

広義での OS になっているとも見えるわけです．そスタを制御して，そこに実行すべきタスクの番号をこで，逆に，「サーバ側にいるものを OS である」と設定し，CPU に実行を命じれば，自動的にそのタ視点を変えてみると，どういう景色が見えるかとい

スクに必要な高速レジスタ群が選択され，通常のメうことです．

モリアクセスもタスク番号が論理アドレスの上位に168 情報処理 Vol.53 No.2 Feb. 2012

対話で教えるコンピュータアーキテクチャ

使われます．このような方式で，タスクスイッチは，

バの奥のサーバに分離し，パケット処理を行うのは

単にタスク番号の書き換えだけで済み，初期の OS

どうでしょう．

で問題になったタスクスイッチのオーバヘッドは非◆ 奥か，傍かはまあいいとして，処理を分離して常に小さくなります．

安全性を高めようということですね．それも面白い◆ そう，タスクスイッチのオーバヘッドを小さくし，重要ですよ．

できる．もちろん，スケジューリングは OS の方で● この調子だと，特別の入出力処理部を切り離す

やって，次に起動するタスクを決めておくという作

とか，データベース処理を別に切り出すとか，いろ業は必要です．

いろ窓口レジスタというインタフェースを介して連● でも，2 つのプロセッサとメモリを使うというの絡を取りつつ自律的に動く複合システムの形に全体は少しもったいないという気がしますが．

を再構成するという案もありですね．

◆ 最近は quad core のプロセッサもあります．集積度◆ そう，そのとおり！ わくわくしてきたでしょう．

が向上し，むしろシリコンの面積は余っていて，そ● はい．アーキテクチャを自由に考え直せばいい

こに何を埋めるか，いろいろ工夫しているわけです．

のですね．（対話はここまで）● そういえば，ワンチップマイクロプロセッサは多くの機能をてんこ盛りにしてますね．
◆ どういうアーキテクチャが合理的かは，そのと対話型教材とその利用きの技術で決まります．pdp11 を知って，この機能

通常，講義案を大体立てて，それに応じたテキス

メモリを考えたけれど，とても当時の技術では合理

トや演示教材を作成し，自分の講義の準備をするで的ではなかった．だから，スタックくらいしかそのあろう．そのテキストを公開して他の教員の参考にときは検討しませんでした．

するという方法があるが，目的や対象の異なる場合，● 今なら使えるかもしれないということですか．

テキストを読み取った上で，また一からテキストを◆ そうですね．今やシリコンチップには相当の機構成すると膨大な手間がかかる．その際，著作権を能が埋め込めます．並列処理の機会が多ければ同一侵害しないことや自分独自の説明をしたいと考えのプロセッサを多く持つアーキテクチャが有利だけると大きな負担がかかる．ここで教材案の提示法とれど，この機能メモリの考えは，むしろ機能分割的して，対話型を選んだのは，これを自分の講義の目な発想です．CPU は同じでなくてもいい．

的にあった教材作成の一種の設計書として利用でこうなると，サーバ側は OS 専用の CPU にしてきるのではないかという考えからである．ここで試もよい．従来は 1 つの CPU で OS もユーザプログ

みたのは，対話形式にすることで，不要な細部の記

ラムも実行するので，OS 専用という発想はなかっ

述をさけ，大きな流れを示したり，一種の抽象化をたでしょう．

図っており，他の講義にも適用する幅を広げて，よ● はあ．これで OS 専用のハードウェア・ソフト

り広く使っていける方法としたいという意図があ

ウェア協調設計の契機になりますね．

る．実際の対話型講義を一段抽象化したもの，ある◆ そう，OS に特化したアーキテクチャを検討する

いは，粗いシナリオと言ってもいい．謎を相手にことは面白いと思いますよ．それとメモリ空間とプ投げかけ，やりとりを進めていくことでストーリー

ロセッサを分割することで，セキュリティを高めるを記述している．ここで単に一方的に知識を伝える

方向のアーキテクチャが考えられます．このように，講義でなく，考えさせる講義をという意図も見えてどんどん自由に考えていいのですよ．

くるであろう．

．
．TCP/IP 方式の通信処理は必須のもの● じゃ．

この例ではあまり感じられないだろうが，シナリとなっていますけど，この処理の部分をさらにサーオ，あるいは，対話型の場合，その教育の目的や歴情報処理 Vol.53 No.2 Feb. 2012169

史的説明，その他のメタ情報を◆の言葉として埋めい，学生を巻き込む講義の可能性が残っていると信込むことができる．教科書は，著者の意図は前書き

じて，教材開発をしていただきたいと考えている．

等に書かれることはあるが，できてしまった教科書

また，学生に考えさせる講義の具体的な提案を，の記述から，その背後の意図を推察することは難し

本号教育コーナー「ぺた語義」に収録していただいいことが多い．しかし，ここで採用した対話型はそているので参照していただきたい．図 -2，図 -4 はういう記述を埋め込む自由度があることも指摘して

久野靖先生によるものであり，ここに感謝申し上

おきたい．つまり，教材の見せ方として対話型の可げる．

能性をお見せしたかったのである．
情報処理教育をさらに良くするために，もっと教材研究を進め，それを公開し検討する機会を学会としても強化するとよいと考えている．この本稿はそのために，対話型という提示方法の可能性をアーキ
テクチャ教育の事例で示したものである．なお，こ

参考文献
1） 清水健一 : 大学入試問題で語る数論の世界，素数，完全数からゼータ関数まで，ブルーバックス，講談社 (2011)，ISBN9784-06-257743-4．
2） pdp11 handbook, Digital Equipment Corporation (1969), http://

research.microsoft.com/en-us/um/people/gbell/Digital/pdp%20
11%20Handbook%201969.pdf（2011 年 7 月 31 日受付）の事例はオープンエンドにしてあるが，これに刺激されてその先を考える人が現におられることは筆者のよろこびとするところである．そして，この例に限らず，多くの科目で新しいストーリーで，興味深

170 情報処理 Vol.53 No.2 Feb. 2012

都倉信樹（正会員） ntokura@nike.eonet.ne.jp
CS'90，CS'97，IS'97，J07-IS 等の策定に参画した．大阪大学，鳥取環
境大学名誉教授，大阪電気通信大学学長．本会フェロー．

【第 10 回】

［コラム］

［解説］

［解説］

各大学のシラバスを比較して考える講義を目指して

JABEE を通じた大学教育の質的お大師様を訪ねて（1）

みると…疋田輝雄…都倉信樹

保証（後編）…筧

本来無一物…湖東俊彦［特別コラム］
捷彦

基応
専般

各大学のシラバスを比較してみると各大学のシラバスは最近，記述が充実してきている．授業は大学が学生に提供するサービスの大きな部分で，授業のシラバスはいわば学生と大学との間の契約書と言える．にもかかわらず（少なくとも情報専門学科について）シラ
バスから学科の教育内容を客観的に調査しようとした試みはほとんどなかったようである．筆者らは本会コンピュータ科学教育委員会の活動の一環として，シラバスの調査を行った．詳細は本誌 2011 年 8 月号を見ていただきたいが，
本稿では調査に際して思ったことを述べたい．
今回，シラバスによって，49 の理工系情報学科のカリキュラムの内容を調査した．カリキュラム標準 J07-CS1 の）知識体系のコアトピック（必修）をどの程度カバーしているかを，15 のエリアごとに，時間数で定量的に調べた．
調査の報告からいくつかの結果を述べる 2 ．各学科のシラバスと CS 標準を比べてみたものである．CS（Computer）

Science コンピュータ科学）とは，情報およびコンピュータの学習分野をどちらかというと理論的にとらえたもので，以下は結果のまとめの一部である．
（1）アーキテクチャやオペレーティングシステムなどの，CS で「伝統的な」エリアでは，カバー率は高い．
（2）ヒューマンコンピュータインタラクションなど比較的「新しい」エリアでは，学科間のバラツキが大きい．カ
バーすべき内容量が少なめのせいもある．
（3）ネットワークエリアは，コアが少なめのこともあるが，カバー率は高い．
（4）ソフトウェア工学は，コアの要求内容は多いが，カバー率は低い．
また，日本の理工系情報学科が，CS 型，IS 型，メディア型，経営工学型などに分かれるのが，エリアごとのカバー率によって分類できそうだと分かった．しかしおそらく米国ほどには明確に分かれないと思われる．
一般に，ある分野の授業を，異なる学科の間でシラバスによって比較することは，教育の内容の改善のために効果が大きい 3 ．しかし今回の調査では，そもそも各学科のシラバスの表現の形式が大学ごとにまちまちなのに驚いた．
）

米国の大学科目では，たとえば授業の番号付けなど，形式がもう少しは統一されているようである．
学科間のシラバスを比較しやすくするには，記載の基本的な形式を統一してしまうのが効果的である．シラバス文書に限らないことだが，標準的な様式をたとえばエクセルや XML で作成し共通で使用することを提案したい．学科の教育内容が，シラバスを通して容易に比較できるようになることは，教育内容の切磋琢磨を促し，さらに学士力強化方法の具体化にもつながるであろう．
参考文献
1） 情 報 処 理 学 会 カ リ キ ュ ラ ム 標 準 コ ン ピ ュ ー タ 科 学 J07-CS 報 告 書 , 151p. (Jan. 20th. 2009), http://www.ipsj.or.jp/12kyoiku/
J07/20090407/J07_Report-200902/4/J07-CS_report-20090120.pdf
2） 疋田輝雄，石畑 清：シラバスに基づく理工系情報学科のカリキュラム調査，情報処理 , Vol.52，No.8，pp.1020-1025 (Aug. 2011).
3） 関谷貴之，山口和紀：カリキュラム標準 J07-CS と CC2001CS の比較に関する報告，情報教育シンポジウム，SSS2011．

疋田輝雄 （明治大学）
ロゴデザイン ● 中田 恵

ページデザイン・イラスト ● 久野 未結

情報処理 Vol.53 No.2 Feb. 2012

171

解説

考える講義を目指して

基応
専般

都倉信樹

大阪電気通信大学

コンピュータアーキテクチャに関する教育を活性考えさせるものである．学生は講義範囲のテキスト化したいという問題意識で，別稿「対話で教えるコの小問を回答してレポートすることを求められる．

1）

ンピュータアーキテクチャ」 では，講義内容のあかなり多数の小問があるし，次週までにレポートするストーリーの提案をさせていただいた．ここでは，る必要があり，かなりのロードになる．講義が終わできるだけ学生にいろいろ考えてもらうことを目指ると学生たちの幾人かは，さっそく勉強会をやった

した講義のある考え方について紹介する．

りして，励まし合いながらレポートを早く出そうとがんばっている姿がよく見られた．全部解けとは求インタラクティブ講義と時間外にもしっかり学習していただく講義めていないが，トップクラスの学生はすべて解答しまず，講義はできる限り双方向的にする．そのどできる限り解答してくれた．提出されたすべてのために，少し説明しては小さいクイズ（5 択を数題

レポートをみて，回答をしっかりしている学生は褒など）を出す．配布したコピー用紙に自分の回答をめ，それほどでない学生はもうちょっとがんばるよ

書かせる．ごく簡単なクイズなので，一通り机間巡うに激励したりする．ただ，筆者が回答の採点をす回しつつ回答状況を見て，教壇に戻って回答する．

るわけではない．それは次の仕掛けによる．

てくれたし，それに続くレベルの学生も奇数番目な

時々引っかけ問題も混ざっており，学生はやられた

補助教材と称して，すべての小問の解答・参考情と笑いつつ，引っかかる原因となった思い込みや定報を記したものを学内 Web にアップする．学生に義の不注意な読みなどをしっかり理解する．特に理は補助教材の対応する解答を読んで自己採点する論系の科目のときは，定義をいい加減に読むとあとことを求める．自己採点が適正かどうかを講義中 2

あと困るので，そこをたたき込むのに，説明してす回ほど筆者はチェックしているが，おおむね適正にぐにクイズで確認するのが効果的である［例は付録

自己採点している．その採点が重要なのでなく，とに］．こうすると寝たり私語をするのは難しく，大にかく取り組んで自分で考えることが大事であるこ

体講義の流れに付いてきてくれる．しゃべりが下手とを学生も理解しており，答えをコピーしてごまかな筆者でもこの方法で学生と双方向のコミュニケー

すことはない．理由は解答を見に行くと，通常の問ションが成り立っているなと思われる時間を持てる．

題集の解答のように結果だけが示されているのでは

クイズは講義の中で特にしっかり注意して理解しない．問題の背景の説明や，どう取り組めばよいか，てほしいことを定着させるためであるが，自習を求解くための考え方を解説したり，可能な範囲で，別めるテキストの方の小問は，そのパラグラフで読みの考えを示したり，関連問題，発展問題などを含め取ったことを基に問題を解いたり，関連したことをている．こうして，1 つの小問の解答を見に行って172 情報処理 Vol.53 No.2 Feb. 2012

考える講義を目指しても，それに関連したかなりの文章を読むことになる．

生は合格圏に入る．多くの学生を相手にする座学で，コピペなどまったく意味をなさないのである．「考学生に必要な基礎知識を伝えるだけでなく，いろい

えさせる」，それを徹底したいという思いである（日ろ多面的に考えさせるという訓練をするのに上の方

本語力の低下も話題に上るが，日常的に文章を多読法が使える．特に，代案がいくつもあることを講義させることも有用と考えた上である）．

中では必ずしも十分には扱えない場合でも，補助教

それら大量の解説を読んでもらいたいので，その文章はいろいろ工夫する．題材の選択が最も重要だ材ではそのことが説明できる．学生は，その具体的な検討をいろいろな事例で行うことになる．

が，記述形式も工夫する．文献 1）で見ていただいた対話形式を使うこともある．学生が間違いやすい
ところを両者で検討したり，うっかり陥る発想など

情報処理教育の活性化に向けてを対話しつつ吟味するという形にする．楽しく読んアーキテクチャ，OS，コンパイラ等の分野ではでもらいたいので，いわゆる「ボケと突っ込み」的に

すでに膨大な先人の成果が蓄積されている．それを書いたり，時には土屋賢二先生（「ツチヤの貧格」文

単に伝える方法では学生は萎縮する．また，現行方

春文庫他，独特の文体で笑いとともに，多少哲学的式の背後には実に多くの代案があり，現在あるいは思考を誘う多数の著書を発表）のスタイルをまねて少し過去の時点の技術レベルで適切なものが使われみたこともあるが，文才の欠如を思い知っただけでているに過ぎない．技術が変われば当然方式も変わあった．

る可能性があり，いくつもの代案の中から最適なも筆者は担当していた 4 〜 6 講義で，この考えでのを選ぶという考えかたを学生に持ってもらいたい．

テキストを作成し印刷配布した．ほとんどの科目

そして，自分で自由にいろいろ代案を提案するようで，A4（40 × 40）で 200 ページ程度のものになるになってほしい．そういう分野で，どう講義をするか．

が，補助教材は pdf で全体ではテキストと同じくら

そのために，ほぼアイディアが出尽くしたかに見いのボリュームになることもある．このほかに用語える分野で新しく問題を作り出し，再検討する材料

解説や過去問，未来問，デモプログラムなど，学生とすることを目指した対話型教材の一案を本誌の文の学習を誘導する種々の情報を学内 Web の担当者

献 1）で提示した．対話型は教材の提示方法の一例のサイトに掲載した（なお，講義は黒板での手書きとして試みたものであって，それ以外の方法でも構で，プレゼンソフト類は使わない．講義のビデオ記

わない．また，講義だけでは十分なことを伝えられ録は学内 Web で公開しており，就活で欠席の学生

ないのが現状であるが，しっかり学習してもらう講などが利用している）．

義の仕方の一例をここで示した．学生に確実に分か

私の講義では大量のレポートを書かされることをるようにクイズを活用し，きちんと聞けば分かるの学生はよく知っている．しかし，多くの学生はおどだと思わせ，興味をつなぐストーリーで，たっぷり

ろくほど熱心に自分で解答を示し，自己採点し，その時間外学習の小問（ここではいろいろな代案に触して，毎週「話題提供」と称する数百字の身辺雑記的れるようにする）を提供し，それをやればやるだけなレポートを書いてくれた．この話題提供にはすべ

理解が深まると実感させる講義の提案である．

て返信をした．レポートは電子的に提出し，教員は筆者がこの種の科目を担当した時期はいろいろ

それにコメントでき，それらを全員が共有する形のアーキテクチャについてのアイディアが登場した．

2）

システムを使っている ．かなりしんどい科目であ

新着の雑誌を見ては，「これは面白い，講義で扱えそる．講義に参加しレポートに取り組むといろいろ深うだ」と思ったアイディアを手書きのプリントで配っく理解でき，分かったという感じが持てるようにして講義する時代で，講義が実に楽しかった．それはている．欠席の多い学生を別として，ほとんどの学

過去のことではあるが，今でもなにか楽しめる題材

情報処理 Vol.53 No.2 Feb. 2012173

を見つけて，講義を活性化させること，これが情報教育にかかわる我々の責務の 1 つであろうと考える．
すでに成熟し，なにも新しいことはないなどと諦めず，既成のテキストに囚われることなく自由に発想して，新しいストーリーをどんどん開発し，それを互いに公開して情報処理教育の活性化，レベル向上に使うようになってもらいたいというのが筆者の願いである．

参考文献
1） 都倉信樹 : 対話で教えるコンピュータアーキテクチャ，情報処理，Vol.53, No.2, pp.162-170 (Feb. 2012)．
2） 永井孝幸，松前 進，都倉信樹：教員の作業効率向上を目指した授業支援システムの構築と運用，工学教育 , Vol.53, No.2,
pp.64-69 (Mar. 2005)．
（2011 年 7 月 31 日受付）

都倉信樹（正会員） ntokura@nike.eonet.ne.jp
CS'90，CS'97，IS'97，J07-IS 等の策定に参画した．大阪大学，鳥取環
境大学名誉教授，大阪電気通信大学学長．本会フェロー．

付録 ミニクイズの例
講義で出すミニクイズの具体例を示そう．実はいろいろなパターンがある．仮説実験授業と似て，与えられた情報の中で，どれが正しいと思うかという 5 択問題を出して，学生に推理してもらうというクイズも効果的だし，単に学生の意識を知るために，「○○について」という自由記述問題を出すこともある．
理論的な講義では，定義をしっかり理解してもらうことがまず大事で，そこを猛スピードで飛ばすようなことをす
れば，学生をそこで振り落とす結果になる．次のようなクイズをやって定義をしっかり分からせると学生は「この講義は分かるように教えてくれる」と理解して，あとの話も聞いてくれる．具体的な例のために，定義を説明する．
「Σは記号の有限集合で，Σの上の長さ n の記号列とは，s ＝（s1，s2，...，sn）のように，n 個のΣの記号の並んだものである．すなわち，si ∈Σ（i=1，...，n）．また，記号列 s の長さ｜ s ｜は，s に含まれる記号の数と定義する．
長さ 0 の記号列を特にεで表す．すなわち，ε＝（），｜ε｜＝ 0．なお，記号として文字記号を想定するとき，文字列 s は上の記号列の表現から両端の（と）とカンマを取り除いて文字のみを書き連ねた簡略表現形で表す．なお，
Σの上の長さ 0 以上のΣの上の記号列のすべての集合をΣ * と表す．
例．Σ ={0，1} のとき，これは 0 と 1 という 2 つの文字からなる記号列集合である．記号列（0，1，0）は，010 と簡略表現できる．010 ∈Σ * である．
」
こういう説明をして学生にクイズを出す（この例は正誤判定問題）．

1．Σ ={a，b，c} のとき，abcadca ∈Σ *.
2．Σ＝（0，1）のとき，001 ∈Σ * であり，｜ 001 ｜ =3.
3．Σ＝ {a，b，c} のとき，abcdcba ∈Σ *.
4．Σ＝ {0，1｝のとき，｜ 000111 ｜ =7.
5．Σがなんであっても，ε∈Σ *以上のような問題を板書し，「5 つの文章について，それぞれ正しい文章かどうかを答えなさい．しっかり考えてください」と言って，机間巡回に移る．
解答 5 のみ正みたいだが，句点がないので文章としてはだめ．すべて誤である．学生から「そんなあ」というブーイングがきたら，もっけの幸い．
「諸君はプログラムを書くのだから，一字一句にも目を光らせる習慣をつけましょう」と切り返す．実はこちらは問題を黒板の前で即興的に考えるので，頭が回らず，学生に指摘されて気がつくこともま
まある．引っかけ問題と称しているが，実は教員の過誤に起因するもの多数である．
「教員たるもの，教材や問題には一文字も誤りがあってはならない」と厳しく教員に注文する教職の指導者もおられるが，誤りを一切認めない態度
は，実は例のナントカ神話のような恐ろしい方向に向くのである．
「人間だから」と言い訳するのではないが，間違
いにも大きな役割・教育効果がある．なお，こういう定義の確認以外でもミニクイズをしばしば出して，漠然と講義を聞くのではなく，論理ギャップがないようしっかり考えていくことを求めていく．計算問題も上手く出せば可である．また，上の説明で，εという記号はΣに含まれていないと暗黙に仮定してその説明はしていない．そういうこともクイズに出してもいい．要は鵜呑みにしない訓練を学生にするつもりならクイズのネタはいくらでもある．

174 情報処理 Vol.53 No.2 Feb. 2012

解説

JABEE を通じた大学教育の質的保証（後編）：

基応
専般

ソウル協定と情報分野の分野別要件
筧

捷彦

早稲田大学

JABEE は 2005 年に念願のワシントン協定加盟を

JABEE での情報分野
アクレディテーション

果たす．それと前後して，情報および情報関連分野

1）

前編 で解説があった通り，本会での情報専門教で認定された教育プログラムは，ワシントン協定が育の改革・改善を推進する活動は，JABEE の情報

engineering 教育に対する協定であったことをいやがおよび情報関連分野での認定という形をとって展開

上でも認識させられる．認定がとれると JABEE かされることになった．

らその教育プログラムの英語での program title を知JABEE 情報および情報関連分野の分野別要件は，らせるよう要請がくる．学科名称の英語表記，た本会と電子情報通信学会とが中心になって策定した．

とえば， Computer Science をそのまま届けようと

2001 年以後の ACM・IEEE-CS によるカリキュラム

すると， engineering2）という単語を含んだものに

標準の動き（後に本会では J07 として結実する）にしてくれと再要請がきてしまう．ワシントン協定

合わせると，そこで取り上げられた多種類の学科に加盟している JABEE が認定した教育プログラム

類型に対応できるものとしたいところである．しは， engineering education を行っているものであかしながら，あくまで JABEE 認定基準の下で用意り，その title には engineering という単語が含まされる 16 技術分野の 1 つとしての分野別要件を記れていなければならないというのである．かくて述することになるから，学科類型に対応する細別

Engineering in Computer Science などといった苦肉は，例示にとどめてそれぞれの学会で Web ページの策の title を届け出るはめになった教育プログラ

に参考情報

3）

として掲げることとした．学科類型

ムがいくつもある．

としては諸外国との対応を考えて，CS（Computer

Science），IS（Information Systems），SE（Software
Engineering），CE（Computer Engineering）の 4 つの領域として示し，あえて日本語名称は与えなかった．

ソウル協定の誕生
ワシントン協定での代表的な認定機関としては，

2003 年度から本格的に情報および情報関連分野の米国の ABET がある．その ABET は，engineering

認定が始まり，受審して認定を受ける教育プログラ

教育の認定を行う EAC（Engineering Accreditation

ムが増えていった．領域的には CS や CE に近いもCommission）と，computing 教育の認定を行う CACのが中心だが，IS やどの領域にも属さないものも（Computing Accreditation Commission）を別単位と☆1

少数ではあるが含まれている☆1．

JABEE の認定は領域の区分を行わないから，この分類は筆者の判断によっている．JABEE に対応すると教育の多様性が失われるとの意
見も聞かれるが，それが誤解であることが分かるだろう．

して設けている（図 -1 参照）．ワシントン協定に加盟しているのは EAC だが，EAC ではプログラム
名（program title）に engineering が入っているのを情報処理 Vol.53 No.2 Feb. 2012175

Board of Directors
EAC

CAC

ASAC

TAC

EAC : Engineering Accreditation Commission
CAC : Computing Accreditation Commission
ASAC : Applied Science Accreditation Commission
TAC : Technology Accreditation Commission
図 -1

ABET の組織原則として基準が作られている．これに対して CAC は，プログラム名が Computer

Science ， Information Systems ， Information
Technologyなどの教育プログラムを扱うという構図である．ワシントン協定加盟の

図 -2

ソウル協定

他の国の例でみても，一般に情報分野の教育プログラムは，Computer Engineering や Software

定の 3 つの WG を設けて準備を進めることとなった．

Engineering などと engineering という語を含んだもJABEE では，検討 WG を置き，JABEE 会員の中のだけが扱われている．

で情報専門教育認定に関係の深い本会，電子情報通JABEE がワシントン協定加盟を果たしたのだか

信学会，電気学会，経営工学関連学会協議会から

ら，情報および情報関連分野で認定を受けた教育プ委員が出てこの動きに対応した．2008 年 6 月には

ログラムは，ABET-CAC で認定を受けた教育プロ

WG の準備状況を確認する会議がソウルで開かれ，グラムとの相互承認が行われることになってほしい

同年 12 月にソウルで開かれた会議で，各国の認定と思うが，残念ながら，ワシントン協定はあくまで機関の代表が協定に調印してソウル協定が始動した

engineering 教育認定の相互承認協定であって，たと（図 -2 参照）．最終的には，それぞれの認定機関がえば ABET-CAC での認定は対象外なのである．

批准を済ませて正式に発足した．

同じ問題意識を他の国々の情報処理関係の学会

ソウル協定は，協定書本文，定款・規則，ガイドの 人 た ち も 持 っ て い た と み え て，2006 年 7 月 にラインの 3 文書 からなる．加盟機関を会員としてIEEE-CS の呼びかけで IFIP 傘下の大規模学会の代2 年に 1 度開催される総会ですべてを決定する．2

表が集まってもたれた相互連携に関する会合での意

年任期で選出された議長が必要な業務を事務局とと見交換や，韓国 KIISE 会長来日の際の非公式な意

もに実行する．現在，ABET-CAC の Joe Turner 氏を見交換があった後で，韓国が動いた．韓国 ABEEK

議長とし，ABEEK が事務局を務めている．その後が，米国 ABET，オーストラリア ACS，英国 BCS，に加盟した台湾 IEET と香港 HKIE を加えて 8 カ国

カナダ CIPS，日本 JABEE に声を掛け，情報専門教の認定機関が会員である．

4）

育認定の相互承認協定の設立を目指すべく 2007 年

11 月にソウルで会議が開かれたのである．その会議で，その協定をソウル協定と名付けて，早期に設ソウル協定の卒業生属性

立を目指すとした Seoul Declaration が採択されたのソウル協定準備の過程で，対象教育の標準設定である．併せて，協定設立に必要となる，定款案等

WG の議長を務めたのは現協定議長の Joe Turner 氏の策定，対象教育の標準設定，経営的枠組み案の策であった．Turner 氏は ACM Computing Curriculum

176 情報処理 Vol.53 No.2 Feb. 2012

JABEE を通じた大学教育の質的保証（後編）：ソウル協定と情報分野の分野別要件

ソウル協定

ワシントン協定

知識（基盤・専門）

知識（基盤・専門）

問題分析力

問題分析力

問題解決・デザイン力

問題解決・デザイン力

国際的相互承認の枠組み
ワシントン協定

調査力
ツール活用力

ツール活用力

社会的責任

社会的責任

倫理

倫理

チームワーク力

チームワーク力

コミュニケーション力

コミュニケーション力
財務・管理運営• 学士課程プログラム

その関連の工学分野• 修士課程プログラム•CE（Computer Engineering）

情報専門系•CS（Computer Science）• 学士課程プログラム•IS（Information Systems）• 修士課程プログラム•IT（Information Technology）• 情報一般国際建築士連合

建築系• 学士修士課程プログラム

生涯学習
表 -1

情報分野の対応
情報通信，コンピュータおよび•SE（Software Engineering）
ソウル協定

環境・持続可能性

生涯学習

JABEE の枠組み
エンジニアリング系

表 -2

卒業生属性定1991 策定の議長を務めた人である．

JABEE の国際対応

CE と SE は従来からの認定に残すこととした．情ソウル協定で定めるのは，CS や IS といった個々

報系として CS，CE，SE，IS，IT を 1 つの分野にの学科での教育内容ではなく，協定対象の教育認定

まとめておきたいという希望よりも，教育認定の国対象プログラムが修了生にどんな力を身に付けさせ際的対応を重視したのである．

ているものであるかである．こうした標準として

こうして，新しく情報専門系教育プログラム用のは，エンジニアリング教育を対象とするワシントン

認定基準を定め，その中に CS，IS，IT の分野を置

協定・シドニー協定・ダブリン協定が用意する卒

くことになった．また，これから出てくると思われがある．これにならっ
業生属性（graduate attributes）

る新しい内容の教育プログラム（たとえばメディアてソウル協定でもその卒業生属性

4）をガイドラインを主とするものなど）にも対応できるように， 情の附属書として定め，これを相互承認における対象

報一般

教育の標準とすることになった．ワシントン協定の

シントン協定対応の従来の認定基準では，これまものと比べると，財務に関する項目などを省いたもでの情報および情報関連分野のになっている（表 -1 参照）．

での電気・電子・情報通信およびその関連分野という分野も設けることとした．なお，ワは廃止し，これまを 2 つに分けて 電気・電子および関連の工学分野

JABEE のソウル協定対応と電子情報通信・コンピュータおよび関連の工学分野 として後者の中で CE と SE も扱うこととなっ

JABEE の検討 WG は，まず，ソウル協定に対応た（表 -2 参照）．なお，この新分野で認定を受けた

して情報専門系教育プログラムの認定を，従来からプログラムも情報専門系教育プログラム認定基準にの認定とは別建てにして行うべきであるとした．ソ

よって認定を受けたプログラムも，その修了生は技ウル協定に加盟することの第一の意義は，これまで

術士情報工学部門の第一次試験が免除される．

国際的な相互承認の枠外に置かれていた情報専門系

情報専門系教育プログラム用の認定基準

5）は，教育プログラムの国際的相互承認が得られるように

JABEE 認定の枠内にあって，なおソウル協定の定することにある．具体的にいうと，ABET の例を見める卒業生属性に対応できるものにする必要があても，CS，IS，IT が情報専門系の認定対象なので，る．それには，基準 1（1）に掲げる項目（a）〜（h）

これらを主に扱うこととし，国際的にはエンジニア

で対応を取ることになるが，従来の（a）〜（h）では，

リング教育としてワシントン協定で扱われている

チームワーク力とツール利用力が抜けている．ツー

情報処理 Vol.53 No.2 Feb. 2012177

従来からの基準（a）地球的視点から多面的に物事を考える能力とその素養

情報専門系教育プログラム用基準（a）地球的視点から多面的に物事を考える能力とその素養（b）技術が社会や自然に及ぼす影響や効果，および技術者が社会 （b）技術が個人・組織・社会に及ぼす局所的・全体的な影響を分に対して負っている責任に関する理解（技術者倫理）

析する能力，技術者に要求される職業倫理，法的・社会的な責任，および情報セキュリティに対する責任に関する理解（c）数学，自然科学および情報技術に関する知識とそれらを応用で （c）数学（離散数学および確率・統計を含む）および自然科学に関きる能力する知識とそれらを応用できる能力（d）該当する分野の専門技術に関する知識とそれらを問題解決に （d）該当する分野の専門技術に関する知識とそれらを問題解決に応応用できる能力

用できる能力（e）種々の科学，技術および情報を利用して社会の要求を解決する （e）問題を分析し，モデル化を行い，その解決に必要な情報処理上ためのデザイン能力の要件を抽出し定義する能力，および，与えられた要求に対して，各種制約の下でコンピュータを用いたシステム，プロセス，
コンポーネントまたはプログラムをデザインし，実装し，評価できる能力（f）日本語による論理的な記述力，口頭発表力，討議等のコミュニ （f）論理的な記述力，口頭発表力，討議等のコミュニケーション能ケーション能力および国際的に通用するコミュニケーション基力および国際的なコミュニケーション基礎能力

礎能力（g）自主的，継続的に学習できる能力（g）自主的，継続的に学習できる能力（h）与えられた制約の下で計画的に仕事を進め，まとめる能力（h）チームとして計画的に目標を達成していく能力

表 -3

JABEE 基準 1（1）学習・教育目標に具体化して設定すべき項目

ル利用力の方は，（e）のデザイン力の項目の中で扱ながら次の審査としては継続審査が来る教育プログ

うことにすることとし，チームワーク力だけは項目

ラム，（c）まだ審査を受けたことのない教育プログ

として追加することとした．ただし，なるべく従来

ラムの 3 つのプログラムについて認定審査の試行がからの認定基準と項目数などの枠を合わせておくこ行われた．その結果，基準 1（1）（h）として新たにとを原則として，従来の（h）にあった計画遂行力を設けたチームワーク力についても，教育プログラム（h）の内容をチームワーク（e）に含めることにして，が対応可能であることが分かった

6），7）

．

力に置き換えることとした．（e）デザイン力は，以2010 年度から情報専門系教育プログラム用の認上のことを踏まえ，また情報専門系に特化して，そ定基準に基づく認定審査が始まった．ただし，移行の内容を一新した．また，以上に述べた大きな変更措置として，2010 年度と 2011 年度は従来からの基のほかにも，情報セキュリティについての責任の認

準での情報および情報関連分野で受審することも識を持たせること，数学として離散数学と確率・統可能となっている．そして，実際に 2010 年度には，計も身に付けさすことなど，こまかな修正を施した情報専門系教育プログラム用基準に基づいて認定さ（表 -3 参照）．

れた教育プログラム第 1 号が誕生した ．

8）

基準 1 のほかには，基準 2（2）の学習保証時間に対する要求を情報専門系教育プログラムに適した形に書き直した．この 2 つのことがらを除くと，情報専門系教育プログラム用の認定基準は，従来の基準と同一である．

JABEE の基準改訂と教育改革
情報専門系教育プログラムに関しては，ソウル協定への加盟という新事態があって，その卒業生属性

2008 年度には，この情報専門系教育プログラムに対応するために，認定基準の，とりわけ基準 1（1）用の認定基準に基づいて，（a）すでに継続審査を経の変更が行われた．同じことは，ワシントン協定に験している教育プログラム，（b）継続審査は未経験

加盟している JABEE のその他の技術分野認定につ

178 情報処理 Vol.53 No.2 Feb. 2012

JABEE を通じた大学教育の質的保証（後編）：ソウル協定と情報分野の分野別要件いても行う必要があった．また，建築分野が，国際

生自らが学ぶ教育へ，学生自らが学ぶことを学ぶ教

建築士連合の国際相互承認が得られるように学士修育へと急速に切り替わっている．JABEE による認士一貫の 6 年制教育プログラムの認定を設けたこと

定─アクレディテーション─もそうした教育改革をもあって，これらを統括できる形の認定基準に整備推進するのに資するものに変貌をとげようとしていし直す必要性もあった．

るのである．

こうして，JABEE は，設立以来，初めて大幅な

ここでは情報系プログラム認定に関してもっぱら認定基準の改訂を行い，2012 年度から実施するこJABEE の側からの視点で解説した．これに対して，9）ととなった ．その柱は，（1）学士，修士，学士修

実際に認定を受けた愛媛大学からの解説が 4 月号に士一貫などの種別，エンジニアリング系・情報専門掲載を予定されている．また，文部科学省・産業界・系の枠組みの違いを超えて統一的な基準提示とする認定校を含めたより広い視点からの特集「大学教育こと，（2）PDCA サイクルに即した基準項目配置にの質的保証」が 7 月号に予定されているので，併せすること，（3）アウトカムズ評価の考え方を徹底してお読みいただけると幸いである．

て学習時間など教育内容に関する細目を縛る条件を除くことにある．この結果，文書としては，JABEE
認定のすべてに共通する共通基準，基準種別ごとの個別基準に分けることとなった．また，これまで，
直接には文書化したものがなかった JABEE 認定の大枠を示す 技術者教育認定にかかわる基本的枠組を用意した．従来の基準 1（1）は，従来の（a）〜（h）に（i）チームワーク力を加えたものに改められた．
したがって，ソウル協定に対応する情報専門系学士課程認定もこの共通基準に従った上で，個別基準で各項目について勘案事項を与えて 2010 年からの情報専門系教育プログラム用認定基準と実質的に同じ内容としている．なお，2015 年度までは 2012 年度
制定の新基準への移行期間とし，プログラムは従来の基準によって受審してもよいことになっている．

2012 年度からの JABEE の基準改定は，教育の質

参考文献
1） 牛島和夫：JABEE を通じた大学教育の質的保証（前編）：大学
教育改革とアクレディテーション，情報処理，Vol.52，No.12，
pp.1562-1566 (Dec. 2011)．
2） 筧 捷彦，他：特集「情報専門学科カリキュラム標準 J07」，情報処理，Vol.49, No.7 (July 2008)．
3） 情報処理学会アクレディテーション委員会，http://jabee.ipsj.

or.jp4） Seoul Accord Documents, http://www.abeek.or.kr/accord/contents.
jsp?menu_l=1445） JABEE，日本技術者教育認定基準（ソウル協定対応プログラム用）2011 年度適用，http://www.jabee.org/OpenHomePage/joho/
criteria2011_cac_110207.pdf
6） ソ ウ ル ア コ ー ド ─ 情 報 専 門 学 部 教 育 認 定 の 国 際 相 互 承 認
─， 第 71 回 全 国 大 会 シ ン ポ ジ ウ ム（5），http://www.ipsj.
or.jp/10jigyo/taikai/71kai/71program/html/event/index.html, (Mar.
2009).
7） 佐渡一広：ソウル協定の現状報告，第 106 回コンピュータと教育研究発表会，Vol.2010-CE-106, No.6 (Sep. 2010).
8） JABEE ， Computing and IT-Related Programs Leading to
Bachelor's Degree Accredited by Japan Accreditation Board forEngineering Education (JABEE ), http://www.jabee.org/english/
OpenHomePage/Computing&IT-related_programs_bachelor's
2010.pdf
9） JABEE，2012 年度基準改定について，http://www.jabee.org/
OpenHomePage/accreditation_o.htm（2011 年 11 月 16 日受付）の保証と教育改善を目的とするという JABEE の原
点に立ち返って，その認定審査全般を改めていくという方針の表明でもある．世界を見渡すと，エンジニアリング教育はもとより，大学教育についての改革が進んでいる．知識伝達の教育から，学筧

捷彦（正会員） kakehi@waseda.jp
1970 年東京大学大学院工学系研究科修士課程修了．同大工学部助手，
立教大学理学部講師・助教授を経て，1986 年早稲田大学理工学部教2007 年から早稲田大学理工学術院教授．日本ソフトウェア科学会，
授，ACM 各会員．本会フェロー，情報処理教育委員会委員長．

情報処理 Vol.53 No.2 Feb. 2012

179

基 応
専 般

特別 Column

お大師様を訪ねて（1） 本来無一物
学会役員選挙の Web 投票システムではパスワードを入力するようになっている．このパスワードは英数字で構成された重なりのないパスワードである．パスワードを生成する乱数発生器はアルゴリズムの大家として知られる早稲田大学の筧捷彦教授に作成を依頼した．
「何でまた私が」など言いながらも先生は快く引き受け，旬日のうちに Java コードを送付してきた．
このコードの出来はかなり良く流石は筧先生と感動したが，実は M2 学生の作品であった．学生が作ったのでは無料と言う訳にもいかず，バイト代として 10K 円支払うというと，当該学生は「別件のバイトで作ったコードを流用したので要らない」とのことで，それではとそのお金は筧研究室で浩然の気を養う足しにされた（と思う）．
この乱数発生器の要求仕様は曖昧さのないように（元富士通の私としては）気を入れて書いた．筧先
生はこのしっかり書かれた要求仕様と傑作 Java コードをこのままにしておくのはもったいないとのワ
ンガリ・マータイ精神で，コードの所々を隠した穴埋め式試験問題に流用した．「お陰様で試験問題を一問考えないで済みました」とは転んでも只では起きない筧先生のお言葉である（「勿体無い（もったいない）」とは，仏教用語の「物体（もったい）」を否定する語で物の本来あるべき姿がなくなるのを惜しみ嘆く気持ちを表している，とは Wikipedia の解説である．一方お大師様（弘法大師のこと）の教えには「本来無一物：万物は実体ではなく空にすぎないのだから執着すべき対象は何 1 つない」というのもあり，四国歩き遍路により俄仏教徒となった私はますます混乱の極みなのである）．
さて当該学生プログラマのその後であるが，私としては当然日立や富士通等のメーカに就職し，東証・
みずほ・JR・全日空と不祥事続きの日本のソフトウェア業界に新風を吹き込んでくれることを期待したのであるが，任天堂でゲーム情報学に邁進することとなった．メーカ育ちの私としては大いに嘆いた次
第だが，国立大学工学部を卒業して寿司職人になった大学院生もいるとのことなので，それに比べれば情報処理に関与しているだけまーいいかと諦めの気持ちである．
湖東俊彦（日本信頼性学会）「ぺた語義」のコラムではさまざまな方に教育をテーマに自由に書いていただいています．在任中
大変お世話になった，湖東前情報処理学会事務局長は，教育について一家言お持ちなので，ぜひにと依頼したのですが，書かれたいことが山積みとのことで，検討の結果，今号から 5 回（予定）に渡って連載コラムとして掲載させていただくこととなりました．お楽しみください．
（ぺた語義編集委員 久野 靖）

イラスト ● 久野 未結

180 情報処理 Vol.53 No.2 Feb. 2012