InfoQ ホームページ TDD に関するすべてのコンテンツ
-
.NETにおけるBehavior Driven Development
Behavior Driven Development (BDD)は、テスト駆動開発へのアプローチの代替手段として、増々考えられるようになってきている。SpecFlow と NSpecは、.NETにおいてBDD用の人気のあるフレームワークである。これらは、非プログラマーにとっても読むのが易しい、テスト仕様書を作成するのに役立つ。そして、ソフトウェアの設計がその目的によって、駆動されるようになる。
-
Googleの品質保証
以前はMicrosoftのアーキテクトを務め、現在はGoogleのテストエンジニアリングのディレクターであるJames Whittaker氏は“How to Break Software” シリーズで何冊かの著書がある。氏はGoogleがどのようにテストをしているかについて数回に渡って記事を書いた。Googleではテストは開発と共に行われ、テスターの数は比較的少ない。各製品は多くの人に触れられる前に一連のチャンネルで評価される。
-
BDD: ATDDの改良版なのか。
振る舞い駆動開発のコミュニティでは古い問いが新しい形式で表れている。すなわち、BDDは受け入れテスト駆動開発の単なる完了版なのか。このふたつの開発方式の違いについて、コミュニティでは様々な議論がされているが、Dan North氏は、TDDは"素晴らしい"のだからこのような議論に注力しないでほしいと要求した。
-
どうやってアジャイル懐疑論者を説得するか
アジャイルコーチのDaniel Markham氏が"なぜある種の人はアジャイルを強烈に嫌うのか。アジャイルはぬくもりであり、アップルパイであり、母性であり、良きことであり、これらすべてではなかったのか。なぜそんなに怒るんだ。"という、問いを投げかけている。
-
TestDriven.NETが新しいマイルストーンに到達
Visual StudioのTDDアドインであるTestDriven.NETのバージョンが3.0になった。新しい機能は、MSTest、.NET Reflector 6 Pro、VS 2010、Silverlight 4、NUnit 2.5.3のサポートだ。.NET Frameworkやその他のプロジェクトに対応している。
-
リーン+リアルオプション=複雑さとリスクの低減
リアルオプションとは、金融オプション数学に基づく意思決定プロセスである。これは通称「白本」とよばれるExtreme Progamming Explainedにおいて、Kent Beck氏が1999年に言及しているものだ。近年ではアジャイル主義者たちがリアルオプションがアジャイルとどのように交わるのかについて調査してきた。現在はChris Matts氏とOlav Maasson氏が、特にリーンソフトウェアコミュニティに対して発言している。リアルオプションを採用することでリーン開発が改善するというのだ。
-
テスト駆動開発とレガシーコードのトラブル
Alan Baljeu 氏は大規模なレガシー(古い) C++ コードベースへの TDD 利用を試みていた。そこで「可能な限り簡単に (simplest thing that could possibly work)」という原則が原因になって,大きな手戻り作業の発生するトラブルを経験したのだ。
-
RubyMine 2.0 - 動的開発へと続く道
第1級の Ruby IDE のひとつが JetBrains 社の決断によって商品化された。バージョン 1.0 のリリースから6ヶ月を過ぎた今日,リリースされる RubyMine 2.0 がそれだ。
-
Bobおじさんが述べるTDDの適用可能性
"TDDによってペースが鈍ると考えている人は石器時代で生きつづけているようなものだ"と主張したことで議論を巻き起こしたブログに続き、Bob Martin氏は現実のTDDの適用可能性、役割、恩恵に対する深い洞察を試みている。
-
PairWithUs:アジャイルソフトウェア開発のお手本動画が見られるサイト
多くのプログラマにとってプログラミング技術を学ぶよく知られている方法として例から学ぶ方法がある。具体的にいえば、他の人がどうしているのか、観察することだ。Antony marcano氏とAndy Palmer氏の"PairWithUs"では観察するだけの素敵なサイトを公開している。
-
Couldaを紹介する- 進化的振る舞い駆動開発をRubyで
往々にして、新しいソフトウェアは、既存の製品に残された空間を埋める必要がある誰かにより開発されるものである。使っているツールがわれわれのニーズに添わない場合、ソフトウェアは更なる発展を遂げる。Evan Light氏によって開発された振る舞い駆動開発(BDD) ツール Couldaはこれに当てはまるだろう。
-
JavaとFlexの両方で使えるモックフレームワーク
Javaにはモックオブジェクトを作成するための選択肢が数多く存在するが、Flexではその分野の開発がほとんどされていなかった。しかしそれも先日までの話だ。人気の高い成熟したMockitoフレームワークのFlex版が登場し、Flexにモックを使ったスタイルをもたらそうとしている。
-
Agile In a Flash(速解アジャイル)
多くの人々が冗談半分に3×5のインデックスカードを「アジャイリストのバッチ」と認めている。しかし、色々な意味でこれは不正確でも不適切でもない。山積みされたインデックスカードを見ていくことが、実際に多くのアジャイル的活動に対する品質保証になり得るのだ。しかし、インデックスカードを使ってアジャイルを学び、覚えるというのはどうだろうか?「Agile In a Flash」プロジェクトにおいて、Tim Ottinger氏とJeff Langr氏はまさにそういった人々の手助けをしようとしている。
-
Kent Beck氏、ごく短期のプロジェクトではテストを省略することを提案
Kent Beck氏は、ごく短期のプロジェクトにおいて、実行可能なコンセプトがあるかどうか判断するときには、すばやく軌道に乗せるために自動テストをあまり(あるいはまったく)やらなくても構わないと提案している。これはTDDを取り巻く従来の見解に反するものだ。
-
なぜTDDとペアプログラミングで生産量が増えるのか
テスト駆動開発」と「ペアプログラミング」は、アジャイルプラクティスで最も広く知られているものの2つであるが、まだそれほど多くのアジャイルチームによって実践されてはいない。たいていその理由として、TDDやペアプログラミングなどのプラクティスを取り入れるには「忙しすぎる」点が挙げられるだろう。要するに、これは高いコード品質を得ようと努力することが生産性を低下させることを示唆している。Mike Hill氏は、この論理がなぜ重大な誤りであるか説明している。