ソフトウェアテストシンポジウム 2003
JaSST’03: Japan Symposium on Software Testing 2003

ソフトウェア開発プロセスモデルの Quality gate による管理について
安田 淳

高橋 寿一

（株）SAP ジャパン 〒135-0064 東京都江東区青海 2-43 青海フロンティアビル
E-mail:jun.yasuda@sap.com,

juichi.takahashi@sap.com

あらまし ソフトウエアが巨大化するとともに、多種多様なソフトウエアが毎年出荷されていく。単独ソフトウ
エア会社規模では指折りを誇る SAP ではその複雑化するソフトウエア出荷体制による品質障害を昨今抱えてきた。
そこで Quality gate というシステムを導入することにより、巨大かつ複雑なソフトウエアの出荷をスムーズかつ高品質なシステムを導入した。
キーワード ソフトウェアプロセス、ビジネスソフトウェア、ISO9000

Quality gate control in software development process model
Jun Yasuda

Juichi Takahashi

SAP Japan, Aomi Frontier Bldg. 2-43 Aomi Kotoku Tokyo, 135-006 Japan
E-mail:jun.yasuda@sap.com,juichi.takahashi@sap.com

Abstract Recently, a huge size and complicated software have released in a world. In this circumstance, SAP Co, which isone of the largest software company, have been to struggle to ship qualified products. Now, we employ novel methodology thatis called “Quality Gate”, besides we shall ship huge and complicated software by the Quality Gate system.
Keyword software process, business software, ISO 9001

1. ソ フ ト ウ エ ア 開 発 の 現 状

い 。 従 来 SAP で は 単 体 の 製 品 の 品 質 を 高 め る こ と に 集

近 年 、 ERP に 代 表 さ れ る 業 務 シ ス テ ム ソ フ ト ウ エ ア

中 し て お り 、ユ ニ ッ ト テ ス ト 、コ ー ド レ ビ ュ ウ の 徹 底 、の開発は単一の製品として機能するだけでなくビジネ

ド キ ュ メ ン ト 管 理 な ど ISO9001, CMM に で き る だ け 従 うス シ ナ リ オ に 基 づ い て 複 数 の 製 品 を 連 携 さ せ 、（ ビ ジ開発手法をとってきた。しかし、ここ数年来製品の品ネスシナリオとは、企業内外の様々なプロセスを一連質が同じ手法を適用しているにも関わらず、障害件数の 業 務 の 流 れ に 沿 っ て 構 成 し た も の で あ る 。）さ ら に 複の増加もしくは品質の劣化が認められてきた。このた数の外部ソフトウエアと連携するようになった。そのめ 、 SAP で は 個 々 の 製 品 品 質 の 向 上 に と り く む だ け でた め 、 SAP で は 製 品 を 単 一 の 製 品 と し て の 機 能 開 発 のはなく、依存製品の品質を重要な品質保証活動の一部みならず、複数の製品の連携を前提とした開発が必要とすることによりシステム全体の品質を上昇させる独とされるようになった。

自のプロセスを実現させた。このような企業風土に適実際には、このようなビジネスシナリオに合わせたシステムの構築では、多くのアドオンがなされた。例
えば法改正、会計システムの変更等々によりそのアドオンが既存のソフトウエアに追加される。
さらにこのようなビジネスソフトウエアシステム
は SAP で 開 発 さ れ た ソ フ ト ウ エ ア に よ っ て の み で 動 作
す る わ け で は な く 、 Microsoft, SUN な ど の オ ペ レ ー ティ ン グ シ ス テ ム 、 SQL, Oracle に 代 表 さ れ る デ ー タ ベース上で動作する。ビジネスソフトウエアシステムとしての品質を保持するには単一の製品の品質を保証するだけのアプローチでは問題の発生を防ぐことは難し

