システム開発依頼の基本と流れと信頼できる制作会社の選び方
SNSや掲示板、会員機能の実装、サイトとアプリの連動、CMSの導入やセキュリティ強化など、Webサイトを制作・運営する上で、システム開発は不可欠になってきました。
「システムのことはわからないから信頼できる外注先を探したい」「システム開発を失敗させないために注意するポイントを知っておきたい」という方のために、システム開発の基本的な流れ、発注する際の注意点、信頼できる会社の選び方などをご紹介します。
システム開発とは?基本的な開発工程と流れを紹介
Webサイトにおけるシステム開発とは、ITを活用してサービス機能を実装したり、業務の効率化したり、ユーザーの利便性を上げるシステムなどを、要件定義、設計、デザイン・プログラミング、テスト・デバッグといった一連の作業の総称を指します。
システム開発の工程・流れ
次にシステム開発の一般的な工程と流れについて、簡単にご紹介します。
1.要求定義
このシステムで何を実現したいかを明確にし、何のために何をするのかを決める初期段階。つまり、クライアント側は自分たちが作りたいシステムのイメージをきちんと伝え、システム開発会社はそのイメージに必要な機能や性能を具体的に定義する作業です。
要求定義の段階で失敗してしまうと、システム開発も失敗すると言っても過言ではありません。要求定義の失敗は開発会社側の責任もありますが、クライアント側の要求が曖昧だったり、実現不可能な要求をしたりするケースも少なくありません。可能な限り、正確で具体的に示しましょう。
2.要件定義
要件定義は、要求定義で明確にした要求を、システムで実現するために仕様書にまとめる作業です。要件定義書にはシステムの概要・導入目的、要求に合わせたシステム要件、業務フロー・スケジュール・開発体制などを記載します。
●要件定義で決めること
- システムの導入目的
- システムの概要や構成
- 実装するシステム要件
- 開発に関する業務フロー
- 開発スケジュール
- 開発体制(人員・チーム体制)
システム要件は、システム開発で実装する必要な機能要件・非機能要件、システムの環境を支えるサーバーやデータベース、ネットワーク、セキュリティ対策などを明確にするインフラ要件、利用デバイス・ブラウザ・OS・SEO対策を定義するサイト要件などを定義します。
要件定義ではこのシステム要件が要求に合っているか、スケジュール・人員などが適切に組まれているかなど、内容のズレがないかを確認しながら進めることが重要です。制作会社・開発会社に丸投げせず、進捗管理や必要なデータ・情報の整理など、連携しながら進めていきましょう。
3.基本設計
基本設計では、要求定義をもとにシステムの基本を設計する作業です。操作画面や操作方法、データ出力、画面インターフェースなど、実際に完成イメージを見ながら、要件が反映されているかすり合わせる最後のチャンスでもあります。お互いが納得の上で開発が進められるように、レビューを重ねていくことが大切です。
●基本設計書の主な内容
- 業務フロー図・システム構成図
- 画面一覧表
- 画面遷移図
- コード一覧
- CRUD図(※データベース設計に必要な機能)
- インターフェース一覧
4.詳細設計
詳細設計では、開発会社が基本設計でより具体化された要件をもとに、プログラマ向けにプログラミングに必要な設計書を作成します。
5.実装・プログラミング
詳細設計をもとに、実際のシステムを開発・プログラミングを行います。
6.テスト
開発したシステムが設計書通りに稼働するかをテストします。まず、プログラムの動作確認を行う「単体テスト」を行い、問題ないことが確認できたら複数の機能や画面、データ連携などに問題ないかを確認する「結合テスト」を実施します。
さらに、要件定義で定めた機能要件やシステム要件が実装されているか、確認を行う「総合テスト」を実施。最後に開発したシステムをクライアントがテストし、本番環境でも問題なく稼働するかを確認する「運用テスト」を実施します。
7.納品・システムリリース
テストを終え、クライアントのシステム環境でシステムが問題なく動作することが確認できたら、納品となります。システムがリリースする際には、サービスを停止したり、リリース後もスムーズに保守・運用できるように業務体制を整えたりします。
8.保守・運用
リリース後は、システムが問題なく稼働するために、保守・運用業務を行います。保守はシステムが滞りなく稼働するための業務、運用はシステム改修やアップデートなどの業務を指します。この工程は、開発した制作会社が担当することも多いようです。
システム開発を依頼する内容
システム開発を依頼する場合は、依頼したいシステム開発の内容や目的、達成したい目標、スケジュールや予算イメージ、提案してほしい要件を伝えます。
具体的に提案してほしい要件は、主に以下のような内容になります。
依頼する業務範囲
システム開発のみなのか、ディレクションやマネジメントを含むのかなど、依頼する業務範囲を伝えます。
機能要件
実装したい機能の要件を明確にし、できるだけ詳細に説明します。
開発手法
ウォーターフォール型開発やアジャイル型開発など、プロジェクトがスムーズに進む開発手法について要望を明示します。
●ウォーターフォール型開発とは
「要件定義 > 基本設計 > 詳細設計 > 開発(プログラミング) > テスト > システムリリース」というように、開発プロセスを最初に計画した通り、時系列に沿って進めていく開発手法。上流の開発工程からトップダウン形式で進められます。開発の計画や管理がしやすいため、大規模プロジェクトで用いられることが多い手法です。
●アジャイル型開発とは
仕様や設計の変更があることを前提に、厳密な仕様は決めず、「計画 > 設計 > 実装 > テスト」といった短い開発サイクルを繰り返すのが特徴。「素早い」「機敏な」という意味を持つ「アジャイル(agile)」という言葉が示す通り、素早くリリースしてブラッシュアップしていく手法です。
仕様変更に強く、プロダクトの価値を最大化することに重点を置いた開発手法のため、WebサイトやECサイトやSNSなどのWebサービス、モバイルアプリ・ゲームなど、市場動向が予測しにくく、ライフサイクルが早いプロダクトに向いています。
システム開発の種類についてはこちらの記事で詳しく解説されています。あわせてご確認ください。
参考:【解説】システム開発の種類は大きく2つ。フロントエンド、バックエンドの違いについて – ITコラム – 株式会社パラダイムシフト
保守・運用方法
そもそも保守・運用を依頼するのか、依頼する場合はどのような業務範囲でお願いしたいのかを伝えます。
開発体制・スケジュール
どのような開発体制・スケジュールでプロジェクトが進められるのか明確に説明してもらうように依頼します。また、どのようなポジションの人が担当窓口になるのか、合わせて提案してもらうようにしましょう。
開発コスト
開発コストの見積もりは、後から想定外の費用が発生してトラブルにならないように、開発項目ごとに打ち合わせ段階で明確にしておきましょう。また、相場観を把握するために、複数の会社から会社から見積りや提案をもらうことをお勧めします。
納品してもらいたい成果物
システムプログラム、要件定義含めたドキュメント、操作マニュアルなど、必要な成果物を明記します。
開発実績、ポートフォリオ
システム開発実績はもちろん、これまでのWebサイト制作の実勢、画面デザインに関しては担当デザイナーのポートフォリオも提示してもらいます。
契約条件
システム開発を依頼するにあたり、契約条件や機密保持契約、瑕疵担保期間などもしっかり確認し、発注書や契約書を交わすようにしましょう。
その他にも、検討している事項や不明な点などがある場合は合わせて伝えるようにします。
システム開発で失敗しない外注先の選び方
システム開発を外注するにあたり、どのような観点で選ぶか悩む方も多いと思います。ここからは、システム開発会社を選ぶポイントを紹介します。
【Point1】依頼する分野のシステム開発を強みとしている
依頼したいシステムによって、得意な分野は異なります。例えばWebサイトのシステム開発を依頼する際は、以下のような強みを持つ会社がお勧めです。
●Webサイト制作に対する提案力・コンサルティング力
●SEO知識(検索結果が上位に表示されるための知識)
●CMS知識(WordPressをはじめとするコンテンツ管理システムの知識)
●UI/UX知識(画面デザインやユーザーが使いやすい導線を設計する知識)
●最新技術の知識・高い技術力
●コーディングスキル(仕様書に沿ってコードを記述するスキル)
【Point2】求めるシステム開発と同じような実績がある
求めるシステムと同じような開発実績のある会社に依頼すると、開発工程の手間や完成形のイメージのズレが減らせます。場合によっては価格交渉に応じてくれるケースもあります。開発会社のホームページなどの実績をチェックする、開発実績書を提示してもらうなどを行い、判断基準のポイントとしましょう。
【Point3】担当営業やディレクターのスキルが高い
システム開発におけるコミュニケーションは非常に大切です。開発会社との密なコミュニケーションによってプロジェクトが成功すると言っても過言ではありません。
小規模の開発会社であれば問題なくても、中規模以上のシステム開発の依頼になると、担当営業からプロジェクトを回すためのディレクター担当が窓口となります。開発会社を選定する際は、営業担当だけでなく、プロジェクトを担当予定のディレクターまできちんと人柄をチェックしましょう。
【Point4】見積り内容を明確に提示してくれる
案件を受注したいがために、無理に安い金額で見積もりを出してくる開発会社もあります。リリース後の保守、運用体制です。要件定義に入る前に保守運用についてどれくらいのコストを割くかまとめておきましょう。
【Point5】リリース後のデバッグや修正など、運用・保守も任せられる
クラウド・IoT・AIなどの技術進化や、ビジネス予測が難しく変化が著しい現代において、最初から完璧なシステムを目指しすぎ時間やコストを費やすことはリスクにも繋がります。作っては試し、改善を繰り返しながら状況に合ったシステムを作り、システム稼働後もニーズに合った運用・保守、改善の提案をしてくれる会社が心強い味方となります。
【まとめ】総合的に強みを持つ制作会社を選ぼう
ここまで説明してきたように、システム開発の外注先を選ぶ際は、サイト全体の設計力、システム開発・コーディングなど、総合的に強みを持つ制作会社をお勧めします。大規模サイト制作・運営実績も参考にするとよいでしょう。
信頼できる制作会社を見極めるためのチェックポイントを挙げてみましたので、ぜひ参考にしてみてください。
- 制作会社が自社のWebサイトに力を入れている
- 営業担当者が十分な知識を持ち、積極的に提案してくれる
- ネガティブな意見を伝えてくれる(イエスマンではない)
- デザイン以外の話を積極的にする(要件定義やサイト設計の重要性など)
- 見積もり項目が詳細に分かれている
マトレルは、システム開発からサイト制作まで下請けに特化したWeb制作のスペシャリストです。さまざまなニーズを持つお客様のお役に立てるよう、「期待を超えるクオリティ」でご提案いたします。ぜひお気軽にお問い合わせください。