-ちょっと修正:2011/10/18
風使いになりたい。暑いときには扇風機がわりにできるし
寒いときは温かい空気を送ったりできるし、
刃物もカマイタチがあればいいし、走るときはいつも追い風だ。
そして何より「神風の術」が使える。スンバラシイ。
ども。コヤマンです。
僕がテストを考えるときに何を考えているのか、という"視点"を大雑把に出してみた。
- モノ
- コト
- ドメイン(背景など、対象を取り巻く世界)
モノを作るとき、同じことを考える。
※もちろんこれは僕の個人的意見に過ぎないので、異論はあるかと思う。
なるほど、テストを開発する、と考えると
「何かを作る」ときに共通に使える概念かもしれない。
では話を戻して、
「開発成果物の作成」と「テスト開発成果物の作成」では、
決定的に何が違うのか?
と考えた場合に以下の視点が増えた。
- モノ:
- 開発成果物そのもの
- 開発成果物の持つ癖
- コト:
- 開発成果物が実現したこと、実現出来なかったこと
- 現在の開発成果物をユーザが思うこと
- ドメイン:
- 開発成果物を作るうえで関係した背景(基盤技術やドメインの特性、使用した技術の特徴など)
- 開発チームを取り巻く環境(コミュニケーション状況や組織状況)
基本的には変わらないのだけれど、
複雑に作れば作るほど、考える幅が増えるんだろうというのがよく分かった。
これをまぁよく理解せずに
「ボクちゃん後工程だからそもそもの背景とか考えなくていいんだもんね!」
とか言っちゃう人もまれに?いるが、
それだと論拠・根拠が無くなるため、何をやっているんだかわからなくなるうえ、主体性がなくなる。
「ウチは後工程だから考えなくていいんだよ」
「言われたことだけやってりゃいいんだよ」
「開発者がいいと言えばいいの!」
と言われた時に感じる"気持ち悪さ"というか違和感はどうやらここにあるようだ。
※ただし、スコープの定義の話は勿論別だある。
根拠のあるスコープの中での定義であれば違和感はない。
その中の「要素」が沢山あって、それをテストする立場で見るんだな、と。
といっても大雑把な話だとよくわからないと思うので具体例を列挙してみる。
- モノ
- 部品などの構成要素
- 部品の特性
- 流用したベースとなる存在
- コト
- 要求(満たしたいこと)
- ちょっとした制限事項
- 自分がなんか怪しいと思うこと
- ドメイン
- なぜ、そのものが産まれたのか
- 業界の標準や常識
- どんな人が使うのか
定量的に説明出来ないが、僕はこんなことを考えている。
そこでちょこちょこ実践しているのだがー
…これがまぁ、なかなか上手く出来ないw
何回も何回も修正する羽目になる。
モンモンとしながら会社に行ったりする。モンモン通勤。
イッパツでバシッとキマると格好いいんだろうけど、僕はそんなに格好いいタイプではないし、頭もポンコツなのでそのくらいが丁度いい。
何回も何回も修正するけど、それなりにいいテストが出来るなら、それがいい、と考えた。
→理由としては、考えることを全て出すと恐らくコストに見合わない。
ガイドワードから、というのはミッキーさんの意地悪漢字なども参考にできるだろう。
まだ予想に過ぎないが、ドメインを固定したときには、そのガイドワード、
あるいはいくつかの「要素」がスケルトンやパターンのように生成されればいい気がする。
ときどき考え方を流用して「要素」の抜き出しをするらしい、ということが分かった。
と思われた方は是非、教えていただけるととても嬉しい。
-----
★にしさん(@YasuharuNishi)
★あきやまさん(@akiyama924)
★きょんさん(@kyon_mm)
コメント有り難うございます!
0 件のコメント:
コメントを投稿