2020.12 サイトをOPENしました。

システム・ソフトウェア開発でよくあるトラブルと予防策(5)役割分担やプロジェクトの進め方、きちんと決めてありますか?

 

「システム・ソフトウェア開発でよくあるトラブルと予防策」の第5弾は、「契約の不備」のうち、役割分担やプロジェクトを推進する体制が明確になってない場合に(※)についてです。

この連載の第3回、第4回で説明してきたように、業務範囲や完成基準を定めることが最重要ではありますが、これでけではまだ不十分です。プロジェクトでやるべき作業を「誰が」やるのか、そして、「どのように」進めていくべきなのかも、事前にしっかりと決めておくことで、トラブルを未然に防ぐことが可能です。

※参考:経済産業省「情報システム・ソフトウェア取引トラブル事例集

 

■連載記事一覧

第1回:システム・ソフトウェア開発でよくあるトラブルと予防策(1)正式契約前に作業を開始してしまった!

第2回:システム・ソフトウェア開発でよくあるトラブルと予防策(2)契約形態が作業内容に合っていない

第3回:システム・ソフトウェア開発でよくあるトラブルと予防策(3)業務範囲を決めておかないとどうなる?

第4回:システム・ソフトウェア開発でよくあるトラブルと予防策(4)完成基準や検査をあいまいにしておくと、どうなる?

 

なぜ、役割分担・プロジェクト推進体制を決めておく必要があるのか

システム・ソフトウェアの開発の委託契約は、他の業務委託契約と違ってユーザー(委託側)とベンダー(受託側)の共同作業という性質が強くなります。たとえば、インタビュー記事を執筆してもらうのであれば、インタビューをする、構成を考える、執筆する、といった、ほぼすべての作業を、依頼を引き受けたライターが担当します。

 

一方、システム・ソフトウェアの開発では、ユーザー(委託側)が求めるものを実際に設計したり、プログラムを構築したりするのはベンダー(受託側)ですが、

  • ユーザー(委託側)が初期工程の要件定義書を作成する(ベンダーはその支援を行う)
  • ベンダー(受託側)が必要とする情報を随時提供する

といった形で、積極的に協力していかなければなりません。つまり、ユーザー(委託側)は契約すればすべてをベンダー(受託側)に丸投げできるわけではないのです。

 

このため、ユーザー(委託側)とベンダー(受託側)の役割分担やどのような体制でプロジェクトを進めていくのかについて、契約で明確にしておかなければなりません。

 

役割分担や進め方をあいまいにしていることで起こるトラブル

システム・ソフトウェア開発の委託契約で、役割分担やプロジェクトの進め方をあいまいにしておくことで、どのようなリスクやトラブルの可能性があるのでしょうか。

  • 完成が遅延する
  • そもそも完成しない
  • 実用に耐えないものであることがわかって、プロジェクトそのものがとん挫してしまう

 

そのようなことになれば、ベンダー(受託側)としては委託料の支払いを請求する一方、ユーザー(委託側)としては、支払いを拒否、あるいは、契約の解除などを主張することになり、多くの場合には裁判に発展することになります。

 

トラブルを防ぐには?

上記のようなトラブルを防ぐためには、基本契約書に次のような規定を設けて、役割分担とプロジェクト推進体制を明確にしておくことが求められます。

※これまでの記事でも推奨している多段階契約(基本契約を締結したうえで業務工程ごとに個別契約を締結する契約方式)であることを前提に説明しています。

 

なお、以下でご紹介している規定内容の詳細については、電子情報技術産業協会(JEITA)や情報処理推進機構(IPA)のホームページでご確認ください。

 

※参考:電子情報技術産業協会(JEITA)「2020年版ソフトウェア開発モデル契約及び解説

※参考:情報処理推進機構(IPA)「情報システム・モデル取引・契約書 第二版

 

協働と役割分担について

ユーザー(委託側)とベンダー(受託側)が協力・分担して進めていくことを明確にしておくために、基本契約書においては次のような規定を設けておきます。

 

(協働と役割分担)(抜粋)

第〇条 甲及び乙は、本件業務の円滑かつ適切な遂行のためには、乙の有するソフトウェア開発に関する技術及び知識の提供と甲によるシステム仕様書の早期かつ明確な確定が重要であり、甲乙双方による共同作業及び各自の分担作業が必要とされることを認識し、甲乙双方による共同作業及び各自の分担作業を誠実に実施するとともに、相手方の分担作業の実施に対して誠意をもって協力するものとする。

2. 甲乙双方による共同作業及び各自の分担作業は、各個別契約においてその詳細を定めるものとする。

※甲はユーザー(委託側)、乙はベンダー(受託側)を指します。

 

連絡協議会の設置について

開発を進めるうえで、何か問題などが発生した場合に、すぐにその状況を共有して協議する場(一般的には「連絡協議会」などと言います。)が必要になります。基本契約書においては、次のような規定を設けておきます。

 

(連絡協議会の設置)(抜粋)

第〇条 甲及び乙は、本件業務が終了するまでの間、その進捗状況、リスクの管理及び報告、甲乙双方による共同作業及び各自の分担作業の実施状況、システム仕様書に盛り込むべき内容の確認、問題点の協議及び解決その他本件業務が円滑に遂行できるよう必要な事項を協議するため、協議会(以下「連絡協議会」という。)を開催するものとする。但し、本契約及び個別契約の内容の変更は第〇条(本契約及び個別契約内容の変更)に従ってのみ行うことができるものとする。

2. 連絡協議会は、原則として、個別契約で定める頻度で定期的に開催するものとし、それに加えて、甲又は乙が必要と認める場合に随時開催するものとする。

3. 連絡協議会には、甲乙双方の責任者、主任担当者及び責任者が適当と認める者が出席する。また、甲及び乙は、連絡協議会における協議に必要となる者の出席を相手方に求めることができ、相手方は合理的な理由がある場合を除き、これに応じるものとする。

※甲はユーザー(委託側)、乙はベンダー(受託側)を指します。

 

業務工程ごとの役割分担や責任について

初期の業務工程である「要件定義作成支援業務」の後工程となる「外部設計書作成(支援)業務」や「ソフトウェア開発業務」、「ソフトウェア運用準備・移行支援業務」についても、それぞれにどのような役割分担や責任があるのかを基本契約および個別契約で明確にしておく必要があります(※)。

 

※具体的な規定内容は、上記でご紹介している電子情報技術産業協会(JEITA)情報処理推進機構(IPA)のホームページでご確認ください。

 

まとめ

契約をすれば、すべてをベンダー(受託側)に丸投げできるわけではなく、ユーザー(委託側)自ら作業に入っていかなければならないことを理解しておく必要があります。

その上で、プロジェクトを成功させるために、双方の役割分担やどのような体制でプロジェクトを進めていくのかについては必ず明確にしておくようにしましょう。

 

 

■この記事を書いた人
人事・労務系ライター 本田 勝志(ほんだ かつし)
中央省庁や企業(労務担当)、社会保険労務士事務所での勤務を経て、現在は人事・労務系ライターとして各種HR系サイトの記事執筆に携わる。 社会保険労務士有資格者、2級ファイナンシャル・プランニング技能士