昨今のコンピュータ系学科の構成と, ABET 認証制度の私的な紹介
1週間の春休み中で, 州内出身者が 9割を占めるここ UT-Arlington では少なくとも実家に戻っている人が多いらしいし, 遠出するプログラムも散見されます. 他の学校を見てみても, 州を越えて大学に行っている学生も実家に戻って来たりしてるようです. しかし私は休み明けの週に履修中のすべての授業で試験があるため! 勉強ばかりです. 先週フロリダに行っていたツケも小さく無いし...数式ばっかりで頭がおかしくなり始めたので日記に逃避.
今日は UTA の計算機科学・工学学科のプログラム構成について長々と紹介した後, 最後に感想を書きます.
学科の英語名は Department of Computer Science & Engineering (略称 CSE) です. この Department の上位に College of Engineering(略称 COE) があり, 日本でいう学部に相当します. COE とは別に College of Science がありますが, サイエンスを名に含んでいるものの CSE はモノ作りの側面がより強いという性格上エンジニアリングに分類される, これは世界的に自然な傾向でしょう.
CSE 内には学部生用プログラムとして 3つ専攻が用意されており, それぞれの名称と, (私の独断による)育成される人材像想定は次の通り:
- Computer Science(CS) : 計算機(コンピュータ)上で動くアルゴリズムの考案者やその応用者
- Computer Engineering(CE) : 計算機のハードウェアの開発者
- Software Engineering(SwE)*1 : ソフトウェア・システム構築従事者とくにそのプロジェクト管理者
名称だけからすると真ん中の CE は CS と SwE 両方の一部分を取ってるから中庸なのか?と思えますがそんなことはありません. また想定人材は一応定義してみたものの学部なのでそんなにプロフェッショナルに突っ込むわけでもなく, 卒業生の職種が専攻毎にそこまで異なるとは思えません.
これらの専攻区分のうち新設の CE を除く CS と SwE は ABET の認証を取得しています. ABET とは, 米国の学校の工業/技術系の教育プログラムの評価を行っている NPO で, 約600 の大学の 約 2,800 に渡る工業/技術/応用科学に関する学部や大学院プログラムはこの団体の認証を受けています. テキサス州では, この認証を受けたプログラムの修了が就職条件になっている仕事もあったりと, この認証を保つことは社会的信頼にも繋がるので学校も質を維持するために手を抜きません. だからこそ学生も大変なのではありますが...しかし, 既に一定の質が認められているプログラムの下に学んでいるんだ, という安心感は大きいです*2.
感想かつ今日の一番の特筆事項ですが, UTA は SwE を CS から独立させているのがすばらしい. コンピュータシステムに関する基礎的知識領域を大別すると, コンピュータサイエンスとソフトウェアエンジニアリングに分かれるだろうと思っているし, 私なんぞが言うまでも無く ABET もそう分けています. しかしながら ABET 認証を受けているプログラム数は, "Computer Science" カテゴリでは 数百あるのに対し "Software" カテゴリでは 20 校も無い*3. SwE は簡単に言うと, ソフトウェア開発プロジェクト参加に必要となる基本的事項, 実業で役立つ知識をフォーカスするため, 必ずしも数学, プログラミングといった "いかにも" な事柄だけではなく, 開発方法論やプロジェクト管理, コミュニケーション等, 対人的な知識や経験も少し身に付けます. また, 近年世界的に注目を浴びつつある実践型学習教育である Project Based Learning(PBL) に近いことも行う*4. その点でプロフェッショナルスクールにやや近いとも言えます(質の差こそ大きいものの). とはいえ CS と SwE で殆ど授業は同じですが 3年時にもなるとそれぞれ独自の授業が出て来ます.
CS のみ必修
CSE4308 – Artificial Intelligence
SwE のみ必修
CSE 4310 – Software Engineering Processes
CSE 4311 – Object-Oriented Software Engineering
CSE 4321 – Software Testing
CSE 4361 – Software Design Patterns
CSE 4322 – Software Project ManagementSwE の方が必修が多い(=選択科目が少ない)ようですね, 今初めて知った. したがって CS 学生は上記 SwE の授業の幾つかも履修する事が多いようです.
上述の通り CS と SwE とで履修授業数にそれほど違いは無いので, 学部を卒業して就職した時のスキル差は実際はそれほど大きくないのでしょうが, 特に研究職になる場合その差は大きいと思われるし, (曖昧な言い方ですが)異なるものだという意識の持ちようが大きいと考えています. 以前の上司の口癖として印象に残っているのが, "コンピュータサイエンスはインド人等の数学的センスが高い人達にお任せして, 多くの日本人はエンジニアリングに徹すべき" と. 日本人でも数学能力の高い方は多くいらっしゃるわけですが, 情報産業従事者全体を考えた場合, 所謂文系出身者が私含め多いのが日本の特徴でもあり, その比率は世界的に高くは無いでしょう. この背景に加え, 伝統的な"擦り合わせ型"の日本の工業文化が相まった土壌が CS 的側面をやや弱体化させていることは考えられると思っていまして, 私は割と典型に近い立場なこともあり SwE を第二学士の学位として指向しています*5.
尚もう一つ私ならではの事として, 日本と米国とで学部を経験していることがありますが, これは長くなりそうなので機会を改めます.
以前にも何度も書いていると思いますが UTA は世界大学ランキング100傑に載るような学校ではありません. そういったランキングの評価方式は詳しく知りませんが, 研究レベルを何らかの方法で測っていることは間違いない. この学校は大学全体としては先進的研究を行う学校というより, 地元産業への着実な労働力提供という性格がより強いと思うので, トップ校に比べたら研究レベルで高得点は稼ぎようも無い. しかし今日紹介したように, エンジニア育成の堅実なプログラムを開発・運用する実績は持っていて, 基礎を築く為に学部をここで過ごすのに不足は少ないと感じています*6. 5年ほど前までは日本からの留学生は数十名規模で, その多くが航空工学科をはじめとする工学学生だったと聞いていますが, ここ 3年ほどは新規留学者は一桁台で, 工学学生は特に減っている. 後日機会を改めて書きますがエンジニアリング特にコンピュータサイエンスやソフトウェアエンジニアリングを修めた学生の社会からのニーズの高さは, UTA のみならず他の学校含めコンピュータ系学科の新卒者の給与水準の高さにも如実に現れていると思いますし, 工学学生の就職先がエンジニアリング企業のみでなく金融や商社等広範囲に渡っているのも工学的実務手法に対する理解力が求められていることが一端にあるでしょう. 何にせよこれから学生になる方のエンジニア指向への回帰を願ってやみません.
*1:大学の文書では SE と略されていることが多いですが, 私の関心領域である Systems Engineering との曖昧さを避けるためここでは敢えて w を間に入れました.
*2:日本のとある名門校の新設大学院は前例が無いプログラムでキャッチーな売り文句が目立ち著名人を教授に迎えているが, やや行き当たりばったりに感じられるらしく, そこの博士課程にいる友人は先の見えなさに辟易としている様子. それと比べると革新さは無いものの不安も無いです.
*3:勿論単一プログラム内で CS と SwE とを扱う学校は多いだろう. しかしここでは"気の持ちよう"を含めてプログラムを独立させることは良いことだ, と言いたいのです.
*4:PBL の概要は慶應大学大岩研究室のサイトに詳しい: http://crew-lectures.sfc.keio.ac.jp/gp/web/proposal/background/index.html
*5:修士では Systems Engineering/System Design Management/Management Science & Engineering 等と呼ばれるプログラムに進む予定.
*6:大学院について書かないのは, ここの大学院は駄目, と言っているのではなく, 私は学部プログラムにしか着目していないだけの話です.