[お知らせ] ようこそ、 TDD.NET へ

TDD Boot Camp 名古屋
主催: 名古屋アジャイル勉強会

満員御礼 !!
2010/7/10~11 金山にて開催予定。 最新情報を掲示板に ⇒ 「TDD Boot Camp 名古屋」 メモ

TDD = テストファースト + リファクタリング

TDD というコーディング技法について、 詳しくは… ⇒ TDD とは?

このサイトでは、 .NET Framework での開発、 その中でも主に C# / VB.NET を使って TDD するときに役立つ日本語の情報を集めていきます。 VC++ については門外漢なので、 ほとんど載らないと思います。

このサイトは、 独立した記事と、 blog と、 掲示板から構成されています。 左サイドバーの [ コンテンツ ] からご利用くださると便利かと思います。

ご意見・ご要望等がございましたら、 掲示板に書いていただくなり、 この記事にコメントを付けるなりトラックバック打つなり、 に直メールするなりしていただけると嬉しいです。

※ トラックバックは、 フィッシングサイトや営利目的のものはお断りします。 そのために、 承認制としておりますので、 トラックバックが反映されるまでしばらく掛かります。

| | コメント (0) | トラックバック (1)

2010年6月 2日 (水)

[コラム] VB2005 では InternalsVisibleTo 属性が効かない

.NET Framework 2.0 で追加された InternalsVisibleTo 属性は、 これを使うと internal (C#) / Friend (VB) なスコープのメソッドも外から直接テストできるので、 Visual Studio 2005 の時から重宝して使っていました。

でもこれって、 VB2005 のコンパイラーはサポートしてくれてなかったんですね。 今まで知りませんでした、 がっくし。

※ MSDN ライブラリにも注記しておきました。
.NET Framework クラス ライブラリ: InternalsVisibleToAttribute クラス: コミュニティ コンテンツ

| | コメント (0) | トラックバック (0)

2010年5月16日 (日)

[コラム] 黒岩惠 「トヨタ生産方式 (TPS) と IT ソフト」 ご紹介

先日、 名古屋での Bent Jensen 氏のプレゼンを実現するのに尽力してくださった黒岩惠氏。 その際、 氏からも TPS (トヨタ生産方式) についてプレゼンをいただきましたが、 そのスライド 「トヨタ生産方式 (TPS) と IT ソフト」 (PowerPoint) などを希望者に配布していただけるそうです。 詳しくは、 黒岩氏のブログを。

黒岩惠@esd21: トヨタ生産方式、トヨタのIT化の講演スライドと出版原稿の配信
2010年5月14日金曜日

以下の講演スライドと執筆原稿を希望者に配信します。
営利団体、 非営利団体問わず、 講演も歓迎します。

1) トヨタ情報システム発展史
1960年代から 2000年代前半までトヨタの情報化小史として、 情報システムを、 その時代の IT 化動向、 ビジネス系、 エンジニアリング系のアプリケーション、 IT 化推進体制などを概説。 (PDF で 40ページ)
経営情報学会 & JIPDEC で発刊される「情報システム発展史」の一部

2) IT ソフト開発部門 (企業) トップマネジメントのための
  「トヨタ生産方式 (TPS) と IT ソフト」
  ~ TPS からアジャイルソフト開発への勧め ~  

「トヨタ生産方式 (TPS) と IT ソフト」 (100ページ) から何枚かスライドを抜粋しておきます。 興味のある方は、 ぜひコンタクトしてみてください。

» 続きを読む

| | コメント (0) | トラックバック (0)

2010年5月 6日 (木)

[コラム] Bent Jensen 来日: アジャイル開発に適した契約 ~ ハイブリッド契約の例

先月、 デンマークの BestBrains 社からの視察団が来日されていました。 同社 Director である Bent Jensen 氏のプレゼンからハイブリッド契約方式を少しご紹介します。

BestBrains 社はアジャイル開発のコンサルティングをやっている会社で、 日本のアジャイル開発の現状や製造業を視察するために何度も来日しています。

[2008年]
ITmedia オルタナティブ・ブログ: An Agile Way: BestBrains がデンマークから Change Vision に来社

[2009年]
fkino diary(2009-08-24): Agile2009セッション紹介 Thursday AM編 ~ "Experiments with Agile Contracts in the Real World"

そして今年、 2010年は 4月の第3週から 4週に掛けて来日。 残念なことにアイスランドの噴火のため、 日にちをずらして来日予定だった一部のメンバーが来れなくなってしまったそうです。 公式日程の記録は、 Roots of Lean サイトの Blogs from Spring trip 2010 (英語のページ) で公開されていて、 FANUC のロボット製造工場や東邦チタニウム (ウルシステムズの一橋氏がアジャイル開発を成功させたところです) などを精力的に見て廻られたようです。

来日中の講演は、 まず 4月 20日に上野で開かれました。

» 続きを読む

| | コメント (0) | トラックバック (0)

2010年5月 4日 (火)

[書籍] TPS (トヨタ生産方式) の参考書: 『偽りの「かんばん」』

アジャイル開発が話題になるにつれ、 リーン生産方式や TPS といった製造業の手法が、 ソフトウェア開発の文脈で語られることが多くなってきたなぁと感じています。 ところが、 「5S」 だの 「カンバン」 だのといった用語を上辺だけで語ってしまっているのじゃないか、 という事例にもよく出会う気がします。 たとえば、 5S を実施した結果、 机の上に何も置かないようにしてしまい、 常時使う本や書類をそのつど席を立って取りに行かねばならなくなった、 などというのは、 5S の目的を履き違えた典型的な過ちです。

