Facebook x

ジャンル

開発技法・工程 2023.02.08
x hatenabookmark

システム開発のアウトソーシングとは?外注業者の選び方と5つの注意点

執筆: Qbook編集部

ライター

システム開発のアウトソーシングとは?外注業者の選び方と5つの注意点

システム開発は自社によるインソーシング(内製)だけではなく、アウトソーシング(外注)ができる時代となりました。
しかし、これまで社内だけでシステム開発を行ってきた企業にとっては、アウトソーシングの導入に不安があるのではないでしょうか。

本記事では、アウトソーシングとは何か、メリット・デメリットをご紹介。
また、これからアウトソーシングを導入される方のために業者の選び方注意すべきポイントも解説しますので、ぜひ最後までご覧ください。

もくじ
  1. アウトソーシングとは?
  2. システム開発のアウトソーシング業者を選ぶポイント
  3. システム開発のアウトソーシング時の5つの注意点
  4. 開発後は受け入れテストで品質の確保を
  5. まとめ

1.アウトソーシングとは?

アウトソーシング.png

まずはアウトソーシングとは何か、システム開発におけるアウトソーシングのメリット・デメリットについて解説していきます。

アウトソーシング=外部委託・外注

「アウトソーシング(Outsourcing)」とは、社内業務の一部を外部に委託することです。(外部委託・外注)

自社に足りない分野の人材・サービスを他社に委託することで、企業の業務効率化やコストダウンを図ることができます。

最近では、アウトソーシングは、開発や生産、物流、営業、経営まで、あらゆる業務で実施されています。

アウトソーシングのメリット・デメリット

システム開発におけるアウトソーシングのメリットとデメリットについて解説します。
これから導入を考えている場合は、良い点も悪い点も把握した上で検討していきましょう。

メリット:リソースの最適化

システムのアウトソーシングのメリットとして挙げられるのがリソースの最適化です。コア業務は自社で、比較的簡単な作業系のタスクはアウトソーシングで行うことで、自社の貴重なリソースをコア業務に充てることができます。

また、業務拡大のために人を雇うとなると雇用のための広告費や人件費がかかりますが、アウトソーシングであれば必要な時だけ業務を委託することができるため、コストを削減することができます。

比較的余裕があるときは自社で行い、忙しい時だけアウトソーシングを頼る、などコントロールしながら活用することも可能です。

このように、自社主導でリソースの最適化をもたらすことができる点がメリットとなります。

デメリット:社内にノウハウが蓄積されない

アウトソーシングの懸念点として、社内にノウハウが蓄積されにくくなることが挙げられます。

システム開発においても同様で、お金をかけてシステム開発を行なったとしても、そのノウハウは委託先のものになってしまいます。そのため、アウトソーシングをしていても、自社内で委託業務の全体像を把握しておくことが重要です。

外注先が、具体的にどのように業務を進めているのか、進捗状況などは確認するようにしましょう。

2.システム開発のアウトソーシング業者を選ぶポイント

システム開発でアウトソーシングの利用を考えた場合、業者を選ぶポイントが4つあります。
円滑に開発業務を遂行するためにも、ポイントを押さえて業者選びを行いましょう。

依頼したいシステムの開発実績が豊富かどうか

実績豊富.png

まずは、依頼したいシステム開発の実績が豊富にあるか確認しましょう。

システム開発は、各人、各社のスキルが問われるものです。どの会社に依頼するかによって、システムの品質や運用等が変わります。
そのため、できれば実績豊富な業者へのアウトソーシングが好ましいです。

システム開発は一つのミスが致命傷となって、会社に大きな損失をもたらし、社会的信用を損ねることもあります。
外部委託先にどのくらいの実績があるかを確認して、任せても大丈夫なのかを判断していきましょう。

アウトソーシング業者が社内開発するか

システム開発をアウトソーシングする場合は、外注業者がシステムを直接開発するのか、あるいは外注業者も再委託するのか、必ず確認しておきましょう

社内での開発を行っている業者であれば信頼性が高まりますが、再委託している場合、費用が高まると共に、いざという時の連携に手間がかかります。
例えば、技術的な問い合わせをしても、委託先が直接手掛けていないと、すぐに回答がもらえず対応に時間がかかってしまいます。

その点、直接開発している業者であれば連絡面もスムーズです。アウトソーシングする場合は、外注先が再委託せずに社内開発をするかチェックしましょう。

保守・運用時のアフターケアがあるかどうか

保守・フォロー.png

システム構築後の保守・運用時のアフターケアについても要確認です。

もし、システムに元々の依頼からズレている箇所があった場合、どのような対応をしてくれるのか、どこまでフォローしてくれるのかは重要です。
全てのフォローを行うことが必須だと求めるのではなく、どういった対応をしてくれるのかという点を確認しておきましょう。

コミュニケーションがスムーズにとれるかどうか

業者選定時には、円滑にコミュニケーションがとれるかもチェックしましょう。
なぜなら、システム開発は、一つのミスで予期せぬ動きをしてしまうこともあるため、外注先との密なコミュニケーションが重要になるからです。

連絡を入れても返事が来るまでに時間がかかる業者と、すぐに返事が来る業者とでは、信頼感も変わってきます。
業者を選ぶ際にはコミュニケーションがスムーズにとれるかなども見極めることが大切です。

(例)
・社内で使っているコミュニケーションツールが使えるか
・担当の返信スピードが速いか
・返信の内容が丁寧か など

3.システム開発のアウトソーシング時の5つの注意点

システム開発におけるアウトソーシング時の注意点がいくつかあります。
アウトソーシングをする前に確認しておきましょう。

① 相見積をとって比較する

相見積もり.png