合 し た プ ロ セ ス は ISO, CMM に 準 拠 し た 形 で 遂 行 し 、成果 を あ げ た 例 を 今 回 紹 介 す る 。 [2]2. ビ ジ ネ ス シ ナ リ オ 及 び 製 品 の 依 存 要 素2.3. 言 語 依 存
SAP で は 多 く の 製 品 で 英 語 版 出 荷 と 同 時 期 に 30 ヶ国語以上に対応したローカライズ版が出荷される。ロ2.1. ビジネスシナリオーカライズに関しては多くの時間とコストが発生するが未だ効率的な方法を見出すのが困難であると同時に多言語に対応した高い製品を出すことは困難である[1]。シ ス テ ム 構 成 依 存 の 章 で 述 べ た よ う に こ の よ う な
困難を製品品質マネージャにすべてを任すのは難しい。
確 か に SAP, Microsoft の よ う な 国 際 的 な ソ フ ト ウ エ ア
会社は世界中にローカライズの拠点があるが、製品品質マネージャがこれらの拠点に対し適切な担当者を見つけローカライズのタスクをアサインするのは膨大な時間を要するであろう。このような場合、製品品質マネージャとは別にソリューション品質マネージャをア
図１

プリケーションローカライズの品質に従事させること

ビジネスシナリオとは、企業内外の様々なプロセスがより効率的な作業そしてローカライズ製品品質を高を一連の業務の流れに沿って構成したものである。製めることに寄与した。

品間の技術的な連携だけではなく、顧客の日常業務に沿って製品の連携を考えてたものである。図 1 はビジ

3．開 発 プロセスにおける要 点ネスシナリオとして提案されたプロセスをカバーするビジネスシナリオを考慮に入れた開発において大ために必要とされる製品をマッピングしたものである。

きなポイントとなるのは、以下詳細に説明するように縦軸にビジネスシナリオ、横軸に製品が示され、一番「各製品開発の状況の把握」と「複数の製品の開発の上の列で出荷製品のバージョンが決定され、二行目以プロセス管理」である。

降にそのビジネスシナリオに対応するために必要な製品 が ×印 で 示 さ れ て い る 。 縦 軸 の 製 品 は そ れ ぞ れ 独 立

3. 1 各 製 品 開 発 の 状 況 の 把 握した製品であるため、すべての製品を一度の導入する必要がなく、顧客の状況に合わせた導入が可能となっている。

2.2. システム構 成 依 存
SAP で は オ ー プ ン プ ラ ッ ト フ ォ ー ム 戦 略 を と っ て いる の で 、Microsoft や Sun に 依 存 す る よ う な 形 で は ソ フト ウ エ ア 開 発 を 行 っ て い な い 。 し か し 、 そ れ 故 に OS
で は Windows, Linux, Solaris、 デ ー タ ベ ー ス で は SQL,Oracle, DB2 な ど を サ ポ ー ト し て い る た め 、 例 えWindows と SQL の プ ラ ッ ト フ ォ ー ム で ソ フ ト ウ エ ア が図２問題ないと確認できても、その他のプラットフォーム

こ れ ま で の 製 品 開 発 と 異 な り 、仕 様 /設 計 に よ る 変 更 がデータベースでの動作試験を省略するわけにはいかな

製品単体としては問題がない場合であっても、ビジネい 。 こ の よ う な 複 雑 な デ ー タ ベ ー ス 及 び OS で の 動 作

スシナリオもしくはシステム依存、言語依存の観点か試験を各製品品質マネージャが効率よく行うことは不ら 問 題 と な る 場 合 が あ る 。仕 様 /設 計 に よ る 変 更 等 が な可能である。往々にして製品品質マネージャの技術不い開発を想定することは現実的ではないため、多くの足や時間の制約により省略した形で動作試験が行われ開発では開発終了時点におけるテストに重点が置かれ障害が顧客システム上で発生することが散見された。

るが、ビジネスシナリオに基づいた製品の開発においこ の た め Quality gate で は シ ス テ ム 依 存 テ ス ト を 独 立ては開発終了時点のテストでは発生した問題の原因をした担当部署で行うことによりシステム依存の障害を特定し修正するには時間がかかりすぎる。その対策と減少させるとともに、製品担当品質マネージャの負荷し て 、 Quality gate を 設 け 、 こ れ ま で 曖 昧 で あ っ た フを減らすことに成功した。