TPS の用語を使うからには、 TPS について学んでいて欲しいと思います。 が、 バイブルと呼べる 「トヨタ生産方式 ― 脱規模の経営をめざして」 (大野耐一) は、 30年以上も昔の本ですし、 本屋でよく見かける解説書は、 表面的な TPS の実施方法のハウツー本ばかり。 そんな中、 この本を見つけました。

御社のトヨタ生産方式は、なぜ、うまくいかないのか? ~偽りの「かんばん」~』 (若井吉樹)

「カンバン方式を導入すると、 生産性が上がる」 のではなくて、 「生産性を上げる改善をトヨタ流にやっていくと、 カンバンが役に立つようになる」 ということが分かりやすく書かれています。 なぜ形だけ真似た 「TPS」 が失敗するのか、 なぜ本当の TPS が上手く行くのかを解説した入門書です。

» 続きを読む

| | コメント (0) | トラックバック (0)

[コラム] 僕が TDD に魅かれるワケ

 たまには自分のことを書いてみようかと思います。
 僕は、 学校を出てからの 10年くらいを、 機械の設計屋さんとして飯を喰ってきました。 その後、 肩書きをプログラマーに変えてから 15年。 ここ数年になってようやく分かってきたのは、 機械もプログラムも新しいモノを創り出すそのやり方は同じようなものだ、 ということ。

» 続きを読む

| | コメント (0) | トラックバック (0)

2010年4月26日 (月)

[イベント] TDD ってゲームみたい! (c)mayonezudaiou ~ 名古屋アジャイル勉強会第22回 (4/24, 名古屋市)

4月 24日 (土) に開催された、 第22回 名古屋アジャイル勉強会に参加してきました。 内容については、 他のかたのブログを見てやってください。

うれしい驚きが、 二つ。
ひとつは、 前夜の別の会合でこの勉強会のことを少し宣伝したのだけれど、 それで急遽参加してくださった方がいらっしゃったこと。 ( ありがとうございました。 いかがだったでしょうか? )

もうひとつは、 振り返りで出てきた、 この言葉。

TDD ってゲームみたい」 (c)mayonezudaiou

» 続きを読む

| | コメント (0) | トラックバック (1)

2010年4月21日 (水)

[ブログ紹介] Part Cover 紹介

NCover が有償化された後、 NUnit 用の無償で使えるコードカバレッジ計測ツールは、 この PartCover くらいです。 が、 なかなか情報がないのですよね。 このブログ記事は、 かなり詳しく解説してくださっています。

お だ のスペース: Part Cover 紹介 その1 - Part Cover browser から テストコード (NUnit) のカバレッジを取得する
2010-04-15

お だ のスペース: Part Cover 紹介 その2 - Part Cover browser から Windows アプリケーションのカバレッジを取得する
2010-04-16

お だ のスペース: Part Cover 紹介 その3 - Part Cover console から テストコード (NUnit) のカバレッジを取得する
2010-04-19

なお、 「その2」 で紹介されているのは、 NUnit を使わずに、 PartCover から WinForm の exe を直接起動して手動テストを実施し、 カバレッジを取る方法です。
# これが出来るという事は… MSTest は付いているけれどコードカバレッジ取得機能は無い Visual Studio Pro. でも、 ユニットテストは MSTest を使い、 PartCover でカバレッジを見るということが出来そうです。

| | コメント (0) | トラックバック (0)

[ブログ紹介] NUnit 2.5 の新機能: TestCaseSource, Values, Combinatorial/Sequential/Pairwise, Range/Random

NUnit 2.5 で追加された機能のうち、 タイトルに挙げたものなどについて紹介されています。

ZOETROPEの日記: NUnit 2.5 RC
2009-05-21

TestCaseSource を使うと、 テストケースをオブジェクトで指定できます。

Values を使うと組み合わせテストを実行してくれます。

Combinatorial / Sequential / Pairwise
Values で指定した値の組み合わせ方法を指定することもできます。

Range / Random
指定した範囲の引数を順にテストしたり、 ランダムでテストしたりできます

Assert.That で評価する際に使えるものも増えています。

EqualTo の後ろにメソッドチェーンでどんどん条件を追加していけます。

| | コメント (0) | トラックバック (0)

[ブログ紹介] NUnit 2.5 で追加された Assert.Throws

NUnit 2.5 で追加された機能のひとつ、 Assert.Throws() について紹介されています。

OPC Diary: NUnit 2.5 で追加された Assert.Throws での注意点
2010年03月03日

NUnit 2.5 から Assert.Throws というメソッドが追加されていて、 インラインでエクセプションのテストができるように拡張されています。

たとえば、 null を渡したら ArgumentException を投げ返して欲しいメソッド ExceptionDashimakuri() を作るためのテストを書くとします。 従来のやり方では、 次のように書けます。 ( 実行してみていないので、 間違いがあっても許してください。 )

try{
    ExceptionDashimakuri(null);
    Assert.Fail("例外が発生しなかった!");
}
catch(ArgumentException ex){
    Assert.AreEquals("a is Null !!", ex.Message);
}

これが、 Assert.Throws() を使うと…

» 続きを読む

| | コメント (0) | トラックバック (0)

«[イベント] 告知 - 名古屋アジャイル勉強会 「テスト駆動開発体験ワークショップ」 (4/24, 名古屋市)