スクラム開発の現場

はじめに

こんにちは、アプリ開発支援部の鄭と申します。
私は今年3月からアジャイルトレーニングに参加して、アジャイルについての知識を深めました。その中で、私が経験したスクラムを思い出しながらさらに理解することができました。今回は、スクラムとは何かについて、また実際に現場で困ったことや、アジャイルトレーニングを通じて学んだ点について私の意見を書こうと思います。

スクラムとは?

スクラムはアジャイル開発の手法群のなかでも「チームとしての仕事の進め方」にフォーカスされており、複雑で変化の激しい問題に対応するためのフレームワークです。可能な限り価値の高いプロダクトを生産的かつ創造的に届けます。共通のゴールを達成するために、開発チームが一体となって働くことが重要で、チームが自律的に組織だって行動することが求められます。チームがより速くより大きな価値を顧客に提供するための活動として定義されます。

スクラムには、PO(ProductOwner)、SM(ScrumMaster)、開発チームの三つの役割があります。

f:id:mti-techblog-writer:20210806163622p:plain
スクラムチームの各役割

POはプロダクト及びプロダクトバックログの所有者です。顧客の意思の代表としての役割を担います。SMはスクラムプロセスが正しく回っていることを保証します。また、イベント・会議などをファシリテートします。開発メンバーは開発の能力を有するメンバーで、作業と成果物に対し責任を持ち、基本的には自己管理をします。

現場で困ったこと

私は、以前あるサービスの開発チームにアサインされ、そこで初めてスクラム開発を経験しました。当時はスクラムの理解が浅かったため、至らない点が多かったです。当時は以下の課題を抱えていました。

  • プロダクトやお客様の目を持っていなかった
    当時は与えられた作業を処理することだけに集中していたため、作業の優先順位を考慮しなかったことも多かったです。このような問題のため、優先順位をつけてタスクを行ってほしいという指摘されたこともありました。

  • 積極性に乏しかった
    当時、与えられた作業だけを行ったり、主に会議で意見を出さずに聞いてばかりいましたが、このような消極的な姿勢は、スクラム開発の開発メンバーとしての新たなスキル獲得には結びつきませんでした。

  • コミュニケーションする時間が足りなかった
    業務が多くてチームビルディングをする時間がありませんでした。意思疎通に問題があったわけではないですが、やや硬かった雰囲気があって少し残念だった記憶があります。また、私は最初からテレワークの状態でプロジェクトに参画しチームメンバーと開発を進めてきたので、コミュニケーション不足により、モチベーションがあまり高くなかったと思います。

アジャイルトレーニングで学んだ点

アジャイルトレーニングに参加しながら、今まで私がスクラム開発で至らなかったことと、今後どのような態度でスクラムに参加すべきなのかを学びました。トレーニングで学んだ点は以下の通りです。

  • プロダクト及び顧客目線はより良い品質と顧客満足を導く
    スクラムはプロジェクト全般にわたって顧客の参加を維持するため、開発メンバーも製品および顧客の目線を持たなければなりません。これにより、開発チームはタスクの優先順位を把握したり柔軟に問題に対応できます。これは最終的に顧客により良い品質のプロダクト及び価値を素早く提供することができるようになります。

  • 積極性とコミュニケーションもプロジェクトの成果に役立つ
    開発メンバーの積極的な参加とコミュニケーションは責任感を高め、製品およびビジネスに対する理解度を高めます。また、継続的なコミュニケーションにより問題や変更を直ちに認知することができるため、コスト削減と品質向上が図れます。また、製品とプロセスへの継続的なフィードバックでプロジェクト失敗のリスクを減らすことができます。

まとめ

現場での経験とアジャイルトレーニングを通じて感じたのは、スクラムはメンバー全員が主導的に開発ができるという点で、開発者としての成長に役立つ開発方式だと思いました。さらに、継続的なコミュニケーションによりさらにプロダクトの品質を高めることができるという点もスクラムの大きなメリットだと思いました。理論で学んだスクラムを100%現場で発揮することは難しいかもしれませんが、経験とアジャイルトレーニングで学んだ点を活用し、次の現場では開発メンバーとしてさらに発展した姿で参加していきます。