書籍概要

プログラミングの教科書

かんたん UML入門
[改訂2版]

著者
発売日
更新日

概要

本書は,「広く・正しく・新しく」をコンセプトに,UMLモデリングの基本をすべて学習できる内容となっています。また,イラストによる図解方式で概念をやさしく解説しているので,初めてUMLを学ぶ人でも安心して学習を進めることができます。章の最後に,「まとめ」と「練習問題」を収録しているので,内容がきちんと理解できたかを確認することができます。

こんな方におすすめ

  • UMLの基本と実践を学びたいエンジニア

目次

第1章 UMLとは何か?

  • 1-1 プログラムを設計するには
  • 1-2 モデリングとは何か?
  • 1-3 モデルとUML
  • 1-4 UMLはなぜ必要なのか?
  • 1-5 UMLを効果的に活用するための技術要素
  • 1-6 この章のまとめ

第2章 オブジェクト指向とUML

  • 2-1 オブジェクト指向の基本
  • 2-2 UMLの基本
  • 2-3 図の体系と各図の概要
  • 2-4 UMLの共通要素
  • 2-5 この章のまとめ

第3章 開発プロセス

  • 3-1 開発プロセスとは
  • 3-2 ウォーターフォール型開発プロセス
  • 3-3 スパイラル型開発プロセス
  • 3-4 反復型開発プロセス
  • 3-5 この章のまとめ

第4章 ユースケース図

  • 4-1 概要
  • 4-2 表記法
  • 4-3 ユースケース図の描き方
  • 4-4 ユースケース図の注意点
  • 4-5 この章のまとめ

第5章 オブジェクト図

  • 5-1 概要
  • 5-2 表記法
  • 5-3 オブジェクト図の描き方
  • 5-4 この章のまとめ

第6章 クラス図

  • 6-1 概要
  • 6-2 表記法
  • 6-3 クラス図の描き方
  • 6-4 クラス図の注意点
  • 6-5 補足事項
  • 6-6 この章のまとめ

第7章 シーケンス図

  • 7-1 概要
  • 7-2 表記法
  • 7-3 高度な結合フラグメント
  • 7-4 シーケンス図の描き方
  • 7-5 この章のまとめ

第8章 コミュニケーション図

  • 8-1 概要
  • 8-2 表記法
  • 8-3 コミュニケーション図の描き方
  • 8-4 この章のまとめ

第9章 ステートマシン図

  • 9-1 概要
  • 9-2 基本的な表記法
  • 9-3 状態の階層化
  • 9-4 擬似状態
  • 9-5 状態の再利用
  • 9-6 ステートマシン図の拡張
  • 9-7 ステートマシン図の描き方
  • 9-8 この章のまとめ

第10章 アクティビティ図

  • 10-1 概要
  • 10-2 基本的な表記法
  • 10-3 並行処理の表記法
  • 10-4 アクティビティ図の注意点
  • 10-5 この章のまとめ

第11章 パッケージ図

  • 11-1 概要
  • 11-2 表記法
  • 11-3 パッケージ図の描き方
  • 11-4 パッケージ図の注意点
  • 11-5 この章のまとめ

第12章 サブの図

  • 12-1 コンポーネント図
  • 12-2 配置図
  • 12-3 合成構造図
  • 12-4 タイミング図
  • 12-5 相互作用概要図
  • 12-6 この章のまとめ

第13章 実践例(ビジネス系システム)

  • 13-1 ビジネス系システム開発の概要
  • 13-2 ケーススタディ「社内SNS」
  • 13-3 要求分析
  • 13-4 分析
  • 13-5 アーキテクチャ設計
  • 13-6 詳細設計
  • 13-7 この章のまとめ

第14章 実践例(組み込みシステム)

  • 14-1 組み込みソフトウェア開発の概要
  • 14-2 例題「ETロボコン」
  • 14-3 要求分析
  • 14-4 分析
  • 14-5 アーキテクチャ設計
  • 14-6 この章のまとめ

付録

  • 1 UP
  • 2 アジャイル
  • 3 アナリシスパターン

サポート

正誤表

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。
画像をクリックすると大きく表示できます。

(2021年5月17日最終更新)

P.133 図6-18

社員クラスと部署クラスの関連の関連端名が逆

図6-18誤

関連端名を入れ替えた

図6-18正

(以下2018年3月5日更新)

P.176 図7-31

Par領域で指定してある長方形に破線がない

図7-31誤

Critical領域と「キューから出す:送信テキスト」メッセージの間にパラレルの破線を追加

図7-31正

P.188 図8-1

リプライメッセージが矢印のついた実線

図8-1誤

リプライメッセージを矢印のついた破線に変更

図8-1正

P.195 図8-11

リプライメッセージが矢印のついた実線

図8-11誤

リプライメッセージを矢印のついた破線に変更

図8-11正

P.227 図9-24

図に「電気ポット」フレームがない

図9-24誤

わかりやすくするため,フレーム名「電気ポット」を指定したフレームを追記

図9-24正

P.251 図10-17

アクションに向かう矢印

図10-17誤

矢印を削除

図10-17正

P.252 1行目

アクティブティ内
アクティビティ図の中

P.294 図12-3-3

インターフェースがあいまい

図12-3-3誤

インターフェースを削除

図12-3-3正

P.303 8行目~

しかし、コンポーネント図はシステムの物理的な構造を表現する際に使われるのに対し、合成構造図は分類子の論理的な構造を表現する際に使われるという違いがあります。
削除

P.375~P.379 脚注※12,13,14

脚注番号が重複している
※15,16,17に変更

P.392 図13-51

RequestParameterクラスに《utility》が指定されている

図13-51誤

RequestParameterクラスの《utility》を削除

図13-51正

P.394 脚注※18

わかりやすくするため,以下の記述を脚注に追加
「属性および操作に下線を引くことでクラススコープであることを表現します」

P.437 図14-18

図の表記の説明がない
わかりやすくするため,以下の脚注追加
「クラスのパッケージ所属を明記する際の表記として、「サブシステム名::クラス名」を使用しています。」

P.437 図14-18

図の表記の説明がない
わかりやすくするため,以下の脚注追加
「クラス名が斜体の場合、そのクラスは抽象クラスであることを意味しています。抽象クラスとは、オブジェクトを1つも持つことがないクラスです。抽象クラスはサブクラスをまとめる意味で作成します。その為抽象クラスは必ずサブクラスを持ちます。」

P.477 練習問題9-2

(b) システムやクラスの最初の状態を表す要素です。
(d) 内部に状態を含む状態を表す要素です。
(b) 内部に状態を含む状態を表す要素です。
(d) システムやクラスの最初の状態を表す要素です。

(b)と(d)の内容が逆。

P.478 練習問題9-3

解説の箇条書きの数字が丸数字

練習問題9-3誤

わかりやすくするため,丸数字を通常の数字に変更

練習問題9-3正

商品一覧