この記事はWHITEPLUS Advent Calendar 2020 24日目になります。
こんにちは、今年4月に入社したマーケティング部システム開発グループの山内です。
ホワイトプラスでは主にお客様が触れるWeb全般を、フロントエンドからサーバーサイドまで広く担当しています。
早速ですが、現在私が所属しているシステム開発グループではスクラムという開発手法を導入して業務を行っています。
そのため、この記事では業務の知見がなかった新卒エンジニアがスクラム開発を通じて得られた恩恵についてご紹介したいと思います。
開発手法
まずスクラムとは何かを説明する前に簡単にソフトウェア開発の手法について説明させていただきます。
まず、一般的にソフトウェア開発には大きく分けて
「アジャイル開発」と「ウォーターフォール開発」の2つの手法があります。
図を交えて簡単に紹介すると
「アジャイル開発」は小さな単位でシステムを区切り開発を行う手法
「ウォーターフォール開発」はシステム毎に区切らず開発を行う手法 と言えます。
これらのメリットは
「アジャイル開発」 途中で要件変更が起きた場合でも工程の巻き戻しが少なく効率良く開発することができる
「ウォーターフォール開発」 予め仕様が明確に定まっているものに対して進捗管理がスムーズに行える
上で挙げた点以外にも様々な特徴やメリットがあり、それらを考慮した上でマーケティング部システム開発グループではアジャイル開発を取り入れています。
スクラムとは
スクラムとは先ほど紹介したアジャイル開発手法の1つです。
またスクラムでは主に以下の3つのイベントを行います。
1.デイリースクラム
スクラムメンバー全体に進捗状況の共有を行います
2.スプリントプランニング
次のスプリントで行うタスクの計画立てます
3.スプリントレビュー
チームの良かった点、問題点などを洗い出しチームの振り返りを行います
デイリースクラムは毎日、スプリントプランニングとスプリントレビューは 1スプリント(1週間)毎に行っていきます。
以上がスクラムで行っていることの説明になります。
配属した1ヶ月後にスクラムが開始
スクラム自体は私が5月に正式にグループに配属してから、1ヶ月ほどでチームに導入されました。使われている技術や業務内容を把握していないまま、流れるように毎週行われるスクラムイベントに参加していました。 しかし、ただなんとなく参加しているだけでは成り立たないのがスクラムでした。。。
上で紹介したイベントの一つ、「スプリントプランニング」ではチームメンバー全員で次のスプリントで取りかかるタスクの計画を行います。
具体的には
・複数あるタスクを優先度順に並び替え
・親課題に対する小課題の決定
・開発にかかる工数の見積もり
などを全員で進めていきます。
その中でもメンバーで開発工数の見積もり出し合う時、 業務内容や技術スタックを把握していない当初の自分は 「判断できないです。。」 としか言えず非常に焦っていました。 スプリントプランニング中に分からない単語が出てくるたび「やばいやばい」と裏で検索をかけたり、疑問点が浮かぶたびにメンバーの方に質問をして答えてもらうことで何とか進めさせてもらいました。
スクラムで得られた恩恵
最初は「自分にあてないでくれ・・・!!」と祈りながら参加していたスクラムですが、 チーム全体でタスクの共有を行ったり、個人個人が見積もりを行う環境のおかげで、スクラム導入前に比べ、抱えているタスクの質問にメンバーがすぐに答えてくださったり、業務への理解度が向上したりと、半年間を振り返ると多くの恩恵がありました。
まとめ
スクラムで得られた恩恵と題しましたが、これもひとえに助けてくださったチームメンバーの皆さんがあってのことです。 助けられてばかりではなく、今後は自分がチームメンバーの助けになれるように、 また来年入社予定の新入社員の方たちの助けになれることを目標に業務に携わっていきたいと思っています。
最後に
明日、最終日は弊社エンジニア @nakamigawaさんの「Androidアプリのこれからの設計を考えた」です。
ホワイトプラスでは、「技術で事業に貢献したい!」という強い志を持つエンジニアを募集しています。