InfoQ

InfoQ

News

マイブックマーク

ブックマークするためにログイン または 会員登録 する

ブックマークされました!

ブックマークがエラーになりました。もう一度お願いします。

完了の力

作者 Chris Sims , 翻訳者 沼田 暁子 投稿日 2008年11月10日

セクション
プロセス/プラクティス,
設計/アーキテクチャ
トピック
Agile ,
Delivering Value ,
Delivering Quality
タグ
Best Practices ,
Podcasts

Scott Schimanski氏(リンク)は先ごろ、「完了(done)」の明確な定義のもたらす力について、さらに声高に主張(リンク)した。Scott氏は「完了」の明確な意味には企業的価値と個人的価値の両方があることを指摘している。企業は追加投資をすることなく完了した機能の出荷をあてにすることができ、同時に個人は「完了」にともなう達成感を本当に楽しむことができると思われる。

アジャイル開発のもっとも強力な側面のひとつは反復的な開発です。大きな開発作業を、明確なもっと小さな作業に分割するという考えです。それらの作業は計画され、コミットされ、取り組まれ、完了します。みなさんは正しい方法をご存知です。しかし、コーディングだけではなく、テストやドキュメント作成、パッケージのインストール、最終的な目的地で使用可能にするために必要なものすべてを含む、あらゆる作業があります。

Ken Schwaber氏(リンク)はChicago Scrum Gathering(リンク)で、チームが「完了」の意味することを知る価値を語ることに多くの時間を割いた。彼は、広く一般に理解された「完了」の定義は非常に強力かもしれず、スクラムのスクラムはもはや不要となるかもしれないとさえ主張した。「すべての受け入れテストが通っていて、プロダクトオーナーが満足している」という一般的な考えに加え、「完了」の定義には以下のものが含まれるべきであるとKenは述べている。

  • コードレビュー
  • 設計レビュー
  • リファクタリング
  • 性能テスト
  • 単体テストが通っていること
  • ことによると、さらに多くのこと

完了の定義に関する彼の意見は、彼がScott Hanselman氏(リンク)と行ったインタビュー(リンク)で、詳しく聞くことができる。

Mishkin Berteig氏(リンク)は、繰り返されるタスクを特定(リンク)し、それらを「完了」の定義に含めることを提案している。つまり、もしチームがストーリー毎に「○○(ストーリー名がここに入る)を国際化する」というようなタスクを繰り返し作成していることに気づいたら、おそらく「国際化する」はチームの完了の定義に追加する必要がある。

Aaron Ruhnow氏(リンク)は、「完了」を定義するために次のチェックリストを使用し、彼のチームがどのようにして「完了のニルバーナ(Done Nirvana)(リンク)」を見出したかを説明した。

  1. コーディング済みである/実装済みである
  2. ピアレビュー済みである(ペアプログラミングはピアレビューとみなす)
  3. ソース管理上の最新バージョンでコードが動く
  4. ソース管理上のコードにコメントが書かれていてチェックイン済みである
  5. Public/Friendメソッドには、VB Commenterでコードにコメントが書かれている
  6. ストーリー/ユースケースのマニュアルテスト計画が更新されている
  7. (SQA担当者と協力して)適合テストが書かれている
  8. UML図が更新されている
  9. 単体テストが書かれ、通っている
  10. コードカバレッジが90パーセントに達している
  11. ビルドやパッケージの変更がビルドマスタに伝えられている(例えば新しいファイルの追加や何か)
  12. タスクリストの時間が更新され、タスクがクローズされている
  13. コード中のすべてのTO-DOアイテムが完了している

軽く締めくくると、Tony Clark氏(リンク)が「完了」を描いた(リンク)漫画を見てほしい。Implementing Scrumのブログ(リンク)に掲載されている。

コメントを残し、あなたにとっての「完了」の定義を教えてほしい。

 

原文はこちらです:http://www.infoq.com/news/2008/10/PowerOfDone

特集コンテンツ一覧

GAE開発の落とし穴

Googleのクラウド環境をつかったGoogle App Engineによる開発するにあたり、初めての試みで苦悩する開発者達の経験をもとに、各開発フェーズにあわせて問題点やどう解決したかをご紹介します

イベントレポート:「Coqチュートリアル#1」

去る1月12日、定理証明支援系ツールCoqの初心者向けチュートリアルが開催さ れた(http://kokucheese.com/event/index/23667/)。今後も2月2日 (http://kokucheese.com/event/index/23744/)、2月9日、2月16日と引き続き開 催されていく予定である。本記事では、開催の様子をレポートする。

Javaの未来についてのNeal Gafter氏とのディスカッション

Choosing Options

Neal Gafter氏はOracleによるJava買収の影響に関する議論、Javaにセグメンテッドスタックやメタオブジェクトプロトコルを追加することについての主張、そしてJavaとC#との比較について話をしてくれた。

Google Dartのエッセンス:アプリケーションの構築、スナップショット、Isolate

GoogleはVMをともなう新しい言語であり、JSコンパイラでもあるDartをプレビューした。 InfoQはDartのアプリの構築に貢献する文法の裏側を探った:スナップショット、Isolate、モジュール方式

CSPベースのモデル検査ツール「Process Analysis Toolkit」

本記事ではCSPベースの「マルチドメイン・モデル検査ツール」である、PAT(Process Analysis Toolkit)について紹介する。モデル検査は、形式手法(Formal Method)という方法論を基礎とする技術であり、複雑さが増大しながらも安全性を求められる、現在のソフトウェア開発の状況に対する処方箋の1つとして注目されている手法である。

Jenkinsによる継続的インテグレーションのススメ(4) ~CloudBeesでJenkinsをサービスとして使う~

前回まで、Jenkinsの幾つかの側面に注目して解説をしてきました。シリーズ最後の今回は、Jenkinsをサービスとして使う方法を紹介します。

書籍『抽象によるソフトウェア設計-Alloyではじめる形式手法-』の紹介

Alloyは、MITにて開発された仕様記述言語であり、ツールによる自動解析を使い、インクリメンタルに形式仕様が書けることが特長である。筆者らはAlloy開発者による、Alloyを使った形式手法入門書を翻訳、今夏にオーム社より刊行した。本記事では、Alloyの簡単な概要と、翻訳書『抽象によるソフトウェア設計』(「Alloy本」)を紹介する。

Windows デバイスで開発するタッチユーザーインターフェイス

スマートフォンを中心としたマルチデバイスにおけるタッチユーザーインターフェイスへの対応は、既に必須の項目となりつつある。本記事では、Windows デバイスにおける UX のベースとなっている「メトロ」というデザイン言語を掘り下げながら、既存環境を意識しつつもどのようにタッチユーザーインターフェイス開発に取り組んでいくべきであるかについて解説していく。