その柔軟性とアクセスの利便性から、多くのソフトウェア開発チームは現在 Git を採用しており、SVN や CVS といった古いバージョンの管理システムから移行しつつあります。Atlassian の他の製品とシームレスに統合された Bitbucket の導入で、本来のDVCS 管理能力を手にすることが可能です。しかし、数百ものチームや数千の従業員を抱える組織では、どこから手をつければ良いのかわからないこともあると思います。
技術的な懸念材料であるサイジング、性能、規模、そして移行などから、プロジェクト管理面のタイムライン、リソース、そして利害関係者との関わりに至るまで、その工程には戦略的なアプローチが必要です。テクニカルアカウントマネージャー として、私は Bitbucket の導入と移行に最適な戦略の決定に複雑な状況を抱える大企業とともに仕事をしてきました。ここで取り上げるのは私がこれまでに得てきた、移行の際の典型的な問題を避け、導入を成功へと導くための最も重要な5つの戦略です。
1.アーリーアダプターを特定する
多くのケースではGit や Bitbucket への移行は、それに関心を持つ少数の熱心なチームが運用にアプローチすることから始まります。そうしたチームを特定し、プロジェクトの初期段階からそのチームと関係を持ちましょう。なぜなら、彼らは非常に貴重なフィードバック源となり、また組織内でアプリケーションの支持者となってくれる存在だからです。たとえば、私は Confluence を唯一の事実の情報源として使い、チームが必要条件やその他の情報を設定し、整理し、議論できる場所にしました。下のスクリーンショットはBitbucket を受け入れるチームの関心を把握するために、どのように Confluence を利用できるかを示した例です。これにより意思決定が必要な情報やフィードバックを集め、すべての進捗状況と合わせて継続的なアップデートが可能になるのです。
2.内部のサポートチャンネルを整える
新しいソフトウェアアプリケーションを使うとき、エンドユーザーから、必ず製品や、作業、使い方、利点などについての質問されます。利用開始当初に、彼らに助けとサポートとを提供することはデプロイメント成功の鍵になります。コミュニケーションのための複数のチャンネルを用意し、必要な答えを誰もが得られるようにしましょう。Atlassian の一連の製品はこの点で便利にできています。たとえば、Hipchat に専用のスペースを設定することができ、新しいユーザーが社内のGit の専門家と繋がって、Git の使い方やコマンドについて助けを求めることが可能です。そして、Confluence 内でよくある質問に答えるナレッジベースを設定できます。さらに、JIRA Service Desk は Confluence のナレッジベースと統合が可能で、ユーザーがあなたに連絡するより先にまず必要な答えを探すことが可能になるのです。
3.社内でツールの利用を促す
新しいソフトウェアを導入する場合、ちょっとした組織内部でのプロモーションが効果的です。全員を巻き込む一つの良い方法は、ランチタイムの非公式なミーティングでの提案です。いわゆるブラウンバッグセッションと呼ばれるもので、知識を共有し、カジュアルに議論を行い、情報を与える場になるのです。こうしたセッションは関心を集め、意識を高める優れた方法です。また同時に経験のレベルを測り、最も多く生じる疑問を把握することができます。エンドユーザーにとっては、ソフトウェアについてより多くを知る機会となるものです。計画段階を通じ、ブラウンバッグの機会を設けることで理解を深め、どのような高いレベルのアプリケーションに関する質問にも答えられるようにしましょう。導入段階が近づいたら、次のセッションでこれをフォローアップし、業務関連の質問に答えるようにします。こうしたセッションは前置きのようなものです。意図するところは、エンドユーザーに十分な情報を与え、アプリケーションを使い始めることを促し、必要なときにどこに援助を求めれば良いかを知らせることにあります。
4.公式のトレーニングを行う
Git が優れた性能と安全性と柔軟性を持った設計であることは理解できたとしても、よくある反対意見の一つは使い方が難しいというものです。いくつものチームが Git に対してためらいを抱かないようにするために、関心を持つチームに Git の主な内容を理解させるためのトレーニングを行いましょう。これは次の点から始めるのが良いでしょう:
- Git を使ったバージョンコントロール
- Git ワークフローの利用
- Bitbucket の利用
- JIRA と Bitbucket の統合
オンラインでGit を自習できる情報源もあります。次の3つが私のお気に入りです:
- https://www.atlassian.com/git/
- http://learngitbranching.js.org/
- https://www.codecademy.com/learn/learn-git
5.内部の支持者に権限を与える
アプリケーション管理者はシステムの健全性を保つ主役であり、性能を向上させ、期待に答える役どころです。彼らは、アクセスコントロールや、新たなレポジトリの作成と管理、そしてブランチレベルの権限などのタスクに多くの時間を費やすことがあります。これらのタスクを誰かに委任することで、彼らはより複雑な問題の解決に集中して取り組むことが可能になります。Bitbucket は、UI で管理する4段階の権限を提供しています。これらの権限を使って、社内の Git 専門家がレポジトリを作成したり、プロジェクトへのアクセスを制限したり、レポジトリやブランチレベルのパーミッションを管理することができます。
- Global Permissions: Bitbucket にログインできる人物、システム管理者など…
- Project Permissions: 読み取り、書き込み、及びプロジェクト (レポジトリのグループ) レベルの権限の管理
- Repository Permissions: 読み取り、書き込み、及びレポジトリベースでの権限の管理
- Branch Permissions: ブランチベースでの書き込み (プッシュ) アクセス
内部の支持者を特定し、権限を与え、適切なレベルのサポートとトレーニングを行い、社内でツールの利用を促進すれば、アプリケーションの稼働と導入には大きな違いが生じるでしょう。導入についての助力が必要な場合は、Atlassian の テクニカルアカウントマネージャー (TAM) が計画、分析、設計についてお手伝いし、Atlassian のアプリケーションから最高の成果を引き出すための実用的なアドバイスを提供します。
*本ブログは ATLASSIAN blogs を翻訳したものです。本文中の日時などは投稿当時のものですのでご了承ください。
*原文 : 2016 年 10 月 19 日投稿、”5 tips for a successful Bitbucket rollout in the enterprise“