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

"Swarming" をコンセプトに掲げるアジャイルチームのベストプラクティス

"Swarming" をコンセプトに掲げるアジャイルチームのベストプラクティス

XP祭り2024 での発表、以下登壇ページURL
https://confengine.com/conferences/xp2024/proposal/20410/swarming

---

アジャイル、スクラム文脈におけるSwarmingでは、主要な課題にチームのエネルギーを集中させ、チームメンバーが一つに群れることでそれを完了させます。

Swarmingはアジャイルの根幹を支える動きとして、価値のあるプロダクトを迅速に、頻繁に提供するための活動です。

私たちのチームではSwarmingをコンセプトに掲げ、「群れる」ことを軸にいくつかのプラクティスを実践してきました。

本セッションではその中でもチームに強く根付いているベストプラクティスを紹介します。プラクティスの中には詳細設計レベルの開発者視点で実践できる内容もあり、チームメンバー全員が主体的に取り入れることができます。

アジャイルなチーム文化を作る上でコンセプトがどう役に立つか、その一例をプラクティスとともにお伝えし聞いている人の悩みの助けになれば嬉しいです。

Kushiro Taichi

September 26, 2024
Tweet

More Decks by Kushiro Taichi

Other Decks in Programming

Transcript

  1. 自己紹介 Taichi Kushiro / SWE Alp, Inc. boykush boykush315 プロダクト

    継続型サービス事業者向けの販売・請求管 理SaaS。複雑なプライシングや継続課金契 約に基づく請求をバッチで自動化 DDD x Agileで複雑なドメインを開発
  2. モチベーションが近い参考ブログ Vin D’Amicoが投稿した「Agile Teams Swarm to Greatness」というタイトル を含む連載ブログの内容と近いモチベーションで運用 導入 ~アジャイルの難しさ~

    Agileという単語が与えるイメージの多様さ 乱立する複数の開発手法 XP,スクラム,カンバン,リーン, etc. 複雑なエンタープライズアプリケーションの増加 アジャイルな組織を特徴づける重要な言葉やフレーズを再定義したい
  3. 優れたチームは群れる アジャイルな組織を特徴づける重要な言葉やフレーズの一つがSwarming They are known for rapid responsiveness and swarming

    behavior. 彼らは迅速な対応と集中的な取り組みで知られています。 They are highly cohesive, loosely coupled and decentralized. それらは非常に凝集性が高く、ゆるやかに結合され、分散化されています。 They implement constant feedback cycles and continuous improvement. 彼らは継続的なフィードバックサイクルと改善を実施しています。 They have diverse skill sets and share a common vision. 彼らは多様なスキルセットを持ち、共通のビジョンを共有しています
  4. ユースケース駆動実装の進め方 1. ユースケースのインプット・アウトプットを定義 振る舞いがどう呼び出されるか 極力分かりやすくシンプルに 2. ユースケースが依存するコンポーネント群の抽象または仮実装を定義 抽象: データベース、外部APIアクセス 仮実装:

    ドメインロジックのTDDで1テストケースのみ通す 3. ユースケースシナリオを記述するようにユースケース実装 技術的な関心を分離した結果なるべく自然言語に近い実装ができるとよい 書籍「関数型ドメインモデリング」参照
  5. 4. ストラングラーフィグパターン 巨大なコードベースに対してこれまでのプラクティスを適用できる?という課 題を解決 Martin Fowlerが提唱したアプリケーション移行パターン bad: 修正 good: 追加→置換→削除

    チームでは置換サイズ大中小それぞれで実践 大: 書籍「モノリスからマイクロサービスへ」参照 中: 前述したユースケース駆動実装に対応したユースケース単位 小: ドメインロジック関数、リポジトリ実装
  6. チームの対話を活発にする取り組み raffee emoji 週一回の出社日はramen or coffee or 両方をチーム全員で摂取しにいく HOT LIMIT警報

    アラート・問い合わせ対応がパンクしたらボタン一つでHOT LIMITの絵文 字の通知を飛ばす