[アーカイブ] ソフトウェア開発に携わる方が Visual Studio の世界観を把握していなければならないわけ [Advent 12/25]

<オリジナル投稿 2012年12月25日 本ポストの情報はオリジナル投稿時点のものです。マイクロソフトの正式な見解や製品の仕様を保証するものではないことをご了承ください。>

  • ひとり気ままな Advent Calendar 最終回です (あれ?25日目はいらない?)。

キーボードの “R” キーが壊れている中、よく頑張った(←自分)。
さて、私は講演の際には、ツールの機能や、ツールの紹介に終始するといったことを極端に嫌います。極論で行くと、これらのみを単にご要望いただいた際は、お断りをすることもあるくらいです。なぜならば、ツールも現場も、それぞれのコンセプトであり、ビジョンがあるわけですが、機能を一方的にお伝えすると現場とツールの歩み寄りがおざなりになりがちだからです。
この辺にも絡みますが、私の講演スタイルについては、以前に書きました。

本題ですが、私は10数年間、ソフトウェア開発のライフサイクル、開発プロセスのカイゼンに携わってきました。そこにはプロセスの話は当然出てきますが、開発支援のためのツール適用の話も当然でてきます。「どちらが大切?」という議論があったりしますが、これについては、「どちらも大切」なのではなく、「人、プロセス、ツールのバランス」が大切だということを強く訴えたいです。宗教論争したいわけでもなく、ソフトウェア開発をまっとうなビジネスにしたいわけですし、そこで働く人も、そのソフトウェアに関わる人もプロの集団なわけなので、必要なことはしっかり準備しないといけません。私の尊敬する Sさんが、「プロなのに、練習しない、練習をお客様に提供するのは失礼」と言及されていました。できない、仕方ないではなく、成熟したビジネスにする努力はどんどんすべきです。技術の進化が著しいからこそ、余計に。
ソフトウェア開発環境の進化も著しいです。先に述べたように、10数年関わっていますが、開発ツールは皆さんが思い描いている以上に進化してます。2008年に Kent Beck が予想した、「ツールの次の進化」「ツールに期待していること」は、すでに実現されています。
プロセスやプラクティスも大きく進化してきています。その反面、日本での活動や成熟度はというと、10年遅れているともいわれることもあります。実際にどうかは置いておいて、そういわれるのは、体系立てて実践できていなかったり、先駆者の知見をみずに独自にスクラッチから模索を繰り返しているところからもくるのかなと個人的には感じています。
たとえば、10年前からあるプラクティスを、日本で数年かけて模索し、追いつくなどは、10年前のプラクティスを知っていれば、もっとよいものに進化させることにつながったのかもしれません。数年かけたこと、独自の試行錯誤は尊いものです。だからこそ、さらに先へ行くことも考えてもいい時期だと思うわけです。
さてさて、で、なぜに Visual Studio の世界観を把握しておくべきかというと、Visual Studio の世界観は、マイクロソフトという世界最大級のソフトウェアカンパニーで実践された開発の叡智が汎用化されて詰まっています。この世界観を知ることは、あなたの現場のカイゼン、ツールの適用の仕方や、付き合い方、ツールとプラクティスについてのよい効果を生む可能性が高いを私は考えています。
なので、MS技術を使っているとかそんな小さなことではなく、Visual Studio の世界観は知っておいて損はないはずです。「MSの話だから・・・」と聞かない、目を傾けないで、損はしてほしくないわけです。
冒頭に戻りますが、そんな思いもあり、私は機能紹介だけを行うことはしません。
さて、昔の資料ですが、共有しておきたいものがあります。

デモ動画用ライフサイクル一覧 from Tomoharu Nagasawa

この資料は、2011年11月に公開したものです。Visual Studio 2010 の段階での資料です。2枚目以降のスライド中の番号をクリックするとデモ動画を見ていただくことができます。
よくある開発現場の課題に対する回答を示した資料ですが、こちらがいまだに日本のソフトウェア開発の現場さんでウケています。リクエストが多かったら、Visual Studio 2012 バージョンにしたいと思いますが、こういうことは、知っておいて損はないと思います。たとえば、Visual Studio を使うことが一生ないとしても。

ひとり気ままな Advent Calendar 一覧: