各々のフレームワークではなく, 現実をソフトウェアの世界に落とし込むモデリングという抽象概念について.

up: 📂ソフトウェア設計(Software Design)

📝UML

Unified Modeling Language. 統一モデリング言語.

経験的に, クラス図, シーケンス図, ステートマシン図さえあればなんとかなる.

📝クラス図(UML)

📝シーケンス図(UML)

並行性の議論にはシーケンス図が役に立つ

📝ステートマシン図(UML)

UMLで定めた📝状態遷移図の記法.

UMLステートマシンはしばしばUMLステートチャートとも呼ばれる.

ステートマシンの機能拡張がステートチャート. UMLステートマシンはstatechartsをベースにオブジェクト指向を整理したものらしい.

Topics

UML作成ツール

📝UMTP

UMLの資格. わたしはUMTP L2まで.

🤔モデリング考察

🤔UMLが廃れたら人類はなにでコミュニケーションするのか?

UMLが流行っていない, 廃れたというような雰囲気があるが, そうすると人類はなにでコミュニケーションを取るのだろうか?

ガチガチのクラス図やシーケンス図の設計書があとでどうせ書き直すから意味がないとはいえ, UMLは使ったほうがいいと思う. よくあるアレに名前をつけてフレームワークとして定義して利用することでコミュニケーションがよりスムーズになる, それがデザインパターンでありUMLではなかったか?

UMLなんてホワイトボードで設計を議論するためのポンチ絵でいいのだ. ソフトウェアは流動的, メンテはしない. マインドマップ的な使い捨てメモ. それを納品の生産物にしようとするところに無理がある.

🤔AIはクラス生成はできてもドメイン仕様設計を言葉で定義できない

おそらく分子構造の生成すらできるならばコード生成どころかクラス図の生成もできる. 文章からクラス設計はできるかもしれない.

しかし, 現実のドメインをソフトウェアに落とし込んで, 定義することができない. 言葉によって概念を定義することができない.

ソフトウェア開発者は全員哲学科に通ってプラトンの📝イデア論を学ぶしかない.