Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20220303IPSJ.pdf
Search
株式会社レヴィ
March 07, 2022
Technology
1
630
20220303IPSJ.pdf
システムモデルを用いた対話型上流設計によるサービス開発
-モデルで納品・モデルで開発・モデルで検証-
情報処理学会 第84回全国大会(2022.3.3)発表スライド
株式会社レヴィ
March 07, 2022
Tweet
Share
More Decks by 株式会社レヴィ
See All by 株式会社レヴィ
2024-06-25 ソフトウェア設計における思考と学び方を考える 〜増田さんの思考を構造的に見える化してみる〜
levii
4
950
株式会社レヴィ会社紹介
levii
0
200
Sample-se-one-day-training
levii
0
620
SocSys34-Balus
levii
0
74
20230323TechDLT-vol9
levii
0
350
levii-buzzword-2022
levii
0
350
FIT2022_levii
levii
0
620
20220915modelingLT
levii
4
790
20220910SSDM
levii
0
650
Other Decks in Technology
See All in Technology
事業貢献を考えるための技術改善の目標設計と改善実績 / Targeted design of technical improvements to consider business contribution and improvement performance
oomatomo
0
100
.NET 9 のパフォーマンス改善
nenonaninu
0
1k
Amazon SageMaker Unified Studio(Preview)、Lakehouse と Amazon S3 Tables
ishikawa_satoru
0
160
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
290
サーバレスアプリ開発者向けアップデートをキャッチアップしてきた #AWSreInvent #regrowth_fuk
drumnistnakano
0
200
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
170
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
260
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
170
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
840
UI State設計とテスト方針
rmakiyama
2
620
株式会社ログラス − エンジニア向け会社説明資料 / Loglass Comapany Deck for Engineer
loglass2019
3
32k
NilAway による静的解析で「10 億ドル」を節約する #kyotogo / Kyoto Go 56th
ytaka23
3
380
Featured
See All Featured
Speed Design
sergeychernyshev
25
670
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
2
290
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
Being A Developer After 40
akosma
87
590k
Mobile First: as difficult as doing things right
swwweet
222
9k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
5
450
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Unsuck your backbone
ammeep
669
57k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
520
Transcript
◯三浦 政司 JAXA宇宙科学研究所 宇宙飛翔工学研究系 吉澤良典,弓山彬,南部陽介,山舖智也 株式会社レヴィ 情報処理学会 第84回全国大会 1B-01, 2022.3.3
システムモデルを用いた対話型上流設計に よるサービス開発 -モデルで納品・モデルで開発・モデルで検証-
発表概要 • システムモデルを活用した効果的な上流設計を実践するための 対話型モデリングを提案し、それを実現するためのツールを開発した。 • 提案手法を地域企業によるシステム開発に適用し、完全にモデルベース な上流設計を実現した。その様子と成果を具体的に紹介する。
発表の流れ • 背景・目的 • 提案:対話型モデリング(+ツール) • 実践例の紹介 • まとめ 謝辞
実践例・モデル・画面の公開にご快諾を 頂くなど、株式会社中海テレビ放送様に 多大なご協力を頂きました。 ここに記して謝意を示します。
背景・目的
システムモデルを用いた仕様記述の利点 • 要素間の関係性を視覚的・直感的に理解できる • 認識齟齬の抑制、スムーズな合意形成 • トレーサビリティ • … image
by Kishorekumar62 (CC BY-SA 3.0)
今回は特に、上流設計におけるシステムモデル利用に着目 実装プロセス 統 合 プ ロ セ ス 設 計
プ ロ セ ス 上流設計 要求分析 アーキテクチャ設計
ビジネス分析 プロセス 利害関係者要求 定義プロセス アーキテクチャ 定義プロセス 設計定義プロセス システム分析 プロセス 実装プロセス
統合プロセス 検証プロセス 移行プロセス 妥当性確認 プロセス 運用プロセス 保守プロセス 保守プロセス 要求定義プロセス ISO/IEEE 15288:2015 p17-Fig.4で定義されている システムライフサイクルプロセスのうち技術プロセスを抜粋 今回は特に、上流設計におけるシステムモデル利用に着目 上流設計 ユーザと開発者の間の 合意が重要となる過程
システムモデルが有効(なはず) 開発者 (設計) ユーザ 開発者 (実装) • 視覚的・直感的な理解 • 認識齟齬の抑制
• スムーズな合意形成 • ▲ ▪
しかし、実業務におけるシステムモデルの活用は… • 仕様書における部分的な補足 • 納品のための後追い作図 など、システムモデルの利点を十分に活かしきれていない場合も多い Q. モデリングの効果はありましたか? 出典:一般社団法人電子情報技術産業協会 ,
「平成27年度ソフトウェアに関する調査報告書Ⅱ」 , 2016年3月 電子情報技術産業協会(JEITA)による調査
システムモデル活用の課題 Q. モデリングでどのような課題があると感じていますか? 出典:一般社団法人電子情報技術産業協会 , 「平成27年度ソフトウェアに関する調査報告書Ⅱ」 , 2016年3月
システムモデル活用の課題 Q. モデリングでどのような課題があると感じていますか? 出典:一般社団法人電子情報技術産業協会 , 「平成27年度ソフトウェアに関する調査報告書Ⅱ」 , 2016年3月
専門的な訓練や高度なツールがなくても システムモデルを活用した効果的な上流設計 を実現するためにはどうすればよいか?
提案:対話型モデリング+そのためのツール
機能 物理 運用 抽象度高 抽象度低 抽象度が高過ぎるとこ ろで合意しても、 認識がずれる 抽象度が低すぎると 合意がとれない
合意には「ちょうどいい抽象度」と「視点の切り分け」が必要 視点を分けて目線を揃えないと議論できない
機能 物理 運用 抽象度高 抽象度低 どのような視点が必要か? どの抽象度で表現するか? 合意には「対話しながらの探索」が必要 対話しながら探索する 必要がある!
提案:対話型モデリング 1. 視点をわける 2. システムモデルで対話する 3. 視点をつなげる 運用 フロー 機能
構造 運用フローを実現する のに必要十分な機能が 挙げられているか? (整合性観点)
提案:対話型モデリング 1. 視点をわける 2. システムモデルで対話する 3. 視点をつなげる 運用 フロー 機能
構造 運用フローを実現する のに必要十分な機能が 挙げられているか? (整合性観点) 対話するための前提 対話しながらシステムモデルを 構築していくことで合意できる 要求・アーキテクチャを探す 対話しながらモデリングを するときの注意点
システムデザインのためのフレームワーク:システミング® • 誰でもシステム思考やシステム工学を上手に実践できることを 目指して構築したシステムデザインのためのフレームワーク • 今回紹介する対話型モデリングが中心となっている 株式会社レヴィのWebサイトにてガイドブックを無料配布中:levii.co.jp
対話型モデリングを実践するためのツール:Balus® • オンラインで対話しながら協働的にモデリング • 簡単な操作で素早くビュー(視点)と システムモデルを作成 • ビューやモデルを手軽に再利用 • 適度な形式ルールによる柔軟なモデリング
• 豊富なコミュニケーション機能 後ほど実践例紹介のところで デモンストレーションします
実践例
事例:株式会社中海テレビ放送によるシステム開発 • 本社:鳥取県米子市 • 鳥取県西部をエリアとするケーブルテレビ局 • 電力小売事業を展開する地域新電力事業者でもある 今回紹介する事例の開発対象システム • 新サービス「オール電化プラン」の
お申込み受付システム • 「誰でも簡単にお申込みができる」 を目指してLINEと連携 • 新プランでどれだけお得になるか、 電気料金をシミュレーション https://www.chukai.co.jp/
開発の流れ 対話型モデリングによる上流設計 • 要求ヒアリング、要求定義 • アーキテクチャ設計 モデルを中心に置いた実装フェーズ • 詳細設計 •
実装 上流設計の成果物としてモデルを納品 リリース・運用 レヴィ 中海テレビ 地域のベンダ 中海テレビ レヴィ モデルで対話 モデルで対話 開発支援
上流設計で構築したモデル
対話型モデリングの様子
Balusの画面を見ながら モデリング結果を紹介します
業務フロー(全体)
業務フロー(特定のシナリオ)
ユースケース
状態遷移
画面コンポーネント
結果
完成したシステムの画面(一部)
完成したシステムの画面(一部)
完成したシステムの画面(一部) 完成したシステムは順調に運用されている
担当者の声 インタビュー回答者: 株式会社中海テレビ放送 営業部営業二課課長 森 龍一さん 「発注する側」も設計に参加して欲しいシステムのあり方を伝えることができまし た。そのおかげで、手戻りらしい手戻りや関係者間の認識違いがほとんどなくて、 計画通りに開発を進めることができました。 いつもは認識を合わせるためにドキュメントをたくさん書くことが多いのですが、
今回はその手間が減りました。いつもと違って「1件のプロジェクトにかかりっきり になっている」という状態になりませんでした。 それだけ効率的に進めることができたということですね。
担当者の声 いつもは運用を開始してからたくさんの質問や要望が来て業務負荷になることも あるのですが、今回はほとんどありません。 システムの運用に関わるたくさんのメンバーが設計に口出しできたことが良かっ たのかなと思っています。ドキュメントだけだと設計に関する会話に参加できませ んからね。 時間が経ってからでも設計の意図が分かるというところがいいですね。私も一緒 につくった図なので、後から見ても設計の意図や意思決定の理由が分かります。 機能追加などを行う際に役に立ちそうです。 インタビュー結果については
https://levii.co.jp/cases/21/ に詳しく掲載しています
実践例のまとめ • 中海テレビさんによる新サービス申込み受付システムの開発において Balusを用いた対話型モデリングを実践した。 • 納品物がモデルのみという形の完全にモデルベースな上流設計を実現した。 • 実装フェーズにおいても、モデルを中心にしたコミュニケーションによって ベンダ/ユーザが認識を合わせたり、機能や運用を検証したりした。 •
対話型モデリングにより次のような効果が得られた ▪ 特別な訓練を受けたわけではないユーザが設計に参加することができた ▪ ユーザ目線の意見を確実に取り入れ、手戻りのない開発を実現した ▪ ドキュメントを記述する手間が減り、効率的な開発を実現した ▪ 設計意図を理解することのできるモデルが資産として残った (後続の開発や新機能追加などの際に活用できる)
まとめ
まとめと今後の取り組み まとめ • 上流設計においては抽象度や視点を探りながら認識を合わせて合意を 得る必要があり、システムモデルの活用が有効である。 • システムモデルを活用した効果的な上流設計を実現するための方法として 対話型モデリングを提案し、それを実践するためのツールを開発した。 • 提案手法とツールを実際のプロジェクトに適用することで、期待される
効果を得ることができた(「実践例のまとめ」に記載) 今後の取り組み ▪ 実践結果を一般化し、提案手法やツールをより洗練させる ▪ 課題抽出フェーズへの拡張 ▪ 宇宙システム、組織システム、事業システムなど様々なドメインへの適用