UML講義おわりました

生徒達によるUMLとJavaを使ったシステム開発が成功。初心者集団でも成功させることができた理由。

プロジェクトの概要

基本的なダイアグラムの描き方を教えたあとは、UML設計から実装につながっていく過程を体験してほしかったので、実際のシステムを、全員で共同開発することにしました。

「学校中を歩き回って、システム化したい題材を探してこい!」

と指示すると、若者らしい飛びぬけた題材が10も20も出てきましたが、現実的なところで「図書館の貸出管理システム」に決まりました。

このシステムを、
ユースケース図→ロバストネス図→画面設計→配置図→クラス図
の順番で設計して、実装開始。

CVSを使ったチーム開発スタイルを採用。
生徒達はまだJavaEEを知らないので、次のように分担しました。

  生徒達 :ビジネス層の実装(JDBCによるDAO)を手分けして
  先生(私):Web層の実装

で、だいたい3時間×8回くらいで、なんとか図書貸出管理システムを完成させることができました。

なんで成功した?

  「アレ、できちゃった!」

と、自らプログラム初心者を自覚している生徒達は、初めて作ったシステムが「完成してしまった」ことに、喜び半分、戸惑っている様子。
ここで、予想もしなかった(しかしながらなかなか良い)質問が飛んできました。

  「なんでうまくいったんですか?」

いっしゅん答えに窮したのですが、出てきた言葉は、

 「みんなで話合って、共通のルールを決めたから。
  決めたルールを、機械化・インターフェース化したから。」

UMLを使う理由も、Javaを使う理由も、この答えに尽きる。
システム開発を成功させるには、

  1.よく会話して
  2.ルールを決めて
  3.ルールを自動化して
  4.分担して
  5.統合する。

それだけなんですよね。あとはいかに効率よくやるか
それをうまくコントロールするアーキテクトの存在が必要になりますが、今度は、生徒達にその役割を担ってもらおうと思います。そんなわけで、来期は、JavaEEの授業を担当させてもらえることになりました。

講師という仕事も大変ですけど、いろいろと気づかせてもらうことも多いです。同じ教えるにしても、サラリーマンに教えるよりは、学生に教える方が楽しいナ。


コメント

コメントしてください

closed.