
スクラムアジャイルチームに必要なスキル
高度に生産的なアジャイルプロジェクトで求められるスキルは伝統的なプロジェクトで必要なスキルとは違う。この記事では優れたチームにするための技術的なスキルや振る舞いを特定する。これらの‘デルタ’特質を獲得した人はだれでも、正しい技術的なスキルや振る舞いを身につけて、アジャイルプロジェクトで効率的に働くことができるだろう。

高度に生産的なアジャイルプロジェクトで求められるスキルは伝統的なプロジェクトで必要なスキルとは違う。この記事では優れたチームにするための技術的なスキルや振る舞いを特定する。これらの‘デルタ’特質を獲得した人はだれでも、正しい技術的なスキルや振る舞いを身につけて、アジャイルプロジェクトで効率的に働くことができるだろう。
アジャイルプラクティスはハイパフォーマンスな自己組織化したチームを育成しなくてはならない。チームが正しい問題を解決するよう、ハイパフォーマンスが価値を届けることに等価であることが重要だ。また、ハイパフォーマンスなチームが活躍できる環境づくりも重要であり、これにはマネジメントレベルでの検討と行動が必要になる。ハイパフォーマンスなチームの実現について、私たちは3人のコメンテータの視点について調査した。
チームによって完遂され、完遂するまでにかかった時間で分割される仕事の尺度であるVelocityは、チームの生産性を管理するためやチーム間の比較の尺度として用いられるようになっている。Jim Highsmith氏、Mark Levison氏、そしてScott Ambler氏は生産性の尺度としてのVelocityの間違った使い方に関して議論する。
アジャイルでは必ずしもツールの利用を必須・推奨しているわけではない。理想的には、インデックスカードに書かれた要件を使ってコマンドラインインターフェイスでも開発はできるだろう。しかし、この数年、さまざまなツールが現れて、アジャイル開発の成功を促進している。最近、Migan氏とGaia氏はアジャイル界隈におけるツールの利用調査を実施した
多くの開発者は、孤立して作業をしたがるが、それは多少の時間であり、決して常時というわけではない。XPでは、「洞穴と共通の部屋(Caves and Commons)」と呼ばれる部屋の配置を推奨している。共通のエリアは、浸透性のあるコミュニケーションを最大化するように構成されている。洞窟は、個人的なメール、電話、クイック・スパイクなどを行うための孤立を推進することを意味する。ところが、チームメンバが、このような孤立した状態での作業を過度に要望することがある。
コンテキストスイッチとは、あるタスクから別のタスクへと、焦点や注意を比較的短時間で切り替えることだと定義される。これはチームメンバとその人が取り組んでいるプロジェクトにとって、有害であると広く考えられている。Charles Miller氏はAtlassian社で使っていたコンテキストスイッチに対処する方法について述べた。
ITマネージメント・ソリューションの大手プロバイダにおける部長である、Tathagat Varma氏は、アジャイルの生産性改善がチームワークの改善に繋がるのではないか、と思った。彼は、アジャイルの価値と実践をPatrick Lencioniのビジネス物語「チームの5つの機能障害」と対比させて、分析している。
Kent Beck氏は、ごく短期のプロジェクトにおいて、実行可能なコンセプトがあるかどうか判断するときには、すばやく軌道に乗せるために自動テストをあまり(あるいはまったく)やらなくても構わないと提案している。これはTDDを取り巻く従来の見解に反するものだ。
テスト駆動開発」と「ペアプログラミング」は、アジャイルプラクティスで最も広く知られているものの2つであるが、まだそれほど多くのアジャイルチームによって実践されてはいない。たいていその理由として、TDDやペアプログラミングなどのプラクティスを取り入れるには「忙しすぎる」点が挙げられるだろう。要するに、これは高いコード品質を得ようと努力することが生産性を低下させることを示唆している。Mike Hill氏は、この論理がなぜ重大な誤りであるか説明している。