DX時代で加速するアプリ開発のアジャイル化 コンテナの活用とセキュリティ対策に必要なこととは
- アフターレポート
- コンテナ
- DX
- ../../../article/2021/08/dx_seminar.html

スクラム開発は短期間の作業サイクルを反復し、定期的に進捗確認と調整を行う、アジャイル開発の手法のうちの一つ。プロジェクトの進捗状況、開発途中の変動的な要素や価値観をチームで共有して作業を行う。ラグビーの「スクラム」から連想されるように、チームワークを重視し、全ての開発に関わるメンバーが共通の目的に向かって連動してタスクを進めることが特徴。
スクラム開発は、ソフトウェア開発において製品開発を効率的に行うためのフレームワーク「アジャイル開発」の手法の一つです。アジャイル開発はその名前(agile=素早い、迅速な)のとおり、短い期間(通常1~4週間)の反復作業(スプリントと呼ばれる)を通じて製品を開発します。また開発の各段階を細かい単位に区切り、「計画・設計・テスト」を繰り返すことに特徴があります。
これらに加えてスクラム開発では、開発のためのチームを組み、それぞれが役割をもって互いにコミュニケーションを図りながらタスクを進めていきます。「スクラム」とはラグビーのスクラムと同じ意味で、チーム全員が一丸となって開発を進めるイメージからきています。
チームの各メンバーが一人一人役割を持ちますが、特定の知識だけをもち特定の仕事だけを受け持ってほかのことはしない、というわけではありません。全員が案件についての知識をある程度もち、意見交換を行って、開発するサービスやプログラムの精度を高めていくことになります。この意味でスクラム開発においては、チームワークは特に重要です。
スクラム開発を行うスクラムチームは多くの場合、以下のメンバーで進められます。
製品開発プロジェクトの責任者。製品に対するビジョンを持ち、意思決定を行います。またスクラムマスターやステークホルダーとの連携・調整を行います。
開発プロジェクトのマネージャー的立ち位置。開発チームの現場指揮、作業の優先順位付け、進捗・スケジュール管理を主に行います。工程の障害を取り除き、トラブル対応なども担います。
製品の機能を設計、開発、テストし、実際の制作を担当します。なお、開発エンジニアはプロジェクトごとに専門スキルをもったメンバーが集められます。チーム内にエンジニア間の上下関係はないことがほとんどです。
【関連用語解説】
スクラム開発のメリットは以下のとおりです。
スクラム開発も、アジャイル開発のメリットである高い柔軟性をもち、開発途中の仕様変更などに臨機応変に対応できます。市場の要件や顧客のフィードバックに基づいてプロジェクトの方向性を迅速に変更することが可能です。
スクラム開発はスプリントごとの検証と調整を行うことで、プロジェクトの進行を可視化し問題点を迅速に解決できます。これにより、開発に要する時間やコスト、リソースの無駄を削減できます。
スクラムでは各スプリントの終わりに製品の一部が完成するため、早期にフィードバックを得られます。これにより製品全体の品質を向上させることができます。
製品開発の速度と品質が向上することにより、顧客満足度の向上につながります。
柔軟に開発を進められるスクラム開発ですが、アジャイル開発と同様デメリットもあります。
まず、アジャイル開発と同じく、短い期間でタスクを回していくこと、途中で仕様変更が入るとスケジュールがまき直しになることから、全体スケジュールの把握がしづらい点が課題となります。
またスクラム開発は、アジャイル開発の中でも特に「チームメンバー同士のコミュニケーション」の上に成り立ちます。そのため、開発スキルの高いメンバーを揃えていても、メンバー間の相性が悪かったり、コミュニケーション能力が低く連携がうまく取れないメンバーがいたりすると、全体の進捗に悪影響を及ぼすおそれがあります。