継続的フィードバックの実現にはツールが欠かせない
「10年後も通用する開発環境を考える前に、まずはビジネスに対するITの立場や開発現場がどう変わってきたか振り返ってみたい」こう切り出し、セッションを開始した長沢氏。
90年代、ITは便利なものだが、ビジネスとは非同期であってもなくてもよいものだった。2000年代に入り、ITはビジネス課題を克服する有効なものとして位置づけられるようになった。そして今、ITはビジネスにとって不可欠なものとなった。ITがビジネスをけん引することもあるほどだ。「ビジネスのニーズに合わせて、ITも機能を提供し続けないといけない」と長沢氏は熱く語る。機能の追加や削除は俊敏に行われるTwitterやFacebookを例にして考えれば分かるはずだ。
もちろん、開発現場も変化している。90年代は、開発現場の主役は開発者でコラボレーションする相手も開発者、提供するものはアプリケーションである。2000年代に入ると、主役は開発チームにまで拡張され、開発ツールやテストツールなどが登場し、コラボレーションも開発者とテスターやプロジェクトマネジャーなどの役割を持つ人たちの間で行われるようになった。そして提供するものはアプリケーションではなくシステムやサービスとなった。そして現在。主役は開発チームに加え、運用チーム、ユーザーを含めたビジネスそのものである。ツールもこれまでの個別の作業を支援するツールではなく、Application Lifecycle Management(ALM)をサポートするツールへと変わった。コラボレーションの相手も開発者、運用者とユーザーの間で行われるようになった。そして提供するものはもはやサービスでもなく、ビジネスそのものである。
現在のような開発環境では、開発者ひとりひとりの意識も変わらないといけない。これまでのように自分の仕事が終わったら終わり「I am done」ではなく、チームが一丸となってお客さまに機能を提供していくこと「We are done」が大切になるというわけだ。
このようにITおよび開発環境の変化について説明した長沢氏は参加者にこう問いかけた。「皆さんの開発現場は今どの段階にいるか、わかったはずだ。ビジネス価値を高めるために今の現場をどう変えていかなければいけないのか、ぜひ持ち帰ってメンバーと議論して欲しい」
ソフトウェア開発において、「開発者とお客さまの間にはもやもやとしたものが一杯ある」と長沢氏は言う。お客さまに最終的に提供する間で、さまざまなフィードバックのサイクルが無数にあるからだ。だからこそ、「このような継続的フィードバックのサイクルを早くするためにツールがある」と長沢氏。しかしながら多くの現場では開発者であれば開発者の視点から必要なツール、テスターの視点から必要なツール、マネジメントの視点から必要なツールを、ポイントごとの導入になっているというのだ。確かに必要なポイントにツールを導入するとある程度の効果は期待できるだろう。しかしポイントツールの場合、このままでは、「先述したように継続的にフィードバックのサイクルを回すようになるのは難しい」と長沢氏は指摘する。
この課題を解決するのが「Visual Studio」である。2010年4月に出たVisual Studio 2010では、「Team Foundation Server(TFS)」が情報ハブとして機能。開発者やテスター、マネジメントなどそれぞれの役割の人が最も使い勝手のよいツールから必要な情報をすべて取り出すことができるようになっている。しかもマイクロソフトの製品だけではなく、オープンソースやサードパーティのツールの情報も取り入れられるようになっている。「開発者、テスター、マネジャーのユーザーエクスペリエンスを高めてコラボレーションできるツールだ」(長沢氏)
ではどんなことができるか。単体テストを自動化したり、バグ起票をほぼ自動化する仕組みなども有している、と長沢氏。また単体テストをテストケースとして登録すれば、誰もが容易にテストを自動実行できるようになる。これは自動UIテストでも同様である。開発者が作成したUIテストを元に、テスターは手動ではなく自動でテストを行い、確認できるようになるというのだ。さらに手動テストは一度実行すれば2回目以降は自動化が可能。自動化した手動テストは、Visual Studioから自動UIテストとして単体フレームワークから実行できるようになるなど、「テストと開発の中の品質を確認するプロセスを早めてくれる機能も提供している」と長沢氏は語る。