エンジニアの副業は週1からでも可能?副業の例や探し方も解説
- ITエンジニア
- 副業
「エンハンス開発」という言葉をご存知でしょうか?
仮にエンハンス開発という言葉を知らなくても、通常のシステム保守業務が実はエンハンス開発に該当していることは多いです。
この記事では、エンハンス開発の概要をご説明した上で、「従来型」と「最新型」のエンハンス開発について比較解説します。
エンハンス開発の重要性を理解して、よりよい業務システムを構築しましょう。
エンハンス開発とは「製品やサービスの機能追加や性能向上のための開発」です。エンハンスとは「高める、増す」という意味を持つ単語です。
たとえばプログラム修正を始めとした、データベースやミドルウェアのチューニング、ハードウェアの入れ替え等、システムに関するアップデートがエンハンス開発に該当するといえます。
エンハンス開発の特徴として、現行システムの仕様を把握し、稼働状況を見ながら迅速に修正を加えなければならないという、新規開発とは異なる難点があります。現行のシステムはほとんど稼働中ですよね。当然ですが、稼働中のシステムを長期停止すると、業務に影響が出てしまいます。そのため要件定義からリリースに至るまでの計画は、業務との兼ね合いをみながら立てる必要があるでしょう。
エンハンス開発では現行システムの仕様を正確に把握し、スピーディーな実行が求められているのです。
近年では、「従来型」と「最新型」のエンハンス開発について議論がされています。従来型は ”受け身” のエンハンス開発、最新型は ”攻め” のエンハンス開発をイメージしてください。
それぞれがどのような特徴を持っているかご紹介します。
従来型のエンハンス開発は、外部要因を起点とした受け身での「拡張」「保守」が前提でした。
従来型のエンハンス開発では、法改正やソフトウェアのアップデートなど、外部要因を対処するために開発を重ねていくものです。また内部要因であっても、不具合の修正など、システムや業務にとって致命的な課題に対応するのがメインです。そのため機能追加や性能向上は先送りとなり、なかなか実施できません。
従来型のエンハンス開発のばあい、どのようなことが起こるのでしょうか?
たとえば従来型のエンハンス開発では、安定稼働を目的として使い古された技術を使用することがあります。そのためスマートフォンやタブレットなどのアプリでの開発をせず、競合に遅れを取る恐れがあります。
また開発に関しても、従来の手法をなかなか変えられません。便利なツールが開発されているにも関わらず、人力でのテストを行なっているなど、無駄な工数をかけてしまっている例もあります。
加えてそもそも現行システム自体がエンハンス開発を前提としていないことも多く、従来型で行なっている場合はさまざまな面で遅くなるでしょう。
最新のエンハンス開発は ”攻め” の姿勢を持ち合わせており、機能追加や性能向上に向けて積極的に改修していくのが特徴です。また、短い周期で改修を重ねるのもポイント。
スマートフォンやIoTの発想を取り入れた顧客サービスを展開するなど、近年では最新技術の使用が業務システムでも求められるようになってきています。そのような最新技術を短期間で追加するには、従来の手法から、ツールや自動化を用いた手法へ切り変えていく必要があるでしょう。
機能追加や性能向上を短い周期でリリースすることで、結果的に不具合に対応するスピードも上がります。すぐに改修やリリースできる環境は、システムのさまざまな課題に早く対応できますよね。
一方でリリース回数の増加は、顧客側への負担にも繋がります。大企業であればリリースのタイミングで打ち合わせを実施し承認を得る、という業務フローがあるため、リリース回数が増えることで単純にそのフローを増大させてしまう恐れがあるのです。リリースまでの打ち合わせや承認行為で時間がかかると、開発スピードを上げても無駄となってしまいます。
最新型の ”攻め” のエンハンス開発を行う場合は、顧客側と開発側の意思統一が求められるでしょう。
ITの世界はドッグイヤー(通常は7年かかる進歩が、1年で変化すること)と言われているとおり、デジタル分野は急速に発展し続けています。そのような状況において業務システムもまた、スマホアプリのように短期間で複数回アップデートされることが求められるようになってきました。そのため、業務システムを新規開発する時点で、拡張しやすい作りにしておくのが重要となります。
エンハンス開発を前提とした業務システム開発を進めるには、以下の4つのステップが重要です。
従来のような「業務システムをリリースして、稼働したから終わり」という意識だと、攻めのエンハンス開発はできません。「業務システムはリリース後も、拡張することが前提である」という認識を、顧客側と開発側の双方が持っておくべきでしょう。
これからは、最低限の機能が構築できた段階で初回リリースし、その後に機能追加を随時実施するモデルが求められます。
技術や顧客要望の変化に強い、改修を前提とした業務システム構築を意識しましょう。
既存システムを拡張する段階で、ひとつの改修で複数機能に影響が及んでしまう作りでは、リリースが遅くなったり、後にバグが発生してしまう恐れがあります。機能設計時に、できるだけ機能毎に独立させるのが理想です。
システムの拡張を阻害しない仕組み作りは、最初の構成段階から始まっているのです。
見直すべきポイントはシステムそのものだけではありません。
リリースの前に必要な打ち合わせや業務などは、ツールや自動化などを用いて開発スピードを上げましょう。また関係各者がそれらを問題なく使いこなせる環境の整備が大切です。
機能拡張に最適化した仕組みを構築することは、業務システムにとってよい影響を及ぼします。
技術進化に伴い、その都度最適化を考えて実行できる仕組みを作ることで、時代に即した業務システムを運用し続けられるでしょう。
ステップ2、3で構築した仕組みも、環境変化に合わせて都度見直しが必要です。
今回はエンハンス開発の概要をご説明した上で、最新型のエンハンス開発をご紹介しました。
これからの業務システム構築には、エンハンス開発が必須です。システム構築段階から、エンハンス開発を前提とした仕組み作りを意識したいですね。
今後は技術革新のスピードがますます上がることが予想されます。その中で「新しい技術をどうやったら取り入れられるか」という点を常に考えながら、エンハンス開発を進めましょう。
こちらもおすすめ!▼
要件定義で気を付けたい4つのポイント。「アイスクリーム味のチャーハン」を注文しないために
Workship MAGAZINE
今こそ知りたい「スクラム開発」とは?実際の流れやメリット/デメリットを解説!
Workship MAGAZINE
IoTの根幹を支えるエンベデッドシステム(組み込みシステム)とは?
Workship MAGAZINE