開発サイクルとは? わかりやすく解説

開発サイクル

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/28 01:08 UTC 版)

テスト駆動開発」の記事における「開発サイクル」の解説

最も基本となる開発サイクルは以下のようになる失敗するテストを書く できる限り早くテストに通るような最小限コードを書く コード重複除去するリファクタリング) なお、テストの実行環境ツールであるxUnitでは、テスト失敗を赤いバー成功を緑のバー通知するため、上記サイクルは Red/Green/Refactor と称される。 より実践的には、to-doリスト組み合わせることにより、以下のような手順開発する。 まず、現時点分かっている範囲で、テストする必要がある項目を列挙する。なお、このリストは、テスト必要性わかった時点適宜項目を追加していく。 このリストから1つ選ぶ。これは、実装できそうでかつ重要なものを選ぶ。このとき、テスト記述が容易でも、Fake It(後述)でしかコード記述できなさそうなものは後回しにする。実装できそうなものがない場合は、列挙した項目の粒度大きすぎることを意味する。そのため、そのテスト実装するための前提となるような、より小さ粒度の項目を作成し、それをリスト加える。 選択した項目について、テスト作成する。このテストは、現在の実装用いると失敗するように記述するコンパイル必要な最小限コード例えば、まだ存在しないクラス・メソッドを利用するテスト作成した場合であれば、そのクラス・メソッドの宣言)を追加した後、実際にテスト実行し失敗することを確認する期せずしてテスト通った場合は、意図しないことが起こっていることに注意しテスト失敗するまでコード本体変更しない。 できる限り早くテストに通るようにコード本体記述するこの段階では、テストパスさせるためにどんなことをしても良い定数返すコピー&ペーストコード重複等)。具体的には、次の3つの方法挙げられる実装自明な場合(1分程度書け場合)はそれを記述するObvious Implementation)。 テスト要求されるそのものハードコーディングする(Fake It;仮実装)。 Fake Itの後に、次の段階リファクタリング)へ進め漠然としている場合は、さらに別のデータ用いたテスト追加しその2つのテスト共通点見出して助けとする(Triangulate;三角測量)。 テストが通ることを確保しつつ、コードそれ自体コードテストの間にある明示的暗黙的な重複取り除くリファクタリング)。通常リファクタリングとは、コードの意味変えずコード再構築することをいう。なお、この「コードの意味」とは、テストが通ることを言う。また、ここで取り除く重複には、形式的な重複だけでなく、意味的な重複含まれる例えば、Fake Itでハードコーディングしたものは、おおよそ実際にはどこからか得られるはずのパラメータを、別の値を用いて算出したのであるため、これを重複見なす。そして、重複取り除くことで、ロジック抽出される実装した項目をリストから削除する。このとき、作業中にテストする必要性があるとわかった項目に、実質的に振り変わるかもしれないテストコードは、最初から自明であるとは限らない。むしろ、コード本体と同様、最初具象的なテスト例えば、単なるフラグ確認)を行ない、これによって知見得た後に、テスト書き直したほうがよい。また、テストコードから導かれるコード本体は、リファクタリング過程によって、あるいはテスト成熟するに従って最終的な目的とするコード本体テストスタブ変わっていくかもしれない早い段階テストコード本体分離して管理するのはあまり意味がないテストコード本体成熟していくにつれ、テスト記述抽象的間接的になり、リスク導入される例えば、フィールド直接参照する代わりにgetterメソッドを使うなど)。しかし、テスト駆動開発テスト目的は、開発者正しさへの確信裏づけするためであり、それが保たれているならば問題はない。 テスト駆動開発用いられるテストは、品質のためのテストではない。したがってコード本体とは独立してあらゆるケース網羅するテスト、すなわち「テストそのもの価値を持つようなテスト」を目指しているわけではないテスト駆動開発におけるテストとは、コード本体テスト合わせて検討することで、開発者がその正しさ確信を得るようなものである。したがって開発者確信に少しも寄与しないテストまた、ドキュメントとしてテスト読者に何かを伝えるために書かれていないもの)は、むしろ積極的に削除検討するテスト駆動開発実施するには、テスト自動的に実行できる環境が必要である。そのような環境としては、JUnitやNUnitといったもの(総称してxUnitとされる)が挙げられる。なお、このテスト実行環境は、コンセプトが単純であり、かつ非常に強力であることから、実行環境そのものテスト駆動開発自作するのもよい。ただし、そのテストツールをテストするツールはないことから、しばらくは慎重な人の判断でもってテスト代わりとすることになる。

※この「開発サイクル」の解説は、「テスト駆動開発」の解説の一部です。
「開発サイクル」を含む「テスト駆動開発」の記事については、「テスト駆動開発」の概要を参照ください。


開発サイクル

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/08 16:04 UTC 版)

チケット駆動開発」の記事における「開発サイクル」の解説

チケット駆動開発では、概ね次のようなPDCAサイクル繰り返して開発が行われる。 大まかなリリース計画作る仕事を細かいタスク分割しタスク書き出す。(チケット発行) イテレーション単位タスクまとめてイテレーション計画作るタスク一つ選び実装する。 差分コミットし、完了する。(チケットクローズ) イテレーション紐づくタスクがすべて終了ステータスになるとリリースするリリース後開発チーム作業ふりかえる。 次のイテレーション計画顧客要望ふりかえり内容反映する

※この「開発サイクル」の解説は、「チケット駆動開発」の解説の一部です。
「開発サイクル」を含む「チケット駆動開発」の記事については、「チケット駆動開発」の概要を参照ください。

ウィキペディア小見出し辞書の「開発サイクル」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「開発サイクル」の関連用語

開発サイクルのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



開発サイクルのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのテスト駆動開発 (改訂履歴)、チケット駆動開発 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS