本記事は、ITビジネスの契約実務〔第2版〕をもとに、記述しています。
受託開発企業でwebエンジニアとして勤務しています。
自分がどんな契約のもとで働いているかを知ることで、
業務にも活かせると思いソフトウェア開発委託契約について勉強したのでまとめます。
ソフトウェア開発委託契約について
ソフトウェア開発委託契約とは、ソフトウェアの発注者がシステムベンダに対してソフトウェア開発に関する業務を委託する際に締結する契約のことです。
ソフトウェア開発の契約書で以下のことを意識する必要があります。
- 当事者間の権利義務関係を明確にする
- 紛争を防止する
- トラブルが生じた場合は解決・清算のための指針となる
- ソフトウェアの完成に向けて行動するための指針となる
ソフトウェアを開発では、契約締結後もユーザとベンダでやりとりは続くので開発プロセスにおける両者の役割や行動に関する指針を契約書で定義しておく必要があります。
多段階契約方式と一括契約方式について
契約の構成には、多段階契約方式と一括契約方式があります。
多段階契約方式
ソフトウェア開発を複数の工程に分けて工程ごとに個別契約を締結する構成です。
大規模なソフトウェア開発に関して、用件定義が定まってない状態では必要な工数や期間等を正確に見積もることが難しいです。
ベンダは規模を過小に見積もってしまうリスクがあり、ユーザはベンダがバッファを見込んだ見積りを提示する可能性があるのでどちらにとってもデメリットがあります。
工程ごとに個別契約を締結することで上記の問題を解消できます。
一括契約方式
ソフトウェアの完成までを一括で請け負う構成です。
規模が小さいソフトウェア開発では、見積りの振れ幅が小さいので複数の個別契約について交渉・締結の手続きを行う方が手間になることがあります。
このことから規模が小さいソフトウェア開発では一括契約方式の方が効率が良いこともあります。
請負契約と準委任契約について
ソフトウェア開発における個別契約では、請負契約もしくは準委任契約として締結されるのが通常です。
請負契約
あらかじめ決められた成果物を納品すること等、仕事の完成を目的とします。
準委任契約
事務の処理(エンジニア等の専門的スキルの提供)を目的とします。
請負契約か準委任契約かというのは、契約の名称や条項に記載することによって定まるものではなく契約書の実質的な内容や作業の実態等に基づいて定まるものです。
請負契約と準委任契約の性質の比較
請負契約 | 準委任契約 | |
---|---|---|
委託の主題 | 仕事の完成 | 事務の処理 |
ベンダの義務 | 仕事を完成させる義務 | 善良なる管理者の注意をもって事務処理を行う義務 |
ベンダの主な責任 | ・仕事の完成が遅れたことによる債務不履行責任 ・契約の内容に適合しない目的物を引き渡した場合における契約不適合責任 |
善良なる管理者の注意を払わないことによる債務不履行責任 |
報酬支払時期 | 目的物の引き渡しと同時 | ・委任事務を履行した後 ・期間によって定めたときは期間の経過後 ・成果の引き渡しを要するときは引き渡しと同時 |
中途終了時の報酬 | 可分な部分について注文者が受ける利益の割合に応じて請求可能 | 既にした履行の割合に応じて請求可能 |
解除 | 債務不履行解除 | 債務不履行解除 |
任意解除(解約) | 完成前は、ユーザはいつでも解除できる(ただし、損害賠償義務あり。) | 両当事者はいつでも解除できる(ただし相手方に不利な時期に解除すると損害賠償義務あり。) |
準委任契約は完成の責任を負わない契約であり請負契約よりもベンダに有利であると評価されることがありますが、それは正しい評価ではありません。
請負契約は仕事の完成を目的という重い責任を負いますが、
準委任契約だからベンダは事務を履行すれば良いということではありません。
準委任契約においてもベンダは適切に業務を遂行する義務を負うので、業務の遂行や結果に問題があれば責任を問われます。
成果報酬型の準委任契約について
事務の履行により得られる成果に対して報酬を支払う成果報酬型の準委任契約というものもあります。
成果の引き渡しが必要な場合は、成果の引き渡しと同時に報酬が支払われます。
成果に対して報酬が支払われるので、請負契約と類似していますがベンダがその成果を達成する義務を負っていないという点が請負契約との違いです。
まとめ
ソフトウェア開発委託契約の方式と種類についてまとめてみました。
実際に契約に関する業務を行うことはありませんが、
自分はどんな契約のもとで働いているのか理解したかったので理解するために必要な知識は学べたかなと感じています。