UTI UML教育研究所
読み物
OCUPブログ
OCRESブログ
UMLコラムから学ぶ
スキル・キャリアコラム
プロジェクト導入事例
エキスパートインタビュー
資格取得までのステップ
FAQ
教育コンテンツ
キャンペーン
ブックプラス
パートナープログラム
認定ユーザープログラム
メールマガジン登録
お問合わせ
組込み開発に携わる方のためのOCRESブログ 第12回

前段については、株式会社ストラタジーナムのプロマネBlogでご覧いただけます。


ソフトウエア設計のトレーニング法 3

UML2を使用したリアルタイム・ソフトウェア設計講座


UML2を使用したリアルタイム・ソフトウェア設計講座


この講座も、前回ご紹介した「SysMLを使ったシステム工学講座」と同様、設計演習を中心としたコースです。
ジム・クーリング博士によると、設計講座においていわゆる設計ツールを使用して演習すると、受講者は皆ツールの使い方の方に注意が行ってしまい、肝心の設計の方が疎かになる傾向があるため、彼の開発したトレーニング・コースはすべてツールを使わずに設計図(モデル図)は手で描くことになっています。
注意すべき点として、初学者は往々にして、設計ツールが使えるということと、設計が出来るということを混同してしまう傾向があります。

受講者は、様々なソフトウェアの開発ツールの使用経験があると思いますが、ことUMLツールに関して言えば、どのツールも(もちろん機能の過不足はありますが)深いレベルで似通っており、学ぶよりも慣れの方が有効であり、短い演習時間をツールに慣れるために使うのは、時間の無駄と言えます。
さて、このコースの中身の解説は、「組み込みプレス」の次の号に投稿しましたので、そちらを参照頂くとして、ここでは、コースのアジェンダを紹介いたします。

UML2を使用したリアルタイム・ソフトウェア設計講座 アジェンダ

リアルタイム・システム設計入門
−リアルタイム・システムの概要
−インクリメンタル設計プロセス

ソフトウェア・マシン − 基礎
−モジュラー構造化の基礎と実践
−プログラム設計における図法のテクニック − UMLアクティビティ図

オブジェクト指向設計の概念
−オブジェクトのコラボレーションの集まりとしての設計システム
−クラス、オブジェクトとそれらの特徴
−設計・構築の鍵となる課題:ソフトウェア・テンプレート、カプセル化、インタフェース、情報隠蔽、継承と集約

クラスとオブジェクトのモデリングの基本
−設計テンプレート、 カプセル化、インタフェース、情報隠蔽
−クラス・オブジェクトの汎化特化間系:継承

動的振る舞いのモデリング
−システムとオブジェクトの動きを定義するための状態図
−UMLステート・マシン図の概念、文法、セマンティクス

理念的なオブジェクト・モデルの開発
−理想環境下における、オブジェクトの関係、コミュニケーションおよび制御
−シナリオ、シーケンス図とコミュニケーション図
−責務に基づく設計テクニック
−実世界とのインタフェース

実践的な逐次(プロシージャ型)オブジェクト・モデル
−逐次的コードで、オブジェクト群の振る舞いを制御:コーディネータ・オブジェクト
−アクティビティ図を用いて、アルゴリズム(もしくはプロセス的な)操作を指定

小型システムのための仕様モデルの開発
−仕様モデルの役割
−並列処理、非並列処理の構造 − アクティブ・オブジェクトとパッシブ・オブジェクト
−オブジェクト構造の仕様化 − フラットなオブジェクト構造

並列処理システムとタスクに基づく設計
−抽象的なソフトウェア設計に伴う問題
−マルチタスキング設計の基本

小型システムのための実装(タスキング)モデルの開発
−仕様モデルからタスキング・モデルへのマッピング

中規模システムの開発
−コンポジット構造、ポート、インタフェース入門
−コンポジット構造のための仕様モデルの生成
−実装(タスキング)モデルの仕様化

大規模システムの開発
−鍵となる構成ブロック − パッケージとコンポーネント
−サブシステム構造の設計
−実装モデリング

多重コンピュータ・システム
−リアルタイム・システムのための多重コンピュータ構造
−ソフトウェアをハードウェアにマッピングするための基準
−実践的な設計テクニック

ユースケース分析
−用件を構成し表現するためのユースケース
−シナリオとユースケース
−システム・スコープと直接的、間接的なアクター
−アクターとシステム間のインタフェースを図的にモデリング

事例研究
−コンピュータ制御の測定器の組み込みソフトウェアを題材