2009年2月17日火曜日

多忙の原因1:SWE622

この春セメスターはたたでさえ3つの講義を履修しているのでとても忙しいのですが、先セメスターで履修した講義に比べ宿題がとても多くてまいっています。そのうちの一つ、SWE622を紹介します。

SWE622
講義名は「Distributed Software Engineering」です。以下、シラバスからの引用です。
Hands-on introduction to techniques and programming interfaces for distributed software engineering. Networking protocols at several layers. Construction of distributed and concurrent software using network protocol services. Applications of Internet and Web-based software.
講師はDr. Sousa。私が参加している研究プロジェクトSASSY (Self-Architecting Software SYstems)のメンバの一人です。教科書は以下の2冊で、そのうち前者は必須、後者は参考とされています。どちらも有名な本ですね。前者の本の著者は、Minixの開発者、タネンバウム教授です。講義の内容
講義のタイトルが示すように、この講義では分散システムについて学びます。具体的には、Communication, Synchronization, Service Discovery等を学びます。今までにISO7階層モデル、TCP/IP, ソケットプログラミング, RPC, RMI, Clock Synchronizationなどをやりました。私にとって既知の内容がほとんどのようですが、よく考えると、このようにきちんと体系立てて分散システムを学んでなかったような気がします。

とても多いReading Assignment
この講義では、毎週Reading Assignmentが出されます。教科書の指定された章や参考文献を読んで、問いに答えなければなりません。この宿題がとてもきついんです。読まなければならない量がとても多い上に、結構問いが難しい!さらに英語で答えるのがきついです。この宿題のためだけに半日を費やしている状態です。もっと効率良くこなさないと研究に時間を費やすことができなくなってしまいます。

しかもグループプロジェクト
Reading Assignmentだけでなく、この講義でもグループプロジェクトが課されます。つい先週、4人のチームを組み、作業を開始しました。内容はこちら。複数のPC上に分散プログラムをJavaで実装するというものです。幸い実装なので楽しそうなのですが、グローバルタイムの存在を仮定できないので、ネットワーク遅延やノード間の時計の差分等を考慮する必要のある要求事項がいくつかあり、結構難しいです。性能評価も課題に含まれていて、どうやって時間を計るか考える必要がありそうです。

以上のように、SWE622はとてもきつい講義で正直まいっています。気合を入れて取り組まないと!

2 件のコメント:

匿名 さんのコメント...

すっかりご無沙汰っス。ゆーじです。なかなか元気に奮闘中のようで何よりです。
IEDのフォローアップがありましたよ。
なんだかんだで、3年ですねぇ。ちなみに脱落者は、二人でした。。。
ではではー。

Koji Hashimoto さんのコメント...

ゆーじさん、コメントありがとうごあいます。ご無沙汰してます。いやー、まじできついです。この講義の今回のReading Assignmentで、今日の大半の時間を費やしてしまいました。なんか、分散システムの勉強というより、英語の読解力強化をしているような気分です。たくさん読まされて、内容を理解できているかどうかの確認のために問題を解かされる、て感じです。

おー、IEDのフォローアップ、出席したかったです。みんな元気でした?脱落者、僕以外の人ってひょっとしてパソコンを作っていた部署の人では。。。?確かそんな話をどこかで聞いたような。。。

もう3年も経ったんですねえ、しみじみ。未だに勉強している私はいったい。。。