アジャイル開発は開発者だけが対象ではない

多くのバグ、性能の問題、程度の低いお客様満足度のソフトウェアを製品化したい人はいません。継続的インテグレーションコードレビューでこの問題を防げるはず…ですが、誰にも時間がありません。ならば、アジャイルチームが時間を作ります。

アジャイル開発者は、持続可能な(大げさなものではない)開発に集中します。持続可能性とは、見積もりがしやすく、コード管理を対象とした有効なブランチング戦略、品質を維持するための自動化テスト、ユーザーからのフィードバックを迅速に受け取れる継続的なデプロイメントということです。持続可能な開発を実践的に採用するには、わたしたちの多くは、個人的に規律が求められます – この実現に奮闘することも多いでしょう。何故なら、孤立していては誰もアジャイルになれないからです。組織全体のカルチャーが背後で結集する必要があります。つまり、プロジェクトリーダーに、スコープやスケジュールよりも品質が重要といった見解に賛同させること、これが往々にしてアジャイルを採用するうえで最も困難なことになります。

しかし、それだけの価値があります。開発者はソフトウェアの持続可能性を開発するにあたり、自由と責任を手に入れ、なおかつ、ビジネスとの良好な関係を維持できます。また、ビジネスは高品質の製品を市場に送り出せるため、エンジニアリングとの関係を強化することになります。さらには(ここが一番肝心なところ)、アジャイル開発者が「デスマーチ」に苦しむことがほとんどありません。高品質維持のため予想よりも時間が掛かってスケジュールに後れをとっても、鉄のトライアングルのスコープ面でこの現実に柔軟に適応できます – 誰も週末まで仕事に追われることはありません。

ソフトウェア開発者なら誰でも、プロジェクト管理の「鉄のトライアングル」 - スコープ、スケジュール、品質 - を知っているでしょう。わたしたちの多くは、スコープは絶対、スケジュールはぐちゃぐちゃ、開発は技術的負債に圧し潰されたプロジェクトでやってきました。ときに – 泣きっ面に蜂で - 最終製品は市場が求めているものではなかったり。苛立たしい反面、悲惨なくらいありがちです。

でも、心配無用:いい知らせがあります。

アジャイル開発なら、スコープは動的に可変性を持つため、チームは品質を維持し、活気ある開発カルチャーを築き、ビジネスと密に一体でいることができます。Atlassian では、アジャイルはあらゆる開発チームの中心的存在です(開発チーム以外でも!)。これには納得のいく理由があります。

アジャイルは単に作法の塊ではない。文化的、技術的な哲学だ。

強固な技術的基礎を製品に、コラボレーション文化をチームに築くことを実践すれば、一人一人が自信を持てます。アジャイルチームの開発者は今まで以上に熱心に仕事に取り組み、より優れたコードを作成し、楽しみも増えます。 

強いつながりはより強力な製品となる

アジャイルとはチームワークです。今となってはソフトウェアのほとんどがチームによって構築されているので当たり前ですね。開発者は製品管理、デザイン、QA、運用と強力な関係を築いています。というのも、持続可能なコードを作成することは、プロジェクトの全面と常に繋がっていることになるからです。Atlassian は、開発者がビジネスの他部門と直接作業を行えるようにすることで、コードの品質と開発者の満足度において多大な有益性を得ています。コードが優れていれば、「スラッシュ」(作業の重複や矛盾した流れ)は減ります。効率的に部門間で協力しても、利点はわずかなものです。

教育も重要です。アジャイルチームは、クロストレーニングを互いに実施し、コードベースのナレッジがチーム全体に行きわたっているか確認しています。ひとつの方法として、品質維持の意味だけでなく、チーム全体でコードに精通した者の相互交流の意味で、コードレビューを通して行う方法があります。ナレッジの伝播程度に関わらず、アジャイルチームでは、ひとリの開発者が特定のコードエリアを理解していないがためにクリティカルパスとなって休暇も取れない、ということはありません。そんな(クリティカルパスになる)開発者になりたい人などいないからです。

また、アジャイル開発者は、アジャイルチームは独立組織であり、メンバーに新しいスキルを身に付けるチャンスを与えられるため、ウォーターフォールのカウンターパートに対し、製品の技術スタックのあちらこちらを駆使してもっと楽に作業ができます。事実、UI から DB まで、機能全体で作業を遂行する開発者がコードの大部分のオーナーシップを取っています。Atlassian では、チーム全体、会社全体ででナレッジを共有することの正当性を確信しているため、フルスタック開発者を育成しています。

Coding, culture, and making agile development awesome

アジャイルになるには、組織で偉大な開発文化を築くに限ります。この先を読み続けて、さらに有効なブランチング戦略自動化テスト技術継続的インテグレーション、ビジネスの他部門と有効な関係の構築について学んでください。次の記事では、多くの開発者がアジャイルへ移行する過程で行ってきた具体的な変更と、そのおかげで成功した経験についてさらに深く掘り下げていきます。

アジャイル開発は長旅です。随所で、わたしたちが陰から見守っています。 

関連する製品
Jira Software logo
プロジェクト / 課題管理