Upgrade to Pro — share decks privately, control downloads, hide ads and more …

20230615tdm

m-miura.jp
June 15, 2023

 20230615tdm

m-miura.jp

June 15, 2023
Tweet

More Decks by m-miura.jp

Other Decks in Design

Transcript

  1. Copyright levii Inc. All rights reserved. 自己紹介 三浦 政司 (みうら

    まさし) JAXA宇宙科学研究所 宇宙飛翔工学研究系 准教授 深宇宙探査技術実証機(DESTINY+)プロジェクトチーム 株式会社レヴィ 共同創業者/システムデザイン研究所所長 専門分野 • 制御工学  :分散協調制御、飛翔体誘導制御 • システム工学:システム設計論、システムモデリング • 工学教育  :PBL型工学教育 好きなこと • 蟻コロニーの飼育 • 自転車 • コミック m-miura.jp 2024年打上予定 DESTINY+
  2. 事例:株式会社中海テレビ放送によるシステム開発 • 本社:鳥取県米子市 • 鳥取県西部をエリアとするケーブルテレビ局 • 電力小売事業を展開する地域新電力事業者でもある 今回紹介する事例の開発対象システム • 新サービス「オール電化プラン」の

    お申込み受付システム • 「誰でも簡単にお申込みができる」 を目指してLINEと連携 • 新プランでどれだけお得になるか、 電気料金をシミュレーション https://www.chukai.co.jp/
  3. 開発の流れ 対話型モデリングによる上流設計 • 要求ヒアリング、要求定義 • アーキテクチャ設計 モデルを中心に置いた実装フェーズ • 詳細設計 •

    実装 上流設計の成果物としてモデルを納品 リリース・運用 レヴィ 中海テレビ 地域のベンダ 中海テレビ レヴィ モデルで対話 モデルで対話 開発支援
  4. 提案:対話型モデリング 1. 視点をわける 2. システムモデルで対話する 3. 視点をつなげる 運用 フロー 機能

    構造 運用フローを実現する のに必要十分な機能が 挙げられているか? (整合性観点)
  5. 提案:対話型モデリング 1. 視点をわける 2. システムモデルで対話する 3. 視点をつなげる 運用 フロー 機能

    構造 運用フローを実現する のに必要十分な機能が 挙げられているか? (整合性観点) 対話するための前提 対話しながらシステムモデルを 構築していくことで合意できる 要求・アーキテクチャを探す 対話しながらモデリングを するときの注意点
  6. Copyright levii Inc. All rights reserved. 「視点をわける」とは? • 複雑なシステムの全体をそのまま考えたり理解したりすることは困難 •

    対象のシステムをモデルで表現するためには「視点をわける」ことが必要 • 視点をわける = 視点を決める × 複数の視点から見る ◦ 視点を決める:モデルを描く際の関心/抽象度/範囲を決める ◦ 複数の視点から見る:様々な視点からモデルを描くことでシステムの姿を           表現する(システムの全体を表現する)
  7. Copyright levii Inc. All rights reserved. なぜ「視点を決める」が必要なのか? ▪ 例えば、「機能間のつながり」と「(物理的な)部品間のつながり」を 同じモデルの中で描くことはできない

    ◦ 無理やり描くことはできるかもしれないが、わかりやすくは描けない ▪ 異なる抽象度で見たシステムの姿を同じモデルで描くのは難しいことが多い ◦ 例外)ツリーモデルで包含関係を描いていく場合などはOK ▪ 複雑なシステムの全体を一度に描こうとするとわかりづらくなってしまうこと がある ◦ 特に抽象度が低い時はそうなりがち 何に関心を持って描くか?どんな抽象度で描くか?どの範囲まで描くか?などを 決めないと(わかりやすい)モデルを描くことができない。
  8. Copyright levii Inc. All rights reserved. なぜ「複数の視点から見る」が必要なのか? • 視点を決めて描いたモデルは、システムのある一面でしかない ◦

    そのモデルを描くために多くの情報を捨てている(捨象している) • システムに対する認識を合わせるためには、十分な数の視点が必要 (ほとんどの場合は1つの視点では不十分) • ではどんな視点が必要なのか?いくつ必要なのか?→対象や目的によるので、 対話しながら探索するしかない(上流設計の難しさの一つ) システム システムのある一面しか 表現していない 複数の視点で表現しないと システムが十分には理解できない
  9. Copyright levii Inc. All rights reserved. ここまでのまとめ • 対話や認識合わせのためにはシステムを分かりやすく表現することが必要 •

    システムを分かりやすく表現するためには「視点をわける」ことが必要 • 視点をわける = 視点を決める × 複数の視点から見る が対話の前提 システム 視点を決める 複数の視点から表現する
  10. Copyright levii Inc. All rights reserved. モデル 一般的な定義 物事について、着目している特徴や性質だけを抽出し、 その他の細部を簡略化して表現したもの。

    例 • 形状モデル(3Dモデルなど) • 数理モデル • シミュレーションモデル • … • システムモデル • …
  11. Copyright levii Inc. All rights reserved. ビュー + 表現方法 =

    モデル モデル • ◯◯仕様書 • ◯◯リスト • ◯◯図、◯◯表 • ◯◯報告書   ︙ ビュー ▪ 目的 ▪ 関心 ▪ 抽象度 ▪ 範囲 表現方法 ▪ 文書 ▪ リスト ▪ 図、表 ▪ システムモデル   ︙ ビューと表現方法を決めれば、モデルでシステムを表現できる。 システム モデル ビュー
  12. Copyright levii Inc. All rights reserved. ビュー + 表現方法 =

    モデル モデル • ◯◯仕様書 • ◯◯リスト • ◯◯図、◯◯表 • ◯◯報告書   ︙ ビュー ▪ 目的 ▪ 関心 ▪ 抽象度 ▪ 範囲 表現方法 ▪ 文書 ▪ リスト ▪ 図、表 ▪ システムモデル ビューと表現方法を決めれば、モデルでシステムを表現できる。 システム モデル ビュー 対話には システムモデル が向いている! (と主張したい)
  13. Copyright levii Inc. All rights reserved. ビュー システム • 「視点をわける」の「視点」を具体的に定義

    • ビュー ◦ システムの姿をモデルで表現するときの、システムの切り取り方、枠 ◦ 目的・関心・抽象度・範囲を決めるとビューが決まる ◦ (逆に言うと)目的・関心・抽象度・範囲を決めると、システムをモデルで 表現できる
  14. Copyright levii Inc. All rights reserved. システム設計におけるモデル システム モデル ビューから見たシステムを

    表現したもの ビュー 分けて見るときの枠 • 目的 • 関心 • 抽象度 • 範囲 で決まる
  15. Copyright levii Inc. All rights reserved. ビューを定める特徴①「目的」 システム • 目的

    ◦ そのビューでシステムを表現する目的。なんのためにそのビューが必要か? • パターン/例 ◦ 誰と、どんなことについて認識を合わせたいのか(合意したいのか) ◦ ビューAとビューBを接続するため ▪ AとBの間の整合性を直接確認することができない場合 ◦ ◯◯について ▪ アイデアを出すため、要素を洗い出すため ▪ 議論するため、確認するため ◦ ◯◯について具体的に考えるため/抽象的に考えるため ◦ … • 備考 ◦
  16. Copyright levii Inc. All rights reserved. ビューを定める特徴②「関心」 システム • 関心(ビューポイント)

    ◦ システムのどんな側面について着目してモデルを描くのか? ◦ 要素は何か(ノードは何か)、どんな関係性を見るのか(リンクは何か) • パターン/例 ◦ コンテキスト ▪ システムの「全体と境界」や「外部との相互作用」に関心を持つ ▪ システムを取り巻く環境やステークホルダに関心を持つ ▪ ノード:外部要素、ステークホルダ ▪ リンク:システムとの相互作用 ◦ 運用の流れ ◦ 物理的な構成 • 備考 ◦ ISO42010にDoD AFなどに書いてある: ◦ 対話型モデリングでは「ビューポイントが必要か?」もみんなで考える
  17. Copyright levii Inc. All rights reserved. システム設計者がよく使うビューポイント Context Viewpoint システムの全体と境界、および外部との相互作用に関心を持つ

    Functional Viewpoint システムの機能に関心を持つ Operational Viewpoint システムを操作する、運用するという側面に関心をもつ Process Viewpoint システムの動作、処理の順番などに関心がある視点 Physical Viewpoint システムの物理的な構成、特性、形状などに関心がある視点 どのようなビューポイントが必要か?も探りポイント(対話が必要)
  18. Copyright levii Inc. All rights reserved. ビューを定める特徴③「抽象度」 システム • 抽象度

    ◦ どのくらいの抽象度でモデルを描くのか? ◦ どのくらい粗く/どのくらい細かくモデルを描くのか? ◦ 要素(ノード)の粒度は? • パターン/例 ◦ ◯◯が一つのノードになるくらいの抽象度 ◦ ビューAより一段階細かい/粗い ◦ ノードは具体的なものをバイネームで記述するくらい ◦ 全体像(全範囲)を描けるように俯瞰的に ◦ 販売されている単位の部品(コンポーネント)まで ◦ 担当者を割り振れるレベルまで分解しておく • 備考 ◦
  19. Copyright levii Inc. All rights reserved. ビューを定める特徴④「範囲」 システム • 範囲(スコープ)

    ◦ どの範囲まで見るか?時間方向も。 ◦ モデルとして記述する範囲。 • パターン/例 ◦ 対象システムの全体 ◦ サブシステムAについて ◦ 対象システムを含む環境全体(スーパーシステム) ◦ AsIsを描きましょう、ToBeを描きましょう(時間方向の範囲) ◦ ケースAの場合、ケースBの場合(場合分け) • 備考 ◦ 「抽象度が低い」かつ「範囲が広い」は表現しにくいので、そのような ビューは(レヴィは)通常は選ばない。※実装フェーズへのインプットとし てそのようなビューでのモデルが描かれる場合はある
  20. Copyright levii Inc. All rights reserved. ビューモデル システム • ビューとビュー間の間をつないだリンク(整合性リンク)から構成される図

    • ビュー間の関係性を表現している • これ自体が、ビューをノードとした場合のモデルである(メタモデル)
  21. Copyright levii Inc. All rights reserved. システム設計におけるモデル システム モデル ビューから見たシステムを

    表現したもの ビュー 分けて見るときの枠 • 目的 • 関心 • 抽象度 • 範囲 で決まる