チームとは
みなさんは、「チーム」という言葉にどのようなイメージをお持ちでしょうか。良いチーム、悪いチーム、大きなチーム、小さなチーム ―― 様々なイメージがあることと思います。
私の場合、「チーム」と聞くと、いままで経験してきたプロジェクトでの様々な思い出と、共に苦労したメンバー皆さんの顔が思い浮かんできて、ついつい感慨に浸ってしまいます…。
さて、チームという言葉は世間一般で使われる言葉ですが、ソフトウェア開発においては、1つのプロジェクトを機能単位にグループ分けした1つの集団が「チーム」であると言えます。1チームの人数は、小規模で1~2名、大規模になると10名以上になる場合もあります。基本的にチームは複数のメンバーから構成されるため、チームを独善するためにはメンバー(つまり他人)の行動を変化させる必要があります。
なかなか進まないチームの改善
自分を独善するだけでも大変ですが、チームを独善するには他人の行動を変化させるという高いハードルが待ち構えています。このハードルは、次の2つに分類することができます。
- ハードルその1「変化への拒絶反応」
- ハードルその2「価値観の押し付け」
この2つのハードルについて、それぞれ説明します。
ハードルその1「変化への拒絶反応」
例えば、素晴らしい開発手法が記載されている書籍を入手して、内容を熟読したとします。しかし、即座にその手法を導入しようとは考えないのではないでしょうか。あるいは、自分が発見した素晴らしいテクニックを他の人に教えても、結局使ってもらえなかった経験があるのではないでしょうか。
「新しいことへの挑戦」には「失敗」というリスクが付きます。人は、失敗を恐れるため、失敗のリスクを含んだ新しいことへの挑戦に臆病になり、手を出すことをためらってしまいます。過去に成功した手法がある場合は、特別な理由がない限り新しい手法は採用されません。
これが「変化への拒絶反応」です。
ハードルその2「価値観の押し付け」
人は個々に異なった価値観を持っており、その価値観に基づいて行動します。そのため、意見のすれ違いが発生します。
ソフトウェア開発を円滑に進めるためには、チーム全員の意思統一を図る必要があります。そのためリーダーは、叱責や権限による「価値観の押し付け」を行い、強制的に意見のすれ違いを排除することがあります。しかし、人の価値観は一朝一夕に変えることは難しく、価値観を押し付けてはメンバーの不平/不満を買ってしまい、モチベーションを下げてしまう危険性があります。
さらに、チームの意思統一が図れないと、リーダーにも不満が溜まり、リーダー/メンバー双方のモチベーションを下げてしまう「モチベーション低下の連鎖」へと発展する可能性もあります。モチベーションの低下が進むと、改善どころかチーム崩壊の危険性もあります。