設計リポジトリをベースに上流から下流まで 一貫し …59...

2
58 今日のシステム開発における課題 森下氏は冒頭、システム開発の課題として、日本のSI開発プロ ジェクトにおけるQCD(品質・コスト・納期)遵守率の調査データ を紹介した。それによると、プロジェクトの成功率(QCDすべての 遵守率)はわずか30%程度。これは5年前の調査データと比較して も、それほど大きな改善の見られない数値となっている。 また、QCDの項目別ではコスト遵守率の低下が目立ち、コスト超 過の原因として「追加の設計作業」や「追加の企画作業」などが増 加傾向にある。また、納期遅延の原因では「要件定義が長くなっ た」がトップに挙がり、品質面での不備の原因としては、「テスト が不十分、移行作業に問題」、「要件定義が不十分」といった項目が 上位に並ぶ。これらのデータからは、今日のシステム開発におい て、プロジェクトの成否は上流工程に大きく左右される傾向がよ り強くなっていることがわかる。 次に森下氏は、システム開発に関わるそれぞれの立場ごとの課 題について指摘した。例えば、経営層の課題として多いのは、経営 のスピードに対してシステム化のスピードが十分に追随できてい ないこと。また、情報システム部門は、既存システムの硬直化か ら、システム改修・保守が課題となっているケースも少なくない。 特に、数千万ステップもの大規模なシステムを抱える企業では、 「オープン化したくても保守で手いっぱい」というのが実情だろ う。一方、開発側(ベンダー)は常に、要求内容に対するユーザー との認識ギャップという課題を抱えている。そして、多くの PM を 悩ませているのが、スコープの増加と、それに伴うコスト超過や納 期遅延の問題である。 開発保守工程全体から見た問題点 続いて森下氏は、開発保守工程全体 から見た問題点を整理。まず、要件定 義における問題として挙げたのは、業 務要件がシステム要件に確実に反映さ れていないこと。また、非機能要件が 網羅されていないことや、各要件と設 計情報との紐付けが不明でトレーサビ リティが確保されていないといったこ とも問題となる。 設計工程においては、設計書が古 い、または不足しているというケース がある。設計書間の不整合という問題 も少なくない。 開発工程で特に多いのは、設計情報 PM(プロジェクト・マネージャ)として 22 年間、様々なプロジェクトに携わってき た日本アイ・ビー・エム GBS 事業部 保険アプリケーション開発 エグゼクティブプ ロジェクト・マネージャの森下隆治氏。担当プロジェクトの 9 割で XupperII を適用 し、MDFrame/X の製品化にも深く関わっている同氏は、ベンダーの立場を越えた PMとしての視点で考案した開発手法「統合開発ソリューション」の提案を行った。 設計リポジトリをベースに上流から下流まで 一貫した開発手法の確立に向けて 日本アイ・ビー・エム株式会社 GBS 事業部保険アプリケーション開発  エグゼクティブプロジェクト・マネージャ 森下隆治氏 事例 2 設計リポジトリ 現行設計リポジトリ BR01 SR01 AD SCD 画面 S01 (画面) S03 (画面) UAT テストケース S01 (画面) M02 (手作業) ERD (論理) IPO (詳細) NFR AD SCD S04 (バッチ) IPO (概要) IPO (詳細) BR03 SR03 AD SCD 帳票 S05 (帳票) S04 (バッチ) S05 (帳票) CaseS01M02S03 CaseS01M02S04S05 BR : 業務要件 SR : システム要件 NFR : 非機能要件 IPO : 入力処理出力 記述 AD : アクションダ イアグラム SCD : ソースコード CaseS01S03 CaseS01S04S05 S03 (画面) S04 (バッチ) S01 (画面) S05 (帳票) IPO (概要) IPO (詳細) BR02 SR02 辞書 方式 設計 SQL SQL S03 (画面) ERD (物理) ERD (物理) トレーサビリティ 要件定義 【外部仕様】 基本設計 【内部仕様】 詳細設計 プログラム設計 BRSRとの連携 SRとシステム機能との連携 業務フロー(UATST テストケース 現行 資料 システムフロー(STITbS05 (帳票) S05 (帳票) 図 1:統合開発ソリューション 上流工程

Upload: others

Post on 19-Feb-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 設計リポジトリをベースに上流から下流まで 一貫し …59 第14回Xupperユーザ事例紹介セミナーレポート とソースコードの不整合およびトレーサビリ

58

今日のシステム開発における課題

 森下氏は冒頭、システム開発の課題として、日本のSI開発プロ

ジェクトにおけるQCD(品質・コスト・納期)遵守率の調査データ

を紹介した。それによると、プロジェクトの成功率(QCDすべての

遵守率)はわずか30%程度。これは5年前の調査データと比較して

も、それほど大きな改善の見られない数値となっている。

 また、QCDの項目別ではコスト遵守率の低下が目立ち、コスト超

過の原因として「追加の設計作業」や「追加の企画作業」などが増

加傾向にある。また、納期遅延の原因では「要件定義が長くなっ

た」がトップに挙がり、品質面での不備の原因としては、「テスト

が不十分、移行作業に問題」、「要件定義が不十分」といった項目が

上位に並ぶ。これらのデータからは、今日のシステム開発におい

て、プロジェクトの成否は上流工程に大きく左右される傾向がよ

り強くなっていることがわかる。

 次に森下氏は、システム開発に関わるそれぞれの立場ごとの課

題について指摘した。例えば、経営層の課題として多いのは、経営

のスピードに対してシステム化のスピードが十分に追随できてい

ないこと。また、情報システム部門は、既存システムの硬直化か

ら、システム改修・保守が課題となっているケースも少なくない。

特に、数千万ステップもの大規模なシステムを抱える企業では、

「オープン化したくても保守で手いっぱい」というのが実情だろ

う。一方、開発側(ベンダー)は常に、要求内容に対するユーザー

との認識ギャップという課題を抱えている。そして、多くのPMを

悩ませているのが、スコープの増加と、それに伴うコスト超過や納

期遅延の問題である。

開発保守工程全体から見た問題点

 続いて森下氏は、開発保守工程全体

から見た問題点を整理。まず、要件定

義における問題として挙げたのは、業

務要件がシステム要件に確実に反映さ

れていないこと。また、非機能要件が

網羅されていないことや、各要件と設

計情報との紐付けが不明でトレーサビ

リティが確保されていないといったこ

とも問題となる。

 設計工程においては、設計書が古

い、または不足しているというケース

がある。設計書間の不整合という問題

も少なくない。

 開発工程で特に多いのは、設計情報

PM(プロジェクト・マネージャ)として22年間、様々なプロジェクトに携わってきた日本アイ・ビー・エム GBS事業部 保険アプリケーション開発 エグゼクティブプロジェクト・マネージャの森下隆治氏。担当プロジェクトの9割でXupperIIを適用し、MDFrame/Xの製品化にも深く関わっている同氏は、ベンダーの立場を越えたPMとしての視点で考案した開発手法「統合開発ソリューション」の提案を行った。

設計リポジトリをベースに上流から下流まで一貫した開発手法の確立に向けて

日本アイ・ビー・エム株式会社 �GBS事業部�保険アプリケーション開発 �エグゼクティブプロジェクト・マネージャ 森下�隆治氏

事例2

設計リポジトリ

現行設計リポジトリ

BR01 SR01 AD SCD画面S01(画面)

S03(画面)

UATテストケース

S01(画面)

M02(手作業)

ERD(論理)

IPO(詳細)

NFR AD SCDS04(バッチ)

IPO(概要)

IPO(詳細)

BR03 SR03 AD SCD帳票S05(帳票)

S04(バッチ)

S05(帳票)

Case① S01→M02→S03Case② S01→M02→S04→S05 BR :業務要件

SR :システム要件NFR :非機能要件IPO :入力処理出力 記述AD :アクションダ イアグラムSCD :ソースコード

Case① S01→S03Case② S01→S04→S05S03

(画面)

S04(バッチ)

S01(画面)

S05(帳票)

IPO(概要)

IPO(詳細)

BR02 SR02 辞書

方式設計

SQL SQLS03(画面)

ERD(物理)

ERD(物理)

トレーサビリティ

要件定義 【外部仕様】 基本設計 【内部仕様】詳細設計 プログラム設計

BRとSRとの連携

SRとシステム機能との連携業務フロー(UAT)

STテストケース

現行資料

システムフロー(ST・ITb)

自動生成

S05(帳票)

S05(帳票)

図1:統合開発ソリューション―上流工程

Page 2: 設計リポジトリをベースに上流から下流まで 一貫し …59 第14回Xupperユーザ事例紹介セミナーレポート とソースコードの不整合およびトレーサビリ

59

第14回Xupperユーザ事例紹介セミナーレポート

とソースコードの不整合およびトレーサビリ

ティの欠如だ。また、開発スキルによる生産

性のばらつきなど、属人的な問題も大きい。

 テスト工程においても、テストケース漏

れ、テスト自体の生産性など、様々な問題が

起こり得る。そして、後工程に行くほど、テ

ストで手戻りが発生した場合のコストや納期

に対するリスクが増大してしまう。

XupperIIを核とした 統合開発ソリューション

 こうした様々な課題や問題点に対する解決

策を、森下氏はPMとしての視点から検討。それらを体系化し、ソ

フトウェアエンジニアリングの手法を取り入れて、上流工程から

下流工程までの一貫した開発手法としてまとめたものが「統合開

発ソリューション」である。その要となるのはXupperIIの設計リ

ポジトリで、全工程を設計リポジトリで一元管理することにより、

開発生産性と保守性、品質の向上を実現できるという。

 例えば、要件定義では、業務要件とシステム要件をn対nで紐付

けてリポジトリ管理。これにより、システム要件がどの業務要件か

ら成り立っているかがトレース可能となる。また、非機能要件との

関連付けもリポジトリで管理する。設計・開発・テスト工程につい

ても、外部仕様、内部仕様、プログラム仕様のすべてをリポジトリ

化して整合性を確保し、システム要件の設計情報へのトレーサビ

リティを実現する(図1)。

 また、統合開発ソリューションは、要件定義と設計に重点を置い

た開発手法であり、コーディングレス開発を指向している点も大

きな特徴だ。設計情報と整合性の取れたコードの自動生成は、

MDFrame/Xの機能によって実現。特定の言語に依存しないアク

ションダイアグラムの記述でコードが生成できるため、開発者の

スキルに依存せず、プログラムの品質と生産性の均一化を図るこ

とができる。

 なお、XupperIIにはIPO(Input Process Output)情報を定義す

る機能がないが、ケン・システムコンサルティングでは現在、森下

氏の依頼により、設計リポジトリ管理ツールの一機能として「IPO

エディター」の開発を計画中だ(図2)。これにより、今後はIPO設

計情報によるトレーサビリティが実現されるという。また、リポジ

トリのIPO情報からテスト仕様候補を抽出してテストカバレッジ

を確保する機能の追加なども予定されている。

テスト自動化やパイロット開発も可能に

 他にも、統合開発ソリューションは下流工程において、画面テス

ト操作自動化や回帰テストの自動化、テスト結果検証自動化、エビ

デンス自動取得などの機能を提供。これらは、IBMのソリューショ

ンを組み合わせることで実現している。

 その1つが結合テスト・システムテストやユーザー受け入れテス

ト(UAT)をサポートするツールで、テスト時の画面やDBなどの

取得を簡易化し、テストエビデンスを自動生成することができる。

また、画面テスト操作や回帰テストの自動化ツールはselenium等

をベースとしたもので、プロジェクトごとに最適な方法でテスト

スクリプトを記述し、自動テストを実行可能。こちらも、標準化さ

れたテストエビデンスを生成する機能を提供する。これらのツー

ルは、XupperIIのビジネスフロー図からテストケース作成機能と

も組み合わせて活用することができる。これらはテスト実施工数

の削減はもちろん、テストそのものの品質向上にも有効だ。

 設計リポジトリの画面設計情報からJSPを自動生成する画面設

計ツールも、現在作成中だという。この機能を活用すれば、要件定

義段階から画面をパイロット開発する方式を取り入れることも可

能となり、要件漏れやテスト工程での手戻り防止といった効果が

期待できる。

 現時点では実現されていない機能や計画中の機能も含まれる統

合開発ソリューションだが、設計リポジトリによる全工程の一元

管理や属人性を排除したコーディングレス開発といったアプロー

チは、リモート開発を前提とするグローバルな開発スタイルとの

親和性も高い。より安価な開発要員の確保や開発期間の短縮にも

有効な仕組みとして、今後、大いに期待できるのではないだろうか。

リポジトリで 「トレーサビリティ」 を実現

IPO情報(入力情報、処理、出力情報) を定義。IPO構造 を定義。機能名(機能ID)およびデータ項目、関数名などで、トレーサビリティを実現。設計リポジトリ上の他の情報(データ項目、テーブル、画面、帳票 等)との連携。インパクトアナリシス(影響調査)対象。IPO階層図、IPO定義書 として Excel シートへ出力。

IPO作成機能 IPO階層(Level-1) IPO階層(Level-2)

■ 設計リポジトリ管理ツールの一機能としての 「IPOエディター」

図2:IPOエディター概要説明