アジャイルソフトウェア開発宣言
私たちは、ソフトウェア開発の実践 あるいは実践を手助けをする活動を通じて、 よりよい開発方法を見つけだそうとしている。 これらが私たちの価値と原則である。
https://agilemanifesto.org/iso/ja/manifesto.html
釣りタイトルみたいになってしまいましたが、弊社が採用しているアジャイル開発について少し書きます。
そもそもアジャイル開発って?
スクラムとは?
アジャイル開発手法(スクラム)の基本的な仕組み
アジャイル開発手法の恩恵
① 多くのタスクをこなすことになるので、様々な機能を作れる
② テスト項目が少なく済む
③ 主体性を持ち開発を行えるので、自信がつく
④ 定量的な良い評価をしてもらえる
まとめ
テックブログ読んでる方は「いやもう知ってるよ」という方ばかりだと思うのですが、そもそもを省いてしまうとテックブログの文章量が少なくなってしまうので、書かせてください。ごめんなさい。
アジャイルソフトウェア開発宣言
私たちは、ソフトウェア開発の実践 あるいは実践を手助けをする活動を通じて、 よりよい開発方法を見つけだそうとしている。 この活動を通して、私たちは以下の価値に至った。 プロセスやツールよりも個人と対話を、 包括的なドキュメントよりも動くソフトウェアを、 契約交渉よりも顧客との協調を、 計画に従うことよりも変化への対応を、 価値とする。すなわち、左記のことがらに価値があることを 認めながらも、私たちは右記のことがらにより価値をおく。
はい。有名な17人のスーパーエンジニアたちが当時の開発手法に嫌気をさして、議論した結果生まれた開発手法がアジャイル開発のきっかけと言われてますね。4つの価値と12の原則も書いてあるので知りたい方は上記リンクへどうぞ。
また、従来の定番だったウォーターフォール開発手法に対抗する為にも開発されたという背景もあるみたいです。
はい。上記の画像(フリー素材です)が全てを語っていますね。ラグビーで使われるスクラムが語源です。
アジャイルのフレームワークの一つがスクラムになります。
ざっくりですが、スクラムを構成するメンバーには以下の役割が必要です。
ほとんど私ですね。でも逆に開発者がオーナーとスプリントをするからこそ、タスクの粒度設定の議論で詰まることなく、スムースにスプリントが遂行できてるのだと思います。(もっと開発メンバーが欲しいです。)
アジャイル開発の基本的な仕組みは以下です。(間違っていたらすみません。)
弊社では上記の1~5を2週間の期間に区切って回しています。
アジャイル開発手法の良いところとして、スプリント期間が2週間と短く設定をしているため、経営陣たちからの要望に対して柔軟に対応することができるのに加えて、開発メンバー個々人にとっても、タスクが細分化されやるべきことが明確になると思います。
私も最初の1年間は特にがむしゃらに働いていて、どのくらいタスクをこなしているのか意識できていませんでしたが、入社1年目を迎える時にタスク管理ツールで振り返った際、「大小合わせて100タスクほどやってるのか!」とびっくりした思い出があります。
アジャイル開発手法しかやってきてませんが、「ここよかったな〜。」と感じた点をまとめたいと思います。
弊社は自社開発企業なので(これは企業ごとによって差があると思いますが)社員1人1人がやりたい、もしくは実装して欲しいと思う機能を翌月には実装してみよう!という柔軟性があります。開発メンバーもタスクは増えることになりますが、機能実装への要望がある分だけ知見を深めたり、新しい技術に触れ合う機会も生まれます。アジャイル開発手法を採用しているからこそ、スピード感を持って対応ができると日々感じています。
タスク粒度が小さいため、リリース前のテスト段階にてテスター(開発メンバーも含める)がチェックする項目が少なくすみ、リリース工数を圧縮できることもメリットだと思います。
アジャイル開発の良いところとして、スピード感を持って開発体験ができますが、1スプリントで完了できるくらいにタスク粒度を小さくする必要があります。(これは開発部門責任者の担当です。)
1つ1つのタスク粒度が小さいので、任される開発者は基本的に1人で実装をすることになるので、主体性が生まれ、責任感を持って開発ができると思います。(歯車感がない。)
そして任されたタスクをこなせる量が増えたり、スピードが上がると結果的に一エンジニアとしての自信が芽生えるのかなと思います。
これは②とつながるのですが、アジャイル開発手法だとエンジニア一人一人に割り振るタスク数が増えるので、エンジニアの評価を決める中で好材料となっていると感じています。
弊社のような少人数チームの場合は上述したアジャイル開発手法が刺さっていると思います。個人的にはウォーターフォール開発手法も経験したいなとも思った時はあるのですが、テスト工数が膨大で大変だと知人から聞いたこともあるので、しばらくはアジャイルで行きたいと思います。
READY TO FASHIONでは一緒に働くエンジニアを募集しています!
ファッションに興味があるエンジニアのご応募お待ちしております!