skillup

技術ブログ

ドキュメント作成 プログラミング全般

アジャイル開発について

投稿日:2021年4月26日 更新日:

エンジニアとして仕事をしてから7〜8年立ちましたが、その間9割近くはいわゆるアジャイル開発でやってきたと思っていました。今は比較的大規模な開発をしておりますので、ウォータフォールですが・・・

が、先日ある本を読み、今までやってきたものが全然、アジャイルではないと実感しました(汗)。

自分の認識だと、

ウォーターフォール

要件定義〜設計〜実装〜テストなどのプロセスをしっかりへて、プロダクトを作っていく。

アジャイル

ドキュメントなどがあまり存在しておらず、スピード重視で、モックのプロダクト作成→フィードバックを繰り返して完成形に近づけている

のような認識でいました。

読んだ本は、「いちばんやさしいアジャイル開発の教本 人気講師が教えるDXを支える開発手法 という本なのですが、すごく良くまとまっていていており、感銘を受けました。

以下にポイントを書かせていただきます。

  • システム開発において、机上論だけで完成品を求めるのは難しい(機能の6割は使われない)
  • アジャイル形式は上記のようなソフトウェア開発における不確かさを吸収し、変更を歓迎する手法である。プロダクトを成長させて、改善させていく思想。
  • プロダクトの着地点を見失しなってしまうというリスクもある(永久に作り直しをするなんてことが・・・)
  • 開発単位は「価値を提供できる最小限のプロダクト」を「小さく(インクリメンタル)すばやく(イテレーティブ)作ること」(要件定義〜設計〜実装〜テスト)フローを細かく回転させる。アジャイルの開発期間をスプリントといい、1〜4週間程度が一般的。
  • そのために大事なのがチーム作り、タスクの見える化(やること、やっていること、やったこと)を行う、タスクを細かく最大でも1日単位にする。
  • 細かい改善をしていく上でプロダクトの品質を担保していくのが、テスト自動化。細かく、頻繁なリリースを行うので、テスト自動化しておく必要がある。
  • チーム内のフィードバックが最重要。日にち単位で会議を行う(細かいフィードバックする)必要があるが、会議などが形骸化し、「問題ありません」などの発言が出てくるようになったら危険。
  • スプリントごとにKPTを設定する。Keepは良かったので継続すること、Problemは悪かったことで問題だと思ったこと、Tryは次に実行することをフィードバックし、チームを改善、成長させていく必要がある。
  • モブプログラミング(複数の人の視点を受けながら、コードを書くこと。ペアプログラミングの多人数版)などもフィードバックを受ける手法の1つ。
  • ドキュメントの不在などが言われることがあるが、あくまで手段なのでドキュメントがないわけではない。
  • プロダクトを成長させるという思想から準委任契約(時間)の方が親和性がある。

振り返ってアジャイルの思想を全く理解してなかったなあ・・・と思いました。

アジャイルというか正直いうと低予算だったので要件定義〜設計の時間を端折った「低予算開発」というのが実態でしたね・・・

それはそれで楽しかったのですが・・・今後アジャイル開発をする場合は上記のような設計の思想をしっかりとり入れて行いたいと思います。

-ドキュメント作成, プログラミング全般
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

エディタatomについて

今までのエディタですが、 gvim eclipse をメインに使ってました(PHPでは)。 エディタとか一旦なれるとなかなか変えにくいのでずっと上記のままでいこうと思ったんですが、今の現場でatomを …

no image

調査スキルについて

本日は実務でとても大切な不具合の発見方法について 通常のプログラマとして仕事をしておりますと、通常の実装よりは不具合時の調査のほうが難しいことが多々あります。 もちろんものによるんですが、経験のある人 …

no image

データ構造の基礎知識 中編 ハッシュ

前回の続きです。 前回は配列、連結リストについて学習したので今回はハッシュについて学習します。 Contents1 ハッシュとは?1.1 メリット1.2 デメリット ハッシュとは? key-value …

no image

リーダブルコードまとめ

リーダブルコードほぼ読み切ったのでまとめを。チェックリスト化して、常にこれを見ながらコードは書いたほうがよさげ 前半のまとめや参考リンクでみたものとマージします。 Contents1 変数の名称2 コ …

no image

シェル基礎2

シェルコマンド使い始めて数年たちますが、いまだに知らないことはおおいですし、早く知っとけばよかった的なこともたくさんあります。 そんな小ネタ集を alias よく使うコマンドを別名で登録することができ …