今回は,タスクのサインアップについて詳しく見ていこう。

 作業としてのタスクは,誰かによって「アサインされる」ものであるとの認識が一般的だ。しかし,アジャイル型開発では,タスクは誰かにアサインされる受動的なものではなく,自らサインアップする能動的なものである。サインアップとは「署名する」という意味だ。つまり「タスクにサインアップする」ということは,タスクに対して,自分が担当するという証しとして署名することになる。

 「アサイン」と「サインアップ」の違いは,単なる作業の割り振り方の違いだけでなく,担当者の意識や作業の進め方にも大きくかかわってくる。

 タスクをアサインする場合には,アサインする側が担当者のスキル・レベルや得意分野を踏まえて,最も適切と思われる作業を割り当てるのが一般的だろう。その際には,担当者の意思とはほとんど関係なくタスクが決定され,担当者は決められたタスクに対して強制的にコミットさせられることになる。これはともすると,「やらされ感」につながりやすい。

 対してタスクにサインアップする場合は,どのタスクを選択するかを決めるのはサインする本人である。「誰か」に決められたタスクに取り組むのではなく,「自分で」決めたタスクに対してコミットすることになる。自分で選んだタスクについて,責任を受け入れて作業に取りくむのだ。そこに「やらされ感」は発生しにくい。

 タスクのアサインが続くと,個々の担当者の知識やスキルが得意な分野に偏り,特定分野の“専門家”になるケースが多いのも問題だ。ある知識についての専門家が増えるということは,その知識の属人性が高まることに等しい。属人性が高まると,たとえチーム内であっても,ほかの人に対してその知識を伝えるための手段(文書化,知識移転)が必要になってくる。

 一方,タスクのサインアップでは,確かに最初の段階では自分の得意な分野のタスクを選ぶことが多いかもしれない。しかし時間がたつにつれ,逆に自分の意思で「得意な分野以外を選択する」ことが可能になる。もちろん「選択できる」というだけではなかなかそうはならないのだが,チーム全体として属人化を抑制する方向で仕事を進めることで可能になってくる。

 もっとも,チーム・メンバーが得意な分野以外にサインアップするためには,「不安や恐れを軽減する」機構が必要だ。TRICHORDチームではその機構を「ペア作業」でタスクを行うことで実現している。

 TRICHORDチームでは「タスクへのサインアップ」をベースに,さらに「チーム・コミットメント」を目指して作業をしている。これは「Aさんがあるタスクを行う」のではなく,「チームがすべてのタスクを行う」という考え方である。あるペアがタスクにサインアップした場合でも,作業中に作業者を入れかえて知識,経験の共有を図る。ここでも「ペア作業」がキーとなる。ペア作業については別の機会に紹介する予定だ。

懸田 剛

チェンジビジョンでプロジェクトの見える化ツール「TRICHORD(トライコード)」の開発を担当。デジタルなハックと,アナログなハックの両方を好む。新しいやり方やツールを考えるのが好きである。個人サイトは http://log.giantech.jp/