Software Engineering Lecture 6/26

Software Engineering Lecture 6/26

先週の復習

先週は、簡単なADFDの例を調べてみた。

Object 間の通信をみるだけならば、Object Communication Model というのが適している。

MVC

Graphical User Interface を含むプログラムでは、その表示され るもの(View) と、それが表しているObject (Model) というように わけてプログラムする方法がある。View と Model とは同期を取る 必要があり、それを担当するControllerというObjectが担当する。 これを、Model-View-Controller (MVC) という。



MVC は、Phigs などでも採用されていて、GUIや3D Visualのプログラムでは 良く使われる手法である。しかし、Controller が複雑になることが多く、 View と Model とで同じような構造体を用意しなければならないなど、不都合な 点も多い。

例題

Multi-user card game をJavaで作ることを考えてみよう。これを、情報モデル、 状態モデル、そして、システム全体の振る舞いを考えることによってオブジェクト 指向問題分析を行う。

まず、情報モデルを作成する。必要なオブジェクトを抜き出す。

次に、その相互の静的な参照関係を考える。

参照関係を図で表現する。以下の記法を思い出そう。