アジャイル開発でイテレーション(Iteration)を行うの目的


応用情報技術者平成30年秋期 午前問50

アジャイル開発で"イテレーション"を行う目的のうち,適切なものはどれか。

1、イテレーション(Iteration)は、
アジャイル開発における反復の単位で、分析、設計、実装、テストの一連の活動を含みます。アジャイル開発では、概ね数週間程度ごとにこの開発サイクルを繰り返して次第に完成度を高めていきます。短い期間で区切ることで、開発の工程管理がしやすくなったり、計画の変更に対応しやすくなったりする利点があります。

2、タスクボードの目的
タスクの実施状況を可視化して,いつでも確認できるようにする。

3、ピンポンペアプログラミングの目的
ペアプログラミングのドライバとナビゲータを固定化させない。

・ペアプログラミング(英: pair programming)はソフトウェア開発の手法の一つで、2人のプログラマが1台のマシンを操作してプログラミングを行う手法。

当初は、2人が1台のワークステーションに向かって作業するものだったが、現在では一人で複数台を同時に使ったり、一台に複数台のディスプレイを使うことも多くなり、具体的なやり方は変わっている。

実際にキーボードを操作してコードを書く人を「ドライバ」、もう1人を「ナビゲータ」と呼ぶ。30分ごとか、単体テストを1つ完成させる度に役割を交替するのがよいとされる。また、1日に一度の頻度でパートナーを変えるのがよいともされている。

4、日次スクラムの目的
毎日決めた時刻にチームメンバが集まって開発の状況を共有し,問題が拡大したり,状況が悪化したりするのを避ける。

・スクラム(英: Scrum)は、ソフトウェア開発における反復的で漸進的なアジャイルソフトウェア開発手法の1つである。この方法論は「柔軟かつ全人的なプロダクト開発ストラテジーであり、共通のゴールに到達するため、開発チームが一体となって働くこと」とされる。この方法論は、製品開発における伝統的な、シーケンシャルなアプローチとは大きく異なる。この方法論は、チームが自発的に組織だって行動することを可能にする。この自己組織化を実現するのは、すべてのチームメンバーが物理的に同じ場所にいること、あるいは密なオンライン共同作業を通じ、全員が日々直接会ってお互いにコミュニケーションをとり、プロジェクトにおける規律を守ることである。

参照:

スクラム (ソフトウェア開発)
https://ja.wikipedia.org/wiki/%E3%82%B9%E3%82%AF%E3%83%A9%E3%83%A0_(%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E9%96%8B%E7%99%BA)

タスクボード
https://it-managers-life.hatenablog.com/entry/2019/02/16/130012