弊社で受託しているソフトウェア開発プロジェクトが終了間近となり、納品物をまとめる作業をしている。
納品物の一つにはFOSS (Free and Open Source Software)、俗に言うOSS、の説明書がある。
増田はこれまでで受託開発企業を3社ほど転々としてきたが、これをきちんと納品している会社は過去には見たことは無かった。道義的責任として、「このソフトウェアはこんなOSSを使ってます」という説明は顧客に対して為されるべきだとずっと思ってた。もちろん、納品時ではなくてプロジェクトの初期で実施するのが良いと思うけども。
経済産業省が公開している「情報システム・モデル取引・契約書(第二版)」という、受託開発の契約書の雛形が存在する。この雛形の中では次のような条項が提案されている。
https://www.ipa.go.jp/digital/model/model20201222.html
(FOSSの利用)
第49条 乙は、本件業務遂行の過程において、本件ソフトウェアを構成する一部としてFOSSを利用しようとするときは、当該FOSSの利用許諾条項、機能、開発管理コミュニティの名称・特徴などFOSSの性格に関する情報、当該FOSSの機能上の制限事項、品質レベル等に関して適切な情報を、書面により提供し、甲にFOSSの利用を提案するものとする。
2. 甲は、前項所定の乙の提案を自らの責任で検討・評価し、FOSSの採否を決定する。
3. 乙は、FOSSに関して、著作権その他の権利の侵害がないこと及び契約不適合のないことを保証するものではなく、乙は、第1項所定のFOSS利用の提案時に権利侵害又は契約不適合の存在を知りながら、若しくは重大な過失により知らずに告げなかった場合を除き、何らの責任を負わないものとする。
開発者は「こんなFOSSを使ってます、それはこんな機能があって、こんだけ人気があって信頼がおけるものです」みたいな説明をする義務を負う代わりに、万が一そのFOSSがバグったりしても責任が限定される、という話だ。
もしも受託開発の契約書にこのような条項があったとしたら、きちんと利用しているFOSSの説明をしよう。しなかったとしたら、後で不利益があるかもしれないし、それ以前にその仕事は技術的に真摯なものではないと言える。
OS、言語、フレームワーク、ミドルウェア等は要件定義または基本設計で利用するバージョン合意する。 (のちのちバージョンアップが必要になるからその対応条件も含めて) ライブラ...