
システム開発を外注する時の注意点とは?契約書に記載すべき内容とは?
システム開発を自社で行わない、もしくは専門部署がない場合外注することになります。
そこでシステム開発を外注する場合の注意点、また契約書に記載するべき点をご紹介していきます。
目次
外注業者を選ぶポイントとは
システム開発をする業者は数多くあります。
大手企業から個人事業主まである業者からどのように選べばいいのでしょうか。
外注業者を選ぶポイントを説明していきます。
- 値段で決める
- コミュニケーション能力
- 目的に対応しているかどうか
- アフターフォロー
値段で決める
システムの料金はピンキリなので、値段で決める方法があります。
いくつかベンダーを選んで見積もりをしてもらうとよいでしょう。
この見積もりは開発だけでなく保守作業などを含んだ料金を出してもらうことが重要です。
コミュニケーション能力
システム導入は、ベンダーと両方で作り上げていくのが理想的です。
そのためには、コミュニケーションがとれるベンダーでなくてはいけません。
コミュニケーション能力はベンダーを選ぶうえで大切な要素です。
特に開発担当者と話し合いができる業者を選ぶことが重要です。
開発体制や進捗報告の仕方などを詳しく聞いておくとよいでしょう。
目的に対応しているかどうか
システムを導入するのは、課題と目的があるはずです。
その目的を業者に伝えて、目的を達せるためのシステムでないといけません。
アフターフォロー
システムは開発、運用して終わりではなく保守作業などのアフターフォローが重要です。
また万が一情報漏洩につながった場合など、どのような対処をしてくれるのか確認することが重要です。
システム開発時の契約で注意することとは
システム開発時に契約をするときに、以下の点に注意をするようにしてください。
仕様書
仕様書は、システム開発の基本となる文書です。
この文書には、構築されるシステム全体の概要が記されています。
仕様書は通常、開発者、アーキテクト、システムコンサルタントなど、システム開発分野の専門家が作成することが通常です。
仕様書は要求事項を明確にすることを目的としており、要求事項は明確かつ簡潔な言葉で定義されるべきであるとされています。
システムの仕様書には、以下の部分が含まれいる必要があります。
- システム目標
- システム仕様
- ユーザー要求
- データ要求
- テスト要求
- 設計
仕様書にはソフトウェアを開発するために使用される情報が含まれていなければならないということです。
重要な点は、開発者が要件を理解し、システムを実装するために必要な要件を特定できるように、仕様書が十分に明確であることです。
トラブル防止
システム開発には、システムが思い通りではない、納期が間に合わないなどさまざまなトラブルが発生します。
そのためあらゆるトラブルを想定し、契約書に記載をしておくことが重要です。
システム開発では受注したベンダー企業が、品質はともかく納期に合わせてシステムをとりあえず完成させることが可能です。
そのため、トラブルになるのは、期限切れではなく、システムの完成度が低いとか、ほしい機能が備わっていないとか、発注側が要件定義どおりではないと訴えるケースが多いです。
そもそもシステム開発は、既製品では自分たちの要求を満たすことができないユーザー企業が、ベンダー企業に開発を発注することで始まります。
そのため、作業はおのずとカスタムメイドで行われ、開発内容は、ユーザー企業の特殊なニーズを反映したものになります。
それがトラブルが生じやすい原因になります。
引用:情報労連
システム開発を外注する時契約書に記載すべき内容とは?
それではシステム開発を外注する時契約書に記載すべき内容を説明していきます。
特に重要な項目と注意点
システム開発における契約書で特に問題になりやすい項目と注意点について説明します。
開発・設計対象の範囲
開発内容や設計対象などを明確に契約書に記載することが重要です。
もし契約書に記載されている開発ができないと認めらえた時、あらためて損賠賠償を求めることができます。
口約束で契約を進めて、あとから問題になるケースが多いのでこの点は特に重要です。
損害賠償の期間・上限金額
システムの故障が原因で発生した被害などに対する損賠賠償の期間や上限金額を設定することも重要です。
この場合あらゆる損害を想定しておくことが重要です。
協力義務
求文書をその分野の専門家が作成する「綿密な要求作成」は、要求の妥当性を確保する上で重要です。
要件定義書の作成は、2つの理由から非常に重要です。
まず、ビジネスオーナーにシステムの正しさを保証してくれます。
開発は、システムが正しく動作することを確認するためのものです。
第二に、綿密な要件作成は、顧客企業がそもそも要件について十分な情報を得ていることを保証します。
そのためには、定期的にクライアント企業と問題点を話し合うのが良いでしょう。
そうすることで、要求文書の中で議論すべき具体的な問題があるのか、あるいは要求会議そのもので議論すべき問題なのか、あるいはその後のクライアント企業との会議で議論すべき問題なのかを判断することができます。
責任者
システム開発の責任者や、問題が起こった時の責任者など明らかにしておくことが重要です。
仕様の変更等
システム開発は時間がかかることが多いです。
そのため途中で初期の契約内容と業務内容が変更になるケースがあり、そのことがきっかけでトラブルになることが多いです。
そのため特に仕様の変更の可能性があるアジャイル型開発においては、仕様変更に対して「どこまで対応できるか」「内容によっては報酬が発生する」などの内容を明確にしておくことが重要です。
これらの仕様変更をはっきりとしておくことで、スムーズに開発を進めることができるのです。
基本契約と個別契約の違いについて
システム開発には基本契約と個別契約の2種類があります。
基本契約書は、システム開発に関する作業範囲や責任者、納期、検査方法などが記載されている契約書です。
個別契約書とは、仕様変更などが起こった時に契約の内容変更があった時に取り交わす契約です。
個別契約書を交わさずに、仕様変更を続けているとトラブルにつながります。
経済産業省が提示しているモデル取引
契約書を作成するのに困っている場合は、経済産業省が提示しているモデル取引を参考にするとよいでしょう。
主に以下のことにポイントをおいています。
ソフトウェアの企画・開発フェーズのみならず、情報システムの保守・運用を含めた基本契約書のモデルを示した。
これまで各業界団体等において、「ソフトウェア開発モデル契約」を作成していたが、保守・運用フェーズにおけるモデルは存在していなかった。
なお、保守・運用においては、多様なサービス形態が存在するため、全てのパターンを網羅した一律的な雛形を作成することができないため、情報システム保守運用委託基本モデル契約書においては、各サービスモデルに共通的な事項についてのみ示し、仕様書のサンプルを示した。
上流工程におけるシステム化実現のための仕様の曖昧さが、下流工程の混乱を招きシステムの品質の低下、開発遅延等の重大な結果を生じさせる。
このような事態を回避するため、また、研究会における検討対象が主として社会あるいは事業経営に大きな影響を与えるシステムであることも鑑み、要件定義工程を含めた超上流工程は、ユーザが責任を負うべきフェーズであることを明確にした。
引用:経済産業省
まとめ
ここまでシステム開発を外注するうえで重要なことを説明きましたが、もっとも大切なのはベンダーとのコミュニケーションです。
ベンダーがしっかりと要望を把握していないと、最終的にトラブルのもとになってしまいます。
システムを導入するきっかけや課題、システムを導入するゴールなどをベンダーと共有することが重要です。
システム開発のITパートナー探しをされるのであれば
システム開発のITパートナー探しをされるのであれば「システム開発コンシェルジュ」で是非ご相談いただければと思います。
以下のフォームより開発でご相談いただきたい内容などご相談ください。