KISでは大規模システムを中心とした開発に携わっています。クライアントの要望(機能、納期等)を踏まえ、ベストなシステムを完成させるためには綿密な開発スケジュールの企画、開発工程の細分化、そして各フェーズにおけるチェック作業が必要不可欠。万が一ミスが残ったまま納品してしまえば、クライアントの業務に多大な支障をきたすことになります。その中でKISがどのように開発を進めているか、順を追って説明しましょう。
- 以前システムを納品したクライアントから、バージョンアップや新規システム開発の依頼があったとします。まずはSEがクライアント先へ赴き、現状のシステム内容・求めるサービス内容・納期等を詳しくヒアリング。その際不可能な要素があればフィードバックすることも重要です。その後社内で企画書の作成へと移ります。KISがてがける内容をイメージングし、クライアントにきちんと内容が伝わる企画書に仕上げなくてはなりません。その企画書をベースに、クライアントと再び打ち合わせ。双方が納得する形へと仕上げます。不完全な納得度のまま進めると後々の工程に支障をきたし、結果納期遅れや満足度の低いシステムが完成する恐れがあります。そういった意味で、SEはコミュニケーション能力やプレゼンテーション能力が必要になります。
- フェーズ1の段階ではシステムの概要が決定したに過ぎません。次は機能や特性、既存システムからの変更点、どのマシン、どのアプリケーションソフトで動かすか等を考え、仕様書をまとめることが必要になります。プログラミング等を外部に依頼する場合があるため、仕様は社内のみならず社外にも通用するものに仕上げます。
- 企画書・仕様書をベースに、プログラマーが効率よく作業できるようシステム設計書としてまとめます。特に大規模システムは複数の細かなシステムやデータベースが互いに連携し合い成り立っているため、どのように連携し合えば理想的なシステムが完成するかを考え、設計していかなくてはなりません。設計が終了に近づけば必ずレビューを行い、多方面からシステムの評価を行い改善をします。
- 設計書をベースにプログラム分割を行い、共通モジュールや既開発のモジュール活用を考えます。また、テストをいつのタイミングで何回に分けて行えばよいのか、その後の直しはどのくらい期間を設ければよいのか等も考慮して作成します。特にクライアント先でのテスト運用は、クライアントやマシンの都合等も配慮することが必要です。
- COBOL、C、VB、Java等の言語を使用し進めます。わずかなコーディングミスが多大な影響を与えるかもしれません。しかし数万、数十万に及ぶプログラムコードを完璧に仕上げるのは、至難の技。いかにミスを防ぎ、効率的に進められるかが腕の見せ所です。加えて単体テストを何回も繰り返し、精度の向上を図ります。
- フェーズ5のプログラミングは、当然システムを本稼働させるためのプログラミングです 。各命令が実際に正しく行われているかどうかをテストするには、テスト用データに書き直すことが必要。その後機能検証用のテストを行います。
- 最終的なテスティング。システム動作に問題(バグ)がある場合、実際にどのデータが間違っているのかを検証することが必要です。必要があればプログラミング段階に戻り、直すか再度つくり直すかをしてまたテストをします。これを何回も行い、完璧なプログラムを作成していきます。
- システムが稼働するかどうか、緊張の一瞬です。理論上では正しくても、稼働しないことだってあるのです。クライアント先で運用するマシンを使ってのシミュレーションは、技術者が一番手応えを感じる場面です。試験を行いOKであれば、プロジェクト終了、無事納品となります。クライアントが本業で使い始めてシステムの評価を頂けます。その後は運用管理といった新たな幕開けになります。
※KISはIT(技術知識)・BT(業務知識)にかなり力を注いでいるので、業務上の専門システムに関しても対等に会話・提案することが可能。よって、お客様の要望を企画・提案段階からきちんと把握でき、効率のよい進行を実現できるのです。結果残業も少なく、みなさん楽しく業務をこなしています。