情報システムの開発速度を大幅にアップする「倍速開発」。
そのメリットや重要性、「開発自動化」や「24時間開発」といった先進的な取り組みについて、NTTデータのイノベーションナビゲーター、木谷 強が紹介します。

1.急変するビジネスに求められる「迅速性」

企業のIT予算は近年、減少傾向が続いていますが、その一方で、グローバル化や市場ニーズの多様化などの影響を受けて、ビジネスの不確定要素は増大しています。今や多くの企業においてIT導入が進み、単に業務をIT化しただけでは競合他社との差別化や競争力強化につなげることは期待できません。「業務プロセスの変革」や「経営トップによる企業業績の迅速な把握」といった、より具体的な経営課題の解決に直結することが、IT投資の主な目的となりつつあります。
企業が情報システムに求める要件としては、工期短縮などの「迅速性」や、変更や拡張に対応する「柔軟性」、いつでもどこでも利用できる「遍在性」などが挙げられますが、中でも業務革新や予測できない変化に即応するために、「迅速性」は特に重要といえます。
ビジネスに必要な情報システムをお客様へいち早く導入して、業務効率化やコスト削減に役立てたり、新たなサービスや製品を市場に直ちに投入したりといった「迅速性」を手に入れることは、他社に対しても大きなアドバンテージとなるものであり、企業の価値を高めることにもつながります。
このように情報システムに「迅速性」を提供するべく、NTTデータが取り組んでいるのが、構築期間の大幅な短縮を可能にする「倍速開発」と呼ばれる開発手法です。

【図】

図:企業ITシステムを取り巻く課題

2.パッケージ導入に負けない迅速化を実現「倍速開発」

ビジネスの競争力を高め、業務改革に貢献する情報システムを構築するためには、業務内容を分析し、課題解決に向けた情報システムをオーダーメイドで構築する「システム・インテグレーション(SI)」開発が適しています。汎用のパッケージ/ソフトウェア製品を用いれば短期間での導入が可能ですが、他社との差別化や独自ニーズへの対応は難しくなります。
そこで、NTTデータが強みとするSI開発において、SI開発のスピードを向上し、「迅速性」とSI開発によるメリットを両立させ、他社との差別化が図れる情報システムをパッケージ製品に負けないくらい早期に導入可能とすることを目指すのが「倍速開発」です。
情報システムの開発は、構築するシステムに必要な要件を洗い出して具体的な開発内容を決定する「要件定義・設計」から、ソフトウェアのプログラミングなど実際の構築を手がける「開発工程」、安定稼働を検証する「試験工程」に至るまで、さまざまな工程を経ます。「倍速開発」とは、その各工程において新たな開発手法を導入し、工程内容の見直しや効率化を図ることで、トータルで工期短縮を目指そうというものです。
例えば、要件定義の段階で開発側とお客様側の間で食い違いが生じていたり、要件が十分に伝わらないままだと、結果的に手戻りが多く発生し、その後の開発や試験工程のスケジュールを圧迫し、工期の遅れをもたらす要因となります。そこで、システムの動きが画面上で確認できるプロトタイプの活用や要件定義書の品質評価を行う「上流品質強化」の実施により手戻りの無駄をなくせば、開発の迅速化につながるとともに、システムの品質向上も期待できます。

【図】

図:NTTデータの取組む「倍速開発」とは

3.大幅な工期短縮が見込める「開発自動化」「24時間開発」

設計書一式とソースコードを自動生成「開発自動化」

「倍速開発」の要(かなめ)として、開発期間の大幅なスピードアップが期待できるのが、「開発自動化」です。これは、ソースコードや設定ファイルの自動生成、動作試験の自動化を図ることで、開発側・お客様側双方の負担を減らし、大幅な工期短縮を目指すものです。情報システムにおいて頻繁に出現する機能をパターン化、パターンの設計と実装を行うテンプレートをもとに、プロジェクト固有のデータを追加入力することで、設計書一式とソースコードを自動生成します。
開発自動化には、適用する業務内容に合わせて、「汎用型」「特定型」という2つのアプローチがあります。「汎用型」は、マスタ登録や単票参照といった業務システムにおいて頻出するパターンの設計・コードを自動生成するもので、自動化率は高くないものの適用対象が幅広いのが特徴であり、業務内容が未確定な新規業務の開発に向いています。一方の「特化型」は、あらかじめ詳細な業務知識を有しているような既存の特定業務を対象に、詳細な内部設計のもと業務ロジック生成の自動化を実現、高い自動化率により大幅な工期短縮が見込めます。「汎用型」「特定型」それぞれを用途に合わせて使い分けることで、パッケージ製品の導入と同等な短期間でのSI開発を実現します。

【図】

図:「開発自動化」を実現する技術

海外との時差を利用した"眠らない"開発、「24時間開発」

海外拠点との時差を有効に活用し、開発を24時間止めることなく実施することで工期短縮を目指すのが「24時間開発」。海外の優秀な人材や低コストでの人件費メリットを生かすオフショア開発がさらに進化した、いわばグローバルなワークシェアリングを目指す取り組みです。例えば、約8時間の時差がある3拠点において開発チームを結成、動作試験の実施/試験結果の分析/修正作業というようにタスクを分け、前タスクの結果を次のチームが引き継いで実施することで、開発期間を理論上では最大1/3に圧縮することを可能にします。現状では、開発タスクの明確な分担や、引き継ぎを含む効果的なコミュニケーションの実施など、克服すべき課題はまだまだ多く残されています。
NTTデータでは実際にいくつかのプロジェクトにおいてテスト運用を進めており、実績やノウハウを蓄積した上で、実際のシステム開発に適用できる体制づくりに取り組んでいます。

【図】

図:「24時間開発」開発イメージ

4.先行者メリットを意識して、工期短縮で「変革」を

「倍速開発」には、これまで述べてきたような「上流品質強化」「開発自動化」「24時間開発」に加えて、ハードウェアやソフトウェアリソースを潤沢に用意したクラウド環境のもとで開発・試験環境をオンデマンドに提供する「開発試験環境提供」や、例えば開発工程の速度を実質的に左右しているキーパーソンの業務内容を整理して効率化を図るなど、工期を決定するリソース制約をクリティカルチェーンとして見える化する「CCPM(Critical Chain Project Management)」、設計とテストを最初から並行して進めることで上流設計の品質を上げ、手戻り低減を目指す「Wモデルプロセス」、上流工程での成果物(モデル)を再利用することで工期短縮を図る「要求モデル再利用」などの手法があります。これら複数の手法を効果的に組み合わせることで「倍速開発」が実現するのです。
ただ、情報システムの開発は複雑な要素が絡み合っており、工期短縮を図るのはそれほど容易なことではありません。現状では3割でも工期が短縮できれば「変革」に値するレベルであり、大きなビジネス価値をもたらすことが可能です。工期を短縮してシステムを迅速に開発し、まだ誰も見たことのない製品やサービスをいち早く市場に投入して利益を獲得する---、この「先行者メリット」はビジネスにおいて大きなアドバンテージとなりえます。刻一刻と変化するビジネス環境において、「倍速開発」の果たす役割は非常に大きいと考えています。

【図】

図:「倍速開発」の具体的施策とメリット

著者プロフィール

技術開発本部 副本部長 ソフトウェア工学推進センタ長
木谷 強

お気軽に
お問い合わせ
ください

[第2回]ビジネスに変革をもたらす「倍速開発」に関するお問い合わせ

お問い合わせフォーム