Tech Insights
5分間で読める記事

アジャイル:優れたソフトウェアを開発する方法

アジャイル開発の実践により、企業は多様性を受け入れ、生産性を促進する明確なプロセスのもとに結集されたチーム全体の力を経験します。アジャイルをこれほど強力なものにするのは、1つのことだけではなく、協力して行われる多くの取り組みです。なぜならアジャイルでは、チームがどれくらい効果的にソフトウェアを開発したかが、市場でのビジネスの成否を左右し、部分の総和が全体を上回るからです。


アジャイルソフトウェア開発とは?

アジャイルソフトウェア開発は、顧客にすばやく頻繁に価値を提供することを可能にする一連の手法です。アジャイル開発は、高度に連携した部門間チームによる、十分に計画された短いイテレーションを推進します。アジャイル方法論は、ウォーターフォールのような従来の順次的な開発と長いリリースサイクルの代替手段を提供します。

アジャイルは、あらゆる規模の企業(新興企業からエンタープライズまで)や大小のチーム、またほとんどのプロジェクトに適応します。一方、アジャイルを採用する組織は、文化的に変化を受け入れる準備をし、コーチングやトレーニングに取り組む必要があります。


Deploy B u i l d A c c e p t P l a n Iteration D e s i g n T e s t Deploy d B u i l d A c c e p t P l a n Iteration 2 D e s i g n T e s t Deploy Deploy B u i l d A c c e p t P l a n Iteration 3 D e s i g n T e s t


アジャイルが重要である理由

より優れた透明性
利害関係者から、製品の制作に関わるチーム(テスター、開発者、設計者、プロジェクトマネージャなど)までの全員が参画し、今何に取り組んでいるのか、この先何をする必要があるのかが明確になります。

より優れた予測可能性
作業は明確に優先順位付けされ、期間は1、2週間を理想とする短いイテレーションが設定されます。新機能は、継続的なデリバリサイクルの一環として、頻繁かつ、より計画的に出荷されます。

優れた柔軟性
フィードバックまたは新しいビジネスニーズにより優先順位が変更されると、バックログ内でストーリーの挿入と順序の入れ替えが即座に行われます。

ビジネス価値への集中
利害関係者が機能の構築順序を決定し、ビジネスにとって何が一番重要かをチームに明確に示します。

ユーザーへの集中
ユーザーストーリーは、実際のユーザーのニーズに合致するよう設計されています。設計および開発された各機能は、漸進的な価値を提供します。

品質への集中
全ての作業は管理可能な単位と頻繁なビルドに細分化され、テストとレビューがより焦点を絞ったものになります。欠陥をより簡単かつすばやく見つけ、修正できることにより、品質が向上します。



「新しいソフトウェア開発において、アジャイルは今やデフォルトのアプローチです。」

Al Hilwa
プログラムディレクター, Application Development Software, IDC

IDC Market Analysis Perspective: Worldwide Application Development Software, 2016.



アジャイルを検討する際の考慮事項

世の中は、従来のウォーターフォール型の手法からアジャイル型のソフトウェア開発に移行していますが、アジャイルをうまく導入するには、ワークフローに関する考え方を変え、よくある落とし穴を認識する必要があります。始める前に、下記の事柄を明らかにしておきましょう。

チームは取り組みに前向きか?

アジャイルは非常に協働的なプロセスです。上から押し付けるトップダウンのワークフローではないため、全てのレベルが取り組みに積極的に参加する必要があります。人々のやる気を引き出しましょう。取り組みが組織や人々にどのようなメリットをもたらすかを説明し、単なる一時的な流行ではないことを保証します。アジャイルへの投資は、イノベーション、柔軟性、開発サイクルの短縮を促します。

一人でやろうとしていないか?

もしそうなら、考え直しましょう。アジャイルワークフローの導入について理解があり、前向きな人を見つけるのです。アジャイルを草の根レベルで浸透させ、この変更が影響を及ぼしそうな他のチーム、管理職、およびビジネスパートナーからの抵抗に対処できるよう、十分な後援者を確保します。できれば、物事をスタートさせ、正しい方向に導くためにコンサルタントを雇うことが理想です。これによってリスクが減り、時間的余裕をもって導入できます。


Stay current on important topics

Newsletter signup

トレーニングの準備や実践計画は整っているか?

ワークフローの導入に向けて、チームをトレーニングする必要があります。このプロセスを怠ると、導入の失敗につながりかねません。アジャイルは、学びと遵守が必要な一連の方法論です。しかし単にトレーニングするよりもっと重要なことは、実践から学ばせることです。チームで実際のプロジェクトに取り組み、アジャイルのメリットを具体的に知り、推進させるのです。

変化のためのプロセスとツールに対して、皆の準備が整っているか?

現在どのような製品管理ツールを使用しているでしょうか。またそれらはアジャイルに適しているでしょうか。テスト駆動開発(TDD)、継続的インテグレーション(CI)、および継続的デプロイ(CD)の導入準備はできていますか。設計チームやUXチームの参画を得ていますか。組織が大きければ大きいほど、心や考えを合わせる努力が必要です。アジャイルの導入は必ずや実現可能で、うまくいけば、変化が組織全体に浸透します。

皆が変化に対して前向きですか?

アジャイルの導入で、仕事が一時滞ることは疑いのないところです。ミスも発生するでしょう。問題の解決はスタンドアップ会議で行われ、チームは準備と計画を越えようとし、技術的負債の累積は許され、タスクは個人個人に割り当てられます。最終的には、チームがアジャイルに向けて懸命に取り組んでいる限り、課題を克服し、前進する方法を見出すことができるでしょう(多くの後戻りを通じて)。

スタンドアップ会議やイテレーション計画会議を実施し、製品管理ツールであるPivotal Trackerを使用してストーリーについての協議、優先順位付け、追跡を行う

コードの品質を高めるため、ペアプログラミングを行う

Concourseといった継続的インテグレーション/継続的デリバリツールを使用して、コードの記述、テスト、およびデリバリを行う といった継続的インテグレーション/継続的デリバリツールを使用して、コードの記述、テスト、およびデリバリを行う Concourse

全てをVMware Tanzu Application Service

Pivotの1日を垣間見るだけでも、当社の大小さまざまなプロセスすべてが、人に対して最適化されているのにお気づきでしょう。持続可能なペースで最高のパフォーマンスを発揮し、質の高い結果を出せるよう、小規模チームで働く人々それぞれに力がもたらされます。




お客様事例

ホーム・デポ社は、VMwareの技術を展開すると同時に、重要な人的課題やプロセス上の課題を克服することで、価値をより速くデリバリするというIT目標を達成しました。
技術的負債の低減を模索しているコムキャスト社はVMwareとタッグを組み、アジリティ、柔軟性、速度、弾力性、カスタマーエクスペリエンス、および実験へのフォーカスを強化しています。