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
さいきょうのアーキテクチャを生み出すセンスメイキング
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
おだかとしゆき
February 01, 2025
Technology
810
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
さいきょうのアーキテクチャを生み出すセンスメイキング
2025.1.31 吉祥寺.pm
おだかとしゆき
February 01, 2025
More Decks by おだかとしゆき
See All by おだかとしゆき
「円環の理」は なぜ、ほむらを救えなかったのか?
jgeem
0
290
組織・文化・技術の壁に挫折したEMが アーキテクトとして「構造化思考」を手に 再び保守開発組織の変革に取り組む
jgeem
5
2k
AIエージェント進化のロードマップと今すべきこと
jgeem
0
130
学校に行こう!
jgeem
0
590
わたしこそが、無知で、無邪気な、タコピーだった
jgeem
1
410
AI時代のエンジニア育成課題を『モデリング』と『生成AI』でなんとかする
jgeem
9
13k
イベントストーミングから始めるドメイン駆動設計
jgeem
3
3.5k
AI-Agent時代のエンジニアの役割と野性
jgeem
7
6.5k
使いたいから使うんじゃなく「必然」として使うCQRS+ES
jgeem
1
990
Other Decks in Technology
See All in Technology
【Aiming】共通基盤なのに「共通化しない」課金・認証基盤「LINK」が選び取ったシングルテナント戦略と運用の秘訣
saikeda
0
160
Kiro WebとCloud Sessions
nagisa53
2
140
猫付きpingコマンドを自作
uyuki234
0
290
AWS Blocks が楽しい #ゆるWeb札幌
tacck
PRO
0
110
8bit CPU 2026
koba789
6
2.7k
도구에서 동료까지: 10년차 AI 스타트업의 AI 적응기
inureyes
PRO
1
330
ソフトウェアサプライチェーンの構造的リスクとコンテナ環境の保護
kyohmizu
5
880
Flutter × BLE Centralを自前Pluginで実装する設計パターン - MethodChannel / EventChannelで作る双方向ブリッジの実践 / Building Custom Flutter BLE Central Plugins: Bidirectional Bridging with Method & Event Channels
bitkey
PRO
0
230
現場回帰したデータエンジニアが考える AI 時代のキャリア開発 / Career Development in the Age of AI Perspectives from a Hands-on Data Engineer
medley
0
310
アクセスキーが漏れた日にやるべきこと- 無効化の先にある本当の対応
kazzpapa3
0
250
作って理解するCoding Agent 〜フレームワークに頼らないピュア Python での実装〜
takapy
3
1.1k
:syncing_time:
sksat
2
510
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
440
Marketing to machines
jonoalderson
1
5.7k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
480
The Cost Of JavaScript in 2023
addyosmani
55
10k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
800
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Transcript
さいきょうのアーキテクチャを 生み出す センスメイキング おだかとしゆき as JGEEM(@EM4326168385309) 2025.1.31 吉祥寺.pm
自己紹介 おだかとしゆき as JGEEM(@EM4326168385309) 事業(J)会社(G)の元(Ex)EM / 52才 現職はアーキテクチャと格闘 定年までできることしたいことを探る日々 /
定年後もキャリアは続く AIIT 科目等履修生 貢献てなんだろう see also scrapbox,speakerdeck 2
組織を腹落ちさせるセンスメイキング センスメイキング? • 複雑な状況を理解し (腹落ち感を得るための) 納得感を得るための認知的プロセス で、アーキテクチャと何の関係が?? 3
ハードな現状を調伏するため 4 自動テストが ない サポートは 切れてからが勝負 共有DBによる 共有結合 品質とは 外部品質のこと
そもそもどうしてそうなった • やりたいことに対して正社員が足りない • 業務知識は正社員に集まりがちなので 必然的に上流工程にシニアな正社員が集中する • 設計・実装するのは若手・委託先・派遣社員のみなさま ◦ 意識やスキルにバラつきがある
• レビューはE2E観点が中心 (そして内部品質が犠牲に捧げられる) 5 https://codezine.jp/article/detail/12245
さいきょうへの道は情報社会学にあり? は?情報社会学って何よ?? • 情報社会学とは、 情報技術が社会や人間関係に与える影響を研究する学問です • レガシーシステム再構築は単なる技術課題ではなく、 組織、人、文化が複雑に絡み合う超複雑系な社会現象です • だからこそ、情報社会学の知見が
さいきょうのアーキテクチャへの道しるべとなるのです 6
情報社会学の理論と適用【理論】 7 探索と活用 既存の知識を活用しつつ、新たな知識を探索するバランスが重要 CSV (共通価値の創造) 社会的価値と経済的価値の両立を目指し、持続可能な成長を実現する センスメイキング 複雑な状況を解釈し、組織全体で共通認識を醸成する オープンイノベーション
組織の境界を越え、外部の知識や技術を活用する 紐帯(ちゅうたい) 組織内の繋がりを強化し、情報と知識の流通を促進する プラットフォーム 関係者が相互作用し、価値を共創する基盤を構築する 創発 多様な要素の相互作用から、予測不能な新しい価値を生み出す
情報社会学の理論と適用【適用】 8 探索と活用 ビジネス価値を実現するアプリケーションアーキテクチャを探索し、ビジネス要求に応える(活用する) CSV (共通価値の創造) エンジニア個々の知識獲得やスキルアップも価値と設定して、ビジネス価値と併せて持続的な成長を図る センスメイキング なぜやるか、なにをやるか、どうやるか、様々な疑問や不安を払拭すべく信頼するリーダーからメンバに落とし込 む。また組織としてのコミットも必要
オープンイノベーション 社外の有識者を招いて組織にない知識・技能をインストールする、あるいは社内の知見をコミュニティで披露し、 新たな気付きを得る 紐帯(ちゅうたい) チーム間の知識・技術格差を埋めるため、より密なコミュニケーションが行われるよう横串プロジェクトやワーク ショップなどを企画する プラットフォーム 「保守性の向上」という価値を創発するための、ハレーション調整やオープンイノベーションの場を設定する 創発 プラットフォーム上で社内外のさまざまな知識が交差し、新しい価値を生み出す
まず何から始めます? ここにいる方々は すでに「創発」に向けて一歩踏み出されてますね。 ではその動きを組織・業界に反映するには? より大きな波を創り出すには? 9 https://www.yutaka2much.com/archives/1325
ここからは おまけ (むしろ本題?あと1分30秒!?)
センスメイキングされた組織が目指す 「さいきょうのアーキテクチャ」とは • センスメイキングによって エンジニア本来の責務に目覚めればやるべきことは自明 • それはビジネス価値を創り出す業務プロセスが より柔軟に価値を創出し続けられるよう 変更容易性を高めること •
では変更容易性は どんなアーキテクチャに宿るのか? 11 https://www.oreilly.co.jp/ books/9784814400737/
こういうことか? • 基幹システム(SoR) を SoA と SoM に捉えなおす ◦ SoA
とは 現場のプロセス ◦ SoM とは 制御と管理のプロセス • 現場のプロセスを「手順書通りに作業する」と固定すれば、 その手順を変えるだけで様々な業務に対応できる!? ◦ つまり手順書の interface を定義し、各種手順書が implements する ◦ 現場のプロセスは引数に手順書 interface を取り、 その手順( )を実行することでさまざまな業務の 追加変更にも柔軟に対応できる!勝ったか!!?? 12 https://gihyo.jp/book/2024/9 78-4-297-14010-6
こういうことか! 13 • 手順書 as ドメイン知識 ◦ 手順には対象の処理手段(サービ ス)と、台帳への記録方法(モデル) が含まれる
• 現場 as アプリケーション ◦ 手順書を使って業務を行い、 台帳に記録する • ユースケースに応じた手順が現場に渡 される→業務が行われる→結果が台帳 に記録される→イベントが発火する ポリ シー コマ ンド 集約 イベ ント ドメインサービス アプリケーション アダプタ(インフラ) アダプタ (UI) アダプタ (テスト) ドメイン モデル
14 ほらこんな感じ、、って、ん??? class 受注 { private 受注手順 o受注手順; // インターフェースのインスタンスを保持
public 受注(受注手順 o受注手順) { this.o受注手順 = o受注手順; // コンストラクタで手順を注入 } public void 明細処理(受注明細 o受注明細) { o受注手順.手順実施(o受注明細); // 実際の処理を手順に委譲 } }
15 https://ja.wikipedia.org/wiki/Strategy_%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3 それ、、ストラテジーパターン だね、、
16 というわけで 「ぼくのかんがえたさいきょうのアーキテクチャ」は • インタフェースによる開放閉鎖原則の実現 • つまりストラテジーパターンの適用 でした! 併せて、ビジネス価値の源泉である エンジニアの
成長を創出価値 としたプラットフォームの さいきょうのアーキテクチャも考えてみたいな、、と妄想中です
ありがとうございました 17