「共に働く」「協力する」「協調する」ことが大切
コラボレーションとは、「共に働く」「協力する」「協調する」ことを指す。コラボレーションについて悩んでいた浅黄氏はあるとき、作業療法に携わるパートナーとの会話からヒントを得る。
作業療法は、人々の健康と幸福を促進するために、医療、保健、福祉、教育、職業などの領域で行われる、作業に焦点を当てた治療、指導、援助である。作業とは、対象となる人々にとって目的や価値を持つ生活行為を指す。
家庭で、浅黄氏が「コラボレーションって大事だよね」とつぶやくと、パートナーが「そうだよね、信頼関係がないとできないよね!」と答えた。詳しく聞くと、お互いが対等な立場で、お互いが信頼していないとコラボレーションできないことが、作業療法でも言われていた。
作業療法を施す相手とその家族、ケアマネージャー、医師、地域関連職など、関係者がお互いに対等な立場で取り組まないとうまくいかない──これがソフトウェアプロダクトの現場にも当てはまる。開発者がテストをする人を軽視する、あるいはその逆のように、メンバー間の関係がよくなければ、プロジェクトはうまく進められない。
自動テストの浸透は、QA(品質保証)担当だけでなく、開発担当と運用担当、環境を作るインフラ担当など関係するメンバーがお互いに共通の目標を持ち、成果とともに共有していくことが重要だ。
コラボレーションの文化を育むには、組織が持つコンテキストの理解が必要だ。コンテキストを構成する要素はさまざまで、プロダクトが採用しているアーキテクチャや、開発環境・テスト環境・本番環境(オンプレミスorクラウド)といった環境要素、ウォーターフォール・アジャイルなどプロセス、メンバーの持つスキルやチームに関わる人の関連性などがある。
社内の風土や組織の規則、価値観も重要だ。たとえば、保守的な人が多ければ立ち上げが難しく、新しいもの好きが多いとスタートが早いが、飽きるのも早い。ほかにも、場所や経済・歴史的背景、過去にどのような取り組みをしたかといった時間的要素もある。これらの要素のなかでも浅黄氏が一番重要だとするのが、組織が持つ課題だ。
「何を問題と思っていて、どう解決したいかを理解することです。自動テストによって開発者へのフィードバックを早くして生産性を向上させる。そのためにやらなければならないことは何なのか。もしくは、上層部から期待されていることは何なのか…… これらを整理整頓しないとうまくいきません」(浅黄氏)
このようにコンテキストはさまざまな要素があり、それぞれは変化していくため、常に最新の状態を理解しておく必要もある。ウォーターフォールからアジャイル、バグの発見から生産性向上など、変化に応じてテストのやり方も変えなければならない。
自動テストの浸透におけるコラボレーションやコンテキストの重要さを唱えた浅黄氏は最後に次のようにコメントした。
「当社の企業理念は『あるがままでなく、あるべき世界を見ろ』で、私もいつもそのように考えています。『自動テストっていいよね』というのではなく、『実際はこうしたほうがいい、その方がいい世界になります』といったことを皆さんにお伝えしていきたい」