【イベント参加レポート】Developers Summit 継続的なサービス発展のための技術とアーキテクチャの取り組み
2月9日,10日にかけて開催されたDevelopers Summitに参加しました。
このレポートは2月9日(木)に開催された継続的なサービス発展のための技術とアーキテクチャの取り組みの参加レポートです。
参加目的
個人開発でどのような技術・アーキテクチャで構成するのがベストなのかを考える知識・指針・具体例が見つからず、困った経験があるため。
また、仕事でも今後同じような場面に遭遇する可能性が高く、その際に継続的に開発を続けるということを考慮する必要があると考えたため。
登壇者
竹野 創平 様 @Altech_2015
内容
自分が勉強になった箇所の箇条書きです。
- 今回の発表では独立にデプロイ可能なソフトウェアコンポーネントを構成要素としてアーキテクチャを考える。なお、デプロイ独立性とテスト容易性がある組織は、ソフトウェアデリバリーのパフォーマンスが高い可能性が大きいことが知られている。
- システムが特定アプリのUIのみと結合していたことで、機会損失が発生する
- 各アプリの機能展開性にバラつきがある
- システム自体が成長しない
- サービスに対して組織が持つメンタルモデルのズレ(施策の優先順位に影響するなどといった形でアーキテクチャが組織に作用する)
- コンポーネントを分離することで、UI改善・機能改善を減衰させることなく別の改善サイクルを改善させることができる
- 全体をデプロイ独立なコンポーネントで構成することで様々な特性をアーキテクチャに織り込むことができる
- 技術・アーキテクチャをいきなり全部用意しない
- 技術導入・アーキテクチャ変更は継続的な営み
- それぞれの段階で試行&成果を得られたら再投資をしていく
感想
Wantedly Visitの具体的な例を出していただきながら、
設計理論についてわかりやすく開発していただき大変勉強になりました。
これまで感覚的に「自動テストや自動デプロイって大事だよね」と思っていたことを言語化していただきました。
特に、「メンタルモデルのズレ」や「アーキテクチャが組織に作用する」といった言葉が日頃感じていた課題感に刺さりました。
一方でアーキテクチャの変更は他の開発メンバーにも影響を及ぼすと感じました。
どのようにして変更を納得してもらうかについて質問したところ、
「この変更による開発体験の向上をアピールする」とのご返答をいただきました。
この点も心がけながら、日々の開発に活かしたいと思います。
発表中に触れられた参考資料
ソフトウェアアーキテクチャの基礎 ―エンジニアリングに基づく体系的アプローチ
ソフトウェアアーキテクチャ・ハードパーツ
チームトポロジー 価値あるソフトウェアをすばやく届ける適応型組織設計
LeanとDevOpsの科学[Accelerate] テクノロジーの戦略的活用が組織変革を加速する
継続的デリバリーのソフトウェア工学 もっと早く、もっと良いソフトウェアを作るための秘訣
INSPIRED 熱狂させる製品を生み出すプロダクトマネジメント
Lean Analytics ―スタートアップのためのデータ解析と活用法
オブジェクト指向UIデザイン──使いやすいソフトウェアの原理
Discussion