ソフトウェア会社が販売している製品の1つにソースコードを紛失した場合、一般の人に説明できるとしたら、それはどれほど深刻なことでしょうか。「重大な過失」という言葉は強すぎますか?または「総無能」?明らかに誰も殺されなかったが、人々が刑務所の時間を過ごすためのいくつかの経済的過失ほど深刻ではないか?
編集: それは、ディスクドライブがクラッシュしたり、自然災害が発生したりするようなものではないとしましょう。彼らはそれを誤って置きました。
ソフトウェア会社が販売している製品の1つにソースコードを紛失した場合、一般の人に説明できるとしたら、それはどれほど深刻なことでしょうか。「重大な過失」という言葉は強すぎますか?または「総無能」?明らかに誰も殺されなかったが、人々が刑務所の時間を過ごすためのいくつかの経済的過失ほど深刻ではないか?
編集: それは、ディスクドライブがクラッシュしたり、自然災害が発生したりするようなものではないとしましょう。彼らはそれを誤って置きました。
回答:
MSがWindows Phone 7のソースを失ったとしましょう。人々は、開発に要した推定4億ドル未満で殺されました。
商品によっては「強すぎる」とは思えない言葉があります。
他の人が指摘しているように、これは「すべてに依存する」という見出しに該当する可能性が高いため、いくつかのシナリオ:
ディスクベースのコンソールビデオゲームのソース - ディスクに書き込まれた後はゲームに変更を加えない傾向があるため、会社への影響はほとんどありません。彼らが再開発しなければならないライブラリー・コードがある場合、彼らはある程度の時間を失うかもしれないとすれば、それはそれほど悪くはないでしょう。
ダウンロード可能なビデオゲームのソース -バグが修正されることを顧客が期待している可能性が高いので、これはおそらく悪くなるでしょう。そうすることができない場合、顧客は会社への信頼を失い、将来のリリースに悪影響を及ぼす可能性があります。
開発中のゲームのソース -ほとんどのビデオゲーム会社は、開発サイクルの極端に早い段階(つまり、数日、場合によっては数週間)でない限り、現在開発中のゲームのコードを失うわけにはいきません。小規模な会社の場合、ソースを失う彼らの旗艦リリースは彼らが廃業する可能性があるため。
リリース対象者が限定されている小規模ビジネスアプリケーションのソース -カップルの顧客を失う可能性がありますが、会社に問題を引き起こす可能性はほとんどありません。
リリース対象者が限定されている大規模なビジネスアプリケーションのソース -顧客からの信頼が失われたために会社が廃業する可能性がある別の状況。ほとんどの小さな市場でさえ、複数の企業が運営する傾向があり、企業が競争相手に移行するにはこれで十分かもしれません。
大企業からの主要なアプリケーションのソース -これは、実際にすべてが依存し、非常に狭いケースバイケースである可能性が高い場所です。フラッグシップ製品(Microsoft Windowsなど)には、通常、サポート契約が関連付けられており、製品をサポートできないと、契約訴訟の違反につながる可能性があります。見積もりを出さなければならないのであれば、コードの喪失に関与した人々の上級指導者に至るまでのほとんどの人々は、新しい雇用を探す必要があるかもしれないと言うでしょう。
とはいえ、コードを失った人は新しい仕事を探している(そして、仕事を見つけるのが難しいかもしれません!)と会社からの訴訟に直面している可能性があります。
それが激変である可能性がある場合は確かにありますが、それがそうでない場合はたくさんあると思います(少なくともソフトウェア会社の観点から)。
法的影響があるかどうかについて一義的に答えるにはあまりにも多くの変数があると思いますが、それを決定する際に考慮すべきいくつかの質問が含まれます。
そして、他にも考慮すべき要素はたくさんあると思います。気軽に追加してください。
さて、私は「ソフトウェア会社の観点から」と言いました。変更、拡張などの計画があったために、顧客の心に壊滅的な影響を与える可能性があります。そのようなものの契約または著作権の所有にもかかわらず、それは顧客に深刻な怒りを与える可能性がありますが、顧客との良好な関係を維持するためにできることを除いて、開発者の側に義務はありません。
ああ、(コメントで)あなたからこの説明を与えられて:
それはずっと前に開発され、ソース管理なしで、彼らはずっとそれを販売してきました、そして今彼らは突然それを更新する必要があります
で、この特定の状況、私はそれはおそらく、世界の終わりではないと言うでしょう。彼らがソースコードを必要とせずに何年もの間ソフトウェアを販売していることを考えると、更新を要求しているこの1人の顧客に「申し訳ありませんができない」とだけ言うことができます。
誤解しないでください。コードを失うことはよくありません。元のバージョンを書き直したり、リバースエンジニアリングしたりすることは、会社にとって非常にコストがかかります(そうすることを決定した場合)。しかし、それは世界の終わりではありません。彼らは明らかにコードを必要とせずに長い間生き残ってきたので、おそらくそれなしでも生き続けます。
もちろん、これは彼らが販売しているソフトウェアはビジネスのごく一部に過ぎないと想定しています。私が推測しているのは事実だと思います...
彼らが商品を売ることができる限り、私は彼らが困っているとは思いません。現在、彼らが製品を拡張し、次のバージョンで特定の新機能を提供することをクライアントと契約している場合、契約ペナルティの違反に対して彼らを設定しているので、それははるかに深刻です。しかし、コード自体を失うことに法的な問題があるとは思いません。
これは、会社にとって絶対的な災害ではないという意味ではありません。しかし、それは経済的災害です。合法ではありません。私はおそらく「総無能」という言葉から始め、そこから自分の道を歩んでいきます。
正直なところ、使用する言語に依存すると思います。C#コードベースを失うと、非常に簡単に逆コンパイルできますが、C ++コードベースを失うと、それはさらに悪化します。
アイテムの組み立てを必要とする他の仕事にそれをお願いします。おそらく何か物理的。たとえば、建築家が建てられた建物の計画を失った場合。自動車会社が車のモデルの計画を失った場合; 仕立て屋が彼らが作った服のパターンを失った場合; 等
ソフトウェアの作成と同じように物理的に比較できる仕事はたくさんあります。
コードを逆コンパイルするオプションは別として、会社がソフトウェア製品の販売を続けるつもりなら、これはかなり大きな問題になると思います。それが社内アプリケーションである場合、同じことはそれほど当てはまりません。
ソースコードを復元できない場合、メンテナンス(バグ修正)と拡張を実行できないため、アプリケーションは静的になります。Microsoft、Apple、Apache、またはオペレーティングプラットフォームがコードを変更またはアップグレードしている場合は、古いコンパイル済みコードが機能せず、修正できません。このアプリケーションを外部クライアントに販売している場合、Windows、MAC OSX、iPhone、Webブラウザをいつアップグレードするかを制御できないため、会社の評判に対してかなり大きなリスクがあり、保守契約を結んでいる場合も法的リスクがある可能性があります。クライアントと。
次に、ソースコードは会社の資産を表します。したがって、ソフトウェア会社にとって、それは帳簿上の資産です。これは、製品として販売したり、ソースコードとすべての権利を別のソフトウェア会社に販売したりできるものです。ソースコードを紛失したため、維持できないことがわかっていたクライアントにソフトウェア製品を販売し続けるつもりはありません。さらに、別のソフトウェア会社がその製品をさらに開発できなければ、アプリケーションとすべての権利を購入することはないでしょう。したがって、このアプリケーションの資産価値を削減する必要があります。
社内の社内アプリケーションの場合、アプリケーションのオペレーティングプラットフォームをより詳細に制御できますが、メンテナンスのためにソースコードを使用可能なコードベースに逆コンパイルできない場合は、このアプリケーションの置き換えを検討します。
乾杯、
ケビン
PS私はこれが理論的な質問だけであることを願っています... :)
彼らがバグを修正する必要がない場合、それはおそらくそれほど大きな問題ではありません。たとえば、会社がカスタムActiveXコントロールを作成し、レガシー製品の1つへのソースを失った場合、誰が本当に気にするのでしょうか。製品はおそらく積極的にメンテナンスされておらず、おそらく積極的に販売されていません。人々が32ビットActiveXをまだ使用している限り、彼らはそれを販売し、その後それを忘れます。
それでも、私はそれを重大な過失として分類します。明らかに、ソフトウェアハウスにとっては専門家としての能力がないソースコード管理システムは整っていません。