タグ

tddに関するhoneybeのブックマーク (20)

  • 実験駆動開発 - ポストアジャイルの手法

    原文(投稿日:2010/02/25)へのリンク TDDとBDDは今や、広く使われているソフトウエア開発技術だ。しかし、単にBDDやTDDに従っているだけではビジネス機会を逸したり、もっと悪いときにはビジネスに悪影響を及ぼしてしまう。TDDとBDDには解決できないふたつの問題がある。すなわち、どのようにして開発したアプリケーションの使用を評価するのか。そして、どうやって顧客からフィードバックを得るか。 ユーザを調査する従来の方法は決して正確な結果にはならない。アプリケーションの提供者も顧客も多大な時間を必要とし、先入観にとらわれてしまう。Nathaniel Talbott氏はRubyConf 2009でのプレゼンテーションで次のような考えを発表した。すなわち、開発時におけるTDDと同じような方法でビジネスもフィードバックを得るべきだ、という考えだ。 (画像はLabnotesから) ソフトウエ

    実験駆動開発 - ポストアジャイルの手法
  • TDDを行うとソフトウェアの信頼度が上がる理由 - babie, you're my home

    「TDDはテスト手法か否か」の議論で、いまいち私の考えが伝えきれてないようでした(link1, link2)ので、表題にあることを通じて、私のTDDに対する理解の説明を試みます。 用語説明 題に入る前にこれから使う用語を説明しておきます。 科学的方法には、伝統的な方法としてベーコン由来の実証主義、割と最近のポパー由来の反証主義があります。それぞれ批判はあるのですが、2大潮流といって差し支えないと思います(私は科学哲学については勉強中であり近年の研究はフォローしてないこと、また、観点が反証主義よりなことを、お断りしておきます)。 ここでは、 実証主義……実証の積み重ねから信頼度の高い理論が導けるとする態度 反証主義……様々な反証テストに耐えた理論が信頼度が高いとみなす態度 とします。 先の用語に出てきた、実証、反証とは、 実証……ある理論を経験や実験から真であると証明すること 反証……ある

    TDDを行うとソフトウェアの信頼度が上がる理由 - babie, you're my home
    honeybe
    honeybe 2010/03/05
  • TDD について

    「深夜のテスト TL - http://togetter.com/li/5878 」 「TDD はテスト手法か否か - http://togetter.com/li/6759 」 の後も続いている議論を、皆でまとめませんか? 誰でも編集可能にしているので、どんどん発言を足したり、問題があったら削除したりしちゃってください。

    TDD について
    honeybe
    honeybe 2010/03/02
  • TDD Boot Camp を少しだけお手伝いしてきました。 + USTリンク集 - kawaguti’s diary

    仕事の都合でフル参加はできなかったのですが、ちょっとだけ参加してきました。ラッセさんがテストコード書いていたなんて、しまった、僕もすればよかった。と思った。 ( JavaScript + QUnit とかで。 ) 12月19日 "TDD" Boot Camp  〜 "TDD" をつかめ! 〜(東京都) http://kokucheese.com/event/index/750/ 長沢智治のライフサイクルブログ : "TDD" Boot Camp | 素晴らしいイベントの目撃者となった http://blogs.msdn.com/tomohn/archive/2009/12/20/tdd-boot-camp.aspx TDD BootCamp で訓練しますた - かおるんダイアリー http://d.hatena.ne.jp/kaorun55/20091220/1261239533 [コラム

    TDD Boot Camp を少しだけお手伝いしてきました。 + USTリンク集 - kawaguti’s diary
    honeybe
    honeybe 2009/12/21
    あとで
  • #tddbc 午前中セッションの録画

    TDD Boot CampのUst配信ですが、午前のセッションについてはUstream.tv上で録画していました。 10分程度ごとに分割してあるので、この辺からどうぞー。 ・和田さんのセッション http://www.ustream.tv/recorded/3235131 http://www.ustream.tv/recorded/3235494 http://www.ustream.tv/recorded/3235790 http://www.ustream.tv/recorded/3236072 http://www.ustream.tv/recorded/3236349 http://www.ustream.tv/recorded/3236618 ・Lasseさんのセッション http://www.ustream.tv/recorded/3237015 http://www.ust

    #tddbc 午前中セッションの録画
    honeybe
    honeybe 2009/12/21
    あとでみる
  • TDD Boot Campのコード - @katzchang.contexts

    というわけで、晒します。 前半は@katzchang・@kozy4324のペア。後半は@katzchang・@yugoriのペア。 Eclipseは独自に履歴を持っているので、2パターンを引っ張り出してきました。クラス宣言部にカーソルを当てて右クリックからLocal History。たぶん20セーブくらいしか保持してないけど、たまに助かることもあります。 仕様変更直後くらい ということで、仕様変更直後くらいのセーブから。大体の時間で取っているので、REDな組み合わせかも知れません。 基的には、テストコードは下に順に追加していっています。上にある項目から順に、プロダクトコードを作り込んでいったってことです。 第一の仕様変更(キャッシュサイズを変更できるようにする)まで対応済、第二の仕様変更(一定時間が経過したデータはキャッシュから消える)に対応しようとしたら、既存機能にバグの疑いがあり、バ

    TDD Boot Campのコード - @katzchang.contexts
    honeybe
    honeybe 2009/12/21
  • チケット駆動開発とアジャイル開発の密接な関連 - プログラマの思索

    小川 明彦, 阪井 誠 : チケット駆動開発 日のソフトウェア開発の現場で生み出された「チケット駆動開発」という概念を、数多くの実例を元にモデル化・体系化を試みた最初の。 小川 明彦, 阪井 誠 : Redmineによるタスクマネジメント実践技法 Redmineによるチケット駆動開発の実践技法に関する最初のアジャイルなソフトウェア開発への適用方法、TestLinkによるテスト管理手法についても言及。 清水 吉男: 「派生開発」を成功させるプロセス改善の技術と極意 組込システム開発をベースとして、ソフトウェア開発特有のスタイルである派生開発、特にXDDPについて解説した世界でも稀な。既存製品を保守するのではなく継続的に機能追加していく昨今の開発では、派生開発特有の問題を意識しなければならない。XDDPはプロセス論だけでなく、要件定義などの上流工程の品質改善にも役立つので注意。 Le

    チケット駆動開発とアジャイル開発の密接な関連 - プログラマの思索
    honeybe
    honeybe 2009/09/20
  • TDD、TDDと言うけれども。TDDのダークサイドについてそろそろ一言語ってみる。 - Fly me to the Luna

    id:t-wadaさんの話の中で、TDDが品質を保証するわけではない、という話があったんですが、それについて私見をつらつらと。ちなみに自分は2年くらい仕事でTDDをやってきました。 やってきた中で下記のTDDの利点を感じることができました。 その時に気づいた最もシンプルなコード、クリーンなコードができる テストコードからコードを書く、と言うのはプロダクトコードの利用方法が考えられるのでとても有効に作用します。id:t-wadaさんもリファクタリングが一番重要と話されていましたが、テストコードがあれば安心してリファクタリングができます。 より高い品質のコードが書けるようになる これはt-wadaさんの話の中でもありましたね。なぜかと言うと、プロダクトコードが実行される時の前提条件を知ろうとすると、結構いろいろなコードに目を通すことになります。コードに目を通すことで優れた先人の知恵を見つけるこ

    TDD、TDDと言うけれども。TDDのダークサイドについてそろそろ一言語ってみる。 - Fly me to the Luna
    honeybe
    honeybe 2009/06/15
    暗黒面
  • 第二回チキチキ 日本ペアプログラミングの会java-ja支部会(仮)にて TDD の講演をさせていただきました - t-wada の日記(旧)

    イベントに参加された皆様、ありがとうございました。 そして、会場を提供してくださった株式会社ドワンゴさま、そして会場設営、配信設備等々ご尽力いただいた coji さんにお礼申し上げます。ありがとうございました。 久しぶりの java-ja でしたが、 java-ja はやはり java-ja でした。話していて当に楽しかったです。まとめると、 TDD は黄金の回転なのでみんな SBR(Steel Ball Run) を読んでくださいね。 当日資料はこちらです(またも slideshare の埋め込みに失敗。なぜだろう?) ペアプロのデモは id:kompiro とふたりで行いました。id:kompiro は前日 Twitter で無茶振りしたにも関わらず快諾してくれました。ありがとうございます。Eclipse のショートカット機能や Quick-JUnit プラグイン、そして Kent

    第二回チキチキ 日本ペアプログラミングの会java-ja支部会(仮)にて TDD の講演をさせていただきました - t-wada の日記(旧)
    honeybe
    honeybe 2009/06/10
  • なぜTDDとペアプログラミングで生産量が増えるのか

    垂直スケーラビリティと効果的なテストによる金融取引システムのパフォーマンスと効率の最大化 Peter Lawrey氏はJavaチャンピオンであり、Chronicle SoftwareのCEOとして、開発者を鼓舞してソリューションのクラフトマンシップを高めることに情熱を注いでいる。経験豊富なソフトウェアエンジニアとして、Lawrey氏はソフトウェア開発プロセスにおけるシンプルさ、パフォーマンス、創造性、革新性を奨励することに努めている。

    なぜTDDとペアプログラミングで生産量が増えるのか
  • java-jaでTDDでペアプロUst中継をしました

    第二回チキチキ 日ペアプログラミングの会java-ja支部会(仮)に参加してきました。会場を提供してくださった株式会社ドワンゴ様、当にありがとうございました。 TDD(test-driven development)での開発ってどんな感じ?というセッションをまずt_wada氏がやって、 踏まえたうえでペアプログラミングで実践して体感するという流れ。 ペアプロの相手を探すフェーズがさながら合コンかお見合いパーティといった風情。私は@yamashiro氏とペアを組みました。 @yamashiro氏はTDD慣れしているんだけど、僕のLet'sノートのキーボードと相性が悪かったのが残念。僕らのペアプロ姿はUst中継で放映されていましたよ。 セッション内容は@monjudoh氏がリアルタイムにblogに上げた奴とかたくさんあるので割愛。 成果物 テーマはプライオリティキューを作ろう、というもの。

  • 経験的調査で明かされるテスト駆動開発における品質の向上

    垂直スケーラビリティと効果的なテストによる金融取引システムのパフォーマンスと効率の最大化 Peter Lawrey氏はJavaチャンピオンであり、Chronicle SoftwareのCEOとして、開発者を鼓舞してソリューションのクラフトマンシップを高めることに情熱を注いでいる。経験豊富なソフトウェアエンジニアとして、Lawrey氏はソフトウェア開発プロセスにおけるシンプルさ、パフォーマンス、創造性、革新性を奨励することに努めている。

    経験的調査で明かされるテスト駆動開発における品質の向上
    honeybe
    honeybe 2009/03/16
  • SeasarCon 2009 White TDD

    unassert - encourage reliable programming by writing assertions in productionTakuto Wada

    SeasarCon 2009 White TDD
  • WritingTestableCode - テストできるコードの書きかた

    WritingTestableCode - テストできるコードの書きかた 目次 この文書について まずいのその1: コンストラクタがやりすぎ まずいのその2: 深い仲になってしまっている まずいのその3: 脆いグローバルな状態とかシングルトンとか まずいのその4: クラスがやりすぎ テストできるコードの書きかた この文書について "Guide: Writing Testable Code" の日語訳です http://misko.hevery.com/code-reviewers-guide/ 推敲歓迎: 誤訳, タイポ, 訳語の不統一, そのほか... TODO: 各 Flaw のリンク先も訳す Misko Hevery コードをベストな状態に保つために、 我々は Google でソフトウェアエンジニアに以下のようなをガイドを定期的に送っていた。このガイドを共有できてうれしいね。 この

  • Google App Engineでテスト駆動開発を行うための3つのTips | TRIVIAL TECHNOLOGIES 4 @ats のイクメン日記

    Google App Engineの開発ではPythonを使います。GAEを使ったWebアプリの開発でテスト駆動開発を行う際にも,Python的なユニットテストの文脈を活用できます。 ただし,GAEでユニットテストを行うためにはいくつかのツールやトリックが必要です。ここでは,そのテクニックを簡単に紹介します。 その1 : NoseGAEを使う Pythonのテスト用ツールにNoseがあります。このツールは,複数のディレクトリを渡り歩いて,複数のテストコードを一気に実行してくれる便利なツールです。 NoseのプラグインNoseGAEをインストールすることで,GAEアプリのテストを楽に行うことができます。「nose --with-gae」というようにオプション指定をすることでNoseGAEを利用できます。NoseGAEでは,テストコード上でGAEのモジュールやパッケージをインポートするために必

  • 第5回 進捗管理としてのテスト | gihyo.jp

    ニコニコ動画:https://www.nicovideo.jp/watch/sm2196976 家永さんからの質問第3回、第4回のCustomer Testのところで「進捗管理」というキーワードが出てきましたが、ウォーターフォールの場合のバラバラで作ってあとで結合でがんばってという、そういう進捗管理とは何か違うんですか? すみません、そこの説明は省いてしまっていました。連載は、繰り返し型の開発をイメージして話をしています。 繰り返し型の開発とは? 繰り返し型の開発では、たとえば1年間で何か開発するという場合に、1年間丸々使って最後にあるものができるというようなやり方ではなく、たとえば2ヵ月、3ヵ月ごとにシステムの開発する範囲を区切って、段階的に動くものをお客さまに納品していきます。もしくはお見せしていきます。 要件定義があって、外部設計があって、内部設計があってというフェーズを経る場合で

    第5回 進捗管理としてのテスト | gihyo.jp
    honeybe
    honeybe 2007/11/12
  • [動画で解説]和田卓人の“テスト駆動開発”講座:第4回 ナントカテスト ―― ユニットテスト,単体テスト,機能テスト,結合テスト,受け入れテスト|gihyo.jp

    [動画で解説]和田卓人の“テスト駆動開発”講座 第4回ナントカテスト ―― ユニットテスト、単体テスト、機能テスト、結合テスト、受け入れテスト ニコニコ動画:https://www.nicovideo.jp/watch/sm2195489 前回、テストをDeveloper Testing、Customer Testing、QA Testingの3つに分類しました。ここまでで何か質問はありませんか? 担当からの質問 「受け入れテスト」というのはCustomer Testなんですか? はい、そうです。 テストというと、よく「○○テスト」という言葉を聞くと思います。たとえば「受け入れテスト」以外にも、「⁠ユニットテスト」「⁠単体テスト」「⁠機能テスト」「⁠結合テスト」など、いろんな何々テストという言葉があります。質問にお答えする前に、まずテストの分類に対する視点を整理しましょう。 テストの分類に

    [動画で解説]和田卓人の“テスト駆動開発”講座:第4回 ナントカテスト ―― ユニットテスト,単体テスト,機能テスト,結合テスト,受け入れテスト|gihyo.jp
    honeybe
    honeybe 2007/11/12
  • 第1回 連載を始めるにあたって | gihyo.jp

    ニコニコ動画:https://www.nicovideo.jp/watch/sm2195306 はじめまして、和田卓人(わだ たくと)といいます。 このたびgihyo.jpにて、テスト駆動開発(TDD)の連載をすることになりました。 筆者は『WEB+DB PRESS Vol.35』の特集1「実演! テスト駆動開発」と、『WEB+DB PRESS Vol.37』の特集1「実演! リファクタリング」を執筆させていただいた際に、同時に動画企画を行わせていただきました。おかげさまで「実演! テスト駆動開発」と「実演! リファクタリング」は、誌および特設サイトの企画として、たいへん多くの方にご覧いただき、多数のご意見をいただきました。頂いたご意見の中には、以下のような意見がありました。 もう少し初心者にもわかりやすく もっと突っ込んだ内容をもう少し詳しく もう少し実践的に 特集をお読みくださった方

    第1回 連載を始めるにあたって | gihyo.jp
    honeybe
    honeybe 2007/10/26
  • チケット駆動開発 … ITpro Challenge のライトニングトーク (4) - まちゅダイアリー (2007-09-07)

    honeybe
    honeybe 2007/09/11
    TDD(TicketDrivenDevelopment)。
  • Seasar Conference 2006 Autumn (2) - 世界線航跡蔵

    前の記事 に続いてSeasar Conferenceをレポートする。 DI時代のTDD入門 次のコマは t-wada さんのセッションに出た。先日の WEB+DB PRESS vol.35 のTDDの記事を読んだ人にも呼んでいない人にも聞いてほしいとのことだった。 TDDのテストは品質保証のためではなく、開発促進のためのツール テストには粒度があり、資産価値がある DIコンテによってテストがやりやすくなった。 Eclipseを使いこなす とのことである。 TDDとは テストコードを書く テストが失敗することを確認する(red) テストを成功させるようなコードを書く テストが成功することを確認する(green) テストが成功する状態を保ったままリファクタリングする(refactor) このred => green => refactorのサイクルを回して開発を進めていく。 設計行為としてのテ

    Seasar Conference 2006 Autumn (2) - 世界線航跡蔵
    honeybe
    honeybe 2006/11/14
  • 1