開発組織の戦略的な役割と 設計スキル向上の効果
by
増田 亨
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
開発組織の戦略的な役割と 設計スキル向上の効果 2025年10月24日 有限会社システム設計 増田 亨 #em_meetup EM Meetup 特別会
Slide 2
Slide 2 text
自己紹介 専門領域 • 業務系アプリケーションの開発 最近の仕事 • 大きな泥団子退治のアドバイザ • エンジニアの成長支援(設計スキル向上) 2 増田 亨(masuda220) 著書(2017) 訳書(2024) *1 *2 *1 増田 亨(2017) 『現場で役立つシステム設計の原則』技術評論社 *2 Vlad Khononov(著) 増田 亨、綿引 琢磨(訳) 2024 『ドメイン駆動設計をはじめよう』オライリージャパン
Slide 3
Slide 3 text
お話する内容 ① 事業活動におけるITの位置づけの変化 ② 開発組織の戦略的な役割 ③ 事業戦略とソフトウェア開発を結びつける ④ 開発組織の設計スキル向上による事業貢献 3
Slide 4
Slide 4 text
①事業活動におけるITの位置づけの変化 4
Slide 5
Slide 5 text
事業活動とITの連動性 事業活動とITは、広く、深く、連動するよう になってきた 5
Slide 6
Slide 6 text
事業活動とITの広い連動 事業活動のあらゆる場面で、デジタルデータが発生し、 記録され、通知される 事業活動のあらゆる場面で、デジタルデータの処理結果 を利用する 6 パーソナルコンピューター、インターネット、モバイルデバイス、 クラウドコンピューティング、クラウドストレージ、…
Slide 7
Slide 7 text
事業活動とITの深い連動 従来の事業活動とITの関係は浅い連動にとどまっていた • 事業活動のごく一部を後追いでデータ化 • ソフトウェアの役割はデータのリードライト(CRUD) 現在進行しているのは深い連動 • 事業活動のあらゆる側面をリアルタイムにデータ化 • それらのデータを組み合わせた状況判断・将来予測・行 動最適化をソフトウェアが実行し事業活動を駆動する 7
Slide 8
Slide 8 text
②開発組織の戦略的な役割 8
Slide 9
Slide 9 text
開発組織の役割 事業活動とITが広く深く連動する状況で、 製品やサービスを効率的かつ効果的に開発し、 事業目標の達成に貢献すること 9
Slide 10
Slide 10 text
事業目標の達成 高業績を持続する 黒字を続けることが、事業存続の絶対条件 事業活動とITが広く深く連動する状況で、 開発組織は製品やサービスを効率的かつ効果的に開発す ることで、高業績の持続に貢献する 10
Slide 11
Slide 11 text
どうやって高業績を持続するか 事業活動を全体的かつ長期的に最適化する そのためには、戦略的な判断と行動が必要 さまざまな経営論や事業戦略論がある中で、 実践的(具体的)なアプローチとして マイケルポーターの差別化戦略 がある(膨大な事例研究から抽出された実践論) 11
Slide 12
Slide 12 text
高業績は差別化による競争優位から生まれる 1. 競合他社が提供しない(提供できな い)際立った独自の価値を顧客に提 案する 2. その独自の価値を提供するために、 自社の活動体系を特別に調整する 3. 他社とは異なるトレードオフ(やら ないこと)を選択して組み合わせる 12
Slide 13
Slide 13 text
戦略の実行:活動全体を特別に調整する 差別化による競争優位(高業績の持続)のために、事業 活動全体を特別に調整する 事業活動とITが広く深く連動する状況は、差別化による 競争優位を生み出す手段として、ソフトウェアシステム の開発運用が直接的に影響する つまり、開発組織は差別化戦略を実行する中核部隊 13
Slide 14
Slide 14 text
③事業戦略とソフトウェア開発を 結びつける 14
Slide 15
Slide 15 text
事業戦略とソフトウェア開発 差別化戦略の実行とソフトウェアの 実装を結びつける、経験と事例に基 づく実践的で具体的なガイドブック 15
Slide 16
Slide 16 text
事業戦略と結びついたソフトウェア開発 差別化による競争優位に直結する機能に焦点を合わせ、 そこの設計品質(内部構造)と変更容易性に徹底的にこ だわる 競争優位に直結しない、他の企業と同じでよい機能は、 できるだけ簡略に済ませる 16
Slide 17
Slide 17 text
対象の業務領域を二軸で分類 17 競合他社との差別化 中核の 業務領域 業務ロジック の複雑さ
Slide 18
Slide 18 text
中核の業務領域の特性 • 中核の業務領域が、高業績を持続させる • 他社とは異なる際立つ価値を提供するために、業務ロ ジックが複雑になる • 他社と比較した競争優位性を維持・発展させるために、 状況の変化に応じて業務ロジックの変更を繰り返す 18
Slide 19
Slide 19 text
④開発組織の設計スキル向上による 事業貢献 19
Slide 20
Slide 20 text
設計の本質 良い設計は悪い設計よりも変更しやすい 20 『達人プログラマー ―熟達に向けたあなたの旅』第2版 Andrew Hunt(著)David Thomas(著)村上雅章(訳) 2020年 発行:オーム社 セクション8 Tips14
Slide 21
Slide 21 text
より実践的なソフトウェア設計の本質 整理整頓されたコードは 乱雑なコードよりも 変更が楽で安全である 21
Slide 22
Slide 22 text
差別化戦略と設計改善効果 • 乱雑なコードは機能の修正や拡張に時間がかかる • 競争優位を生み出す中核な業務領域の開発に時間がか かることは、業績の悪化に直結する • 中核の業務領域の乱雑なコードの整理整頓は、戦略的 に重要な機能の修正と拡張のスピードが上がり、コス トが下がり、持続的な高業績に直結する 22
Slide 23
Slide 23 text
設計改善(コードの整理整頓)三つのレベル ➢ 小さな設計改善 ➢ 大きな設計改善 ➢ 戦略的な設計改善 • 三つのレベルを並行して進める(段階論ではない) • 下に行くほど、効果がはっきりするのに時間がかかる • 下に行くほど、良い設計か悪い設計か判断が難しい 23
Slide 24
Slide 24 text
小さな設計改善 24 第1部 整頓 第Ⅱ部 管理術 第3章 コードの不吉な臭い 4章~10章 第1章 ちいさくまとめてわかりやすく 第2章 場合分けのロジックを整理する 全員が、いつでも、 自発的に、レビューなしで 目指す状態
Slide 25
Slide 25 text
大きな設計改善 25 第3章 業務ロジックをわかりやすく整理 第4章 ドメインモデルの考え方で設計する 第12章 大きなリファクタリング 全員が技法を知っていて リード役が支援、レビュー 目指す状態
Slide 26
Slide 26 text
戦略的な設計改善 26 【エッセンシャル版】 中核メンバーが リードする 目指す状態 ソフトウェアの実装と 事業戦略を結びつける 高業績を持続するために 際立つ独自価値を提供する
Slide 27
Slide 27 text
戦略的な設計改善 27 【エッセンシャル版】 中核メンバーが リードする 目指す状態 「事業理解から始めるソフトウェア設計道場」絶賛開催中!
Slide 28
Slide 28 text
まとめ 事業活動とITは広く深く連動している 開発組織は、差別化による競争優位を生み出す中核部隊 事業戦略とソフトウェアの実装を直接的に結びつける 開発組織の設計スキル向上が、持続的な高業績に直結する 28