システム開発・構築の流れ
トップページ » 開発・構築の流れ
本ページでは、ポイントリンクが行うシステム開発の流れをご紹介いたします。
ただし、どのシステム開発会社も同じというわけではありません。
システム開発・構築には多数のプロセスがありますが、各プロセスについてお客様側に満足いく説明をしない会社も多々あります。
本ページで、お客様にも各プロセス(私たちの透明性)をご理解いただき、私たちと一丸になって課題解決に有効なシステムを開発・構築出来れば幸いです。
1. お問い合わせ・ご相談
システム開発・構築について、お客様のご要件やご希望、現状の課題点をお伺いします。
「こういったシステムは実現可能か?」「現状の事業課題をシステム化で解消できないか?」など、さまざまなご相談に対し、弊社のシステムエンジニアがお応えいたします。
お客様が現在の業務を、あるいは新規業務をどのように展開しようとしているのか?
それには「運用中のシステムの改善で対応可能か」「または新システムを開発する必要があるか」など情報を収集する必要があります。
過去の開発経験などをもとに「実現性」や「費用」「運用方法」について、お客様の疑問、ご要望を解決しながら共にお考えいたします。
2. 具体的なニーズのヒアリング
お問い合せ・ご相談で伺ったご要望に基づき、システム開発・構築に必要な情報を精査します。
お客様の現状の業務の流れを、作業に携わる各部署の関係者様やご担当者様に、より詳しくヒアリングいたします。
システム化を行う業務の詳細内容、システムへ求める事項および機能、お客様同業他社のシステム化動向、運用の開始時期、開発の予算、開発組織などを確認します。
このヒアリングによって、システム開発・構築だけではなく、その後のシステム運用も含めた、全体のイメージを調査結果から分析し、まとめていきます。
3. システムの企画、ご提案
ヒアリング・調査・分析の内容をもとに、ご提案書とシステム開発・構築にかかる概算の費用、スケジュールなどをご提示します。
ご提案内容には、お客様の課題を解決するシステム企画案(システム化方式、開発概算費用、開発期間、開発体制etc.)と費用対効果(システム導入により、どのような効果を生み出すか)などがあります。
ご理解しやすいように、システムについての大まかな動きや画面イメージを資料に反映しております。
このご提案を数回繰り返すことにより、お客様の疑問や不安を解消しながら、提案および見積の内容を固めていきます。
4. お見積り、ご契約
システムの開発・構築の範囲、それを実行するに当たってのスケジュールをご確認・ご検討いただいた後、ご了承いただけるようであれば、正式なお見積もり書を提出いたします。
念密な打ち合わせの中で、システム開発・構築の範囲、スケジュール、システム開発・構築の金額を明らかにし、お支払い方法等の様々な詳細を決定後、契約書を取り交わします。
お見積りの詳細(開発費用、開発期間、品質目標、納期等)を明朗に提示しており、お客様の承諾を得るまで正式な発注には至りませんので、安心してご相談くださいませ。
ここまでのフェイズは無料でご対応させていただきます。
5. 要件定義
システム化の範囲(どこまでの業務をコンピューターが担うか)、システムが備えておくべき性能や機能などを定義します。私たちが特に力を入れているフェイズでもあります。
「既存の管理システムと連携させたい」「UI/UXを何とかしたい(使いやすくしたい)」「クラウド化で外出先でも使用したい」など、お客様との会話の中で上がった要件を整理し、システム化するための作業が要件定義です。要件定義の手法には、様々な手法がありますが、大きく「機能要件」「非機能要件」に分けられます。
機能要件とは
帳票出力やデータ連携、データ更新といった機能面に該当するもの。
・顧客情報を登録する機能
・顧客情報を検索する機能
・お知らせ機能 など
非機能要件とは
性能やセキュリティの信頼性、拡張性、運用性、移行のしやすさといった機能面以外の要件。
・分かりやすい画面設計(使用性) など
要件定義の重要性
機能要件の内容は、画面設計、テーブル設計、帳票設計といった設計書に反映される内容になります。
非機能要件の内容は、ハードウェア構成図、システム構成図といったシステム方式に関わる設計と関連しています。
この工程を疎かにすると、性能を無視したデータベース設計を行ってしまう、システム構成で性能を補うことを余儀なくされる、画面操作に影響が及ぶといった不均衡が生じます。
そのため、私たちは機能要件・非機能要件の双方の相互関係を考慮し時間をかけて定義していきます。
予算や期間といったシステム化以外の側面も考慮に入れつつ、多くの要素を加味しながら課題点を洗い出し、将来的な運用方針を定め、より良い形で要件を定義。
私たちは、お客様の顕在化されている問題を解決するだけでなく、お客様が気づかれていない潜在課題を見つけ、改善提案をすることが出来ます。
6.設計
基本設計やパッケージ設計、プログラム設計などを行います。
要件定義を基に、画面や帳票、データベース等の入出力、セキュリティの確保、処理やテストの方法、運用方法等のシステム全体の基本を設計します。
サブシステムの設計をパッケージ設計、プログラムの設計をプログラム設計といい、
システムの機能を段階的に分割(システム→サブシステム→プログラム)整理し設計を進めます。
外部設計
外部設計では、サイトを具体的にどのようなシステムで実装していくか設計します。
画面のレイアウトや画面遷移の方法、コンテンツの配置を設計。データベースをどこで管理するかというサーバー環境、セキュリティの仕組みも決めます。
開発工程におけるスケジュールも更に細かくすり合わせていきます。
内部設計
内部設計では、外部設計で決めたシステムをどのように実現するかを設計していきます。
「機能仕様書」「データフロー図」「データベース物理設計書」などを作成します。
7. プログラム開発
設計書の内容をコンピューターが処理可能な言語にコード化します。
プログラミングの前段階として、プログラムの動作や処理方法を設計し、プログラミングにおけるルールを決めます。
また、プログラミング後に行うプログラムごとの仕様書もここで作成。
その後、設計をもとにプログラミングを行います。
8. テスト
プログラム、サブシステムおよびシステム全体が、設計書どおりに動くかを確認します。
プログラム単体のテストを「単体テスト」。
プログラムをいくつか組み合わせたサブシステムのテストを「結合テスト」。
システム全体のテストを「システム(総合)テスト」。
運用面での動作確認を「運用テスト」と呼称します。
単体テスト
単体テストでは、作成したプログラムの動作テストを行います。
プログラム設計のときに作成した単体テストの仕様書をもとにテストします。
不備があった場合、プログラマーが修正します。
結合テスト
結合テストでは、単体テストが終わったプログラム同士を結合し、連携がきちんとできているかをテストします。
画面遷移やデータの受け渡しがきちんとできているか、実際の利用場面を想定し、当初の予定どおり動作するかを確認します。
システム(総合)テスト
システム(総合)テストでは、システムの総合的な動作テストを行います。
ユーザーの使用環境に合わせて動作するかを確認します。
運用テスト
お客様が実際に使用する実務データに基づき、システムが要求通りに動作するかを検証します。
ここでは、要件定義のときに打ち合わせた要件が満たされているか、お客様に確認して頂きます。
実際に出来上がったシステムの使用感(UI)もここで確認して頂きます。
9. システム移行(リリース)およびご確認
全てのテストが完了後、本番環境でリリースします。
このフェイズでお客様の環境にシステム導入を行います。
旧システムがあった場合は、データの移行を行い、実際に使用できるように切り替え作業を実施します。
システム移行(リリース)には、一気に切り替える「一斉移行」、徐々に切り替えていく「順次移行」がありお客様の状況に応じて対応します。
また、システム運用に必要なさまざまな情報(企業情報、従業員情報、商品やサービス情報など)登録の準備を行います。
導入したシステムについて、お客様に最終確認をしていただきます。
何かご不明な点、その他ご質問がありましたらご遠慮なくお尋ねください。私たちが誠意を持ってお応えします。
10. 納品
運用テストの結果、実運用に移行しても良いという判断が出た時には、成果物(開発したシステムおよび設計書やマニュアルなど、システム運用に必要な資料)をお客様に納品いたします。
その際必要に応じて、操作研修やシステムに関連する内容をご説明しています。
11. 運用
リリース後もシステムの運用をサポートします。
日々の運用について、課題解決や業務の効率化を目指し、効果測定をしながらお客様の支援をします。
バックアップサービスやシステムの稼働確認などの定期的な運用サポート、トラブル発生時の技術サポートを実施しています。
問題なく運用できるよう万全なサポート体制を設けています。
12. 保守
お客様のビジネス要件や業務が変化、進化することに合わせてシステムも対応していく必要があります。
より良い状態でシステムをご利用いただけるように、随時アップデートを行います。
また、使用中の過程で何かしらの不具合が生じる場合もあります。不具合が生じた際は即座に修正対応するためにも、保守の必要性があります。
そのほか、システム導入後の変更、機能追加についても都度ご対応させていただきます。
信頼出来るシステム開発会社の条件
最後に、良いシステム開発会社をどのように選定すれば良いか、いくつかポイントをご紹介します。
プロセスが標準化されているか
特定の従業員に依存する属人化によって、品質にばらつきが生じます。
そのため、プロセスの標準化が出来ているシステム開発会社を選ぶことが重要になります。
開発プロセスが標準化されているということは、システム開発・構築の生産性とも関連するため、選定の指標になります。
生産性および品質検査を徹底しているか
生産性へ意識を向けているシステム開発会社は、自社で定める生産性・品質検査の指標を意識していています。
可能であればシステム開発会社が持つ生産性指標や考えを提示してもらうことをおすすめします。
プログラムも製造物ですので、きちんとした品質管理や検査が行われていることが大切です。
手法やルールをどのように規定し、どういった手順で品質を担保しているか、情報開示を依頼することで確認が可能です。
細部のチェック機構が働いているか
システム開発において契約内容に則り、コードを1行ずつ確認することは地道な業務です。
この業務を怠らず、さらにはシステム開発に詳しくないお客様に対して、分かりやすく丁寧に説明してくれるシステム開発会社は多くありません。
プロジェクトの管理や問題の発生防止も大切ですが、発生した問題にいかに対処するかといった対応力も重要になります。
常に細部まで目が行き届いている状況は、プロジェクトの体制や管理手法が確立されていることを意味します。
まとめ
システム開発には多数のプロセスがあり、お客様側も各プロセスを理解することでどういった対応を取れば良いかが分かります。
そうすればシステム開発会社と共に、課題解決に導くシステム開発が実現します。
本ページの内容が、システム開発会社の選定に役立つことがあれば幸いです。
もちろん、私たちは上記のポイントを遵守しておりますので、お困りの点がありましたらお気軽にご相談くださいませ。