提唱者が唱えるシーケンス図入門
はじめに
どうも提唱者です。
先日、社内Slackで流れた性格診断を実施した結果、「提唱者」の称号を獲得しました。
ちなみに「提唱者」をググると「頭がおかしい」と出てきましたが、個人的にはユニークでポジティブな他者評価だと感じています。
そんな提唱者が唱える今回のテーマは「シーケンス図入門」
このテーマを掲げる背景は以下となります。
とある日の業務にて
F神「育成に於いて、シーケンス図を伝授せねばならん。」
従者ども「ははー。おおせのままに。」
ということで、Lv0 から Lv1 になるための継承となります。
UMLについて知ろう!
シーケンス図を知る前に、UMLについて知りましょう。
UML?なにそれ美味しいの?
もちろん美味しいです。ただし焼き弁に負ける。
UMLとは
UML (Unified Modeling Language:ユニファイド モデリング ランゲージ)
システム化する上で、必要な情報を可視化するために図式化したものです。
unified という英単語は「バラバラになったものを統合する」「一貫性を保つ」という意味になります。
UMLの背景
システムを開発する上で、目に見えやすい外部設計(画面、目に見える振る舞い)以外に、オブジェクト指向をもとにして内部的にどうのように設計したらよいのか、エンジニアが効率よく開発するためにはどのような手段(表記法)が必要なのか、といった考えからUMLは誕生しています。
一般的な開発手法としては、「表記法」+「開発プロセス」が構成要素になっていますが、UMLは表記法のうちの1つに該当します。
注意事項
UMLは数多く存在します。全てを理解したり、それらをプロジェクトで使うことは、個人的には難しいと感じています。(私の経験上、UMLを使ったプロジェクトは少数派でした。)
学習コストに加え、それを実務で利用できるかどうかは、会社やプロジェクトによって異なるため、使えるタイミングがあれば是非使ってみてください。
なぜシーケンス図なのか?
吾より神の聖命を受けたり。
シーケンス図とは?
オブジェクトの「構成」と「振る舞い」のうち、「振る舞い」を可視化した図形となります。
シーケンス図を理解する上で、「ライフライン」を知る必要があります。
ライフラインとは?
ライフラインとは、システムを構成する要素である「クラス」「オブジェクト」「コンポーネント」等を表します。
時間軸を意識せよ
ライフラインと同じく重要な要素としては、「時間軸」です。
この時間軸は、数学的な考え方と同じで、左が過去、右が未来を示します。
シーケンス図を意識する際、重要な要素が、「ライフライン」「時間軸」「アクター」です。
アクター?
突然でてきた用語「アクター」
何それ?美味しいの?と思った方は、ググってみてください。
まとめ
今回はシーケンス図を学習する上で、必要となる知識をちょっとだけアウトプットしてみました。
シーケンス図って実際にどういう図なのか?
具体的に何が書けるの?「メッセージ」「破棄イベント」「結合フラグメント」等
気になった方は是非ググってください。
蛇足
「提唱者」について、比率や適職について調べてみました。
サイトによっては、日本人の何%なのか?全世界の何%なのか?適職、不適職は何か?にバラつきがあります。
サイトAでは、秩序を守る職種、例えば警察や看護師が向いていると記述されていますが、サイトBでは不適職としてそれらが挙げられていました。
なので、この性格診断結果を鵜呑みにしなくておkです。
ちなみに、サイトAもサイトBも、さらにはサイトCも、共通の不適職は「エンジニア」「営業」でした。
短い間でしたがお世話になりました。
Discussion