システム開発のアウトソーシングは、規模によって費用相場が大きく異なります。そのため、複数の会社から見積もりを取りましょう。
特に初めてアウトソーシングの依頼を考えている場合、一社だけに見積もりをとっても、提示された金額が高いのか安いのか分かりません。

また、額面だけで判断するのではなく、費用対効果で考えることも重要です。

いくら安くとも、質が悪ければ後々トラブルに発展します。相見積もりをして、各社の費用とフォロー内容等を比較するようにしましょう。

② 責任の範囲を明確にする

責任の範囲.png

アウトソーシングする際は、責任の範囲について、明確にしておきましょう。
なぜなら、システム開発は、万全の態勢を期して行ったとしても何らかのアクシデントが発生してしまう可能性があるデリケートなものだからです。
そのため、システム開発で起こるアクシデントはある程度想定する必要があります。

アクシデントが発生した際に、責任の範囲が定まっていないと対応が遅れ、外注業者とトラブルになることもあります。
このような事態を防ぐためにもあらかじめ責任の範囲は明確にしておきましょう。

また、責任の範囲について決める際は、口約束ではなく書面にて残し契約を交わすことをおすすめします。

③ 外注先の業者に任せきりにしない

システム開発をアウトソーシングする際は、外注先に任せきりにしないように注意しましょう。
外注先に任せきりになると場合、システム開発が順調なのか、自社が求めているものをしっかりと開発・運用できるのか、が不明瞭になり発注側で管理できません。
結果として、求めていたシステムにならずに開発が遅れてしまう・質の悪いシステムになってしまう可能性もあります。

発注側がしっかりと関与して、認識違いの是正や進捗具合の把握など、より質の高いシステムの開発を行っていきましょう。

④ 機密保持契約(NDA)の締結をする

契約書の締結.png

外注先と契約する際は、機密保持契約(NDA)を締結しましょう。

機密保持契約とは、外注先に開示する自社の秘密情報について、契約締結時に予定している用途以外で使うことや、他人に開示することを禁止したい場合に締結する契約書です。
そのため、機密保持契約を交わすことで、自社の利益を守ることに繋がります。

特にシステム開発の場合、外部に漏らされたら困る情報も多々あるかと思いますので、必ず締結するようにしましょう。

⑤ 保守契約を締結をする

システムは開発が終了しても、アウトソーシング先との関係はそれで終わりではありません。システムを開発した業者とは、保守契約の締結を行っておきましょう。

保守契約とは、システムに問題が発生した場合や、当初のシステム内容の改良を求めたい場合に、迅速な解決を受け、システムを効率的に利用できるようなシステム保守をしてもらうことを内容とする契約のことです。

どんなに作り込んだシステムであれ想定外の事態は起こり得るものです。こうした事態が起こった場合、システムの中身がわからないと対処しようにもできなくなってしまします。
そのため、システム開発した業者が速やかに原因の特定と解決できるよう、事前に保守契約を締結するのは大変重要です。

また、発注したシステムにバグが潜んでおり、それが原因で重大な過失を生んでしまうケースも考えられるため、システム開発においては「契約不適合責任」(旧:瑕疵担保責任)を盛り込んだ契約を行っておきましょう。

4.開発後は受け入れテストで品質の確認を

ソフトウェアテスト.png

システム開発のアウトソーシングを行った際の懸念の一つが、発注者が提示した仕様や要件を、納品されたシステムが満たしているかどうかです。発注者の意図通りにシステムが動かないことが発覚した場合、開発側で再度、要件を満たすよう作り直す必要があります。

システムを提供されるユーザーにとっては、そのシステムが「実際に業務で使用できるかどうか」が重要なので、内製でもアウトソーシングでも関係ありません。

リリース後に実際の運用に使えないことが発覚した場合、双方にとって大きな損失になります。

そうならないため、受け入れテストを実施することでユーザーが求めるシステムになっているかをチェックし、品質を確保していくことが重要です。

もしノウハウやリソースの問題から自社で受け入れテストを実施するのが難しい場合、テスト専門会社で受け入れテストの支援サービスを提供していますので、検討してみてはいかがでしょうか。
当サイトを運営するバルテス株式会社では、自社の持つテストノウハウをセミナーに落とし込んだ「受入れテストの勘所と開発委託の品質向上編」も提供しております。

まとめ

アウトソーシングとは業務の一部を社外に委託することです。(=外部委託・外注)
システム開発においては、アウトソーシングを行うことでリソースの最適化を叶えることができます。ただし、社内ノウハウが蓄積しづらいという懸念点もあります。そのため、業務を選んでアウトソーシングすることが大切です。

アウトソーシング業者を選ぶ際は以下の点をチェックしましょう。

  • 依頼したいシステムの開発実績が豊富か
  • アウトソーシング業者の社内開発が多いか
  • 保守・運用時のアフターケアがあるか
  • コミュニケーションがスムーズにとれるか

また、アウトソーシングをする際の注意点は以下の5つです。

  1. 相見積をとって比較する
  2. 責任の範囲を明確にしておく
  3. 外注先の業者に任せきりにしない
  4. 機密保持契約(NDA)を締結する
  5. 保守契約を締結する

最後に、アウトソーシングした後は必ず受け入れテストを行うようにしましょう。実際に使えないものが納品されてしまってはビジネスに大きな影響を及ぼすことになります。
また、システムがユーザーにとって使いやすい、品質の高いものになっているかは、確認・検証も必要です。

アウトソーシングをうまく活用しながらシステム開発を行っていきましょう。

開発技法・工程
x hatenabookmark

執筆: Qbook編集部

ライター

バルテス株式会社 Qbook編集部。 ソフトウェアテストや品質向上に関する記事を執筆しています。