弊社では、ものづくりを担う過程で、電子回路の設計図(=回路図)を描き、その電子回路を制御するソフトウェアプログラムをプログラミングします。その開発・設計工程で生じる「データ」について、どこまでをお客さんに納品するのが正解でしょうか?一度、考えてみましょう。
製品やシステムに必要なもの全てでしょ
ですよね。ものづくりであれば、製品を製作する上で必要なデータは全て有る方が良いに決まっていますし、システム開発の場合も前後左右で別業者さんが設計されている事を考慮すると、自社が必要な情報提供をしない事で永遠に完成できないのも違うと考えます。
今回の首題であるソフトウェアに焦点を当てた場合「全て」とは何を含みますか?これがキーポイントになります。
まず、ソフトウェアを設計する事で生成されるものは、いくつか存在します。
・ソフトウェア内部仕様書
・ソースコード
・CPUに書き込むバイナリデータ
(アプリケーションだと実行形式ファイルでしょうか)
大きく3つあると見ています。弊社では、基本的には「書き込みデータ」が納品成果物の主たるものとして設定をします。まずもって、これが無ければ製品を作っても動作しませんので、納品しないという選択肢はあり得ません。
他、内部仕様書、ソースコードについては、協議が必要な項目だと考えます。
書面はドキュメント作成工数を見る
弊社でも、各種書面を作成する事が当然の様にブログで綴っていることがありますが、実際はドキュメント作成費を頂いて作成を行います。
もちろん、お客様からの作成要望があり、且つドキュメントに求められる充実度合いをヒアリングした後、適切な費用を見積もりさせて頂くという経緯を踏んでいます。箇条書き程度の内容であれば、無償作成を行いご提供をすることになります。
ソースコードはデフォルト納品しない
ソースコードは基本成果物には含まない。というのが考えです。
プログラマーが時間を掛けて習得した技術知識であり、開発会社のノウハウ部分でもあります。オープンソース化するものと分かって参加しているものは、この限りではありません。
なので、ソースコードが必要な方は以下の2つの選択肢をご提案しています。
・ソースコードにも価値がある(価値があるから欲しい)ので、
ソースコード自体をご購入頂く(販売契約)
・開発当初の個別契約書に双方が同意の上で、
ソースコードを成果物に含むことを盛り込む
現実的な方法論という事で記載していますが、どちらかを選択しないといけない場合、請負側は当然ソースコード販売を選択するでしょうね。何が嬉しくて無償でノウハウ提供するのか・・・となります。
ただ、システム開発の場合はこの考えではいけません。
開発規模が大きいものであれば、周囲の関連企業の開発が止まりますので、もう少し柔軟な設定が必要になると思います。
判例上もデフォルトの帰属は設計者である
契約書において、納品成果物にソースコードが含まれて取り交わしのない場合、基本原則として設計者に帰属するという判例があります。
また、契約書に「乙は甲に対して、著作権、または著作者人格権を譲渡する・・・」という文面が含まれていたりするのですが、
著作者人格権は性質上、譲渡できません。
つまり条項に入れる場合「行使しない」という表現が妥当ということです。
書作者人格権は、以下から成立します。
・公表権
・同一性保持権
・氏名表示権
中でも同一性保持権は、ソースコードの修正・変更に対して、設計者に確認が必要な項目です。つまり、意に反した改版は了承しなくて良く、了承されない場合は勝手に手を加える事ができないという性質です。
この性質があるため、先の通り「譲渡できない」という表現になります。
自分が作ったプログラムに対して、多くの人が困る様な改変をされる場合、私が設計者であれば拒否したいと思いますし、了承はしないでしょう。
この様に設計者に与えられた権利がある事は知っておくべきですし、
用途として、正しく使われる様に管理も必要だと感じます。
結局、成果物に含まれるの?
ソースコードは、契約内容によっては含まれるものとなります。
契約書を交わしていない場合において、設計者が納品したくなければ断ることが可能です。逆に、何も差支えが無ければ納品する事も可能です。
成果物に含むか否かは、自社の考え方と契約内容に依存するというのが、実態です。