凝集度と結合度
概要
本セミナーでは、「凝集度」と「結合度」と呼ばれるソフトウェア設計者に必要な理論を、演習を通じて実践・体得することができます。
演習は、文書・ソースコード・図面などをもとに行い、シンプルで誰でも理解できるものへ洗練化できるスキルが身に付けていただくように構成されています。
コース詳細 | |
---|---|
到達目標 | シンプルで、誰が読んでも理解しやすい設計図が書けることを目標にします。 1. 凝集度:単一目的で、わかりやすいモジュールを抽出できる。 2. 結合度:モジュール間の依存度が低いモジュールを抽出できる。 3. 構造設計:ソフトウェアを構造的にとらえ、設計図に表現できる。 4. 再構造化(リファクタリング):既存コードを起点とした、設計構造の洗練化ができる。 |
対象 | 2年目以上のソフトウェアエンジニア。特に以下のような方にお勧めです。 1. 設計図を活用し、よりスマートに開発した方 2. 構造的な設計図面を活用したい方 3. 設計品質に留意した開発を推進したい方 4. 動くコードとの格闘から解放されたい方 5. オブジェクト指向でクラスの設計が不安定な方 |
特徴 | ソフトウェア設計者としては凝集度・結合度は知っておくべき、基本的な設計原則です。 「構造化設計」や「オブジェクト指向設計」を行う上でも、これを知らずに良いソフトウェア設計はできない、といっても過言ではないでしょう。 設計する立場、レビューする立場どちらにも必要なスキルです。 エンジニアとしては一度はきちんと習得したい項目であり、凝集度・結合度を体得することで、一生もののスキルとなるはずです。 |
演習形式 | 個人演習:紙とえんぴつによる図面の表記 グループ演習:図面を介したコミュニケーション |
前提 | ソフトウェア開発に従事している方 |
内容 | 【1日目】 1. よい設計とは(凝集度) 2. コードを改善する 3. 図面で改善する |
【2日目】 4. よい設計とは(結合度) 5. 設計品質視点によるコードレビュー | |
【総合演習】 1. 見える化、改善提案、リファクタリング 2. 部品化、図面化、リファクタリング | |
場所 | オープン:新横浜会場 オンサイト:ご指定の場所 オンライン:zoom と miro を使います |
定員 | 12名 |
時間 | 6時間(オープンセミナーの場合は 10:00~17:00) |
受講者の声 | ・凝集度、結合度について細かい演習があり、よく理解できました。リファクタリングは実際に演習を行うと難しいと感じました。 ・凝集度、結合度の観点をソースコードレビューに使用することは、開発現場ですぐ役立ちそうだと感じました。 ・問題点の解決方法を具体的に聞くことができて良かったです。 ・ソフトウェアを理解する視野が広がったと思います。 |