ェーズ毎の区切りを明確にし、責任の所在を確定することにより、これまでの経過を把握しやすくした。

Quality gate に お い て チ ェ ッ ク さ れ る 項 目 は 、 ビ ジ ネ

出荷時に何が用意され、どの段階で準備が出来ている

スシナリオと依存性に基づいて作成された仕様書の該かが確認でき、現状で受け入れ可能かを決定できるよ

当 部 分 お よ び 、 16 項 目 の Product standard 呼 ば れ るうになった。また、引き渡す側としても不十分な状態製 品 管 理 基 準 で あ る 。 下 記 に 16 項 目 の Productであるにもかかわらず、完了部分のみを次フェーズへ

standard を 示 す 。

引き渡すその場しのぎの行動が是正され、現状の報告と今後の対応を次フェーズと協議する場ができた。

1.Accessbility
2.Application integration & Interfaces

3.2 複 数 の 製 品 の 開 発 の プ ロ セ ス 管 理

3.Customizing & Configuration
4.Data Archiving
5.Development Environment6.Documentation
7.Functional correctness
8.Globalization
9.Multiple clients
10.Opensource

図３

11.Performance

開発においては、シナリオベースのプロセス管理とコ

12.Security

ンポーネントベースのプロセス管理という２つの観点

13.Solution management

か ら 開 発 を 管 理 す る 。（ 図 3）14.Technical implementation

コンポーネントベースではこれまで行われてきた単一

15.Third party

製品の開発プロセスが継承されている。開発時に要件

16.Usabilityとして定義されるものの中に新たにビジネスシナリオの仕様で要求される項目が含まれ、ビジネスシナリオ

Product standard は 単 一 の 製 品 の 品 質 を 標 準 化 す る 。の担当者と各製品の開発マネージャの間で約束が交わ

ビジネスシナリオの部分で複数製品の連携の管理をソリューション品 質 マネージャ が 担 当 す る 。 Quality gate

される。この仕様に基づいて各製品における仕様書のにて使用されるチェックリストはソリューション品質に お け る 品 質 の 基 準 と な る の が 前 述 の Product

マネージャーにより管理され、製品担当品質マネージ

standard で あ る 。こ れ に よ り 各 コ ン ポ ー ネ ン ト の 品 質ャ に よ っ て 遂 行 さ れ る 。仕 組 み と し て は 、大 き く 計 画 、の統一を図り、開発終了後のビジネスシナリオに基づ

開 発 、製 品 化 、出 荷 と ４ つ の フ ェ ー ズ に 分 か れ て お り 、いた統合テストに備える。

作成、開発、テストが行われる。この一連の流れの中

そ れ ぞ れ の フ ェ ー ズ の 移 行 時 に Quality gate が 設 定 されソリューション品質マネージャによりチェックが行

4. 品 質 マネージメント組 織

われる。チェックされる項目は計画の段階で決定され多くの場合、製品の品質マネージャがその製品の品ている。計画段階におけるチェック項目の決定ミーテ質の責任を負う立場にある。しかし上記に説明したよィングには関係するマネージャの参加が要求されておう に 多 く の ビ ジ ネ ス シ ナ リ オ 、 OS、 言 語 に 依 存 し た 製

り、この時点で決定された項目に合格しない限り、次品はそれらの全てに対し担当製品が動作するかというフェーズへの移行は次フェーズのマネージャによってことをテストする作業は著しく困難である。そのため却下される。これにより、引き渡し時の不備の確認、SAP で は こ の 困 難 を 乗 り 越 え る た め 、 そ し て Quality

変更箇所の報告が確実に行われる。これまでの開発にgate を 実 現 さ せ る た め に 2 種 類 の 品 質 マ ネ ー ジ ャ を 置

おいては後フェーズになればなるほど前フェーズの遅いている。

