
みなさん、システムエンジニアの仕事は開発を行うことだけだと思っていませんか?
一般的に開発と言われれば、新規開発にあたり1からサービスを作ることをイメージする方が多いと思います。
新規開発の他に保守開発と呼ばれるものがあり、開発と言っても仕事内容が異なってきます。
今回は、保守開発の概要と必要なスキル、メリットを紹介します。
- 保守開発とは
- 保守開発に必要なスキル
- 保守開発のメリット
- まとめ
保守開発とは
保守開発とは、既存システムを使いやすくするようにちょっとした改修を行ったり、不具合などのバグを修正する開発のことを指します。
冒頭でもお伝えした新規開発とは違い、実際にシステムを利用しているユーザからの声によってUI(ユーザインターフェース)を変更するなど追加開発を行います。
また、アジャイル開発では保守開発をしながら新規開発をやらなければならない状況が多くどちらにしろ開発スキルは必須になります。
保守開発に必要なスキル
次に、保守開発に必要なスキルについて紹介します。
仕様理解
保守開発をするためには、既存システムの仕様を深く理解できていないといけません。
その理由は、既存システムの一部に修正を加えた場合、影響範囲はどこまでなのか?ということをまず調査しないといけないからです。
影響調査をしっかり行っていないと、せっかく改修やバグを修正したとしても、今まで正常に動作していたシステムでさえ動かなくなる可能性があります。
また、既存システムの仕様を理解していないと不具合などがあった場合、原因がどこにあるのか突き止めなければなりません。
このような仕事をするには完璧とは言わないまでも、システムの設計書などがどこにあってどの粒度で記載されているのかを把握することは必須になります。
不具合に対する対応力
保守開発には予期しないことが多く起こります。
先ほどお伝えした影響調査不足もその一角で、既存システムに追加開発を行うことは容易でありません。
予期しない動作が起こってしまったら仕方がないと割り切り、原因究明を最短で行い改善策をすぐに考案・施行しなければなりません。
このように保守開発では瞬時の判断が必要になります。
コミュニケーション能力
保守開発には最もコミュニケーション能力が必須といっても過言ではありません。
その理由は、エンドユーザを含めた各クライアントから状況をヒアリングし現状とあるべき姿のギャップを埋めるための判断が必要になります。
板挟みになることが多くその状況の中でもうまく立ち回る能力が必要になります。
保守開発のメリット
トラブル対応能力向上
保守開発にはシステム改善などを行う開発とトラブル回避のための開発の2種類が存在します。
既存システムが稼働中に追加機能をリリースすることは、とてもリスクが高くソースコードの改修は計画的に行わなければなりません。
どうしてもトラブルは起こってしまうので、その時にどのような対応をすることで解決できるかを考える必要があります。
スキルアップしやすい
保守開発に携わることで、エンジニアとしてのスキルアップが短期間で可能になります。
保守開発を行うためには仕様の理解、現状の把握、分析、改善案の立案ができる必要があります。
既存システムのソースコードを読んだり、仕様書とソースコードを比較しながら実態を再確認し既存システムへの悪影響を与えないように考えることが仕事です。
このようなことを日々考えないといけないため、必然的にスキルアップすることになります。
未経験でも参画しやすい
保守開発では、短期間でスキルアップが可能と言うことをお伝えしました。
そのため、IT業界未経験者と経験者を一緒に参画することで未経験者のスキルを飛躍させることができます。
まとめ
今回は、保守開発の概要と必要なスキル、メリットを紹介しました。
IT業界未経験でも参画しやすいのが保守開発になります。
最初は仕様を理解しソースコードを眺めるところから始めると良いです。
未経験からだと初めは辛く感じることが多いかもしれませんが、1年もすると立派なエンジニアとして働くことができるのでぜひ挑戦してみてください。