UMLとデータ記述言語
要点と定義
UMLは、オブジェクト指向の分析・設計などで、目的に応じた複数の図を使ってシステムや業務の側面を表す記述法です。業務プロセスを可視化するときも、表したい対象に合う図を選びます。
ユースケース図は、システムが提供する機能と、それを利用するアクターとの関係を表します。利用者とシステムの機能との結び付きを問われたら、この図の役割が判断材料になります。
アクティビティ図は業務や処理の流れを表し、分岐、並行処理、同期を記述できます。処理手順を流れとして整理したいときに使います。
汎化は、共通する性質を持つ複数の下位概念を、より一般的な上位概念にまとめる関係です。たとえば、野球・サッカー・水泳を「スポーツ」の下位概念として整理できます。
SysMLは、UMLの一部を取り入れて機能を拡張したグラフィカルなモデリング言語で、システムの設計や検証に用いられます。
JSONは、名前と値の組み合わせを持つオブジェクトや、順序付きの値のリストでデータを表す仕様です。たとえば、商品名と価格の組をオブジェクトに、商品一覧を配列にできます。
文法規則から文字列を生成する問題では、各規則が許す記号の組み合わせを確認します。たとえば、各桁を3で割った余りで分類する規則なら、生成後の桁和の余りを追跡して候補を絞れます。
適用条件と例
図を選ぶときは、記述したい対象に注目します。利用者と機能の関係ならユースケース図、処理の順序や分岐ならアクティビティ図が適します。たとえば、図書館の貸出業務で「利用者が検索・貸出を行う」関係を示すなら前者、貸出時の確認から返却処理までを示すなら後者です。
汎化を見分けるには、複数の下位概念が共通の上位概念にまとめられるかを確かめます。野球や水泳はスポーツの一種ですが、用具や属性を並べただけでは汎化になりません。
生成規則の例では、各桁の分類が余り0、1、2に対応し、開始記号が余り0の列を作るとします。123は桁和が6で余り0なので条件に合います。一方、124は桁和が7で余り1のため合いません。桁和の条件を確認したうえで、実際に規則から列を作れることも確かめます。
JSONで記録する場面では、個々の項目を名前と値の組で示し、複数項目の並びを配列で表せます。システムの構造や利用者との関係を図示するUMLとは、目的が異なります。
誤りやすい点
ユースケース図は、オブジェクトの状態変化やクラス間の静的な構造を表す図ではありません。アクターとシステム機能の関係に着目します。
ここまでが冒頭部分です。ログインすると、無料でも1日2節まで全文をお読みいただけます。
アプリでこの節を読む