システム改修について何を行うのか分からない方も多いのではないでしょうか。本記事ではシステム改修の基本的な流れや、依頼するポイントについて解説します。システム改修を検討している担当者はぜひ最後まで読んでみてください。
システム改修とは?
システム開発とは、新規のシステムやアプリを開発することを指します。一方でシステム改修は、すでに完成したユーザーに公開されているシステムの機能を修正・追加することです。
改修=バグの修正とは限りません。管理画面のちょっとしたデザインを修正するだけでも、システム改修です。
システム改修の目的は、システムを今までよりも使いやすくすることです。システムは時間が経つと、使いにくくなったり業務内容に合わなくなったりするので、定期的にシステム改修を行う必要があります。
※関連記事
システム開発とは?外注するメリットや注意点について解説
システム改修を行う理由
システム改修はなぜ行う必要があるのでしょうか?理由は次の3つに分けられます。
-
- 不具合・バグを修正するため
- 性能を向上させるため
- 新しく機能を追加するため
1つ1つの理由について具体例も交えて解説しましょう。
1.不具合・バグを修正するため
1つ目は不具合・バグを修正するためです。
システムを公開するときは、何度もテストを繰り返し、不具合がないことを確認したうえでリリースします。しかし、不具合やバグを完全に取り除くことはできません。
システムを公開して何年か経った後、ようやく不具合が見つかる場合もあります。また、時間の経過によって条件が変更され、今まで正常に動いていたシステムが動かなくなってしまうこともあります。
リリース後に見つかった不具合はシステム改修を行い修正しなくてはいけません。その際は不具合箇所のみを修正し、他の箇所には影響を及ぼさないよう気をつける必要があります。
2.性能を向上させるため
2つ目は性能を向上させるためです。システムを使っていくうちに、使いにくい面に気がつくことがあります。
たとえば、業務システムの管理画面について操作しにくい、ECサイトの検索機能がわかりにくい、などです。ほかにも、Webページの動作が重かったり、セキュリティー的に好ましくない部分があったりした場合も修正を行う必要があります。
これらを修正しないまま放置しておくと、ユーザーが離れてしまう原因になったり、業務効率が落ちてしまったりする可能性があるでしょう。
3.新しく機能を追加するため
3つ目は新しく機能を追加するためです。
たとえば、業務システムや基幹システムは業務内容の変更に従い、機能の一部を変更しなければいけません。
ほかには、ECサイトやSNSなどのWebアプリを運用している場合、ユーザーから「ここはもっとこうして欲しい」という要望が多く寄せられた場合、要望に応える必要があります。
システムの機能向上を図ることで、Webサービスのユーザー数が増えたり、業務システムを従業員がより便利に使えるようになったりすれば、会社の売上アップに結びつくため、システム改修は重要です。
ただし、とにかく機能向上させれば良いという訳ではなく、開発コストに見合うだけの成果を出せないといけません。改修を行ってもそこまで成果を出せる見込みがない場合、システムをそのままにしておいたり、あるいは別のシステムを新規で作成したりすることもあります。
システム改修の流れ
システム改修は決まった流れに則って行うことがほとんどです。システム改修は次の5つの流れで行われます。
-
- ヒアリング
- 設計
- 開発
- 納品
- 運用・保守
システム改修の各工程について詳しく解説しましょう。
1.ヒアリング
まずは開発企業の窓口担当者や営業と実際に会って打ち合わせを行います。
打ち合わせでは開発企業の担当者から、「どのように改修を行いたいか」要望を聞かれます。打ち合わせをスムーズに行うためにも、あらかじめ考えをまとめておくことが大切です。(システム改修を実施したい理由や解決したい課題、現状の悩みなど)
ヒアリング後、要件定義書や見積書を開発企業が作成するので、目を通します。自社の要望がしっかり通っていること、見積金額や開発期間に問題がないことを確認しましょう。提出書類に問題がなければ開発企業と契約を行います。
2.設計
改修作業に入る前に既存プログラムの構造を分析しないといけません。プログラムの設計書を確認したり、実際のソースコードを確認したりして、修正すべき箇所を見つけ出します。
そして、修正後のプログラムの設計書を作成し、修正箇所を明確にするのが基本です。修正後の設計書を作成しないと、余計な箇所まで修正してしまい、今まで問題がなかった箇所にまで影響を及ぼす可能性が増えてしまいます。
3.開発
その後、設計書の内容に基づきソースコードの修正を行います。修正後は、プログラムが正しく動作するか何度もテストを行うのです。
基本的にテスト方法は新規開発時と変わりません。テスト計画書を作成し、それに基づいてテストを行います。変更箇所だけでなくその他の箇所も問題なく動くか確認する必要があるため、テストにはそれなりの期間を有する可能性もあるでしょう。
※関連記事
システム開発とは?外注するメリットや注意点について解説
テストケースとは?その種類やわかりやすい作成方法を徹底解説
4.納品
開発・テストが完了すれば本番環境にて動作検証を行います。たとえば、業務システムなら顧客の会社のサーバーでも正常に動作することを確認しなければいけません。
顧客の環境でも問題なく動くことが確認できれば納品完了となります。その後は請求書が発行されますので、指定日までに支払い完了です。
5.運用・保守
納品後はシステムが正常に稼働するように運用・保守を行う必要があります。
たとえば、システムのログを監視しエラーが出ていないか確認したり、OSやミドルウェアのアップデートを行ったりして、システムを安定稼働させないといけません。
運用・保守作業は開発企業がそのまま担当してくれることが多いですが、別途料金が発生します。運用・保守の対応期間や対応範囲は企業によって異なるため、事前に契約内容を確認しておくことが重要です。
※関連記事
システムの運用保守とは?外注する際のポイントについても解説
改修ではなく新規開発した方が良い場合もある
ここまでシステム改修について解説してきました。
しかし、改修することが必ずしも最良の選択とは限りません。システムの状況によっては、改修するよりも1から新しいものを開発した方が良いこともあります。
そこで、改修か新規開発かを決める際に基準にすべきポイントを2つ紹介しましょう。
-
- 今後のシステムの利用期間
- 既存システムが改修しやすくなっているか
1.今後のシステムの利用期間
1つ目は今後のシステムの利用期間です。
たとえば、今後5年以上その業務システムを利用する予定なら、システムを改修するだけのメリットがあると言えるでしょう。一方、業務システムに関わる事業を1年以内に廃止する可能性があるなら、改修せずに新規システムの開発に投資した方が効率的です。
今後の利用期間が長いほど、予算・期間をかけて改修する意味があると言えます。
2.既存システムが改修しやすくなっているか
2つ目は既存システムが改修しやすくなっているかです。
今後の利用期間が長い場合でも、既存システムの作りが悪く、改修にコストがかかりすぎることが判明している場合、改修しない方が良いと言えます。
たとえば、現在使われていないプログラミング言語で開発されていたり、プログラム同士が複雑に絡み合い1箇所修正すれば、他の箇所にも影響を及ぼす場合などです。
こういった場合、1から新規システムを開発した方がむしろコストを抑えられる可能性もあるため、新規開発も視野に入れたうえで議論を進めるのが良いでしょう。
システム改修を依頼するポイント
社内にシステム改修が行える人材がいない場合、外注を検討する方がほとんどでしょう。そこでシステム改修を開発企業に依頼するポイントを3つ解説します。
-
- 改修が必要な箇所を明確に
- デグレードテストを丸投げしない
- マニュアルの整備を行う
1つ1つのポイントについて詳しく解説しましょう。
1.改修が必要な箇所を明確に
システム改修を開発会社に依頼する場合、窓口担当者を通してやり取りします。窓口担当者が依頼主の要望をヒアリングし、各エンジニアに伝えるのが基本です。
担当者に対しては、システムのどこを改修したいのか明確に話しましょう。たとえば、Webサイトの速度が遅い、検索項目が少ない、デザインが古いといった具合にです。
改修ポイントを具体的に指定することで、その部分のみ改修してもらえるため、コストを抑えることが可能になります。反対に、依頼内容があいまいだと、本来改修しなくて良い箇所まで手を加える方向で話が進んでしまい、コストが嵩んでしまう恐れがあるでしょう。
2.デグレードテストを丸投げしない
デグレードテストとは、プログラムの変更によって今まで正常に動いていた箇所が動かなくなっていないか確かめるためのテストのことです。
特に、プログラムの構造が複雑な場合、変更箇所とは無関係のところに影響を及ぼしている可能性もあるため、入念にテストしないといけません。
デグレードテストは、できれば開発企業に丸投げしないようにしましょう。というのも「今までシステムがどのように動いていたか」に関しては、依頼主の方が詳しいからです。
以前はどのように動いていたのか、開発企業にしっかり情報を共有し、デグレードテストの質を上げられるようにするのが望ましいでしょう。
3.マニュアルの整備を行う
業務システムを改修する場合、システムの利用方法が大きく変わる可能性もあります。
改修後のシステムをいきなり担当者に渡しても、担当者が戸惑ってしまうでしょう。そこで、システム改修と同時並行でマニュアルの修正を行うことをおすすめします。
マニュアル作成に関しては、開発企業に依頼することも可能です。ただ、その分コストもかかりますので、自社でできることは自社で行った方が良いでしょう。
また、マニュアル作成を丸投げしてしまうと、今後マニュアルの変更を自分たちで行えなくなるデメリットもあります。
システム改修にかかる費用について
システム改修を外注する方は、改修費用がどの程度になるのか気になるでしょう。改修は新規開発よりは費用はかからないものの、変更量によっては高くつくこともあるので、各開発会社が提案する費用を見比べて最適なものを選択する必要があります。
改修費用は基本的に人件費と設備費用に分けられますが、割合で言うと人件費の方が多いです。人件費をいかに抑えるかが費用削減のポイントと言えます。
改修費用をなるべく抑えるには?
人件費を抑えるもっとも分かりやすい方法は、オフショア開発を行う企業に依頼することです。オフショア開発では人件費の安い海外エンジニアに開発を委託します。
たとえば、ベトナムのエンジニアは人件費が日本の半分未満であることも多いです。
くわえて、改修費用を抑えたいなら、細かい修正依頼を何度も繰り返さないようにしましょう。修正を依頼するならまとめて依頼する方が、開発期間を短くできます。
また、ちょっとした改修は自社で行うのもポイントです。たとえば、WebサイトのHTMLの変更やマニュアルの整備などスキルがなくても行えることを自社で行えば、コストは下げられます。
最後に
この記事で説明してきた内容をまとめると以下のとおりです。
-
- システム改修を行う理由:不具合・バグを修正するため/性能を向上させるため/新しく機能を追加するため
- システム改修の流れ:ヒアリング/設計/開発/納品/運用・保守
- 改修ではなく新規開発した方が良い場合もある:今後のシステムの利用期間/既存システムが改修しやすくなっているか
- システム改修を依頼するポイント:改修が必要な箇所を明確に/デグレードテストを丸投げしない/マニュアルの整備を行う
システム改修を行うことで、サービスの質を向上させることができ、売上アップなどに繋げることが可能です。ただ、闇雲に改修すれば良いというわけではなく、コストやタイミングを踏まえたうえで行うことが重要でしょう。
システム改修をすべきか判断に困る場合、株式会社エイチビーラボにご相談ください。
株式会社エイチビーラボでは、ベトナムに特化したオフショア開発サービスを提供しております。新規開発だけでなく、既存システムの改修にも対応することが可能です。システムの開発・改修でお困りの方は、ぜひお気軽にお問い合わせください。ご相談から、開発、運用まで親身にサポートいたします。