延、資料不足に悩まされ、結果として工期内に十分なテストが出来ない状況にあった。フェーズ間の引き渡

１．製品担当品質マネージャし時の責任が不明確であったため、原因が後半のフェ

２．ソリューション品質マネージャーズに発覚し、計画、開発時に起因する問題が追求しに く い 状 況 が あ っ た 。 Quality gate で は フ ェ ー ズ 毎 の製品品質マネージャは従来から存在するある担当責任が明確化となったため、次フェーズに於いて必要製品品質のマネージャである、ソリューション品質マな作業環境を提供するための努力がなされるようにな

ネ ー ジ ャ は あ る Quality gate を 通 過 し た 製 品 が 、 全 てった。これにより、例えば、出荷フェーズの担当者はの顧客の環境に適応できるかを担当する。そのためその 担 当 者 は 言 語 、OS の 適 合 試 験 等 々 を 担 当 す る 。製 品

Validation Criteria

品質マネージャとソリューション品質マネージャは全く同等の地位にあり、どちらかが製品の品質を保証し

4. ま と め2002 年 度 に お け る 開 発 プ ロ ジ ェ ク ト の 中 で Quality
gate に て プ ロ ジ ェ ク ト 全 体 の 再 評 価 が 行 わ れ た 件 に ついて報告する。このケースの場合、製品化から出荷のフェーズに於いて発生。開発終了後、製品化におけるCustomizing & Configuration

なければその製品が出荷されることはない。

ResultValue

Yellow

Red

Rel.

10510>

OK

1000>

Number of open CSN problems after
validation (prio 2)OK

1002>

Number of CSN problems completed, butnot confirmed

OK

1013>

Number of notes required (total)

OK

1049>

Number of notes required (non NoteAssistant, informational)

OK

1036>

Configuration time (standard config. in hrs)

OK

1

024>

Number of CSN problems reported (prio1+2)

OK

Number of open CSN problems aftervalidation (prio 1)

稼 働 テ ス ト で バ グ が 規 定 以 上 発 生 。不 合 格 の 項 目 が ３ 、要検討項目が３、合格１という検査結果であり、不合

図５
さらに、このようなプロセスが見える形そしてアウ格製品は出荷が差し止められた。

トプットを従う形で実現したことは開発者にとって有その最大の原因は益であった。従来型のプロセスは残念ながら開発者に•ビジネスシナリオ間の矛盾による製品のエラー

とって何が有益で何が不利益なのかを伝える手法に欠•テスト量に対するリソースの不足けていた。このようなシンプルで見える形のプロセス•

テスターのスキルとテスト内容の不一致による遅は多数の開発者及び開発者以外の部門が密接の関わる

延製品には適切と思われる。

が挙げられた。チェック項目があらかじめ決定されていたこと、前フェーズより引き渡される項目が明確に定義されていたため、従来、このような問題が発生した場合、２ヶ月弱かかっていた再評価が３週間弱に短縮された。

TICM - Installation/Upgrade2002 年 12 月 4 日 時 点 に お け る 報 告 。
Validation Criteria

ResultNumber of CSN problems reported (prio1+2)(OK)

Number of open CSN problems aftervalidation (prio 1)

Not OK

Number of open CSN problems after
validation (prio 2)

Not OK

100- 1000000- 1000000

ValueYellow

RedRel.

7510>

200>

502>

Number of CSN problems completed, but
not confirmed

OK

1013>

Number of notes required (total)

(OK)

100

14715>

Number of notes required (non NoteAssistant, informational)

Not OK

14612>Run time (all component in days)

(OK)

100

212>

N/A0- 1000000

図４2002 年 12 月 18 日 時 点 に お け る 報 告 。

文献[1] Takahashi, J. “Is Special Software Testing Necessary
Before Releasing Products to an InternationalMarket?” Quality Week 2000, 1999
[2] Katy Dickinson, “Software Process Framework atSun” StandardView, Sep. 1996, vol. 4 Issue 3