JP2007535723A - 複合ソフトウエアシステムを実施して検証するための自動多次元追跡可能性行列を含む試験ツール - Google Patents

複合ソフトウエアシステムを実施して検証するための自動多次元追跡可能性行列を含む試験ツール Download PDF

Info

Publication number
JP2007535723A
JP2007535723A JP2006538482A JP2006538482A JP2007535723A JP 2007535723 A JP2007535723 A JP 2007535723A JP 2006538482 A JP2006538482 A JP 2006538482A JP 2006538482 A JP2006538482 A JP 2006538482A JP 2007535723 A JP2007535723 A JP 2007535723A
Authority
JP
Japan
Prior art keywords
test
software
information
testing
test cases
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
JP2006538482A
Other languages
English (en)
Inventor
バリー マーク ブラックウェル
ジュニア ルイス レイナルド ガズマン
ジョン ポール コリン
バーバラ マーガリット コック
アンソニー ジー アーウィン
ジェフリー ディー リンゼイ
Original Assignee
キンバリー クラーク ワールドワイド インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by キンバリー クラーク ワールドワイド インコーポレイテッド filed Critical キンバリー クラーク ワールドワイド インコーポレイテッド
Publication of JP2007535723A publication Critical patent/JP2007535723A/ja
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/368Test management for test version control, e.g. updating test cases to a new software version
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Abstract

【課題】複合ソフトウエアシステムのための試験ツールを提供する。
【解決手段】本発明は、複数の相互に関連するシステムコンポーネントと複数の相互に関連するシステムコンポーネントの性能を試験するための一組の試験シナリオとを有する複合ソフトウエアシステムの試験のための試験ツールに関する。試験ツールは、相互に関連するシステムコンポーネント間のリンケージを判断するための「自動多次元追跡可能性行列」システム、相互に関連するシステムコンポーネントの1つ又はそれよりも多くにおける変更を識別するための手段、「自動多次元追跡可能性行列」を適用するための手段、変更によって影響を受ける場合がある相互に関連するシステムコンポーネントに関連した試験シナリオの全て又はその部分集合を実行するための手段、及び実行された試験シナリオの結果を評価するための手段を含む。
【選択図】図1A

Description

本発明は、複合ソフトウエアシステムのための試験ツール及び試験ツールの態様に関する。この非仮出願は、2003年11月4日申請の米国特許出願出願番号第60/517,631号に対する優先権を請求するものである。
「エンタープライズ・リソース・プラニング(ERP)」ソフトウエアシステムは、多くの現代ビジネスの運営で非常に重要な役割を果たし、広範な複合ソフトウエアシステムを含んでいる。例としては、「SAP AG」(ウォールドルフ、ドイツ)のソフトウエアシステム、特に「SAP R/3」(SAPによって提供される標準ビジネスソフトウエア)に基づくもののような統合システム、及び企業規模の統合のための多層クライアント/サーバシステムを特徴とする関連システムが含まれる。ERPソフトウエアシステムの他の例には、「PeopleSoft Inc.」(プレサントン、カリフォルニア)の製品、例えばその「企業人的資本管理」システム、Oracle(レッドウッド・ショアズ、カリフォルニア)の製品、例えばその「Oracle企業マネージャ」、「SSA Global」(シカゴ、イリノイ)の製品、例えばその「SSA ERP(LN)」システム及び関連ソフトウエア、及びSiebel(サン・マテオ、カリフォルニア)の製品、例えばその「CRM OnDemand」顧客関係管理システム及び他のSiebelソフトウエアが含まれる。このようなシステムは、相互に関連した数百又は数千のモジュールを含む場合がある。複合ソフトウエアシステムを実施する際には、多くの場合に、外部供給業者からのソフトウエアを会社又は他のエンティティの既存システムと組み合わせるために多数のソフトウエアモジュールのカスタムプログラミングを必要とする。システムの実施中又は実施後にコンポーネントがいずれかの方法で修正される時には、ユーザ又は様々なソフトウエアモジュールの供給業者のいずれかにより、統合されたシステムが望み通りの性能を有することを確かめるために広範囲の試験が必要である。過去には、変更が行われた時にどの試験を繰り返す必要があるかを判断するために、統合システムのコンポーネント間の複雑な関係を手作業で追跡するために大量の人的労力が費やされてきた。多数のエラーがこの過程で起こり、多くの場合に、全体システムにおける不必要な試験又は欠陥の見逃しをもたらす可能性がある。統合システムを試験するための従来の方法の非効率性のために何百万ドルも失われている。
ERPソフトウエアシステム及び他の複合ソフトウエアシステムの実施及び統合は、多くの場合に、1つ又はそれよりも多くの供給業者からの新しいソフトウエアモジュールを既存の「レガシー」システム(外部供給業者から複合システムを導入する前に存在して機能していた企業システム)に統合する段階を伴い、新及び旧システムにデータを通信して共有させるためにインタフェースのカスタムプログラミングを必要とする場合がある。例えば、販売又は在庫管理ソフトウエアのようなシステムを実行するためのレガシーシステムは、情報を外部供給業者のプログラムに伝える必要があるであろう。これは、レガシーシステムからの情報を複合システムで使用するために翻訳するためのカスタムインタフェースプログラム(例えば、翻訳ソフトウエア)を準備する段階を必要とする場合がある。インタフェースモジュール、業者供給ソフトウエアモジュール、及び他のソフトウエアモジュールと結合したソフトウエアシステムが、複合ソフトウエアシステムにうまく統合されるためには、コンポーネントが意図した通りに機能することを確かめるための広範囲な統合試験が必要である。しかし、全ての必要なデータが、提供されたデータに依存する場合がある全てのモジュールに対して適正な形式で提供されることを保証するために、インタフェースモジュールを通じて提供されたデータを使用するあらゆるモジュールに試験が必要な場合もあるので、単にインタフェースモジュールだけを試験することでは不適切であろう。複合ソフトウエアシステム内の様々なモジュール間の関係が完全に理解されていない場合、試験を行うオペレータは、多すぎるテストケースを実行するか、新しい又は更新されたインタフェースによって影響を受けていない複合ソフトウエアシステムの要素を試験するか、又は影響を受けた1つ又はそれよりも多くのモジュールの作動を検証するのに必要な適正なテストケースを実行し損なう場合がある。
残念ながら、広範囲な試験に対する必要性は、個々のソフトウエアモジュールが更新される時にも引き続き存在する。すなわち、段階的導入中の複合システムの作動を検証するのに必要な膨大な量の試験に加えて、供給業者からの多数のソフトウエアモジュールのいずれかが更新されて、更新されたモジュール及びそれに依存するモジュールに行われる付加的な試験を必要とする場合がある。更新が既存の処理を変更しないこと(すなわち、前に機能していたシステムが予想されるように依然として機能すること)を保証するための試験の処理は、多くの場合に「回帰試験」と呼ばれる。複合ソフトウエアシステムのどの態様が1つ又はそれよりも多くのソフトウエアモジュールの変更によって影響を受けるか(又は、プログラムのどの態様がコードの1つ又はそれよりも多くの部分の変更によって影響を受けるか)を判断する処理は、「インパクト解析」又は時には「変化解析」として公知である。これらの分野での過去の開発における代表的な仕事は、カリフォルニア州ロスアラミトスのShawn A.Bohner及びRobert S.Arnold編「ソフトウエア変化インパクト解析」、IEEE Computer Society Press,1996年である。特に関連する章は、第3章「インパクト解析のための自動化サポート」、第4章「依存関係解析手法」、第5章「追跡可能性手法」、及び第7章「インパクト判断技術」を含む。
ソフトウエア試験のいくつかの態様を自動化するための様々なツールが公知である。例えば、「Siebel 7」システム(顧客関係管理ソフトウエア)の統合及び実施は、Empirix(ボールダー、コロラド)からのツールを使用して支援されるといわれている。これは、2003年10月7日付けのhttp://www.empirix.com/NR/Empirix/NCResources/wp wtm testing essentials for siebel 7 deployments.pdfからダウンロードされるDan Kolaski著「有効なウェブアプリケーション試験処理の実施」という名称のホワイトペーパーに説明されている。このシステムのためのソフトウエア試験の原理はまた、2003年10月7日付けのhttp://www.empirix.com/NR/Empirix/NCResources/wp wtm testing essentials for siebel 7 deployments.pdfからダウンロードされるDan Kolaski著「「Siebel 7」配備のための試験要項」という名称のホワイトペーパーに開示されている。一般的に、自動試験のための代表的なツールは、ユーザアクションを模擬するスクリプトを作成するための捕捉及び再生ツール、及び自動的に実行されたスクリプトに応じてソフトウエアのアクションを観察することができる試験ツールを含む。
ソフトウエア試験のために使用される1つのツールは、http://www.rational.com/tryit/reqpro/seeit.jspで入手可能なデモンストレーションを備えたIBMのRequisiteProである。他のツールは、例えば、「Mercury Interactive」(マウンテン・ビュー、カリフォルニア)による、例えば「Mercury Business Process Testing(登録商標)」(例えば、2004年10月7日付けで閲覧されるhttp://itresearch.forbes.com/detail/RES/1092072586 637.htmlを参照されたい)又は「Mercury Test Director(登録商標)」、「Segue Software、Inc.」(レキシントン、マサチューセッツ)による、2004年10月7日付けで閲覧されるhttp://www.seque.com/products/functional−regressional−testing/silktest.aspに説明されている回帰及び機能試験のための「Silk Test(登録商標)」ソフトウエア、及び「Empirix Inc.」(ウォルサム、マサチューセッツ)による、「ウェブ」アプリケーションのための自動的な機能及び回帰試験を提供するために使用され、かつ訪れた「ウェブ」ページ毎にオブジェクトを記録してオブジェクトを確認するために自動的にテストケースを挿入するといわれている「e−Tester(登録商標)」ソフトウエアとして市販されている。
自動回帰試験のためのツールの別の例は、本明細書と矛盾しない範囲で本明細書において引用により組み込まれている、2002年7月30日にMumford他に付与された「自動的に作成されたログを使用する自動試験の実行」という名称の米国特許第6,427,000号に説明されている。Mumford他の特許は、サービスアプリケーションの新しいリリース毎に新しい試験アプリケーションを作成する必要がないように、自動的に作成されたログを使用してサービスアプリケーションに自動試験を行うシステムを開示しているといわれている。Mumford他は、サービスアプリケーションの処理を妨害することなく実行された全てのデータ及び処理を考慮することによるサービスアプリケーションの試験法を更に提供している。「自動回帰試験器(ART)」は、サービスアプリケーションの最初のバージョンの実行によって作成されたデータを捕捉して記録する。このデータは、第1試験ログに記録される。そのサービスアプリケーションの新しい又は移植バージョンが開発された時に、第1試験ログは、ARTによって使用されて、呼び出し側及びユーザ入力を含むサービスアプリケーションの作動環境をエミュレートする出力を作成する。サービスアプリケーションの新規/移植バージョンの処理は、第2試験ログに捕捉されて記録される。ARTは、次に第2試験ログを第1試験ログと比較し、データのどのような相違も報告する。このような相違は、サービスアプリケーションの新規/移植バージョンのバグを示すことがある。
別の自動ツールは、矛盾しない範囲で本明細書において引用により組み込まれている、2004年2月17日にStoval他に付与された「ワークステーションソフトウエアの自動回帰試験」という名称の米国特許第6,694,509号に説明されている。Stovalの特許は、アプリケーションプログラムを回帰試験するのに使用するための試験スクリプトのライブラリを維持する方法及び手段を開示している。より具体的には、アプリケーションプログラムのための実行可能なコードを編集するために使用されるソースディレクトリツリーの鏡像である試験ディレクトリツリーが維持される。試験ディレクトリツリーは、同じディレクトリツリー内の対応するエントリから編集された実行可能なコードを回帰試験するのに使用されることになる試験スクリプトを示している。また、本明細書と矛盾しない範囲で本明細書において引用により組み込まれている、Cohen及びVollersにより2004年5月5日公開の「ソフトウエア回帰試験の自動記録及び再生」という名称の米国特許公開番号US20040088602A1も参照されたい。
SAPシステムの実施に対しては、1つの一般的に使用されるツールは、「コンピュータ支援ソフトウエアエンジニアリング(CASE)」ツールのカテゴリに入る「コンピュータ支援試験ツール(CATT)」である。CATTは、SAPの「ABAP開発ワークベンチ」に統合される。CATTにより、SAPソフトウエアと共に機能するものは、正確に定められた入力(バッチ入力)に基づいて試験フローを自動化することができる。試験がCATTによって実行された後に、「R/3システム」は、保存されて様々な試験結果の文書化の基礎として機能する実行ログを自動的に作成することができる。試験結果は、次に、システムの品質を評価するために調べることができる。CATTは、本発明の実行を支援するためのツールとして使用することができる。例えば、それを使用してキーストロークを捕捉してデータを挿入し、個人に手動でトランザクションの実行及びデータの記入をさせる代わりにテストケースを自動で実行することができる。SAPのためのCATTの使用は、Gerhard Oberniedermaier及びMarcus Geiss著「SAPのR/3システムの試験法:コンピュータ支援試験ツールの使用」、英国ハーローのJason M.Miskuly翻訳、Addison−Wesley,2000年で詳しく説明されている(特に、28〜213ページを参照されたい)。
自動ソフトウエア試験のための一般的原理は、http://www.sqa−test.com/method.htmlで「Automated Testing Specialists」(ロサンゼルス、カリフォルニア)の「ウェブ」ページ上で説明されている。そこに説明されているのは、スクリプト開発方法論を使用して全てのテストケースをその最も基本的なタスクまで低減する「機能的分解法」である。ユーザ定義機能、ビジネス機能スクリプト、及び「サブルーチン」又は「ユーティリティ」スクリプトは、互いに独立してこれらのタスクを実行する。自動試験スクリプトは、入力及び予想される結果の検証の両方を提供するためにデータファイルを使用してビジネス機能に対して書き込むことができる。構造化又はモジュール式設計を使用する階層アーキテクチャが用いられる。同じく説明されているのは、機能性を含む試験処理全体がデータ駆動式である「試験計画駆動」方法である。試験計画は、自動試験の処理を制御するために事前に書き込まれた「ユーティリティ」スクリプトが使用する特定のフォーマットで準備される。2003年10月7日付けで閲覧されるhttp://www.sqa−test.com/toolkit.htmlに説明されている「WinRunner(登録商標)」のための「ATS Toolkit」を含む混成方法論を使用することもできる。
ソフトウエア試験のための指針は、一般的に、C.Kaner、J.Falk、及びH.Q.Nguyen著「コンピュータソフトウエアの試験法」(ニューヨーク:Wiley Computer Publishing、1999年)に説明されている。自動回帰試験は、ページ191〜197に説明されている。自動ソフトウエア試験の原理も、Elfriede Dustin、Jeff Rashka、及びJohn Paul著「自動ソフトウエア試験法」(ボストン:Addison−Wesley、1999年、ページ293及び295〜306)に詳しく説明されている。
1つのソフトウエアセグメントの変化の他方のソフトウエアセグメントへの影響として知られているインパクト解析が公知である。インパクト解析の最近の進歩は、A.Orso、T.Apiwattanapong及びM.J.Harrold著「インパクト解析及び回帰試験のためのフィールドデータの利用」、ESEC/FSE’03(ソフトウエアエンジニアリング財団:ソフトウエアエンジニアリング財団での第10回「ACM SIGSOFT」国際シンポジウムと共に開催された第9回ヨーロッパソフトウエアエンジニアリング会議紀要)、2003年9月1日〜5日、ヘルシンキ、フィンランド、ACM(米国計算機学会)発行、ニューヨーク、2003年、ページ128−137によって説明されている(http://doi.acm.org/10.1145/940071.940089を参照されたい)。インパクト解析に関する背景情報は、本明細書において引用により組み込まれている、Shawn A.Bohner及びRobert S.Arnold著「入門ソフトウエア変化インパクト解析」、ソフトウエア変化インパクト解析(ロスアラミトス、カリフォルニア:IEEEコンピュータ学会出版、1996年、ページ1〜26)によって提供されている。Bohner及びRobertは、仕様から完成プログラムまでのソフトウエアプロジェクトの全ての態様を含むソフトウエアライフサイクルオブジェクト(SLO)に言及しており、また、ソフトウエアの変更を行う影響を説明している。彼らは、ソフトウエア設計上の変更が、要件及び仕様の変更、設計トレードオフ、インタフェース変更、性能問題、プロトタイプからのフィードバックなどのような多くの目的に対して必要になる可能性がある点に注目している。プログラムそれ自体の変更は、バグ修正、アルゴリズム調節、データ構造修正、パラメータ変更などの結果とすることができる。このような変更を扱う場合、システムの他のコンポーネントに対するその変更の影響及びソフトウエアに対する要件及び目的への影響を解析する必要性が存在する。公知のツールの中で、Bohner及びArnoldは、「Cで開発された大きなシステムに見られる複雑な相互関係を理解することを助ける」ためにウエストフロリダ大学のNorman Wildeによって開発された「依存関係解析ツールセット」を挙げている。彼らはまた、米国空軍によって開発されたインパクト解析ツールである「Alicia」も説明している。
同じく当業技術で公知のものは、ソフトウエアの目的をサポートするために使用されるソフトウエアモジュールや文書などの追跡の方法として公知の追跡可能性行列の概念である。従来の作業では、追跡可能性行列は、一般的に手作業で作成され、複数レベルの依存関係及びコンポーネント間の複雑な相互関係に関する詳細な情報を包含していなかった。むしろ、公知の追跡可能性行列は、ソフトウエア要件又は仕様とソフトウエアモジュールとの間の基本的関係の表面的な一次(単一レベル)の展望を表している。
一般的に、「エンタープライズ・リソース・プラニング」システムのような複合ソフトウエアシステムの作動を検証する試験ソフトウエアモジュールの困難性は、組織内の最も困難でコストのかかる人的資源集中型活動の1つを容易に表すことができる。この結果、試験ソフトウエアモジュールの処理を改良し、このような処理を合理化する方法に対する必要性が存在する。冗長な試験の低減及び不必要な試験実行の排除が望ましいが、それらは現在利用可能ではない。
「モジュール性−関係解析」を構成する必要性の従来の認識にも関わらず、過去の努力は、このような解析を処理するための手作業的手法が支配してきたように見える。「追跡可能性行列」を利用する回帰試験のための自動ツールは、既知であるようには見えず、回帰試験に含む必要があるテストケースを識別するためのソフトウエアモジュール間の関係の「ロードマップ」を自動的に作成する既知のツールがあるようにも見えない。
手動又はコンピュータベースの要件追跡ツールは、ソフトウエアの目標をその目標を供給するモジュールと関連付けるために存在するが、これらのツールは、一般的に、複合ソフトウエアシステムのモジュール又は他のコンポーネント間の複数レベルの依存関係に関する詳細な情報を提供しない。実際に、多くのツールが、個々のソフトウエアプログラムの解析を支援し又は複合ソフトウエアシステムの試験の様々な態様を自動化するために開発されてきたが(例えば、SAPの実施を支援するのに使用されるCATTツール)、試験を更に効率良くするために、及び、特にレガシーコンポーネントを含む複数の供給業者からのソフトウエアを統合すべきである時に複合ソフトウエアシステムの実施に関連した問題の多くを解決するために、複合ソフトウエアシステムのための改良された自動ツールに対する必要性が依然として存在する。
他の場合には、自動ソフトウエア試験のためのテストケース及びスクリプトの使用が、時には従来の追跡可能性行列と共に提案されてきたが、どのテストケースを所定のソフトウエア修正に応じて実行する必要があるかを効率良く選択する機能が一般的に欠けていた。ソフトウエアモジュールとテストケースとの間の複雑な相互関係を自動的に識別することを可能にし、オペレータがテストケースのどの部分が再試験を必要とするかに関するより効率的な判断を行うことを可能にする改良型自動ソフトウエアツールに対する必要性が存在する。また、1つ又はそれよりも多くのソフトウエアモジュール又は他のシステムコンポーネントの変更の後の適正な試験に必要なテストケースをより効率良く選択するために、影響を受けたテストケース間の関係の自動ロードマップを提供する「追跡可能性行列」内のデータを利用することができるソフトウエア試験を支援するためのツールに対する必要性も存在する。
米国特許出願出願番号第60/517,631号 米国特許第6,427,000号 米国特許第6,694,509号 US20040088602A1 米国特許第6,216,109号 米国特許第6,601,233号 米国特許第5,758,062号 米国特許第5,781,720号 米国特許第6,061,643号 米国特許第6,192,108号 米国特許第5,953,519号 US20010049594A1 米国特許第6,301,701号 米国特許公開20040068714 米国特許第6,801,818号 US20030093478A1 WO97/12311 US20040103396A1 Shawn A.Bohner及びRobert S.Arnold編「ソフトウエア変化インパクト解析」、IEEE Computer Society Press,1996年 Dan Kolaski著「有効なウェブアプリケーション試験処理の実施」、ホワイトペーパー、http://www.empirix.com/NR/Empirix/NCResources/wp wtm testing essentials for siebel 7 developments.pdf、2003年10月7日 Dan Kolaski著「「Siebel 7」配備のための試験要項」、ホワイトペーパー、http://www.empirix.com/NR/Empirix/NCResources/wp wtm testing essentials for siebel 7 deployments.pdf、2003年10月7日 Gerhard Oberniedermaier及びMarcus Geiss著「SAPのR/3システムの試験法:コンピュータ支援試験ツールの使用」、Jason M.Miskuly翻訳、Addison−Wesley,2000年 http://www.sqa−test.com/method.html、Automated Testing Specialists、ロサンゼルス、カリフォルニア 「WinRunner(登録商標)」のための「ATS Toolkit」、http://www.sqa−test.com/toolkit.html、2003年10月7日 C.Kaner、J.Falk、及びH.Q.Nguyen著「コンピュータソフトウエアの試験法」(ニューヨーク:Wiley Computer Publishing、1999年) Elfriede Dustin、Jeff Rashka、及びJohn Paul著「自動ソフトウエア試験法」(ボストン:Addison−Wesley、1999年、ページ293及び295〜306) A.Orso、T.Apiwattanapong及びM.J.Harrold著「インパクト解析及び回帰試験のためのフィールドデータの利用」、ESEC/FSE’03、2003年9月1日〜5日、ヘルシンキ、フィンランド、ACM(米国計算機学会)発行、ニューヨーク、2003年、ページ128−137 Shawn A.Bohner及びRobert S.Arnold著「入門ソフトウエア変化インパクト解析」、ソフトウエア変化インパクト解析(ロスアラミトス、カリフォルニア:IEEEコンピュータ学会出版、1996年、ページ1〜26) Dustin他著「自動ソフトウエア試験」、Addison−Wesley、ボストン、1999年、76−89ページ及び417−473ページ 「PeopleSoft企業の全所有権経験」、ホワイトペーパー、2004年10月、「PeopleSoft、Inc.」(プレサントン、カリフォルニア) Norbert Welti著「ERPプロジェクトの実際の管理」、「SAP R3」の成功した実施例:Addison−Wesley Pub Co.、1999年(ISBN:0201398249) Bradley D.Hiquet、Kelley−Levey、Associates、及びAnthony F.Kelly著「Sapを理解するための管理者のガイド」、「SAP R/3」実施ガイド:Macmillan Technical Publishing、1998年(ISBN:1578700639) Gerhard Keller及びThomas Teufel著「反復処理プロトタイピング」、「SAP R/3」処理志向実施例:Addison−Wesley Pub Co.、1998年(ISBN:0201924706) Gerhard Oberniedermaier及びMarcus Geiss著、Jason M.Miskuly翻訳「コンピュータ支援試験ツールの使用」、「SAP R/3」システムの試験:Addison−Wesley、2000年(特に28−213ページ) Grant Norris他著「管理者のための包括的ガイド」、SAP:John Wiley and Sons、1998年(ISBN:0471249920) B.Yeager著「MeadのERPシステムは「Best of Breed」ソフトウエアを統合する」、PIMAの「North American Papermaker」、第82巻、第4号、2000年4月、36ページ O.Wieser著「処理制御システム及びラボラトリ情報システムの論理チェーンへの統合」、Automatisierungstechnische Praxis、第39巻、第2号、1997年2月、26−28ページ Dustin他、305−306、424−426ページ Dustin他、206−211ページ K.B.Gallagher及びJ.R.Lyle著「ソフトウエアメンテナンスにおけるプログラムスライシングの使用」、Shawn A.Bohner及びRobert S.Arnold編「ソフトウエア変化インパクト解析」(ロスアラミトス、カリフォルニア、IEEE Computer Society Press、1996年、319−329ページ Shawn A.Bohner著「デザイン革命のためのソフトウエア変化インパクト解析」、ソフトウエア変化インパクト解析、67−81ページ Bohner及びArnold著「入門ソフトウエア変化インパクト解析」、ソフトウエア変化インパクト解析、1−26ページ(特に15ページ) D.E.Perry著「Inscape環境」、ソフトウエア工学のための国際会議紀要(ロスアラミトス、カリフォルニア、IEEE Computer Society Press、1989年)
「自動多次元追跡可能性行列」を含む自動ソフトウエア追跡及び試験ツールは、複合ソフトウエアシステムの様々なコンポーネント間の複雑な関係を追跡し、複合ソフトウエアシステムの統合及びその後に修正に必要な回帰試験を支援するために開発されてきた。「自動多次元追跡可能性行列」は、テストケース(複合ソフトウエアシステムの1つ又はそれよりも多くのソフトウエアコンポーネントの挙動を試験するための一連の特定のトランザクションを伴う所定のシナリオ)及び/又は複合ソフトウエアシステムの個々のコンポーネント間の関係情報を記憶するために使用される。コンポーネントが修正される場合、「自動多次元追跡可能性行列」(場合によっては本明細書で「追跡可能性行列」と呼ばれるか又は一部の図では「T.M.」のように略される)内の情報が次にアクセスされ、複合ソフトウエアシステムの機能を効率的に試験するために実行する必要のある場合があるテストケースのリストを自動的に作成する。(必要に応じて、更に別の自動スクリーニング処理によるか又はオペレータの判断に基づいて、列挙されたテストケースのより小さな部分集合が作成される場合がある。)本発明の自動ツールは、製造工程、供給チェーン内の製品、販売などに関する情報のようなリアルタイムの情報を取得する機能を提供するSAPベースシステム及び自動データ収集(ADC)システムのようなERPシステムを実施及び更新するのに特に有用である。分散型制御システム、電気通信システム、財務解析システム、物流システム、インテリジェント製造システムなどを含む他の複合ソフトウエアシステムを処理することもできる。
自動ツールはまた、複合ソフトウエアシステムの様々なコンポーネントに関連した文書化に関する情報を提供し、修正されたコンポーネント並びにあらゆる関連のコンポーネントの文書化が検討を必要とすると考えられる時を示して、複合ソフトウエアシステムの1つ又はそれよりも多くのコンポーネントの改訂後にそれが最新であることを保証することができる。
本発明の試験システムは、複合ソフトウエアシステムコンポーネント間のリンケージを自動的に判断して追跡する段階と、どのテストケースが更に別の試験を必要とするかを示すためのレポートを自動的に生成する段階と、前の作業からのどのテストケースがシステムへの修正によって影響を受けたかを識別する段階と、内部要件又は法的要件の遵守を保証するために変更の監査を可能にして(文書を作成して)、同時に法的分野に対しても同様にこのようなサポートを提供する段階とを含む様々な特徴を含むことができる。更に、自動ツールは、テストケースが実行された時に予想される結果と実際の結果の間の相違を自動的に検出し、任意的に、相違を補正するためにどのモジュールが改訂を必要とすると考えられるかを自動的に識別するように構成することができる。
一実施形態では、本発明の自動試験ツールは、複数の相互に関連するシステムコンポーネントを有する複合ソフトウエアシステムの合理化された試験のための試験ツールと、複数の相互に関連するシステムコンポーネントの性能を試験するための一組の試験シナリオとして説明することができ、この試験ツールは、a)依存関係及び従属関係の1つ又はそれよりも多くのチェーンを通じて1つ又はそれよりも多くのコンポーネントの所定の選択にリンクした相互に関連するシステムコンポーネントの部分集合を特定するようになった、相互に関連するシステムコンポーネント間のリンケージを判断するための「自動多次元追跡可能性行列」システム、b)システムコンポーネントの1つ又はそれよりも多くの変更を識別するための手段、c)システムコンポーネントの1つ又はそれよりも多くの変更の識別に応じて、相互に関連するコンポーネントのどれが変更によって影響を受けると考えられるかを判断するために「自動多次元追跡可能性行列」を適用するための手段、d)変更によって影響を受けると考えられる相互に関連するコンポーネントに関連した試験シナリオの全て又はその部分集合を自動的に実行するための手段、及びe)実行された試験シナリオの結果を評価するための手段を含む。
試験ツールでは、システムコンポーネントの1つ又はそれよりも多くの変更を識別するための手段は、自動化することができるか又は部分的に自動化することができ、また、実行可能ファイル(例えばバイナリコードコンパレータ、又は作成日付、ファイルサイズ、チェックサムスコア、タイムスタンプパラメータなどを調べるソフトウエア)の変更を検出するか又はデータセット、スクリプト、データベース記録、及び文書修正日付などの同様の又は他の変更を検出するファイルスキャナのような電子ツールを含むことができる。このような目的のためのプログラムは、当業技術で公知である。システムコンポーネントの1つ又はそれよりも多くの変更を識別するための手段はまた、変更に関する情報の手動入力段階を含むことができる。
試験ツールでは、実行された試験シナリオの結果を評価するための手段は、出力情報と変更の前に試験シナリオから作成された以前の出力情報との手動比較、又はその目的のための公知のコンピュータプログラムを使用したファイルの自動又は半自動比較を含むことができる。実行された試験シナリオの結果を評価するための手段は、出力情報と、変更(例えば、ベースラインに対する変更)の前に試験シナリオから作成された以前の出力情報とのコンピュータ実行比較を含むことができる。
試験ツールは、「SAP R/3」の実施に適応させることができ、更に、選択されたスクリプトを自動的に実行するために「コンピュータ支援試験ツール」の使用を含むことができる。この試験ツールでは、複合ソフトウエアシステムは、少なくとも1人の他の当事者によって書かれて少なくとも1つの他の供給業者を通して供給されたレガシーソフトウエアに接続する少なくとも1つの供給業者からのソフトウエアを含むことができる。この試験ツールでは、複合ソフトウエアシステムは、ERPシステムとすることができる。この試験ツールは、「管理エンティティ」との電子通信を含む、ソフトウエアとこのソフトウエアに関連した文書との変更を監査するための手段を更に含むことができる。
別の実施形態では、本発明は、複合ソフトウエアシステムの統合試験又はシステム試験の少なくとも一方に対して、対応するソフトウエアコンポーネントを試験するための関連のテストケースの実行を案内するようになった試験スクリプトの本体から試験スクリプトの部分集合を自動的に選択するための試験ツールとして説明することができる。この実施形態では、試験ツールは、a)テストケース間のリンケージを形成するための「自動多次元追跡可能性行列」システム、b)テストケース間のリンケージに関する情報を受信するためのグラフィカルユーザインタフェースであって、この情報がグラフィカルユーザインタフェースによって「自動多次元追跡可能性行列」システムに供給されるようなグラフィカルユーザインタフェース、c)「自動多次元追跡可能性行列」システム内の情報に基づいて自動的に判断されるテストケース間の親−子関係を複数のレベルで図式的に表示するための手段、d)複合ソフトウエアシステムのテストケースの1つ又はそれよりも多くの変更に応じて、複合ソフトウエアシステムの複数のコンポーネントの試験のためのテストケースの部分集合を選択するための手段、e)テストケースのこの部分集合に関連した試験スクリプトを実行するための手段、及びf)実行された試験スクリプトによって作成された出力に基づいて、複合ソフトウエアシステムのステータスを評価するための手段を含む。
別の実施形態では、試験ツールは、複数の相互に関連するプログラムを有する複合システムソフトウエアシステムの試験での効率の改善のためのグラフィカルユーザインタフェースと、複数の相互に関連するプログラムの性能を試験するための一組のテストケースとを含み、グラフィカルユーザインタフェースは、a)依存関係の3つ又はそれよりも多いレベルにわたるリンケージを表示するようになった、複数の相互に関連するプログラムの選択された部分間のリンケージに関して「自動多次元追跡可能性行列」から出力情報を表示するための手段であって、この出力情報が1)選択されたプログラムに対する依存関係及び従属関係のリスト、及び2)選択されたプログラムを呼び出すことができるテストケースのリストのうちの少なくとも一方を含むような手段、b)複数の相互に関連するプログラムの選択された部分間のリンケージに関して「自動多次元追跡可能性行列」から入力情報を受信するための手段、及びc)入力及び出力情報をグラフィカルユーザインタフェースから「自動多次元追跡可能性行列」をホストする少なくとも1つのサーバに通すための通信手段を含む。
別の実施形態では、本発明は、複数のソフトウエアコンポーネントを含む複合ソフトウエアシステムの性能の効率的な試験のためのテストケースの本体からのテストケースの部分集合を自動的に選択する方法を実行するためにコンピュータシステムを制御するための命令を収容するコンピュータ可読媒体を含む。各テストケースは、複合ソフトウエアシステム内の少なくとも1つのソフトウエアコンポーネントに関連しており、各テストケースはまた、テストケースのための複合ソフトウエアシステムによって実行される一連の命令を提供するスクリプトに関連している。本方法は、a)テストケースに対する依存関係及び従属関係に関する入力情報を受信するためにグラフィカルユーザインタフェースを表示する段階、b)この入力情報を「自動多次元追跡可能性行列」に関連したデータベースに記憶する段階、c)ソフトウエアコンポーネントの1つ又はそれよりも多くが変更されたことを示す変更通知を受信する段階、d)変更されたソフトウエアコンポーネントの1つ又はそれよりも多くへ以前に形成したリンケージによってテストケースのどれがリンクされるかを判断するために「自動多次元追跡可能性行列」を適用する段階、e)変更されたソフトウエアコンポーネントの1つ又はそれよりも多くにどのテストケースがリンクされるかを示すための情報を表示する段階、f)自動的に又はユーザ選択に応じて、段階(e)からリンクしたテストケースの全て又はその部分集合を選択する段階、g)段階(f)から選択されたリンクしたテストケースに関連したスクリプトを実行する段階、及びh)実行された試験スクリプトに対して予想される結果と後で比較するために、実行された試験スクリプトの結果を記憶する段階を含むことができる。
コンピュータ可読媒体は、1つ又はそれよりも多くのサーバ、ハードディスク、CD−ROM、テープドライブ、磁気媒体、及び光媒体など、並びにコンピュータ命令を収容することができる信号及び波動関数を含むことができる。
別の実施形態では、本発明は、1つ又はそれよりも多くの供給業者によって提供される複数の統合されたソフトウエアモジュールを含む複合ソフトウエアシステムのための更新されたソフトウエアモジュールをユーザが試験する方法を含む。本方法は、a)供給業者から第1ソフトウエアモジュールのためのソフトウエア更新を受信する段階、b)ERPシステムに更新された第1ソフトウエアモジュールを供給するために、サーバ上にソフトウエア更新をインストールする段階、c)性能が更新第1ソフトウエアモジュールにリンクした複数のソフトウエアモジュールからのソフトウエアモジュールのリスト、又は性能が更新第1ソフトウエアモジュールにリンクしたソフトウエアモジュールに関連したテストケースのリストを自動的に作成するために「自動多次元追跡可能性行列」を適用する段階、d)段階(c)のリストの部分集合を選択し、関連の試験スクリプトを実行する段階、及びe)複合ソフトウエアシステムが適正に機能しているかを判断するために、実行された試験スクリプトの結果を評価する段階を含むことができる。
本発明の試験ツールは、デバッグするか又はそうでなければ問題を識別するか又は解決することを支援するために、あらゆる他の公知のソフトウエア試験ツールと統合させることができる。例えば、Dustin他著「自動ソフトウエア試験」(ボストン:Addison−Wesley、1999年、76−89ページ及び417−473ページ、本明細書において引用により組み込まれている)は、ビジュアルモデリング、文法チェッカー、メモリ漏れ検出ツール、実行時エラー検出ツール、ソースコード試験ツール、静的及び動的アナライザ、未試験コードを識別するためのメトリクスツール、GUI試験ツール、シミュレーションツール、ネットワーク試験ツール、及び負荷/性能試験ツールなどを含むソフトウエア試験の様々な段階で使用される多くの他のツールを説明している。
本発明はまた、搬送波に組み込まれたコンピュータデータ信号に関する。コンピュータデータ信号は、複合ソフトウエアシステム内の複数のソフトウエアモジュールの少なくとも1つと、複合ソフトウエアシステム内の相互に関連するソフトウエアモジュールの回帰試験のための複数のコンピュータ実装テストケースとの間の従属関係及び依存関係を定める情報を含む。コンピュータデータ信号はまた、従属関係及び依存関係に関する情報を図式的に伝達するためのコンピュータシステムのための命令を含むことができ、個々のテストケース又はソフトウエアモジュールは、互いに対するそれらの関係を示す方式で表され、表示された情報は、どの他のテストケース又はソフトウエアモジュールが変更によって影響を受ける場合があるかを示すことができる。情報は、グラフィックユーザインタフェースを使用して図式的に伝達される。更に、コンピュータデータ信号は、グラフィカルユーザインタフェースに対するユーザアクションに関連した所定のユーザアクションに応じて、選択された個々のテストケース又はソフトウエアモジュールに関する付加的な情報を表示するための命令を含むことができる。更に、コンピュータデータ信号は、次の試験のためにグラフィカルユーザインタフェース上に伝達された情報からテストケース又はソフトウエアモジュールを電子的に選択するための手段を提供する命令を含むことができる。
コンピュータデータ信号は、入力データセット、関連のテストケース、及び確認された出力結果の所定の集合からのベースライン情報を更に含むことができる。コンピュータデータ信号はまた、選択されたテストケース又はソフトウエアモジュールの手動又は自動実行を開始するための命令、及び実行されたテストケース又はソフトウエアモジュールからの出力結果を電子的に記憶するための命令を含むことができる。それとは別に、コンピュータデータ信号は、出力結果をベースライン情報と比較するための命令を含むことができる。コンピュータデータ信号は、出力結果とベースライン情報との間の相違を自動的に識別するための命令、及び相違を是正するための1つ又はそれよりも多くの推奨されるアクションを自動的に識別するための命令を含むことができる。付加的な態様では、コンピュータデータ信号は、出力結果とベースライン情報との間の日付特定の相違を除去するための命令を含むことができる。コンピュータデータ信号は、相違の原因を識別するためにコンピュータ化されたデバッグツールを実行するための命令を含むことができる。
付加的な態様では、コンピュータデータ信号は、複数の人間テスターに関する情報と、次の試験のためにグラフィカルユーザインタフェース上に伝達された情報からのテストケース又はソフトウエアモジュールのユーザの選択に応じてテスターの1人又はそれよりも多くによる試験作業をスケジューリングするための命令とを含むことができる。更に、コンピュータデータ信号は、複合ソフトウエアシステムの複数のソフトウエアモジュールの少なくとも1つと複数のコンピュータ実装テストケースとの間の従属関係及び依存関係を定める情報をユーザに修正させるための命令を含むことができる。コンピュータデータ信号は、試験行動及びソフトウエア修正を説明する情報が「管理エンティティ」に提供されるように「管理エンティティ」と通信するための命令を含むことができ、更に、ソフトウエアモジュールの変更を行う前に「管理エンティティ」に関連したエージェントからの許可をユーザが取得するように要求する命令を含むことができ、許可の取得はまた、「管理エンティティ」と共に記録される。
本発明の更に別の態様では、コンピュータデータ信号は、選択されたテストケース又はソフトウエアモジュールの1つ又はそれよりも多くの自動実行のための命令を含むことができる。複合ソフトウエアシステムは、2つ又はそれよりも多くの供給業者によって提供される、100を超えるソフトウエアモジュールを含むことができる。これとは別に、複合ソフトウエアシステムは、3つ又はそれよりも多くの供給業者によって提供される、500を超えるソフトウエアモジュールを含むことができる。複合ソフトウエアシステムは、2つ又はそれよりも多くの供給業者からの2つ又はそれよりも多くの個別のコンピュータオペレーティングシステムとのインタフェースを含むことができ、この個別オペレーティングシステムは、2つ又はそれよりも多くのサーバ上にある。複合ソフトウエアシステムは、SAPソフトウエアを含むことができる。更に、従属関係及び依存関係に関して図式的に伝達される情報は、階層形式で供給することができる。従属関係及び依存関係に関する図式的に伝達される情報は、フォルダアイコン、文書アイコン、「プラス」記号の付いたアイコン、「マイナス」記号の付いたアイコン、ページアイコン、及び矢印アイコンのうちの少なくとも1つを含む階層形式で供給することができる。図式的に伝達される情報は、選択されたテストケース又はソフトウエアモジュールに関する付加的な情報を提供するためのハイパーリンクを更に含むことができる。
定義
以下の語を本明細書での使用を明確にするために簡潔に定義する。更に詳しい説明は、本発明の以下の説明の中で提供する。
本明細書で使用される時の「自動捕捉」は、トランザクション自体内で試験の性能をモニタすることによってトランザクションのためのテストケースの作成を容易にするコンポーネントを意味する。すなわち、自動捕捉は、試験オペレータの挙動を観察し、同じ挙動を実行するか又は再現するテストケースを作成する。
本明細書で使用される時の「自動比較」は、2つの試験レポートを比較して、そこから差のレポートを生成するコンポーネントを意味する。差のレポートで作成された出力のフィルタリング又はカスタム化を可能にする付加的な機能も、自動比較コンポーネント内に含められる。
本明細書で使用される時の「クライアントサーバ」は、サーバコンピュータによってサービスが実行されることをクライアントコンピュータが要求する2つのソフトウエア処理間の関係を説明するものである。サーバコンピュータは、サーバを実行し、次に結果をクライアントに送信して戻す。クライアント及びサーバシステムは、単一機械上で作動することができるが、一般的には、クライアントサーバ作動は、ネットワークを通じて結合された別々のコンピュータを伴う。
本明細書で使用される時の「複合ソフトウエアシステム」は、ユーザによって実行される場合に統合が必要な複数の相互に関連するモジュールを含むあらゆるソフトウエアシステムを意味する。複合ソフトウエアシステムは、一般的に、供給業者からのモジュールと他の供給業者からの1つ又はそれよりも多くのレガシーシステムとを加えたもの、又は、企業内部で開発されたシステム、及び/又は、1つ又はそれよりも多くの供給業者からの商用ソフトウエア及びユーザによって準備されたカスタム化ソフトウエアのような2つ又はそれよりも多くの供給元からのアプリケーションソフトウエア(「Microsoft Windows(登録商標)」及び「Linux(登録商標)」などのような基本オペレーティングシステムソフトウエアを含まない)の組合せのような2つ又はそれよりも多くの供給元からのモジュールを含む。一例として、複合ソフトウエアシステムは、約50又はそれよりも多い、100又はそれよりも多い、500又はそれよりも多い、1000又はそれよりも多い、又は3000又はそれよりも多くのソフトウエアモジュールのような、約20又はそれよりも多くの個別のソフトウエアモジュールを含むことができる。同じく一例として、複合ソフトウエアシステムは、2つ又はそれよりも多くの供給業者、3つ又はそれよりも多くの供給業者、5つ又はそれよりも多くの供給業者、又は10又はそれよりも多くの供給業者によって提供される商用ソフトウエアを含むことができる。複合ソフトウエアシステムは、2つ又はそれよりも多くの言語、3つ又はそれよりも多くの言語、又は4つ又はそれよりも多くの言語のようなあらゆる数の異なるコンピュータ言語(例えば、FORTRAN、COBOL、C++、PASCAL、「Visual Basic 6」、アセンブリコード、XML、Javascript、その他)で書かれたソフトウエアモジュールを含むことができる。複合ソフトウエアシステムのための編集されたコードは、約50メガバイト又はそれよりも多い、100メガバイト又はそれよりも多い、300メガバイト又はそれよりも多い、又は500メガバイト又はそれよりも多いような、少なくとも約10メガバイトの総ファイルサイズを有することができる。モジュールは、ERPシステムを含む特定のビジネス機能、インタフェースソフトウエア、電気通信ソフトウエア、報告ソフトウエア、財務ソフトウエアなどを実行するソフトウエアを含むことができる。例示的なERPシステムは、SAP(ニュートン・スクエア、ペンシルベニア)、「JD Edwards」(デンバー、コロラド)、Manugistics(ロックビル、メリーランド)、「Siebel Systems」(サンマテオ、カリフォルニア)、又は「ROI Systems」(具体的には、ミネソタ州ミネアポリス所在の「ROI Systems」の「Manage 2000」システム)、並びに特注システムのような供給者によって販売されるものを含む。
本明細書で使用される時の「制御試験レポート」は、正確な又は好ましい結果を含むテストケースの試験レポートのバージョンを意味する。本発明では、回帰試験が実行された時に、このようなテストケースから生じたレポートは、制御試験レポートとして形成された出力と比較される。
本明細書で使用される時の「データマーカ」は、トランザクションの完全な試験で使用するためのボリュームテストデータを作成するために試験オペレータによって定められた規則を用いるコンポーネントを意味する。
本明細書で使用される時の「依存関係」は、イベント又はデータ要件のシーケンスが原因で別のテストケースに先行するテストケースを意味する。
本明細書で使用される時の「設計仕様」は、システムが構築される方法を文書化する仕様を意味する。これは、一般的に、システム又はコンポーネント構造、アルゴリズム、制御論理、データ構造、データセット[ファイル]使用情報、入力/出力フォーマット、インタフェース記述などを含む。
本明細書で使用される時の「差のレポート」は、自動比較処理から作成された出力を意味する。このような差のレポートは、比較処理中に呼び出されたあらゆるフィルタを含む自動試験レポート間の差を列挙する。
本明細書で使用される時の「回帰試験」は、それが試験するコンポーネントを徹底的に用いて、解析された時にコンポーネント又はトランザクションの正しさを検証する出力を生成する繰返し可能な試験を意味する。
本明細書で使用される時の「スクリプト」は、テストケースで実行されるトランザクションのセット、及び実際の結果と比較するための予想される結果のリストのフォーマット化された書かれた説明である。スクリプトは、一般的に各テストケースに関連付けられ、「テストケースカタログメンテナンス形式」(以下に説明する)を通じて表示することができ、又は「テストケースカタログメンテナンス形式」からのリンク又は他の手段からアクセス可能にすることができる。スクリプトで実行するためのトランザクションに対する命令は、どのトランザクションを実行するかを人間オペレータに知らせるために記述的用語で書き込むことができ、又はこの命令は、トランザクションを自動的に実行するためのコンピュータ命令を含むか又はそれにアクセス可能であり、又はコンピュータ実行及び人間実行命令のあらゆる組合せを含むことができる。コンピュータ命令は、「Java Script」、「Visual Basic」コード、Pascal、Fortran、C++、及びあらゆる公知のマクロ言語などのようなあらゆる形式とすることができる。一実施形態では、スクリプトは、特定のテストケースのための「テストケースカタログメンテナンス形式」のグラフィカルユーザインタフェースディスプレイからアクセス可能な「Microsoft Word」文書又はテキストファイルのようなテキストベースの文書を含むか又はそれから構成される。
本明細書で使用される時の「テンプレート」は、要求された情報を記録するために示唆されたフォーマットを意味する。
本明細書で使用される時の「試験インシデントレポート」は、更なる調査を必要とする試験中に起こるあらゆるイベントを報告する文書を意味する。一部の文献は、代替表現の「偏差形式」を使用する。
本明細書で使用される時の「試験計画」は、意図した試験活動の範囲、手法、リソース、及びスケジュールを特定する文書化を意味する。これは、試験項目、試験される特徴、試験タスク、担当、要求されるリソース、及び臨時の計画を必要とするあらゆる危険性を識別するものである。試験計画は、例えば、本明細書に矛盾しない範囲で本明細書において引用により組み込まれている、2001年4月10日にZweben他に付与された「統合生産量及び在庫計画のためのスケジューリングに対する特定の用途を有する反復的修復最適化」という名称の米国特許第6,216,109号に説明されているツールを含むプロジェクト計画ツール及びスケジューリングツールの助けによって構成することができる。
本明細書で使用される時の「試験」は、一般的に、特定条件の下で複合ソフトウエアシステムのシステム又はコンポーネントを作動し、結果を観察又は記録し、かつシステム又はコンポーネントの何らかの態様の評価を記録する処理を意味する。このような試験は、協働する複数のコンポーネントの性能の統合試験、又はサブシステム間の協調性を検査するための複合ソフトウエアシステム全体のシステム試験に関連する可能性がある。試験は、ソフトウエア開発又はメンテナンス中に生じた以前に機能していたモジュール又はシステムのエラーを検査するための回帰試験を含むことができる。単に一例として、他の試験タイプは以下のものを含むことができる。
・「統合試験」−(1)システムがその受け入れ基準を満たしているか否かを判断してシステムを受け入れるか否かを顧客が判断することができるようにするために行われる試験。(2)システムがその指定された要件を満たすかを検証するために統合ハードウエア及びソフトウエアシステムを試験する処理。
・「負荷試験」−負荷試験もまた、作業負荷が高くてリソースが低いと考えられる場合にシステムストレス中のシステム性能を調べるために行うことができる。負荷試験(ストレス試験と呼ばれることもある)は、本発明の範囲に入ると考えることができる。様々なモジュールの機能を試験する間に、スクリプトを供給して高負荷を模擬するためにシステムの多くの特徴を実行することができる。例えば、自動化ツールは、多数の仮想ユーザを作成し、大量の問合せ及び多数のトランザクションセットなどを作成することができる。
・「ユニット試験」−(1)植字上、構文上、及び論理上のエラー、その設計の正しい実施、及びその要件の充足に関するモジュールの試験。(2)1つのソフトウエア要素に対して設計の実施を検証するために行われる試験。
本明細書で使用される時の「テストケース」は、規定された出力のセットを作成するコンポーネント又はトランザクションに対する規定された入力のセットを意味する。一般的に、テストケースは、入力を規定する文書化、予想される結果、及び試験項目の実行条件のセットを含む。テストケースは、1つ又はそれよりも多くのソフトウエアモジュールを収容する1つ又はそれよりも多くのトランザクションの所定の集合として見ることができる。これは、複合ソフトウエアシステムの実際の使用を模擬するために、テストケーススクリプトで規定された所定の順序で実行される一連のトランザクションを収容することができる。実行される各トランザクションは、より大きなテストケース(親ケース)内のアクションのより複雑なシーケンスを表すために互いに一続きにすることができる個々のテストケースによって表示することができる。多くの実施形態では、テストケースが実行される場合、検出されたエラーは、ソフトウエア内又は相互に関連するシステム内の調べられているあらゆるコンポーネント内で修復を必要とする区域を指している。
本明細書で使用される時の「試験レポート」は、テストケースの実行から作成された出力を意味する。
本明細書で使用される時の「テストケース特性」は、テストケースの開発及びユニット試験を支援するために使用されるテストケースに関する情報(データ及びリソース割当てのような)を意味する。この特性は、テストケースのカタログのコンポーネントを構築することを支援するための第1レベル計画として見ることができる。
本明細書で使用される時の「追跡可能性」は、開発処理の2つ又はそれよりも多くの製品、特に、互いに前任者−後継者又は主人−家来関係を有する製品間に確立することができる関係の程度、例えば、所定のソフトウエアコンポーネントの要件及び設計が適合する程度を意味する。(多くの従来技術の文献では、「追跡可能性」は、ソフトウエアモジュールの機能をソフトウエアによって満たされる目的又は要件にトレースすることを意味し、言い換えると、ソフトウエアの存在に対する理由を確立するという別の意味で使用されることが多いことに注意されたい。)
本明細書で使用される時の「トランザクション」は、特定のタスク又は機能、一般的に単一ソフトウエアモジュールのようなソフトウエアのユニットによって実行されるビジネスアクションを行うための基本的な実行可能ブロックである。一般的には、トランザクションは、より大きなビジネス処理内の段階である。
本明細書で使用される時の「従属関係」は、イベント又はデータ要件のシーケンスが原因でテストケースに続くテストケースを意味する。従って、従属関係は、依存関係の逆として考えることができる。言い換えると、第1ケースが第2ケースに対する依存関係であり、第1ケースが第2ケースに先行することを意味する場合、第2ケースは、第1ケースに対する従属関係である。
本明細書で使用される時の「作業ストリーム」は、ビジネス処理のサブ処理である。例えば、1つのERPシステムでは、「在庫管理(IM)」は、購入される材料及びサービスに対する必要性を識別し、次に、可能な最も効率的な方法でそれらの材料を調達し、受け取り、配備し、供給元に支払うビジネス処理「支払い請求(RTC)」のサブ処理である。RTC内の「作業ストリーム」は、例えば、「調達」、「在庫管理」、及び「買掛金」を含むことができる。
特に本発明の範囲内で開発されたSAPシステムの関連では、以下のようないくつかの付加的な頭字語及び用語を用いることができる。
・BCD(ビジネス構成設計)−ビジネス処理に固有の独特な構成を捕捉するために使用される設計仕様文書。標準的な構成が変更又はカスタマイズされる場合、BCD入力が必要である。これは、標準的なSAPトランザクションのための設計青写真が維持されることを保証する。
・BPD(ビジネス処理設計)−ビジネス処理のユーザ要件を捕捉するための文書。この文書は、ハイレベル機能の必要性、ビジネス処理コメント、最良実施例、及びシステムの意図された使用の全体的結論を含む。
・BPF(ビジネス処理フロー)−BPDで説明されるビジネス処理の図解又はフロー。
・BPP(ビジネス処理手順)−SAP又は他の複合ソフトウエアシステムのトランザクションの要件に対する機能的な仕様である。使用されるトランザクションの機能を識別し、トランザクションの流れ、各フィールドの定義、それが必要なのか、任意的なのかなど、及び一般的なコメントを段階毎に含む。
・「ビジネス処理」−ビジネス処理は、機能的なビジネスエリア(「ビジネス処理チーム」と呼ばれる)によって組織されたサブ処理のエンド・ツー・エンドの論理的分類である。
・CSV(コンピュータシステム検証)−コンピュータシステム仕様がユーザの必要性及び意図された使用に合っていること、及び全ての要件を一貫して満たすことができることの検査及び客観的証拠の提供による確認。
・電子署名−個人の手書き署名の認可された均等物として個人によって実行され、使用され、又は認可されたあらゆる記号又は一連の記号のコンピュータデータ編集。
・FRICE(形式レポートインタフェース変換拡張)−SAPのような複合ソフトウエアシステムへのカスタム拡張(すなわち、社内で開発されたモジュール)の機能及び設計仕様の両方を捕捉する文書のセットから構成される。
・「追跡可能性行列レポート」(「CSVファクトブック」によって要求されるような)−2つ又はそれよりも多くの製品間の関係を記録する行列、例えば、所定のソフトウエアコンポーネントの要件及び設計間の関係を記録する行列。
・「検証ファクトブック」−アプリケーションがその意図された使用を満たすことを明らかにする「ソフトウエア開発ライフサイクル」から保持された記録の編集。
本発明は、本発明の以下の詳細説明、及び同じ数字が同じ要素を表す添付図面を参照することによってより十分に理解され、更に別の利点が明らかになるであろう。図面は、単に代表的なものであり、特許請求の範囲を制限するものではない。
本発明の開示は、本発明の「実施形態」という用語又は他の類似の用語によって個々に又はまとめて参照される場合もある様々なコンポーネント、要素、構造、構成、配置、及び他の特徴を用いて表されることになる。開示される本発明の様々な形態がその様々な特徴及び実施形態の1つ又はそれよりも多くを組み込むことができること、及びこのような特徴及び実施形態がそのあらゆる望ましい作動的な組合せで用いることができることが考えられている。
本開示で用いられる場合、用語「含む」、「含んでいる」、及びその基本用語「含む」からの他の派生語は、あらゆる説明された特徴、要素、完全体、段階、又はコンポーネントの存在を特定する非限定的用語であることが意図されており、1つ又はそれよりも多くの他の特徴、要素、完全体、段階、コンポーネント、又はその群の存在又は追加を排除しないものとすることにも注意すべきである。
本発明は、修正された後の複合ソフトウエアシステムを試験するためのテストケースの効率的な組合せを選択する方法に関する問題を解決することに関する。更に、本発明は、モジュール、テストケース、支持する試料、ビジネス文書、プロジェクトに関する文書、及びテスターと試験スケジュールのような統合ソフトウエアシステムの様々なコンポーネント間の関係を自動的に追跡する問題を解決する。更に、本発明は、複合ソフトウエアシステムの開発に対する改良又は複合ソフトウエアシステムの改良を監督して導くための改良型コンピュータツール及び自動化ツールを提供する問題を解決する。
本発明の自動ツールは、通常は所定の作動が予想される結果を生じること、及び修正されたコンポーネントに関係したコンポーネントがこれに応じて適切に検討されるか又は修正されることを保証するために、複合ソフトウエアシステムのコンポーネントの作動を試験するために設計された一組のテストケースと共に使用される。複合ソフトウエアシステムの試験は、一般的に、複合ソフトウエアシステムの実際の出力と比較される既知の予想される結果を有する所定のテストケースを実行することによって行われる。テストケースは、1つ又はそれよりも多くのソフトウエアモジュールを収容する1つ又はそれよりも多くのトランザクションを含み、また、複合ソフトウエアシステムの実際の使用を模擬するためにテストケーススクリプトで規定された所定の順序で実行される一連のトランザクションを収容することができる。実行される各トランザクションは、より大きなテストケース(親ケース)内のアクションのより複雑なシーケンスを表すために共にまとめられる個々のテストケースによって表すことができる。例えば、購入システムを試験することに向けられたテストケースは、トランザクションとして以下の段階を含むことができる。
・供給業者データベースの新しい供給業者の新しい記録の作成、
・新しい供給業者によって提供された標準製品の新しい記録の作成、
・新しい供給業者の製品の購入要求の作成、
・製品の購入に関係する税情報の作成、及び
・新しい供給業者への購入注文の発行。
これらの段階の一部は、付加的な供給元から付加的な作動又は要求入力を呼び出すことができる。上述の段階のいずれか又は全ては、自動的に実行された段階の予想される結果が、テストケースの実際の結果が比較されるテストケースの予想される出力である場合、開始要求に応じて自動的に起こるように設計することができる。
複数の統合ソフトウエアモジュール及び一般的に2つ又はそれよりも多くの供給元からのソフトウエアモジュールが共に作動することができるようにするための複数のインタフェースを含む複合ソフトウエアシステムでは、1つ又はそれよりも多くのモジュールが変更された後のソフトウエアの試験は、多数のテストケース(例えば、数千)の実行を要求することができる。各テストケースは、特定の機能を試験するために、1つ又はそれよりも多くのソフトウエアモジュールを実行する。テストケースのスクリプトは、実行されるトランザクション、要求される入力、及び作成を予想される結果を定める文書である。実際の結果は、次に、複合ソフトウエアシステムの試験された部分が適切に作動していることを保証するために、予想される結果と比較される。ソフトウエアモジュールが修正又は開発される場合、本発明のツールによってどの他のテストケースが修正によって影響を受けるかを示すリストが作成され、従って、再実行が必要なのはどの付加的なテストケースかを示している。
自動ツールの核心は、このような複合ソフトウエアシステムの全てのコンポーネント間の関係を説明する「自動多次元追跡可能性行列」の概念である。「自動多次元追跡可能性行列」は、複合ソフトウエアシステムのソフトウエアコンポーネントと任意的な他のコンポーネントの間のリンケージのコンピュータベースの表示である。一実施形態では、「自動多次元追跡可能性行列」の関係情報は、テストケースに対して入力された依存関係及び従属関係情報から専ら又は主として得られる。関連の実施形態では、「追跡可能性行列」はまた、テストケースを実施する時に実行されるトランザクションでアクセスされる個々のソフトウエアコンポーネントに関する情報を含むことができ、それによって「追跡可能性行列」は、テストケース間の又はソフトウエアモジュールとテストケースの間の関係を判断するために使用することができる。別の実施形態では、「自動多次元追跡可能性行列」は、テストケース間並びに複合ソフトウエアシステムの個々のコンポーネント間の関係に関する情報を含み、「追跡可能性行列」は、それによってソフトウエアモジュールとテストケースとの間、又はテストケースとの間、又は個々のソフトウエアモジュールとの間の関係を判断するために使用することができる。
一実施形態では、「自動多次元追跡可能性行列」は、電子カタログでテストケース(及び関連の文書)を管理するための単一のソースを供給し、また、テストケース依存関係の相互関係を示すための解析ツールとして機能する。更に、「自動多次元追跡可能性行列」は、インパクト解析及び生産サポートを支援する共通の観点から複合ソフトウエアシステムを複数のユーザが理解することができるようにするために使用される。
他の実施形態では、「自動多次元追跡可能性行列」はまた、以下の付加的な目的のいずれか又は全てを達成するために使用することができる。
・詳細なレベルでテストケースの実行を管理して計画するために作業ストリームのツールを提供し、同時に作業間ストリームプロジェクト作業計画をサポートする。
・全ての作業ストリームにわたって試験サイクルの進行を測定するための一貫したツールを提供する。
・再使用可能な試験情報を維持する。
・サポーティングビジネス及び技術文書を容易にアクセス可能にする。
・要求される「検証ファクトブック」報告(例えば、「検証ファクトブック」要件を満たすための「追跡可能性行列レポート」をサポートするために使用される)を満たすためにCSV関連情報を捕捉する。
・検討又は変更を必要とする関連のビジネス要件文書を提供することによって変更管理処理をサポートする。
テストケースは、「追跡可能性行列」の少なくとも一部を定める情報を提供する「テストケースカタログ」を使用して組織される。「追跡可能性行列」がテストケース間の関係だけを定めるものとする時に、「テストケースカタログ」の関係情報は、実質的に「追跡可能性行列」を定めるが、付加的な関係情報が同様に含まれる(例えば、個々のコンポーネントに関する関係)。「テストケースカタログリスト」は、全テストケース又はテストケースの選択された部分集合を表示するグラフィカルユーザインタフェースで提供される。テストケースは、リスト、クラスター、一連の名前の付いたアイコン、又は他のフォーマットとして表示される。リストが表示される場合、リストは、テストケースの名前又はテストケース記述子のアルファベット順に従って表示されるか、又はリスティングは、修正の日付、関連のプロジェクト、部門、所有者又はテストケースを修正した最後の個人の識別などのようなテストケースに関した他のフィールドに従って順序付けられる。「テストケースカタログリスト」の表示は、ワードプロセッサ又はスプレッドシートからの表示を含む「ウェブ」ページ又は他の電子フォーマット上に表示される。「テストケースカタログリスト」は、あらゆる選択されたケースに関連した詳細な情報への迅速なリンク又はその表示を提供するのが好ましい。例えば、「テストケースカタログリスト」のテストケースに関連したテストケースの名前又は他の表示を一回クリックすると、選択されたテストケースの詳細な情報が新しいウィンドウ又は「テストケースカタログリスト」を前に保持していた同じウィンドウに表示される。一実施形態では、テストケースの詳細な情報は、「テストケースカタログリスト」の既存の表示に挿入される。
「自動多次元追跡可能性行列」は、テストケースとソフトウエアコンポーネント又はトランザクション、及び任意的に文書のような関連のコンポーネントのステータスのような複合ソフトウエアシステムの様々なコンポーネント間の関係に関する結合した情報である。「自動多次元追跡可能性行列」は、例えば、システムが適切に作動していることを保証するために複合ソフトウエアシステムの1つ又はそれよりも多くのコンポーネントの変更に応じてどのテストケースを実施しなければならないかを判断するために、自動的にアクセスされる方法でコンポーネントの関係を説明するコンピュータ可読媒体上のツールである。「自動多次元追跡可能性行列」を定める結合された関係情報は、特に、以下に説明する「テストケースカタログメンテナンス形式」を使用してテストケースの各々に対して入力される各テストケース又はソフトウエアモジュールに関する従属関係及び依存関係情報を含む。「自動多次元追跡可能性行列」は、複合ソフトウエアシステムのテストケースと他のコンポーネントの間の関係のデータベースとして記憶されるか、又は関連する各ソフトウエアモジュール又は他のコンポーネントに関する従属関係及び依存関係が、モジュールの1つ又はそれよりも多くにおける変更に対して影響を受けたコンポーネントの自動リスティングをサポートするように定義されるという条件で、あらゆる他の電子形式でこのような情報を含むことができる。
テストケースに関する情報は、必要な場合にテストケースに関する情報を受信し、次に「自動多次元追跡可能性行列」を更新するためにこの情報を使用するために「ウェブ」ベースの形式又は他の電子文書とすることができる「テストケースカタログメンテナンス形式」で入力することができる。「テストケースメンテナンス形式」は、あらゆる単一のテストケースに関する情報を受信して表示するための手段を提供する。一実施形態では、「テストケースカタログメンテナンス形式」は、以下のようなフィールドを含むことができる。
・テストケース記述子(タイトル、IDナンバー、短い説明、目的、コメント、複合のレベルのインジケータなど)、
・テストケースのためのトランザクション−テストケースが実行される場合に呼び出される一連のイベントの説明、
・従属関係リスト−所定のテストケースに続くテストケースのリスト、
・依存関係リスト−所定のテストケースに先行するテストケースのリスト、及び
・テストケース配信可能なもの−テストケースの実行をサポートするビジネス要件文書のリスト。
従属関係及び依存関係が追跡される方法の簡単な例として、仮説ERPシステムからの5つのテストケースの部分集合が、「自動多次元追跡可能性行列」での依存関係及び従属関係テストケースデータの入力の関連で調べられる。
図1Aは、アイデンティティフィールド111、121、131、141、及び151のそれぞれにテストケースアイデンティティZ−ZZ−999−01からZ−ZZ−999−05を有するテストケースのセット(それぞれ110、120、130、140、及び150)に関係した情報を提供する「自動多次元追跡可能性行列」の記録100の図式的な表示である。テストケースは、様々なトランザクション、すなわち、共にビジネス処理を表すことができる(1)「マスターデータ設定」112、(2)「直接調達」122、(3)「間接調達」132、(4)「受け取り」142、及び(5)「請求」152を示している。各テストケースは、固有の目的を有するが、それらを適切に試験するために実行の順序を設定すべきである。図1Aで示すように、テストケースは、最初に依存関係フィールド(113、123、133、143、及び153)又は従属関係フィールド(114、124、134、144、及び154)のそれぞれの依存関係又は従属関係を持たないように切り離される、言い換えると、それらの間にシーケンスが設定されていない5つの個々のテストケースが存在する。各テストケースは、ケースアイデンティティ(それぞれ111、121、131、141、及び151)、タイトル(112、122、132、142、及び152)、いずれかの他のテストケースからの依存関係がない場合は単に「開始」又はその均等物とすることができる依存関係フィールド(113、123、133、143、及び153)、及び他のケースがそれに対して従属関係でない場合は単に「終了」又はその均等物とすることができる従属関係フィールド(114、124、134、144、及び154)を示すボックスで表示される。これは、各記録がいずれかの依存関係又は従属関係が設定される前に「自動多次元追跡可能性行列」に現れる方法である。全テストケースシーケンスは、定められた開始及び終了を持たなければならず、テストケースシーケンスがERPのためのものなので、理論的には全テストケースが1つのシーケンスに関連付けられると予想される。
実際には、あらゆる従属関係と対応する依存関係の間に示す関係は、従属関係又は依存関係、又は両方の組合せに関連したフィールドにデータを入力することによって設定される。例えば、「マスターデータ設定」110(ケースZ−ZZ−999−01)とその2つの後継者ケース、すなわち、ケースZ−ZZ−999−02(120)とケースZ−ZZ−999−03(130)の間の関係は、「直接調達」(ケースZ−ZZ−999−02)(120)と「間接調達」(ケースZ−ZZ−999−03)(130)の両方が「マスターデータ設定」(ケースZ−ZZ−999−01)(110)に従わなければならないことを通知し、次に、後継者ケース、すなわち、ケースZ−ZZ−999−02(120)及びZ−ZZ−999−03(130)のための記録の依存関係フィールド123及び133に「Z−ZZ−999−01」(又は、そのケースを示すコード)を入力することによって設定されたことになる。代替的に、「マスターデータ設定」110(ケースZ−ZZ−999−01)を考えるオペレータは、「直接調達」120又は「間接調達」130のいずれかが「マスターデータ設定」に関連したデータによって必要とされるものに従って続くことができることを通知することができる。従って、オペレータは、次に「マスターデータ設定」の従属関係フィールド114に入力を行うことができ、「マスターデータ設定」が従属関係としてテストケースZ−ZZ−999−02及びケースZ−ZZ−999−03の両方を有することを示す情報を入力する。後者の2つのテストケースの依存関係フィールドは、次に自動的に更新されて、それらがケースZ−ZZ−999−01に共に依存していることを示している。
図1Bは、「マスターデータ設定」110(Z−ZZ−999−01)のテストケースが「直接調達」120(Z−ZZ−999−02)及び「間接調達」130(Z−ZZ−999−02)に先行すべきであることを示す入力に応じて(上述の「作業ストリーム」定義を参照されたい)、及び「請求」150(Z−ZZ−999−05)のテストケースが「受け取り」140(Z−ZZ−999−04)後に実行されるということを示す入力されたデータに応じて、図1Aからの「自動多次元追跡可能性行列」の記録100が変更される方法を示している。線及び矢印は、「自動多次元追跡可能性行列」の記録100の依存関係フィールド(113、123、133、143、及び153)と従属関係フィールド(114、124、134、144、及び154)の記録によって設定される関係を視覚的に示すための流れ図の技術の一般的な方式で描かれている。従って、テストケースZ−ZZ−999−01(110)からの2つの依存関係の追加は、依存関係を示す矢印によってケースZ−ZZ−999−02(12)及びZ−ZZ−999−03(130)をケースZ−ZZ−999−01(110)に繋ぐ線160の追加で示している。Z−ZZ−999−02(120)及びZ−ZZ−999−03(130)の両方のための依存関係フィールド123及び133は、それらが依存するケースとしてケースZ−ZZ−999−01(110)を列挙している。ケースZ−ZZ−999−01(110)のための従属関係フィールド114は、このケースが従属関係としてケースZ−ZZ−999−02(120)とZ−ZZ−999−03(130)とを有することを示している。図1Bは、ケースZ−ZZ−999−04(140)とケースZ−ZZ−999−05(150)との間の新しい関係を表す線164を示しており、ここで、後者は、前者に対して従属関係にある。ケースZ−ZZ−999−04(140)の従属関係フィールド144は、ケースZ−ZZ−999−05(150)を列挙しており、ケースZ−ZZ−999−05(150)の依存関係フィールド153は、ケースZ−ZZ−999−04(140)を列挙している。「自動多次元追跡可能性行列」の記録100へのデータ入力のこの段階では、テストケース166及び168の2つの別々のストリングが存在する。
本発明の追跡可能性行列ソフトウエアは、常に逆の関係を構築することによって依存関係と従属関係の間の整合性を維持している。従って、依存関係又は従属関係のいずれかの全てのエントリに対して元のエントリをミラーリングする第2の関係が構築される。第2のテストケースの依存関係フィールドに第1のテストケースの番号を入力することで、第2テストケース番号の第1テストケースの従属関係フィールドへの自動入力がもたらされる。この特徴は、従属関係及び依存関係データの内部の一貫性を提供し、整合性が「自動多次元追跡可能性行列」の相互に関連するテストケースデータで維持されることを保証する。
図1Cは、第1テストケース110(Z−ZZ−999−01)から最終テストケース150(Z−ZZ−999−05)への整合性のチェーンの完成を示し、これは、ここではテストケースZ−ZZ−999−04(140)をその従属関係フィールド124及び134にそれぞれ列挙しているテストケースZ−ZZ−999−02(120)及びZ−ZZ−999−03(130)に対して従属関係にあるとしてのテストケースZ−ZZ−999−04(140)と間の線162で示す関係の確立によって図1Bとは異なっている。
「自動多次元追跡可能性行列」ソフトウエアツールは、一般的に複数の関連したコンポーネントを含む。1つのコンポーネントは、テストケースに関する情報を見るためのグラフィカルユーザインタフェースを提供する「テストケースカタログ」とすることができる。「テストケース計画」ツールもまた、「自動多次元追跡可能性行列」ソフトウエアツールに組み込むことができる。トランザクション/プログラム追跡可能性を提供する「CSV管理」は、「自動多次元追跡可能性行列」ソフトウエアツールに直接組み込むことのできる別の特徴である。テストケース間の関係の視覚的な表示を提供するための「解析ロードマップ」(以下に説明する)は、「自動多次元追跡可能性行列」ソフトウエアツールに組み込まれる別の要素である。これらのコンポーネントは、以下で更に詳しく説明され、そこでは、本発明の実施形態からのスクリーンショットに対して「SAP R/3」を含む複合ソフトウエアシステムの試験のためのカスタマイズされたツールの関連で説明されるが、類似のツールを多数の複合ソフトウエアシステムに対して適用することができることを理解すべきである。カスタマイズされたツールは、「全てのリソース及び統合システムを利用する処理最適化」を表す「POLARIS」ツールと以下で呼ばれる。
図2は、品質を保証するために試験する必要がある機能をアドレス指定する全テストケース176の包括的なリストである「テストケースカタログリスト」174を特徴とする対話式ページ172を示す自動ツールの一実施形態(POLARIS)の「イントラネット」ページのスクリーンショット170である。ケースは、図のようにケース番号178によって列挙されている。図示の実施形態では、カテゴリフィールド180も表示され、ケース記述182も示されている。画面の左側のリンク184は、新しいケースを作成する機能又は既存のケースに新しい特徴又はトランザクションを追加することができる機能へのアクセスを提供するか、又は使用可能なトランザクションのリストを提供する。テキストボックスは、特定のケース又は特徴への迅速なアクセスを提供する。
テストケースの部分集合186及び188は、必要な場合に表示することができる。例えば、ドロップダウンボックス190により、オペレータは、テストケースに関連した作業ストリームに従って表示されたケースにフィルタを掛けることができる。フィルタは、全てのケースを再度表示させるために解除することができる。
テストケースは、一般的にプロジェクトの開発段階中に定義されて作成され、設計によって規定される機能性を反映すべきである。一般的に、テストケースは、その機能がビジネスによって除かれた場合にのみカタログから取り除かれることになる。
図3は、「POLARIS」ツールでの「テストケースカタログメンテナンス形式」192のスクリーンショット170を示している。テストケースのためのカタログフィールドは、ケース番号のフィールド178、試験スクリプトのファイルネーム196、複雑性198(ケースがどのくらい複雑であるかを示すレベル)、ケースの記述200、ケースの目的202、コメント204などを含む「ケースカタログ」194というレベルの付いたテーブル領域内で定義される。「隔離レベル」フィールド206は、複合ソフトウエアシステムのどの態様がテストケースの実行中にアクセス可能であるかに関する情報を提供する。例えば、入力された値は、全SAPトランザクションが使用可能であること、又はカスタマイズされた「会社」機能が使用可能であること、又は規制が課せられていないことを示すことができる。
ケース依存関係及び従属関係の情報は、「ケース依存関係」208又は「ケース従属関係」210それぞれをオペレータがクリックした時に現れるテーブル(今は隠れている)で提供される。トランザクションコード212と配信可能リファレンス214のテーブルも、今は表示されていないが提供される。配信可能リファレンス214は、テストケースが接続されるビジネス処理に関する情報を含むことができる。例えば、フィールドは、前に定められたようなBPP、BPD、BPF、又はBCDのいずれかを識別する固有に割り当てられた配信可能コードを含むことができる。
図示された例でのテストケース複雑性フィールド198は、以下の定義に基づいてH(高)、M(中)、及びL(低)から選択された値を有することができる。
(H)高=複合ビジネス処理や複合のカスタマイズされたプログラム(例えば、FRICE)のために難度が高いと考えられ、実行するのに必要な一連のトランザクションが5つ又はそれよりも多く、又は適正に試験するのに必要な試験データ変形の数が10よりも多い。
(M)中=難度が平均であると考えられるか又は処理が公知であり、実行するトランザクションが5よりも多く、適切に試験するためのデータの試験変形が10よりも少ない。
(L)低=処理が簡単明瞭で公知であり、実行するトランザクションが1から2であり、3つ又はそれよりも少ない試験変形が適切に試験されることになる。
「テストケースカタログメンテナンス形式」192は、この場合のように、テストケースに関して必要とされるあらゆる情報を提供するようになっている。スクリプトを実行する方法の詳細又はスクリプトに関係した他の情報に対して実際のテストケーススクリプトを開くために、試験スクリプトファイルネームフィールドの隣に「GO」ボタンがある。「配信可能リファレンス」エリア214の下のフィールド(図示せず)は、このテストケースをサポートするビジネス要件文書を表示するために「GO」ボタンを有し、トランザクションコードエリア(図示せず)の各トランザクションのそばに「GO」ボタンがあり、これは、トランザクション/プログラム周辺の詳細な情報まで誘導する。(代替的に、フィールドに関連したボタンがクリックされた時に起こるアクションを一意的に識別するために、「GO」ボタンの単一の様式の代わりに、固有のアイコン又は識別子を使用することができる。)
テストケース番号178の隣の流れ図アイコン218は、以下に説明する関連のテストケースの「解析ロードマップ」を作成するためにクリックされる。
図4は、「テストケース特性リスト」222のスクリーンショットである。「自動多次元追跡可能性行列」ソフトウエアツールのこの部分は、テストケース178のサポート計画を支援することができる。このツールによってサポートされるテストケース計画には多くの場合に2つの主な目的がある。
1.開発又は拡張のために試験計画を調整する場合に対するリソースと時間を管理するために、作業ストリームの詳細なテストケースレベルタスクを提供すること。
2.ステータスに対して終了した作業のテストケースレベルの詳細を提供すること。
「テストケース特性リスト」222は、試験の現在の範囲に対してサイクル番号230を割り当てられた全試験サイクルの完全なリスト、及び使用可能なテストケース178を提供する。終了した状態での特定のサイクルは、ツール管理者の指示で保存されるか又は削除される。サイクルは、様々な目的のために(例えば、APの新しいバージョンを実行するため、新しいプロジェクトの結果を試験するため、他のソフトウエア又はハードウエアシステムでの更新を処理するためなど)実行されるテストケースの特定の反復又は群を示している。様々な目的のための試験のサイクルは、時間の計画された期間に対応することができ、また特定の試験環境又はテスターの群を示すことができる。また、テストケース178の記述182も表示される。論理削除インジケータ232は、テストケースの物理的な削除なしにサイクルからテストケースを取り除くための任意選択肢(「Y」に設定した場合)を提供する。これは、例えば、テストケースが古くなったか又は他の理由のために使用してはならない場合に望ましい。
フィルタリング領域224は、特定のサイクル、作業ストリーム、及び論理的に削除されたテストケースを分離するために使用可能なフィルタ任意選択肢を提供する。使用される選択基準の組合せに応じて、適切な検査ボックスをクリックすべきである。
ここでもまた、テストケース番号178は、その特性の特定の詳細に進むためのジャンプ機能として作用する。また、特定のサイクル及びケースが分っていて適切な領域226及び188に入力される場合、テストケース特性への直接アクセスが可能である。
図5は、テストケース特性238に情報を提供する「ケース特性メンテナンス形式」236のスクリーンショット170を示している。この画面上のフィールドは、テストケース178の詳しい構築及び実行を計画し、割当て及び推定を行うために使用される。管理者は、全体的なプロジェクトの進行を測るために完了インジケータを使用することができる。
テストケースネームの隣の「GO」ボタンは、試験カタログ情報に直接ジャンプすることができる。テストケース番号フィールドの左側の解析アイコンは、「解析ロードマップ」(以下に説明する)を作成する。
日付フィールドの隣の「…」ボタンは、左ボタンをクリックした時に選択日付のためのポップアップカレンダーを示すものである。
「テストケース特性」画面172上の全情報は、プロジェクトスケジュールのベースライン値(試験アクションの計画に関係した情報)を除いて作業ストリームによって修正可能である。これらのフィールドは表示されるが、これらのフィールドへの入力は阻止される。ツール管理者は、これらのフィールド全体で制御を維持する。
図6は、「トランザクションメンテナンス形式」240のスクリーンショット170を示し、複合ソフトウエアシステムの特定のトランザクション242又はソフトウエアモジュールに関する情報を提供する。各トランザクションは、トランザクションコード244、トランザクションタイプ248(例えば、SAP、カスタムなど)、組織の所有者などを割り当てられる。トランザクションジャンプフィールド250により、ユーザは、トランザクションコードを入力することによって他のトランザクションに迅速にナビゲートすることができる。トランザクション記述246及び他の情報は、スクリーンショット172に示すグラフィカルユーザインタフェースに提供される。CSV位置調整のためのフィールド254も提供される。CSV関連性は、トランザクション/プログラムレベルで管理されることになる。トランザクション/プログラム(供給業者又はカスタム開発された)がテストケースで使用される場合、トランザクションは、「自動多次元追跡可能性行列」に捕捉されることになる。この時点で、「トランザクションメンテナンス形式」のCSV及び電子署名インジケータは、一般的に左が空白になる。管理者は、関連性に関してトランザクション又はプログラム毎に管理し、CSVインジケータ252を適切に設定し、その判断の理由を提供することができる。
一般的に、管理者は、この画面への全ての更新を処理することができるが、情報は、「自動多次元追跡可能性行列」ツールの全ユーザによる表示のために使用可能にすることができる。
「割り当てられたケース」256(図示せず)のドロップダウン情報は、このようなトランザクションを用いる全テストケースを列挙することができる。この付加的な情報は、「割り当てられたケース」情報256が拡張又は開かれた後のスクリーンショットの下の部分を示す図7に表示される。各「GO」ボタンは、テストケースの詳細に対してそのテストケースにジャンプする。各「解析」アイコンは、開始ポイントとしてそのテストケースから「解析ロードマップ」を作成する。
従って、「自動多次元追跡可能性行列」は、トランザクション又はソフトウエアモジュールに関連した全テストケース178を自動的に判断するための手段を提供し、トランザクションに関する表示された情報から各テストケースの詳細にアクセスするための手段を提供する。複数のレベルにわたってソフトウエアモジュールとテストケースの間の関係を追跡することで、変更の影響(ソフトウエアモジュールの変更によって影響を受けるケースの範囲)を評価することができる。
図8は、図1のテストケース番号178の左側の解析アイコン218をオペレータがクリックした時に表示されるダイアログボックス262を示す図3の「テストケースカタログメンテナンス形式」192に関連したスクリーンショット170である。ダイアログボックスは、オペレータにサイクルの選択を指示する。この選択は、作業ストリームによって開発されたスケジュールにテストケースを重ねるものである。サイクル情報を選択した後で、「解析ロードマップ」は、図9に示すように表示される。
図9は、「解析ロードマップ」266のスクリーンショット170を示しており、現在選択されている反転表示されたテキストケース268のテストケース間の内部関係の視覚的な表示である。その目的は、テストケースの依存関係及び従属関係を通じて一段上及び一段下の関係を取り、処理のマップを作ることである。多くの複合ソフトウエアシステムのテストケース及び内部関係の個数が原因で、理解を支援するために解析ロードマップを部分集合させるための技術が使用された。使用された技術は、開始ポイントとしていずれかの所定のテストケースを取り、依存関係では1レベル上を読み、従属関係を通じて5レベル下を読む。(必要に応じて、例えば、レベルアップのための0から25までのいずれかの整数及びレベルダウンのための2から25のいずれかの整数のようなレベルアップ及びダウンのための数のあらゆる他の組合せも使用することができる。)1レベルアップ及び5レベルダウンの使用は、7レベルの内部関係を示す表示を作成する。表示されたものに先行する付加的な情報を必要とする場合、最も高いレベルが選択され、テストケースのチェーンを上に進むために再解析される。現在のロードマップを超えた付加的な情報を必要とする場合、更に別の解析のためのエリアを表すチェーンの下のテストケースが選択される。
「解析ロードマップ」266の表示画面に関連したグラフィカルユーザインタフェースでは、テストケースが選択され、それに関連した上流及び下流のテストケースが自動的に表示される。2つの上流レベル及び3、4、5、6、7、又は8つの下流レベルを示すような関連のケースを表示するための他の規則が履行される。
図9の「解析ロードマップ」では、使用される当業技術で公知の多くの他のグラフィカルシステム(例えば、ブランチ及びツリーダイアグラム、スポーク及びハブダイアグラム、リンクしたバブルダイアグラムなど)を通じて多くのコンピュータユーザに馴染みがあるために、フォルダ表示技術が使用される。フォルダテーマにより、必要な場合にアイコン又はテキストの行をクリックすることによって詳細を容易に拡張するか又は壊すことができる。一実施形態では、プラス記号を左ボタンでクリックすることによって詳細が下に拡張されるプラス手段を有するフォルダがある。詳細が表示されてマイナス記号がフォルダに付いている場合、詳細は、マイナス記号を左ボタンでクリックすることによって壊される。これは、詳細のカスタム化を各ユーザが見ることができるようにするものである。
テストケースの隣の文書アイコン286は、この下に従属関係テストケースが存在しないことを示している。言い換えると、これは、そのストリングの最後である。テストケースの隣の下向き矢印アイコン288は、ケースのシーケンスに更に別の詳細があることを示しているが、その下のテストケースを見るために開始ポイントとしてこのケースを使用する解析を行う必要がある。
線の反転表示は、解析が開始されたテストケース268を示している。図9では、テストケースT−PR−002−02は反転表示されている(268)。1つ上のレベルは、テストケースZ−ZZ−005−06の「間接調達」である。フォルダアイコンとしてその中のいくつかのレベルを有して示されているテストケースT−PR−002−01である「不十分な在庫のためにMRPを通じた在校材料の間接調達」、及び同じく親テストケース内のテストケースT−PR−002−03である「MRP及びオーダー承認による材料の間接調達」を含む、親テストケース内の他のテストケースである「間接調達」が示されている。テストケースT−PR−002−03内の依存関係はまた、図9のスクリーンショットに示されている。
「解析ロードマップ」の各テストケース番号178は、詳細へのジャンプ機能として働き、そこから情報の異なる部分集合を達成するために再解析が実行される。
一般的に、「自動多次元追跡可能性行列」のテストケース間の関係に関する情報は、「解析ロードマップ」266に図式的に表示される。1つの手法では、「解析ロードマップ」は、グラフィカルユーザインタフェースを備えたコンピュータシステムがフォルダ内のファイルを表示するのと非常に似た方式でテストケースを表示する。特に、「解析ロードマップ」は、「Windows(登録商標)」オペレーティングシステム(例えば、Windows(登録商標)2000又はXP(登録商標))内の「Windows Explorer」がフォルダの要素としてファイルを表示する方法に類似する場合がある。このツールは、全関係をマップアウトし、それらを論理的なフォルダダイアグラムにレイアウトするために依存関係及び従属関係を使用する。「解析ロードマップ」の一実施形態では、一連のテストケースが縦のリストに表示され、1行に1つのテストケースと、テストケースの行のフォルダ又は文書の表示のようなアイコンとが示されている。フォルダアイコン284は、例えば、それらのケースをその中に付加的なテストケースを付けて表示するために使用することができ、文書アイコン286は、その中に付加的なケースが付いていないテストケースを表示することができる。
「自動多次元追跡可能性行列」のテストケースのどのチェーンの最も低いレベルも単一のソフトウエアモジュールを評価するテストケースである場合、このような最も低いレベルのテストケースと他のテストケース(多くのトランザクションを含むケースを含む)との間の関係は、個々のソフトウエアモジュールとテストケース及び任意的に文書化のような他のコンポーネントとの間の関係を確立する。代替的に、一部のチェーンにおける最も低いレベルのテストケースは、単一のソフトウエアモジュール又はトランザクションを試験する必要はないが、より複雑な場合がある。しかし、個々のソフトウエアモジュール又はトランザクションは、このようなケースに関連付けることができ、これによってソフトウエアモジュール又はトランザクション及び様々なテストケース間の関係が自動的に判断される。一般的に、「自動多次元追跡可能性行列」は、テストケース間、並びに複合ソフトウエアシステムの他のコンポーネント間の関係を確立するために使用される。
図10は、図1Cの「自動多次元追跡可能性行列」情報の「解析ロードマップ」を表示しているスクリーンショット170を示し、テストケースZ−ZZ−999−02(120)の「直接調達」が、「解析ロードマップ」がそこから準備された開始テストケースとして反転表示されている。1つ上のレベルに進むと、「マスターデータ設定」110(テストケースZ−ZZ−999−01)が含まれる。同じレベルのものは、「直接調達」120である。「間接調達」130及び「直接調達」120の両方は、依存関係の2つのレベルを有するものとして示されている。各レベルの依存関係は、同じ2つのテストケースである「受け取り」140及び「請求」150である。
図11は、テストケースとテストケースによってサポートされるビジネス処理との間の接続を示す「エンティティ関係ダイアグラム」290を示している。このダイアグラムは、複合ソフトウエアシステムのコンポーネントと関連した開発又は実行プロジェクト間の関係を維持する「自動多次元追跡可能性行列」の構造間の論理的関係を示している。「エンティティ関係ダイアグラム」290では、「テストケースカタログ」292は、依存関係294、従属関係296、及び各テストケースに対して実行されるトランザクション(ソフトウエアモジュール)のための関連するトランザクションコード298にリンクされており、トランザクション記述300は、各トランザクションコード296に関連付けられている。ケース特性302はまた、「テストケースカタログ」292を通じて各ケースにリンクされ、接続を表している接続バー316のような付加的な情報を提供する。ケースカタログ292及びビジネス処理306及びプロジェクトの目的(「配信可能リファレンス」314)間の関係は、コネクタ(「Bp_コネクタ」304)によって維持され、これは、従来の追跡可能性行列(ソフトウエアの目標とされる機能性がソフトウエアの要素によって達成される方法を示す)によって達成される機能である。従って、「自動多次元追跡可能性行列」は、複数のレベルにわたってテストケースとトランザクション/ソフトウエアモジュールとの間の関係を処理する場合に大きく改良された柔軟性、追跡可能性、及びパワーを提供することに加えて、公知の追跡可能性行列手法の特徴を含むことができる。
セキュリティロール308、作業ストリーム310、及びテスター312に関する一般的な情報は、図11に示されている「エンティティ関係ダイアグラム」290の実施形態で提供され、これは、試験作業のためのプロジェクト又は試験環境(例えば、サイクル)の機能とすることができる。あらゆる他の要求される情報は、適切な場合に図示のエンティティに表示又はリンクされる。
図12は、本発明の方法の1つの態様を示す「自動多次元追跡可能性行列」320を使用する方法の流れ図を示している。本方法は、複合ソフトウエアシステムのコンポーネントの修正324によって322で始まる。個々のコンポーネントの試験326が次に続き、コンポーネントの独立した態様が他のソフトウエアモジュールによるその性能の試験の前に機能していることを保証することができる。次に、ソフトウエアコンポーネントへの修正は、複合ソフトウエアシステムのコンポーネント間(すなわち、「追跡可能性行列」のテストケース間)のいずれかの関係328を変更したか否かを判断すべきである。いずれかの関係が変更された場合(例えば、新しい依存関係又は従属関係)、「追跡可能性行列」は、それに応じて更新される(330)。「自動多次元追跡可能性行列」ツール332は、次に、「多次元追跡可能性行列」のどのテストケースが修正されたコンポーネントによって影響を受けるかを判断するために用いられ、影響されるか又は「疑われる」ケースのリストをもたらす(334)。これらのケースの全ては、次に、回帰試験で実行されるか、又は部分集合がケースの重要性又は修正されたコンポーネントへの依存関係のチェーンの近似性に基づいて選択される(336)(例えば、修正されたコンポーネントを試験するケースの段階の2つ、3つ、4つ、又は5つ、又は何らかの他の所定の数に入るテストケースだけを要求することができる)。一般的に、試験を実行する段階は、テストケーススクリプトの使用を必要とする。スクリプトが試験を実施するために実行された(340)後に、出力結果が解析され(344)、いずれかの変更がコードに必要かを判断するために予想される結果と比較される(346)。変更が必要でないことを結果が示す場合、コンポーネントを修正して試験するタスクは、348で終了すると考えられる。更に別の変更が必要な場合、修正を必要とする複合ソフトウエアシステムのコンポーネント又は複数のコンポーネントを識別する段階342が取られる(一般的に、特に複合ソフトウエアシステムがコンポーネントの修正の前に満足に作動していた場合、最近修正されたコンポーネントは、更に別のデバッグ又は他の修正を要求する可能性が大きい。)次に、「自動多次元追跡可能性行列」の支援でコンポーネント修正及び試験のサイクルを進めることができる。
図12の流れ図又は本明細書のあらゆる他の流れ図に関して、適切な場合には、本明細書の流れ図で連続したものとして示される2つの段階は、同時に、一緒に(すなわち、単一の段階に結合されて)、又は並行して実行することができ、更に他に指示がない限り、2つ又はそれよりも多くの段階の順序が連続することがそれほど重要でない場合、2つ又はそれよりも多くの段階は、当業者が適切と考えるどのような順序でも実行することができる。
図13は、「自動多次元追跡可能性行列」320を使用する方法の流れ図を示し、複合ソフトウエアシステムの修正を含む作業プロジェクト中に監査トレールの許可及び作成を監督するための管理エンティティ374への通信を示している。このようなプロジェクト中に、グループメンバ、チーム、又は他のエージェントは、複合ソフトウエアシステムでのコードを修正するための許可を要求する(350)。許可を受信した場合(352)、コードが修正される(356)(修正されない場合、プロジェクトは、更に別のアクションが取られるまで保留される)。コードの修正356後又は修正中のいずれかで、文書化は、タイムスタンプの付いた保存されたファイルを管理サーバにダウンロードし、これによって(又は他の手段によって)行われた変更を列挙し、元の及び修正されたコードセグメントを与え、変更の目的を識別し、関連したテストケースを特定するなどを必要とする管理エンティティ374に提供される(358)。コードを修正している当事者又は他の当事者は、次に、「自動多次元追跡可能性行列」が更新を必要とするか(例えば、修正された「追跡可能性行列」で識別された関係のいずれかを有するか、又は作成された新しい関係を有するか)どうかを判断すべきである(360)。そうである場合、「追跡可能性行列」は更新され(362)、更新は、管理エンティティ374と共用され、全ての要求される情報を提供する。修正されたコードは、次に試験される(364)(「追跡可能性行列」を更新する必要がなかった場合、「追跡可能性行列」を更新する段階362は省略され、修正されたコードが直接試験される(364))。試験活動及び結果は、管理エンティティ374と共用される。コードの性能が許容できないと分かった場合(366)、コードは、再度修正する必要があり(356)、次に、段階358から366が繰り返される。性能を許容することができる場合(366)(例えば、回帰試験の合格、又は回帰試験に新しく設計された試験を加えたものの合格)、検証レポートが作成され(368)、管理エンティティ374と共用され、コードの完全な修正及び試験を文書化する。次に、完全に修正されたコードの実行の許可が要求される(370)。承諾された場合、コード又は修正されたモジュールのバージョン番号の更新を必要とするコードが実行される(372)。場合によっては、将来の回帰試験のための新しいベースラインが必要とされて作成される(図示せず)。
管理エンティティ374は、人間の監督者又はプロジェクトマネージャと関連するハードウエア(例えば、サーバ及びネットワーキングシステム)及びソフトウエア(例えば、関係データベース、電子署名ツール、タイムスタンプ及びアーカイブソフトウエア、プロジェクト管理ツール、CSVシステムなど)を含むことができる。
別の意味では、本発明は、選択されたテストケースを実施することによって試験される複合ソフトウエアシステムのプログラムモジュール間の関係に関するデータの入力を文書化する方法を含む。従って、オペレータが他のコンポーネントに対するテストケースの関係に関する情報を入力するために「テストケースカタログメンテナンス形式」にアクセスする場合、記録が「監査データベース」(図示しないが、「管理エンティティ」374に属する)に作成され、誰が変更を入力したか、どのような変更か、及びいつ変更が入力されたかを記録する。「監査データベース」はまた、問題のテストケースのための「テストケースカタログ」エントリの元の及び修正されたバージョンの保存されたコピーへのポインタを含むことができる。
図14は、既存のソフトウエアのためのパッチを作成する場合に「自動多次元追跡可能性行列」320を使用する方法の流れ図である。本明細書で使用される時の「パッチ」は、一般的に、プログラム又はソフトウエアシステムの新しいリリースの完全なインストレーションを要求するのではなく、複数のモジュールを含むプログラム又は複数のプログラムを含むソフトウエアシステムの1つ又はそれよりも多くの既存のソフトウエアモジュールを実行する時に修正又は交換する実行可能プログラムを意味する。編集されていないプログラムコードがユーザに使用可能であるシステムでは、パッチは、プログラムコードの部分を交換するためにテキストの1つ又はそれよりも多くのセグメントを必要とする可能性があり、その後、ユーザは、実行可能ファイルを作成するためにパッチされたコードを編集することができる。パッチは、1つ又はそれよりも多くの既知のバグを修復することができ、他のハードウエアを備えた改良された互換性のためのドライバを修正することができ、新しい機能(例えば、テキスト入力フィールドのためのスペル検査を含む)を追加することができ、美的センスを向上させ(例えば、いくつかのモジュールに関する修正されたグラフィック)、前から使用可能であった機能を制限することができ、セキュリティーを拡張することなどができる。パッチは、ソフトウエアシステムの新しいリリースと比較して、比較的適用範囲が狭い傾向がある。
図14の方法320では、パッチングに適切な目的が識別される(400)(例えば、バグの訂正など)。一般的に、これは、要求される作業の範囲及びパッチとしてのリリースの適性の検討にリンクした問題の文書化、及び、リンクしたプロジェクトを始めるための管理エンティティ(図示せず)からの適切な許可の受信を必要とする。修正する必要があるモジュールが識別される(402)(これはまた、パッチングに適する目的を識別する段階と同時に起こることがある)。「自動多次元追跡可能性行列(T.M.)」は、変更によって影響を受ける可能性のある他のソフトウエアモジュールを識別するために使用される(404)。この時点で、任意的な段階として、影響を受ける可能性があるモジュールに基づいて与えられたプロジェクトの範囲に対してパッチが適切であるか否か(406)を考えることが適切な場合がある。パッチがもはや適切と考えられない場合、提案された変更は、パッチの形式にではなく、次のソフトウエアリリースに含めることができる(408)(この場合、変更を実行する、他の変更及び追加を加える、修正されたコードを試験する、リリースを承認する、及び新しいリリースを出すなどのいくつかの付加的な段階を実行することができ、そのどれも図示していない)。パッチが適切である場合、パッチが作成される(410)。当業者は、自動ツールを使用して修正されたソフトウエアモジュールを元のソフトウエアモジュールと比較し、実行可能なコードを自動的に作成し、元のモジュールのバイナリコードの変更された部分を交換するか、又はツールを使用してインストレーションソフトウエアを作成して元のモジュールを修正されたモジュールと交換するなどのようなパッチを作成するために取ることができる様々な手法を理解するであろうし、ユーザによって次に編集される編集されていないコードにパッチが適用される場合に、同様の手法を実行することができる。
パッチが作成された410後で、パッチされたコードが試験される(412)。これは、パッチの目的が満たされたことを保証するために新しいか又は修正された機能の手動試験、それに加えて前から機能していたコードがなお予想されるように機能することを保証するための回帰試験を伴う場合がある。他の影響を受けたモジュールを識別する(404)ための「自動多次元追跡可能性行列」の前の使用からの結果は、回帰試験で実行されるテストケースを識別するために加えられ、代替的に、影響を受けたケースの範囲がその時間によって異なる可能性があり、パッチが必要とされた予想しなかった変更のために実際には作成されるので、回帰試験を行う段階412はまた、回帰試験412で試験する必要があるテストケースを識別するために、「自動多次元追跡可能性行列」(例えば、「解析ロードマップ」ツールの形式で)を使用する段階を含むことができる。試験の結果が許容可能な性能を示す場合(414)、プロジェクトは、パッチのリリースを計画する段階418、パッチを出す段階420(例えば、ダウンロードのための「インターネット」に接続したサーバでそれを使用可能にする段階、又はCD−ROM、フロッピーディスク、電子メールアタッチメントのような他のコンピュータ可読媒体でそれを提供する段階)、及び段階408に関連したもの(図示せず)に類似の段階を伴う場合があるソフトウエアの次のリリースにパッチの修正を組み込む段階422のような段階に進むことができる。
一実施形態では、完全に試験されて承認されたソフトウエアパッチは、目標コンピュータを更新するためにネットワーク接続を通じてパッチを自動的に適用することなどにより、1つ又はそれよりも多くのコンピュータのコードを自動的に更新するために使用される。代替的に、更新は、目標コンピュータのユーザ又は管理者による手動アクションを要求することができる。例示的なERP更新システムの原理は、本明細書に矛盾しない範囲で本明細書において引用により組み込まれている、2004年11月1日付けで閲覧されるhttp://www.peoplesoft.com/media/en/pdf/white_paper/enterprise_wp_1004.pdfで入手可能(登録後)である「PeopleSoft企業の全所有権経験」という名称のホワイトペーパー、2004年10月、「PeopleSoft、Inc.」(プレサントン、カリフォルニア)で与えられている。
図15は、修正するソフトウエアモジュールを選択する段階を作成する場合に「自動多次元追跡可能性行列」320を使用する方法の流れ図である。必要とされるソフトウエア修正が識別された場合(480)、当業技術に精通したプログラマーには、変更を完全に実行するために1つ又はそれよりも多くのソフトウエアモジュールのどれが修正されるかを選択することができる時間がある。例えば、仮説的電子商取引アプリケーションでは、ユーザのアイデンティティを前の通信販売顧客情報と比較する機能は、ログインモジュール、クッキー読取モジュール、チェックアウトモジュール、又は電子商取引ソフトウエアシステムの課金モジュールに組み込むことができる。このような判断は、多くの場合に、利便性に基づいて行われるか、又はプログラマーの個々の好み又は他の基準によって導かれる。過去に頻繁に見落とされてきたのは、2つ又はそれよりも多くの許容可能な選択肢の間の選択が予想されなかった方法で他のソフトウエアモジュールにいかに影響を与える可能性があるか、又は選択が次の試験、特に回帰試験のコストにいかに影響を与える可能性があるかということである。このような判断を行う場合に有用になる1つの基準は、他のモジュールに与えるソフトウエア変更が有する影響の程度である。より具体的には、プログラマーが、修正するために2つ又はそれよりも多くのモジュール間で選択する場合、第1モジュールの従属関係及び依存関係は、他のモジュールの従属関係及び依存関係よりもかなり小さい数の他のモジュールを含み、これは、修正するために第1モジュールを選択することが回帰試験のより少ない需要(コスト的に低い)をもたらす傾向があり、一般的に、多くの他のモジュールの性能を不意に変える可能性を低減させることができる。
図15の方法320では、必要なソフトウエア修正が識別された(480)後に、ソフトウエア変更が選択される2つ又はそれよりも多くの識別されたモジュール間で選択が行える状況下でモジュールが識別され(482)、本発明の「自動多次元追跡可能性行列」は、最も低い1つ又は複数のインパクトモジュールを識別するために使用される(484)。これは、影響を受ける可能性のある他のモジュールの数(例えば、依存関係の1、2、3、4、5、又はそれよりの上のレベル内で及び任意的に従属関係の1レベル又はそれよりも上)、及び/又は影響を受けたケースのセットに対する回帰試験の規模又はコスト又は複雑性の推定に基づくモジュール全てのランク付け段階を含むことができる。段階482から識別されたモジュールの最も低い又はより低いインパクトモジュールを識別した(484)後で、1つ又はそれよりも多くのモジュールの選択が段階484で提供される情報に基づいて行われる(486)。選択された1つ又は複数のモジュールは、最も低い1つ又は複数のインパクトモジュール、又は、最も大きい影響を持たないが、コードのアクセス可能性(例えば、ソースコードが制限される場合がある)、ソフトウエアプロバイダとの契約上の関係、修正する場合の困難度、モジュールの他の態様との可能な相違などのような他の考慮が原因で最も低い影響を必ずしも持たないモジュールとすることができる。次に、提案される変更が行われ(488)、ソフトウエアの性能が許容可能であることを保証するために回帰試験、並びに必要に応じて他の試験が実行される(490)。ソフトウエアは、次に、実施される(図示せず)、リリースされる等々が可能である。
図16は、複合ソフトウエアシステムで回帰試験を行う方法を示している。更に別の変更が複合ソフトウエアシステムで行われる前に、ベースラインが設定される(1000)。ベースラインは、テストケース、テストケースによって使用されるデータセット、及びテストケースの既知の結果の組合せである。ベースラインは、前に設定された性能が維持されているかを調べるために、回帰試験からの次に得られた結果を比較するための手段を提供する。ベースラインを確立する処理は、テストケース及びデータセットを組み立てるのにかなりの努力を必要とする可能性があるが、当業者は、このようなタスクを容易に実行することができるであろう。ベースラインの確立に続いて(1010)、複合ソフトウエアシステムが修正される(1010)。修正は、供給業者からの更新の組込み、インタフェースの改良、新しいハードウエア又はドライバの追加、ネットワークの拡張、オペレーティングシステムの更新、回帰試験によって試験される範囲外の機能のための新しいモジュールの組込み、バグ訂正などを含むことができる。
ソフトウエアシステムへの修正1010は、一般的に、1つ又はそれよりも多くのテストケースに関連した1つ又はそれよりも多くのソフトウエアモジュールの変更を含むことになる。「自動多次元追跡可能性行列」は、次に、複合ソフトウエアシステムを試験するために実行する必要があるテストケースを選択し、前に設定された機能がまだ使用可能であり、かつ適切に作動していることを保証するために用いられる(1020)。一実施形態では、「自動多次元追跡可能性行列」に関連したコンピュータ化された「解析ロードマップ」を使用して、影響を受けたテストケースを実行のために選択する。
回帰試験のためのテストケースが選択された状態で(1020)、回帰試験が実行される(1030)。これは、自動、手動、又はこれらを組み合わせたものによって行われる。回帰試験の結果は、次に、エラーフラグ(ベースラインの予想される結果と回帰試験の実際の結果との間の識別可能な相違)があるか否かを判断する(1040)ためにベースラインと比較される。エラーフラグがない場合、回帰試験は正常であり、プロジェクトのこの段階で終了することができる(1080)。エラーフラグがある場合、相違は、回帰試験がベースラインとは異なる日付で実行されたという事実のために容易に説明可能な相違であるような、許容可能なものである場合があるということが可能である。例えば、検査作成モジュールの実行は、検査要求の記録に現在の日付を配置することができ、これは、ベースラインの対応する記録とは異なることになるが、予想されるか又は容易に説明可能な方法においては、それは、訂正を必要とするエラーを示すものではない。すなわち、日付特定のフラグは、フィルタを掛けることができ(1050)、又は、より一般的には、「予想される」相違は、ベースラインの機能がまだ存在しているかを判断する際の考慮から削除することができる。(多くの実施形態では、予想される相違の除去は、エラーフラグの検査の段階1040に一般的に含まれると考えられるが、明確にするためにここでは明示的に示されている。)予想されるエラーフラグのフィルタリング1050の後で、回帰結果にまだエラーフラグがある場合には、エラーは、恐らくシステムに持ち込まれている。エラーは、次に、公知の技術(デバッグ、プログラムスライシングなど)を使用して識別及び修復されるべきである(1070)。エラーが修復されたと考えられる状態で、テストケースは、「自動多次元追跡可能性行列」を使用して再度選択される(1070)。エラーを修復する段階が、前に選択されたテストケースによって網羅されるモジュール以外のどのモジュールも伴わない場合、段階1070は省略される。回帰試験は、まだエラーフラグがあるか否かを判断する(段階1040、1050、及び1060)ために実行される(1030)。エラーフラグがない場合、試験は終了する(1080)。
図17は、回帰試験がその方法に沿ったチェックポイントを有する段階で実行される、「自動多次元追跡可能性行列」で複合ソフトウエアシステムを試験する方法を示している。図16のように、ベースラインが設定され(1000)、複合ソフトウエアシステムが修正され(1010)、「自動多次元追跡可能性行列」が、修正に応じて試験する必要があるテストケースを選択するために使用される(1020)。全体的な回帰試験を実行するのではなく、選択されたテストケースのトランザクションの部分集合が実行される(1032)。部分集合は、1つ又はそれよりも多くの全体的なテストケースを含むことができるか、又は1つ又はそれよりも多くのテストケースに対して実行されるトランザクションの部分だけを含むことができる。部分集合の使用により、複合ソフトウエアシステムの特定の部分が作動しているのを保証するためにチェックポイントを設定することができる。試験されたトランザクションの選択部分(又は、テストケースの部分集合)からの結果は、次に、予想される結果と比較される(一実施形態では、ベースライン自体が、実行されるトランザクションの部分集合又はテストケースに従って分類された予想される結果を含むことができる)。エラーフラッグがある場合、エラーの原因が識別されて更に修復され(1070)、トランザクションの部分集合が再試験されるが(1032)、考慮すべきであるケースのセットを変更したエラーの原因を修復する場合(1070)、「自動多次元追跡可能性行列」は、ケースの部分集合が再度選択されて試験される(1032)回帰試験のためのテストケースを再度選択するために使用される(1020)。エラーの検査段階1040がエラーフラッグを生じない場合、テストケースが終了する(1072)までトランザクションの次の部分集合が実行され(1032)、エラーに対して再度試験されて(1040)処理を1080で終了する。
SAPシステムの試験
SAPソフトウエアシステムは、本発明のツールで試験される複合ソフトウエアシステムの広く使用される例を表している。SAP統合の基本的な原理は、当業者には公知であり、以下のリソースに単に例示的に開示されている。
・「SAP R3」の成功した実施例:ニューヨークのNorbert Welti著「ERPプロジェクトの実際の管理」、Addison−Wesley Pub Co.、1999年(ISBN:0201398249)。
・「SAP R/3」実施ガイド:インディアナポリスのBradley D.Hiquet、Kelley−Levey、Associates、及びAnthony F.Kelly著「Sapを理解するための管理者のガイド」、Macmillan Technical Publishing、1998年(ISBN:1578700639)。
・「SAP R/3」処理志向実施例:ニューヨークのGerhard Keller及びThomas Teufel著「反復処理プロトタイピング」、Addison−Wesley Pub Co.、1998年(ISBN:0201924706)。
・「SAP R/3」システムの試験:Gerhard Oberniedermaier及びMarcus Geiss著、英国ハーローのJason M.Miskuly翻訳「コンピュータ支援試験ツールの使用」、Addison−Wesley、2000年(特に28−213ページを参照されたい)。
・SAP:ニューヨークのGrant Norris他著「管理者のための包括的ガイド」、John Wiley and Sons、1998年(ISBN:0471249920)。
SAP/R3システムとのカスタムソフトウエアのインタフェースは、B.Yeager著「MeadのERPシステムは「Best of Breed」ソフトウエアを統合する」、PIMAの「North American Papermaker」、第82巻、第4号、2000年4月、36ページに説明されている。例えば、カスタムソフトウエアコンポーネントは、「BAPIs」(ビジネスアプリケーションプログラミングインタフェース)と呼ばれるSAP銘柄ソフトウエアインタフェースプログラムを使用するSAP銘柄ソフトウエアと統合することができ、「BAPIs」は、「Microsoft Corp.」のCOM/DCOMコネクタを使用し、Microsoftベースのクライアントが「SAP R/3」と通信することを可能にするものである。このようなコネクタは、「Microsoft Corp.」による「ACTIVEX」銘柄の技術及び「COM/DCOM」戦略を使用して組み立てることができる。本発明と共に使用するSAP銘柄ソフトウエアシステムを用いる他の態様は、O.Wieser著「処理制御システム及びラボラトリ情報システムの論理チェーンへの統合」、Automatisierungstechnische Praxis、第39巻、第2号、1997年2月、26−28ページに開示されている。
いくつかのツールが、SAP及び他のソフトウエアの自動試験のために最近開発されており、これらは、必要な場合に本発明の様々なタスクのために使用することができる。例えば、テキサス州ダラス所在の「AutoTesterer,Inc.」は、「SAP(登録商標)」のための「Auto Tester ONE(登録商標)特別版」を販売しており、これは、SAPシステムのソフトウエア試験を容易にし、特にR/3ビジネス処理を検証し、データがシステムによって適切に処理されることを保証する試験を捕捉するといわれている。更に別の情報は、http://www.autotester.com/content/pfv soft at1sap.htm(2004年8月31日付けで閲覧される)で提供されている。本発明の一部の態様で有用なツールになる別のツールは、Mercuryの「TsetSuite 4.0」であり、これは、試験スクリプトの自動作成及び実行のための「RapidTest(登録商標)」ソフトウエアを含む。「Mercury Interactive」はまた、「SAP R/3」のために設計されたそのソフトウエア試験製品のリリースされたバージョンである「WinRunner」及び「LoadRunner」を有する。
SAPシステムはまた、製品及びパッケージに関するリアルタイムの情報を捕捉するためにRFIDシステムに統合される。「SAPコンソール」は、RFID情報を捕捉する場合に1つの有用なツールになる。RFID及び「SAPコンソール」を伴う標準トランザクションのための付加的なツールは、「Peak Technologies」から入手可能である。1つのこのような製品は、「Peak S/3」インタフェースであり、これによってR/3システムユーザは、無線設定でLESアプリケーションを作動することができる。
http://www.peaktech.com/html/erp integration.htmに説明するように、「SAPコンソール」は、グラフィカルベース(GUI)スクリーンを文字ベースのスクリーンに変換するために設計されたSAPの固有文字ベースの無線周波数ソリューションである。「SAPコンソール」は、ビジネス論理を提供しない。このような機能性は、R/3内に見出される。「SAPコンソール」トランザクションの開発は、ABAPワークベンチ内で行われる。SAPは、4.6B及びそれより上のバージョンで「コンソール」機能性を供給する。「SAPコンソール」は、VT220エミュレーションをサポートする「Windows NT」サーバ及びテルネットソフトウエアを必要とする。
コードリポジトリ、移動制御ツール、及び構成管理ツールの使用
試験に関連した文書及びデータを管理するような自動試験のためのシステムを準備する「構成管理(CM)」ツールが公知である。CMツールは、「テストベッド」として公知のカタログ又はライブラリの試験スクリプト及びデータセットを管理するために使用することができる。CMツールは、スクリプトされた手順の統合、ソフトウエアのトラックバージョンを保存することができ、スクリプトを再使用及び追跡することができるようにするものである。CMツールは、Dustin他によって説明されている(305−306、424−426ページ)。CMツールの例は、「ClearCase(登録商標)」(http://www−306.ibm.com/software/awdtools/clearcase/index.htmlを参照されたい)のような、http://www−306.ibm.com/software/sw−bycategory/subcategory/rational/SW750.html(2004年10月7日付けで閲覧される)に説明されているIBMの「RATIONAL(登録商標)」ソフトウエア製品を含む。このツールは、バージョン管理を超えてソフトウエア開発ライフサイクルでの全てのアセットのバージョン化に進むといわれている。「Rational ClearCase」は、ファイル及びディレクトリ毎に変更を追跡し、ソースコード、バイナリ、実行ファイル、文書、試験スクリプト、及びライブラリを含む完全な注釈付きバージョン履歴アセットを維持する。開発者は、どのファイルのどのバージョンが特定の変更をトリガしたかを識別するために、あらゆる以前にビルド又はベースライン構成に迅速にロールバックすることができる。正しいユーザが正しいファイルにアクセスしていることを保証するためといわれるバージョン化されたオブジェクトデータベースを備えたディレクトリ、サブディレクトリ、及び全てのファイルシステムオブジェクトのバージョン化を備えたチェックイン/チェックアウト開発モデルが含まれている。
移動制御ツールは、本発明がコードセキュリティを拡張し、ソフトウエア変更の監査トレールを強化することができるように適用されるものである。移動制御ツールの原理は、本明細書に矛盾しない範囲で本明細書において引用により組み込まれている、2003年7月29日にUnderwoodに付与された「ビジネスコンポーネントフレームワーク」という名称の米国特許第6,601,233号に説明されている。Underwood特許によると、移動制御ツールは、ソースコード、データ、及び他の品目が変更され、試験され、初期の開発から試験まで又は試験から生産までのような1つの開発環境から別の開発環境に移動される時に、それらの複数のバージョンを制御するための手段を提供する。一般的に、Underwood特許で説明されるような移動制御ツールは、ソフトウエア開発者が修正を行う前にソフトウエアリポジトリから既存のコードをチェックアウトしたり、設定された基準を満たしたり、リポジトリに修正されて完全に試験されたソフトウエアを検査し戻すためにプロジェクト責任者又は他のソースから許可を受け取ることができるように使用することができ、移動制御ツールは、新しいバージョン番号、行われた変更の文書化、及び変更が行われた当事者、変更の理由、変更の日付、調べられたテストケースのリスト、考えられる欠点又は将来の拡張の識別、及びユニット試験、回帰試験、又は他の試験での十分な性能の証明を含むことができる付加的な情報に関連付けられる。ビルドコードが適合すると思われる場合、ソースコードは、ソースコードリポジトリに検査され、ソースコード管理者は、そのステータスを通知される。
回帰試験は、ソフトウエアの完全バージョンを用いて、又は試験を必要とするコンポーネント(これらは承認されたコンポーネントのコピーとすることができる)だけを伴う軽量バージョンを用いて行われる。コンポーネント又はユーザインタフェース開発者又はソフトウエアシステムの部分集合に試験を行う他の者に対して、異なるワークステーション構成が存在する場合がある。関わっている全ての開発者は、開発中のコードのチェックイン/アウトのためのソースコードリポジトリを使用することができる。要求される修正がユーザインタフェース及びサーバ側コンポーネントの両方に影響を与えるイベントでは、開発者は、ドライブマッピングを使用するコンポーネント及びインタフェースを共用することができる。
また、IBMの「RATIONAL(登録商標)」ソフトウエアグループの「SoDA」(ソフトウエア文書化自動化)システムのような自動文書発生器も使用することができる。
個々の回帰試験の実行
本発明による回帰試験の実行は、テストケースからの試験結果を調べるか又はテストケースによって呼び出された試験の実行を支援することができる公知の自動試験ツールによって支援される。本発明に適用することができる1つの例は、1998年5月26日にMcMahon及びBuzsakiに付与された「アプリケーション論理の回帰試験の方法及び装置」という名称の米国特許第5,758,062号である。McMahon及びBuzsakiの特許は、ソフトウエアシステム内のアプリケーション論理の回帰試験の方法及びシステムを説明している。著者によると、ソフトウエアアーキテクチャは、表示層(例えば、ユーザインタフェース)、アプリケーション層(例えば、ビジネス論理)、及びデータ/記憶層に分けられる。新しい試験システム内では、表示層とアプリケーション層の間の通信インタフェースが識別され、表示層からアプリケーション層に渡されるユーザ開始の指令(イベント)は、試験再生イベントファイルに記録される。試験再生イベント記録中に、基準プログラムのアプリケーション層の状態の違いは、基準状態ログファイルに捕捉される。プログラムを試験するために、試験再生イベントファイルの記録されたイベントが再生され、そのアプリケーション層に直接適用される。各イベント後に、プログラムの状態の違いは、試験状態ログファイルに捕捉される。基準及び試験状態ログファイルは比較され、違いがエラー又は集計差ファイルに記憶される。表示層を入力するユーザ入力指令の代わりにアプリケーション層を入力するイベントを記録することにより、試験システムは、表示層の変更に集中しており、アプリケーション層のより直接の試験及びエラー検出を可能にするといわれている。ユーザに表示された情報の違いを記録する代わりに、イベント毎のベースでアプリケーション層の状態の違いを記録することにより、システムは、アプリケーション層の更に効率的なエラー検出及びエラー分離を可能にするといわれている。
また、本発明の将来的な使用は、本明細書に矛盾しない範囲で本明細書において引用により組み込まれている、1998年7月14日にParker他に付与された「自動GUIインタフェース試験」という名称の自動試験システムの米国特許第5,781,720号である。Parker他の特許は、グラフィカルユーザインタフェース(GUI)を使用する新規及び改訂コンピュータアプリケーションプログラムの両方を自動的に試験する方法を説明している。キーボード又はマウスアクションのような模擬ユーザイベントは、GUIインタフェースに自動的に入力される。GUIは、次に、入力に応じたGUIへの変更を観察するためにモニタされる。同じく使用されるのは、ハイレベルのプログラミング言語で書かれた試験スクリプト、試験スクリプトを実行する試験エグゼクティブ、及びGUIにインタフェースを提供する試験ドライバである。試験スクリプトは、GUI固有のリファレンスの代わりに論理オブジェクトの作動に関連している。試験エグゼクティブの主な担当は、GUI独立リファレンスをGUI固有のリファレンスに変換することである。試験ドライバは、試験エグゼクティブからGUI固有のリファレンスを「受け取り」、GUIオブジェクトのために実際のインタフェースを実行する。均一な階層ネーミング方式は、ユーザとインタフェースで接続するためにGUI環境で使用されるオブジェクトである、試験中の各「論理スクリーン要素(LSE)」を識別するために用いることができる。
テストケースを実行するためのスクリプトの作成は、データエントリ又はソフトウエアエントリの他の態様の間にユーザの入力を捕捉して再生する公知のソフトウエア試験ツールの使用を含むことができる。一実施形態では、テストケースの作成又は実行のスクリプト又は他の態様は、2000年5月9日にWalker他に付与された「回帰試験のための耐久性データを定義する方法」という名称の米国特許第6,061,643号のソフトウエアツールを用いるものである。Walker他の特許は、トランザクションを含むソフトウエアアプリケーションの開発中及び他のライフサイクル段階の回帰試験を容易にする方法及びコンピュータ製品を開示している。回帰試験は、機能又は挙動レベルで目標試験を説明する試験データを伴うテストケースから構成される。試験オペレータは、手動試験を実行し、同時に試験を記録することができる。Walker他の特許のアーキテクチャは、試験オペレータの物理的な活動をモニタし、その後で物理的なイベント段階(例えば、マウスのクリック又はキーストローク)を機能又は挙動の試験データに変換する(例えば、値を名前の付いたフィールドに入力する)。試験データは、トランザクションの堅牢な機能記述内にあり、それによってソフトウエア開発中のトランザクションへの物理的な修正(例えば、ユーザインタフェースの外形及びフィールドの位置及び画面上のボタンを変える)は、修正されたトランザクション内で実行するための試験データの有効性を維持する。試験レポートはまた、回帰試験の実行に応じて作成される。試験レポートは、実行された試験データ及びそれに対する応答の両方を列挙する。試験レポートは、トランザクションの回帰の不足を検証するためにベースライン又は制御試験レポートと比較される。違いのレポートはまた、試験レポートの比較から作成される。Walker他のシステムは、試験データから成るテストケースを使用してトランザクションを回帰試験する方法として説明され、上述の試験データは、機能レベルでの上述の回帰試験を説明し、物理的なレベルで上述の回帰試験を実行し、上述の試験データは、上述のトランザクションの物理的なレベルを変更する上述のトランザクションへの物理的な修正が起こった場合に実行可能なままである。回帰試験のためのこの方法は、(1)上述の機能レベルで説明したテストケースの試験データを読み取る段階、(2)試験データに機能的に対応する試験を判断するためにトランザクションを評価する段階、(3)試験データを上述の評価段階で識別されたように試験機能を実行するのに必要なトランザクションイベントに変換する段階、及び(4)上述の物理的なレベルで上述の試験データを実行するためにトランザクションイベントでトランザクションを駆動する段階を含む。
本発明の範囲で使用される別の自動ツールは、Mumford他に2001年2月20日に付与された「自動的に作成されたログを使用する自動試験の実行」という名称の米国特許第6,192,108号のツールである。Mumford他の特許は、自動的に作成されたログを使用するサービスアプリケーションの自動試験のためのシステムを説明しており、サービスアプリケーションの各新しいリリースに対して新しい試験アプリケーションを作成する必要はなく、全てのデータ及び実行される処理を考慮することによってアプリケーションの様々な態様の試験を提供するものである。自動回帰テスターは、試験されているアプリケーションの最初のバージョンの実行によって作成されたデータを捕捉して記録する。このデータは、第1試験ログに記録される。そのアプリケーションの新規又は移植バージョンが開発された場合、第1試験ログは、アプリケーションの呼び出し側及びユーザ入力を含むオペレーティング環境をエミュレートする出力を作成するために自動回帰テスターによって使用される。アプリケーションの新規/移植バージョンの処理は、第2試験ログに捕捉されて記録される。自動回帰テスターは、第2試験ログを第1試験ログと比較し、データ(例えば、違いのレポート)のどのような相違も報告する。このような相違は、サービスアプリケーションの新規/移植バージョンのバグを示すことがある。
試験が、プリンタ、テープドライブ、又は他の大容量記憶媒体、CD又はDVD読取又は書込デバイス、付加的なサーバ、センサシステム、処理制御デバイス、ロボット、RFID読取装置、デジタルカメラ、ビデオカメラ、及び自動搬送台車(AGV)などのようなハードウエアとの相互作用を伴う場合、その試験は、ハードウエアと直接相互作用することができるか、又はハードウエアの電子的応答が試験されるコードと実際に相互作用するハードウエアを必要とせずに模擬されるように、ハードウエア模擬デバイス又はソフトウエアを使用することができる。これは、例えば、相互作用するハードウエアが開発中のソフトウエアによって停止されるか又は悪影響を受けるだけの余裕がない場合に特に有用であり、ハードウエアシミュレーション試験を、少なくとも製品のライフサイクルの早い段階での試験に対して更に実用的なものにする。ハードウエアシミュレーションの一部の原理は、本明細書に矛盾しない範囲で本明細書において引用により組み込まれている、Furaに1999年9月14日に付与された「電子ハードウエアシミュレーションモデルを作成する方法及びシステム」という名称の米国特許第5,953,519号に説明されている。本明細書の範囲内で使用される更に別の原理は、本明細書に矛盾しない範囲で本明細書において引用により組み込まれている、R.L.Klevansによって2001年12月6日に公開された「ハードウエアシミュレーションの方法及びシステム」という名称の米国特許公開US20010049594A1に開示されている。Klevansは、エミュレートされたハードウエアデバイス上に組み込まれたソフトウエアを試験するためのネットワークシステムを模擬するためのシステム及び方法を説明している。このシステムは、模擬ハードウエアの自動作成を提供し、模擬ハードウエアによって作成された模擬エラー条件に対する組み込みソフトウエアの応答の試験を容易にする。組み込みソフトウエアからの通信は、低いソフトウエアレベルで遮られ、エミュレートされたハードウエアデバイスから模擬ハードウエアに転送される。
自動試験に使用される更に別のツールは、Walker他に2001年10月9日に付与された「ソフトウエアアプリケーションコンポーネントのコンピュータ支援試験の方法」という名称の米国特許第6,301,701号である。この特許は、トランザクションテスターが試験中のトランザクションの定義から試験データを作成することによってトランザクションの整合性を評価する自動試験を容易にする方法及びコンピュータ製品を説明している。フィールドの一般的な値は、トランザクション定義内に含まれ、一般的な試験値として再使用される。試験結果が作成され、既知の良好な値に対して又は代替的にトランザクション定義から作成された予想される試験結果に対して比較される。メニュー構造を含む他のソフトウエアコンポーネントもまた試験することができる。メニュー構造の定義は、各メニューの各エントリが完全に試験されて報告されるように厳密にトラバースされる。結果は、既知の良好な結果に対して自動的に比較されて確認されるか、又は、試験結果は自動的に検討される。トランザクション試験及びメニュー試験の両方は、回帰試験に組み込むことができる。
本発明の範囲内で使用される他のツールは、呼び出されたモジュールを識別して追跡可能性行列を検証するためにソフトウエア実行をモニタするリンク発生器を含む。
付加的な実施形態
統計ツールも、回帰解析でのテストケースの使用を拡張するために適用することができる。一実施形態では、全て又は一部のソフトウエアモジュールは、それぞれのモジュールが他のモジュールに対してどのくらい重要であるかを反映する臨界パラメータを割り当てられる。臨界パラメータの割当ては、自動的に行われるか、又は最も頻繁に使用されるモジュールを識別するためにコード使用の統計データを作成するソフトウエア解析プログラムのような自動ツールで支援される。一実施形態では、例えば、臨界パラメータは、5が最も頻繁に使用されるモジュールを反映し、1が最も低い頻度で使用されるモジュールを示す1から5の範囲とすることができる。より高い臨界パラメータを割り当てられたモジュールか又はそうでなければ平均よりも上の重要度であるとして既知であるか又は判断されたモジュールは、次に、そのモジュールに対して又はモジュールの性能に影響を与えることのあるモジュール又は他の要因(例えば、依存関係又は従属関係又はその両方)に対して変更が行われる場合に、更に厳密な試験に対してフラグを立てることができる。例えば、フラグが立てられたモジュールを呼び出すテストケースは、入力パラメータの標準偏差を超える付加的な実施のような付加的な実施を受ける(例えば、最大臨界因子を有する変更されたモジュールに対して、テスター又は自動試験システムは、少ない数の代わりに10の異なる入力シナリオで実施を実行することができ、また、最も低い臨界因子を有するモジュールは、入力条件の単に1つのセットで試験されると考えられ、臨界因子を考慮しない入力パラメータシナリオの典型的な数は、例えば1、2、3、又は4であろう)。代替的に又はそれに加えて、フラグを立てられたモジュールは、あらゆる不要なリップル効果も存在しないことを検証するために、関連するテストケースに対するより高いレベルの従属関係及び依存関係が回帰試験で実行されるべきであることを示すことができる。
別の実施形態では、自動試験はまた、「追跡可能性行列」に表された関係がソフトウエアに行われた変更によって修正されなかったこと、又は追跡可能性行列に入力された更新された関係が実際に新しいソフトウエア関係の正確な表示であることを検証するために、「追跡可能性行列」内のデータを検証する段階を含むことができる。これは、例えば、ソフトウエアモジュールによって行われた呼出しをモニタする市販試験ソフトウエアで行うことができる。モジュールが「追跡可能性行列」に捕捉されていない関係のために呼び出される場合、又は「追跡可能性行列」の関係がソフトウエア呼出しを通じて識別されない場合、可能なエラーが識別され、報告され、更に監督者の注意を呼び起こすことができる。場合によっては、監督者は、入力パラメータ又は他の要因での条件が別のモジュールへのデータの呼出し又は転送を必要としなかったので、ソフトウエアの実行中に実際の既存の関係が表示されなかったことを認識又は判断することができる。「追跡可能性行列」の関係が呼出しモニタリングソフトウエアのレポートに基づいてエラーとして現れる場合、関係が間違って報告されたことを検証するために、一般的に更に別の調査が必要になる。関係が見逃された場合、別のモジュールへの呼出しの検出は、一般的には関係を肯定的に示すことになるが、この関係は、更に別の検証を必要とするエラーによるものである。このような自動及び人間の解析の結果は、ソフトウエア履歴記録に入力され、監査トレール又はトラブルシューティング機構を作成する。
回帰試験は、別の実施形態では、システムが大きなコンピュータの需要によって大きな負担を課せられる場合でも、ソフトウエアが適切に機能することを判断するためにストレス試験を含むことができる。ストレス試験のための様々なツールは、当業技術で公知であり、特に重要なコンポーネント(例えば、高い臨界パラメータを有するコンポーネント)が修正される場合に、複合ソフトウエアシステムの回帰試験での付加的な段階として適用することができる。
複合ソフトウエアシステムの開発、統合、及び/又は試験には、一般的に様々なグループにおける複数のプログラマーを必要とした。プログラマー及びグループ間の有効な通信は、目標とされるタスクを達成するための有効な相互作用に貴重なものになる。本明細書において引用により組み込まれている、Deimel他によって2004年4月8日に公開された米国特許公開20040068714に開示された技術を含むあらゆる公知の方法を使用して、通信及び計画を強化することができる。Deimel他は、異質ソフトウエアの集合のメッセージベースの交換及び統合のための交換インフラストラクチャーを開示している。交換インフラストラクチャーは、複数のソフトウエアコンポーネントの設計−時間協調性記述を記憶するためのリポジトリと、実行時システムランドスケープの構成特定の協調性記述を記憶するためのディレクトリとを含む。交換インフラストラクチャーは、構成特定の協調性記述に基づいて情報のメッセージベースの交換のために構成された実行時エンジンを更に含む。実行時に、実行時エンジンは、メッセージを受信し、ディレクトリからの構成特定の協調性記述によって提供されたメッセージコンテンツ及びパラメータに基づいて意図された又は要求された受信者を決定する。
他のソフトウエアシステム
多くの他のソフトウエアシステムは、SAPベースのシステム又は他のソフトウエアと統合させることなどによって複合ソフトウエアシステムに含むことができる。
単に一例として、本発明のツールを適用することができる複合ソフトウエアシステムは、取引相手関係管理(PRM)及び従業員関係管理(ERM)のためのアプリケーションを含む顧客関係管理(CRM)のためのアプリケーションのあらゆる組を含むことができる。「Siebel Systems、Inc.」(サンマテオ、カリフォルニア)によって販売されている1つのこのような例は、「Siebel 7」であり、これは、顧客挙動及び協調性能の重要なインジケータの両方を追跡して理解するリアルタイムの解析機能を組織に提供するといわれている共通「ウェブ」アーキテクチャに基づく統合された一組である。アプリケーションを実行して修正する作業は、広範囲の試験を必要とし、これは、本発明の自動ツールによって容易にすることができる。
本発明のシステムはまた、イノベーション管理ツールを企業システムに統合するために使用することができる。例えば、イノベーション管理データベース、電子ノートブックシステム、プロジェクト追跡システム、企業内特許オフィスのための整理番号管理システム、特許データベース、及び発明開示データベースなどを本発明のツールを使用して試験されて実行される複合ソフトウエアシステムに一緒にすることができる。本発明を用いて試験することができるコンポーネントの1つの例は、S.Kopchaに2004年10月5日に付与された「分散型製品開発」という名称の米国特許第6,801,818号及びL.J.Hughesにより2003年5月15日に公開された「協調性及びイノベーションシステム」という名称の米国特許公開US20030093478A1のイノベーション及び情報管理ツールである。
他の統合ソフトウエアシステムは、「Gibson−Graves Company、Inc.」の「TRAQ−1品質データ管理システム」、「Murphy Software」からの「DBQ(品質のためのデータベース)」銘柄コンピュータソフトウエア、及び他の品質管理システムのような市販品質管理ソフトウエアを含むことができる。「WONDERWARE(登録商標)」ソフトウエア(「Wonderware Corp.」、アーバイン、カルフォルニア)のような分散型管理システムを含めることもできる。複合ソフトウエアシステムはまた、購入、課金、財務管理、メンテナンス、法規制の遵守などのためのあらゆる公知のシステムを含むことができる。このようなシステムは、統合された複合ソフトウエアシステム内の相互に関連したソフトウエアモジュールの1つ又はそれよりも多くを含むことができる。
試験システムの機能性を拡張するか又はその一部分として機能するために本システムと組み合わせることができる他のシステムは、J.A.McFarlandによって1997年3月4日に公開された「品質管理のためのシステム及び方法」という名称のWO97/12311に説明されているISO遵守のための文書化管理ツールを含む。
プロジェクトはまた、Rationalによる「Requisite Pro」、「Telelogic North America、Inc.」(アーバイン、カリフォルニア)のQSSによる「DOORS」(例えば、2004年10月7日付けで閲覧されるhttp://www.telelogic.com/products/doorsers/doors/index.cfmに説明されているような「DOORS 7.1」)、及び「Serena Software、Inc.」による「RTM」(サンマテオ、カリフォルニア、2004年10月7日付けで閲覧されるhttp://www.serena.com/Products/rtm/home.aspを参照されたい)のような公知の要件管理(RM)ツール(例えば、Dustin他の206−211ページを参照されたい)によって支援することができる。RMツールは、ソフトウエア開発プロジェクトの要件を管理することを支援することができ、また、ビジネス目的が確実に満たされるのを支援することができる。「要件追跡可能性行列」(テストケース及び/又はソフトウエアモジュール間の関係を説明する本発明の「追跡可能性行列」と混同しないように)の自動作成は、例えば、各試験手順をそのそれぞれの試験要件とリンクさせるためにDOORSで行うことができる。
IBMの「Rational Rose」のようなビジュアルモデリングツールは、ソフトウエアシステムのアーチファクトを視覚化して文書化し、ソフトウエア構成のための青写真を提供するために使用することができる。ビジネス処理また、ソフトウエアアーキテクチャにマップすることができる。例えば、http://www−306.ibm.com/software/awdtools/developer/datamodeler/を参照されたい。
プログラム特定のタスクは、プログラムスライシングというプログラムの挙動を関連する特定の部分集合に制限するためのツールを含む公知のデバッグ及び解析ツールによって処理することができる。プログラムスライシングは、K.B.Gallagher及びJ.R.Lyle著「ソフトウエアメンテナンスにおけるプログラムスライシングの使用」、Shawn A.Bohner及びRobert S.Arnold編「ソフトウエア変化インパクト解析」(ロスアラミトス、カリフォルニア、IEEE Computer Society Press、1996年、319−329ページ)に説明されている。本明細書において引用により組み込まれている、Shawn A.Bohner著「デザイン革命のためのソフトウエア変化インパクト解析」、ソフトウエア変化インパクト解析、67−81ページによって説明されるものを含むインパクト解析のためのツールを使用することもできる。Bohner及びArnold著「入門ソフトウエア変化インパクト解析」、ソフトウエア変化インパクト解析、1−26ページ(特に15ページ)によって説明されている相互参照、試験範囲アナライザ、及びソースコードコンパレータのようなコンポーネント依存関係のためのツールも適用することができる。このような例は、D.E.Perry著「Inscape環境」、ソフトウエア工学のための国際会議紀要(ロスアラミトス、カリフォルニア、IEEE Computer Society Press、1989年、2−12ページ、Bohner及びArnoldによって引用)によって説明されているような「Inscape」を含む。
矛盾しない範囲で本明細書において引用により組み込まれている、S.Nehabによって2004年5月27日に公開された「企業ソフトウエアシステムの検証のためのシステム」という名称のUS20040103396A1に説明されているツールを含むテストケース又はスクリプトの作成を支援するためのあらゆる公知のツールを使用してもよい。Nehabは、複合企業ソフトウエアシステムの自動検証のためのシステム及び方法を説明しており、これは、ビジネス処理仕様を使用して試験シナリオを作ることによって試験処理を改良するものである。
本発明による自動試験ツールは、キンバリー・クラークビジネス内のSAP統合の試験のために開発されたものである。このシステムは、情報の入力及び表示のための安全な「イントラネット」ページを使用する「ウェブ」ベースのものであった。「追跡可能性行列」をサポートするソフトウエアは、「RDBMS SQLサーバ2000」上に実装された。
「ウェブ」機能は、マークアップ言語としてHTML及びXMLを使用して書き込まれた。表示された情報の管理のためのスタイル言語は、CSS及びXSLTであった。スクリプト言語は、VBScript及びJavaScriptであった。ASPがサーバで実行され、リモートスクリプティングがクライアント機械によってトリガされてサーバ上で実行される、2層アーキテクチャが使用された。使用されたToolsetsは、EXCEL、「SQL Query」、Access、及び「Crystal Reports」を含んでいた。「解析ロードマップ」は、リンクリスト及び再帰を使用するハッシュ機能、及び3次元アレイで表示された行列を用いて実装された。リファレンス整合性は、依存関係及び従属関係の間で維持されていた。
解析ロードマップの構成詳細
2次元行列要素へのアクセスは、第1が行インデックスを表し、第2が列インデックスを表す2つのサブスクリプトで達成される。このようなアレイに関する基本的情報は、http://www.mathworks.com/access/helpdesk/help/techdoc/matlab prog/ch12 nd3.shtmlで提供されている。
「解析ロードマップ」ダイアログボックスから選択されたテストケースを使用して、その依存関係は、記憶された手順の実行を通じてデータベースから検索され、「依存関係」というフィールドを収容する「依存関係アレイ」にマップされる。
「依存関係アレイ2次元行列」は、「依存関係(列,行)=依存関係[親ケース]」という情報を収容する。
上と同じ手順を使用して、テストケース及びその依存関係従属関係の全ては、6レベルまで検索され、「レベル」、「依存関係」、「従属関係」、及び「子インジケータ」というフィールドを収容する従属関係アレイにマップされる。
「従属関係アレイ2次元行列」は、以下の情報を収容する。
従属関係(列,行)=レベル [次の6レベル]
従属関係(列,行)=依存関係 [親ケース]
従属関係(列,行)=従属関係 [子ケース]
従属関係(列,行)=子インジケータ[0−偽:1−真]
ハッシュは、キー値を使用して迅速にデータにアクセスするための効率的な手段である。入力が与えられると、ハッシュ機能は、これを操作して固有の出力を生成する。入力されたキーはハッシュされ、結果の出力は、関連した値を見つける場所をプログラムに告げるハッシュテーブルの固有のインデックス数である。1つよりも多いインデックスが各キーに関連付けられる場合、結果は衝突である。これは、チェーニングと呼ばれる技術で処理され、これは、データがノードに記憶され、ノードがハッシュテーブルのエントリから繋がれるものである。これは、リンクしたリストで達成される。
衝突を処理するためのリンクしたリストを備えたハッシュテーブルの使用の詳細は、http://epaperpress.com/vbhash/index.htmlで与えられ、当業者には公知である。
「従属関係アレイ」を構成する際には、従属関係は、一度に1レベル検索される。二重のエントリを防ぐために、各親ケースはハッシュされ、ノードに入力される。子ケースが検索される前に、親ケースはハッシュされ、1つ又はそれよりも多くのノードがサーチされる。親ケースが見つけられた場合、その親ケースに対する従属関係を検索する必要はないが、見つけられなかった場合は従属関係が検索される。
多次元アレイは、インデックス付けのための付加的なサブスクリプトを使用する。3次元アレイは、例えば3つのサブスクリプトを使用する。
・第1リファレンスアレイ次元1、行
・第2リファレンス次元2、列
・第3リファレンス次元3、ページ
本発明のソフトウエアの開発に有益な3次元行列の使用に関する詳細は、http://www.mathworks.com/access/helpdesk/help/techdoc/matlab prog/ch12 nd3.shtmlで与えられている。
「従属関係アレイ」を使用して、スケジューリング情報は、「解析ロードマップ」ダイアログボックスから選択された試験サイクルに従って、記憶された手順の実行を通じてデータベースから検索される。処理及び子インジケータが設定され、全てが、以下のフィールドを収容する「ツリーアレイ」にマップされる。
・親ケース、子ケース、子記述
・論理的削除インジケータ、実行日付、実行インジケータ
・リファレンスフィールド1、リファレンスフィールド2、リファレンスフィールド3
・子インジケータ、処理済みインジケータ
「ツリーアレイ3次元行列」は、以下の情報を収容する。
ツリーアレイ(列、行、ページ)=親ケース
ツリーアレイ(列、行、ページ)=子ケース
ツリーアレイ(列、行、ページ)=子記述
ツリーアレイ(列、行、ページ)=論理的削除インジケータ
ツリーアレイ(列、行、ページ)=実行日付
ツリーアレイ(列、行、ページ)=実行インジケータ
ツリーアレイ(列、行、ページ)=リファレンスフィールド1
ツリーアレイ(列、行、ページ)=リファレンスフィールド2
ツリーアレイ(列、行、ページ)=リファレンスフィールド3
ツリーアレイ(列、行、ページ)=子インジケータ
ツリーアレイ(列、行、ページ)=処理済みインジケータ
本発明の自動ツールで用いられるXML要素を以下の表1に示す。
Figure 2007535723
「ツリーアレイ」を使用して、XMLファイルは、2つの再帰的方法により、つまり、一方は、<children>タグを通じてルート要素(<tree>)及び他のキー要素にキーを追加すること、及び他方は、要求された終了</children>、</key>、及び</tree>タグでキーを閉じることにより構成される。
実施例1の作業に関係するXMLファイルの例示的な構造を表2に示す。








表2.例示的なXMLファイルの一部分
Figure 2007535723
XMLは、ツリーデザインに従っており、従って、XML文書がブラウザに固有のXMLパーサーによって構文解析された状態で、表3に示すようなソースツリーが生成される。





表3.XMLソースツリー
Figure 2007535723
しかし、XSLTで表された変換は、ソースツリーを結果ツリーに変換するための規則を説明するものである。変換は、パターンにテンプレートを関連付けることによって達成される。パターンは、ソースツリー内の要素に対して比較される。テンプレートは、結果ツリーの一部を作成するためにインスタンス化される。結果ツリーは、ソースツリーとは別々のものである。結果ツリーの構造は、ソースツリーの構造とは完全に異なるものになる可能性がある。結果ツリーを構成する際には、ソースツリーからの要素は、フィルタに掛けて再順序付けすることができ、任意の構造を追加することができる。XSLTで表された変換は、スタイルシートと呼ばれる。これは、XSLTがXSLフォーマット化語彙に変換される場合に、その変換がスタイルシートとして機能するからである。
この段階の例示的な結果ツリーは、図10に示されている。
本発明の試験ツール、方法、及び他の実施形態をその特定の態様に関して詳しく説明したが、当業者は、以上の理解に到達すると、これらの試験ツール及び方法に対する変更、その変形、及びそれに対する均等物を容易に考えることができることが認められるであろう。従って、本発明の範囲は、特許請求の範囲及びそのあらゆる均等物の範囲として判断されるべきである。
本発明の「自動多次元追跡可能性行列」の記録を典型的に表す図である。 本発明の「自動多次元追跡可能性行列」の記録を典型的に表す図である。 本発明の「自動多次元追跡可能性行列」の記録を典型的に表す図である。 例示的な「テストケースカタログリスト」のスクリーンショットを典型的に示す図である。 例示的な「テストケースカタログメンテナンス形式」のスクリーンショットを典型的に示す図である。 例示的な「テストケース特性リスト」のスクリーンショットを典型的に示す図である。 例示的な「ケース特性メンテナンス形式」のスクリーンショットを典型的に示す図である。 例示的な「トランザクションメンテナンス形式」のスクリーンショットを典型的に示す図である。 展開又は開かれた「割り当てられたケース」情報の例示的な図のスクリーンショットを典型的に示す図である。 図3のスクリーンショットに関連したスクリーンショットを典型的に示し、オペレータが解析アイコン上をクリックした時に表示されるダイアログボックスを示す図である。 例示的な「解析ロードマップ」のスクリーンショットを典型的に示す図である。 図1Cに示す「自動多次元追跡可能性行列」情報に対する「解析ロードマップ」のスクリーンショットを典型的に示す図である。 例示的な「エンティティ関係ダイアグラム」を典型的に示す図である。 本発明の「自動多次元追跡可能性行列」を使用する方法に対する例示的な流れ図を典型的に示す図である。 本発明の「自動多次元追跡可能性行列」を使用する方法の例示的な流れ図を典型的に示す図である。 本発明の「自動多次元追跡可能性行列」を使用する方法の例示的な流れ図を典型的に示す図である。 本発明の「自動多次元追跡可能性行列」を使用する方法の例示的な流れ図を典型的に示す図である。 複合ソフトウエアシステムに対して回帰試験を行う例示的な方法を典型的に示す図である。 本発明の「自動多次元追跡可能性行列」で複合ソフトウエアシステムを試験する方法の例示的な流れ図を典型的に示す図である。
符号の説明
100 「自動多次元追跡可能性行列」の記録
111、121、131、141、151 アイデンティティフィールド
113、123、133、143、153 依存関係フィールド
114、124、134、144、154 従属関係フィールド

Claims (54)

  1. 複数の相互に関連するシステムコンポーネントと該複数の相互に関連するシステムコンポーネントの性能を試験するための一組の試験シナリオとを有する複合ソフトウエアシステムの試験のための試験ツールであって、
    a)相互に関連するシステムコンポーネント間のリンケージを判断するための「自動多次元追跡可能性行列」システムと、
    b)前記相互に関連するシステムコンポーネントの1つ又はそれよりも多くにおける変更を識別するための手段と、
    c)前記「自動多次元追跡可能性行列」を適用するための手段と、
    d)前記変更によって影響を受ける場合がある前記相互に関連するシステムコンポーネントに関連した前記試験シナリオの全て又はその部分集合を実行するための手段と、
    e)前記実行された試験シナリオの結果を評価するための手段と、
    を含むことを特徴とする試験ツール。
  2. 前記相互に関連するシステムコンポーネントの1つ又はそれよりも多くにおける変更を識別するための手段は、実行可能ファイルの変更を検出する電子ツールを含むことを特徴とする請求項1に記載の試験ツール。
  3. 前記相互に関連するシステムコンポーネントの1つ又はそれよりも多くにおける変更を識別するための手段は、該変更に関する情報の手動入力を含むことを特徴とする請求項1に記載の試験ツール。
  4. 前記実行された試験シナリオの結果を評価するための手段は、出力情報と、前記変更の前に該試験シナリオから既に作成されていた出力情報との手動比較を含むことを特徴とする請求項1に記載の試験ツール。
  5. 前記実行された試験シナリオの結果を評価するための手段は、出力情報と、前記変更の前に該試験シナリオから既に作成されていた出力情報とのコンピュータ実行比較を含むことを特徴とする請求項1に記載の試験ツール。
  6. 「SAP R/3」を実行するようになっており、
    選択されたスクリプトを自動的に実行する「コンピュータ支援試験ツール」を更に含む、
    ことを特徴とする請求項1に記載の試験ツール。
  7. 前記複合ソフトウエアシステムは、少なくとも1つの他の当事者によって書かれたレガシーソフトウエアにインタフェースで接続する少なくとも1つの供給業者からのソフトウエアを含むことを特徴とする請求項1に記載の試験ツール。
  8. 前記複合ソフトウエアシステムは、ERPシステムであることを特徴とする請求項1に記載の試験ツール。
  9. ソフトウエア及び該ソフトウエアに関連した文書化の変更を監査するための手段を更に含むことを特徴とする請求項1に記載の試験ツール。
  10. 前記「自動多次元追跡可能性行列」を適用するための手段は、選択されたテストケースと他のテストケースへのリンケージの図形表示とに関する情報を図式的に表示するグラフィカルユーザインタフェースを含み、
    前記グラフィカルユーザインタフェースは、依存関係及び従属関係の少なくとも一方を通じて2つ又はそれよりも多くのレベルによってリンクした他のケースを表示するようになっている、
    ことを特徴とする請求項1に記載の試験ツール。
  11. 前記グラフィカルユーザインタフェースは、前記表示されたテストケースが試験するソフトウエアモジュールに関する情報を提供するために、該表示されたテストケースのためのハイパーリンクを特徴とする「ウェブ」ベースのディスプレイを含むことを特徴とする請求項10に記載の試験ツール。
  12. 複合ソフトウエアシステムの統合試験又はシステム試験の少なくとも一方に対して、対応するソフトウエアコンポーネントを試験するための関連のテストケースの実行を案内するようになった試験スクリプトの本体から試験スクリプトの部分集合を自動的に選択するための試験ツールであって、
    a)「自動多次元追跡可能性行列」システムと、
    b)テストケース間のリンケージに関する情報を受信し、該情報を前記「自動多次元追跡可能性行列」システムに供給するためのグラフィカルユーザインタフェースと、
    c)前記「自動多次元追跡可能性行列」システム内の前記情報に基づいて自動的に判断される複数のレベルでのテストケース間の親−子関係を図式的に表示するための手段と、
    d)前記複合ソフトウエアシステムの前記テストケースの1つ又はそれよりも多くにおける変更に応じて、該複合ソフトウエアシステム内の複数のコンポーネントの試験のために該テストケースの部分集合を選択するための手段と、
    e)前記テストケースの部分集合に関連した試験スクリプトを実行するための手段と、
    f)前記実行された試験スクリプトによって作成された出力に基づいて、前記複合ソフトウエアシステムのステータスを評価するための手段と、
    を含むことを特徴とする試験ツール。
  13. 複数の相互に関連するプログラムと該複数の相互に関連するプログラムの性能を試験するための一組のテストケースとを有する複合システムソフトウエアシステムの試験における効率の改善のためのグラフィカルユーザインタフェースであって、
    a)複数の相互に関連するプログラムの選択された部分間のリンケージに関する「自動多次元追跡可能性行列」からの出力情報を表示するための手段、
    を含み、
    前記手段は、依存関係の3つ又はそれよりも多くのレベルにわたるリンケージを表示するようになっており、
    前記出力情報は、
    1)前記選択されたプログラムに対する依存関係及び従属関係のリスト、及び
    2)前記選択されたプログラムを呼び出すことができるテストケースのリスト、
    の少なくとも一方を含み、
    b)複数の相互に関連するプログラムの選択された部分間のリンケージに関する前記「自動多次元追跡可能性行列」からの入力情報を受信するための手段と、
    c)前記グラフィカルユーザインタフェースから前記「自動多次元追跡可能性行列」をホストする少なくとも1つのサーバに入力及び出力情報を通すための通信手段と、
    を更に含むことを特徴とするグラフィカルユーザインタフェース。
  14. 複数のソフトウエアコンポーネントを含む複合ソフトウエアシステムの性能を効率的に試験するためにテストケースの本体からテストケースの部分集合を自動的に選択する方法を実行するコンピュータシステムを制御するための命令を収容するコンピュータ可読媒体であって、
    各テストケースは、前記複合ソフトウエアシステム内の少なくとも1つのソフトウエアコンポーネントに関連付けられており、
    各テストケースはまた、該テストケースに対して前記複合ソフトウエアシステムによって実行される一連の命令を提供するスクリプトに関連付けられており、
    前記方法は、
    a)前記テストケースに対する依存関係及び従属関係に関する入力情報を受信するグラフィカルユーザインタフェースを表示する段階と、
    b)「自動多次元追跡可能性行列」に関連するデータベースに前記入力情報を記憶する段階と、
    c)前記ソフトウエアコンポーネントの1つ又はそれよりも多くが変更されたことを示す変更通知を受信する段階と、
    d)既に形成されているリンケージを通じて前記1つ又はそれよりも多くの変更されたソフトウエアコンポーネントへ前記テストケースのどれがリンクされるかを判断するために前記「自動多次元追跡可能性行列」を適用する段階と、
    e)前記1つ又はそれよりも多くの変更されたソフトウエアコンポーネントへどのテストケースがリンクされるかを示す情報を表示する段階と、
    f)自動的に又はユーザ選択に応じて、段階(e)から前記リンクしたテストケースの全て又はその部分集合を選択する段階と、
    g)段階(f)からの前記選択されたリンクしたテストケースに関連する前記スクリプトを実行する段階と、
    h)前記実行された試験スクリプトに対する予想結果と後で比較するために、該実行された試験スクリプトの結果を記憶する段階と、
    を含む、
    ことを特徴とするコンピュータ可読媒体。
  15. 前記方法が、前記1つ又はそれよりも多くの変更されたソフトウエアコンポーネントへどのテストケースがリンクされるかを示す情報を表示する前記段階は、3つ又はそれよりも多くのレベルにわたるリンケージに関する情報を表示する段階を更に含むことを特徴とする請求項14に記載のコンピュータ可読媒体。
  16. 前記方法が、前記1つ又はそれよりも多くの変更されたソフトウエアコンポーネントへどのテストケースがリンクされるかを示す情報を表示する前記段階は、第1の数の依存関係レベルと該第1の数よりも大きい第2の数の従属関係レベルとに関する情報を表示する段階を更に含むことを特徴とする請求項14に記載のコンピュータ可読媒体。
  17. 1つ又はそれよりも多くの供給業者によって提供された複数の統合されたソフトウエアモジュールを含む複合ソフトウエアシステムのための更新されたソフトウエアモジュールをユーザが試験する方法であって、
    a)供給業者から第1ソフトウエアモジュールのためのソフトウエア更新を受信する段階と、
    b)複合ソフトウエアシステムに更新された第1ソフトウエアモジュールを提供するために、サーバ上に前記ソフトウエア更新をインストールする段階と、
    c)性能が前記更新された第1ソフトウエアモジュールにリンクされる前記複数のソフトウエアモジュールからのソフトウエアモジュールのリスト、又は性能が該更新された第1ソフトウエアモジュールにリンクされる該ソフトウエアモジュールに関連するテストケースのリストを自動的に作成するために「自動多次元追跡可能性行列」を適用する段階と、
    d)段階(c)における前記リストの部分集合を選択し、関連する試験スクリプトを実行する段階と、
    e)前記複合ソフトウエアシステムが適正に機能しているかを判断するために、前記実行された関連の試験スクリプトの結果を評価する段階と、
    を含むことを特徴とする方法。
  18. コンピュータと、
    前記コンピュータによって提供される情報を表示するための視覚的表示装置と、
    開発中のソフトウエアシステムに関連するコンポーネント間のリンケージを説明するための前記コンピュータに付随する「自動多次元追跡可能性行列」データベースと、
    を含み、
    前記コンポーネントは、各々がプログラムモジュールを該プログラムモジュールと該プログラムモジュールに付随する目標の機能性を説明する1つ又はそれよりも多くのビジネス文書とを呼び出す1つ又はそれよりも多くのテストケースにリンクする複数の関連付を含み、
    ユーザが、プログラムモジュール、テストケース、及び前記データベース内で参照されるビジネス文書のうちの望ましいいずれか1つを選択することを可能にするものであり、その選択に応じて、前記視覚表示装置の表示が修正されて該選択に関する情報が提供され、
    前記選択にリンクされた他のプログラムモジュール、テストケース、及びビジネス文書のいずれに関する情報も表示するための付加的な選択手段を含む、
    ことを特徴とするグラフィカルユーザインタフェース。
  19. 前記選択がテストケースである時に、前記選択にリンクされた他のプログラムモジュール、テストケース、及びビジネス文書のいずれに関する前記情報も、該テストケースよって呼び出される該プログラムモジュールとビジネス文書とを含み、該ビジネス文書は、該ビジネス文書によって説明された処理又は特徴を試験するために実行されるケースとして該テストケースを列挙することを特徴とする請求項18に記載のグラフィカルユーザインタフェース。
  20. 前記選択がプログラムモジュールである時に、前記選択にリンクされた他のプログラムモジュール、テストケース、及びビジネス文書のいずれに関する前記情報も、プログラムと該プログラムモジュールによってサポートされた処理又は特徴を説明するビジネス文書とを呼び出す1つ又はそれよりも多くのテストケースを含むことを特徴とする請求項18に記載のグラフィカルユーザインタフェース。
  21. 前記選択がビジネス文書である時に、前記選択にリンクされた他のプログラムモジュール、テストケース、及びビジネス文書のいずれの前記情報も、該ビジネス文書に説明された処理又は特徴の試験を支援する1つ又はそれよりも多くのテストケースと、該1つ又はそれよりも多くのテストケースによって呼び出された1つ又はそれよりも多くのプログラムモジュールとを含むことを特徴とする請求項18に記載のグラフィカルユーザインタフェース。
  22. 前記ビジネス文書が電子文書である時に、該電子文書は、該ビジネス文書に説明された処理又は特徴の試験を支援する全てのテストケースへの電子リンクを提供することを特徴とする請求項21に記載のグラフィカルユーザインタフェース。
  23. 「自動多次元追跡可能性行列」に関連した複数のソフトウエアモジュールと試験のための複数のテストケースとを含む既存の複合ソフトウエアシステムの変更に応じて、複数のテスターによって連続的に実行されるソフトウエア試験タスクを計画する方法であって、
    a)複合ソフトウエアシステムの変更によって修正されたソフトウエアモジュールを識別する段階と、
    b)前記複合ソフトウエアシステムの以前に試験した機能性がまだ適正に作動することを検証するために試験されるテストケースの選択を識別する「自動多次元追跡可能性行列」を使用する段階と、
    c)連続的実行を要求するテストケースの前記選択内の全てのテストケースに対して実行の連続的順番を特定する段階と、
    d)前記テストケースの前記実行を支援するために前記複数のテスターからテスターを特定する段階と、
    e)前記実行の連続的順番で前記テストケースを開始する段階と、
    f)手動実行を要求するテストケースが実行されるのを待っていることをコンピュータ作成信号で前記テスターに通知する段階と、
    を含むことを特徴とする方法。
  24. 前記複合ソフトウエアシステムの前記変更は、新しい機能性の追加を含み、
    既存のテストケースでは試験することができない前記ソフトウエア変更によってもたらされた前記追加の機能性を試験する段階、
    を更に含むことを特徴とする請求項23に記載の方法。
  25. 前記複合ソフトウエアシステムの性能の意図した変更を網羅する少なくとも1つの新しいテストケースを作成する段階と、前記「自動多次元追跡可能性行列」を更新する段階とを更に含むことを特徴とする請求項23に記載の方法。
  26. 複数の相互に関連するソフトウエアモジュールを含み、その各々が依存及び従属関係を含む該モジュール間の関係を追跡するための「自動追跡可能性行列」に関連付けられた複合ソフトウエアシステムにおいて、修正されるモジュールの2つ又はそれよりも多くの代替的な部分集合の間で選択を行うことができる時に、特定の目的を達成するために修正するソフトウエアモジュールの選択を改良する方法であって、
    (a)修正のために部分集合が選択される相互に関連するソフトウエアモジュールの2つ又はそれよりも多くの部分集合を識別する段階と、
    (b)回帰試験の範囲を判断するために前記部分集合に対して前記「自動追跡可能性行列」を適用する段階と、
    (c)特定の目的を達成するために修正する部分集合を選択する段階と、
    (d)前記選択された部分集合を修正する段階と、
    (e)前記特定の目的が達成されたことを検証する段階と、
    を含むことを特徴とする方法。
  27. ソフトウエアモジュールの前記2つ又はそれよりも多くの部分集合の少なくとも1つは、1つのソフトウエアモジュールで構成されていることを特徴とする請求項26に記載の方法。
  28. 前記複合ソフトウエアシステムの性能が前記選択された部分集合の前記修正後も維持されていることを検証するために回帰試験を行う段階を更に含むことを特徴とする請求項26に記載の方法。
  29. 複数の相互に関連するソフトウエアモジュールを含み、各モジュールが該ソフトウエアモジュールの性能を試験するための1つ又はそれよりも多くの相互に関連するテストケースに関連付けられた複合ソフトウエアシステムを修正する方法であって、
    a)依存及び従属関係を含む相互に関連するテストケース間の関係を電子的に識別する「自動多次元追跡可能性行列」を作成する段階、
    を含み、
    前記「自動多次元追跡可能性行列」内の各テストケースは、関連付けられたソフトウエアモジュールに関する情報にリンクされており、
    b)所定の入力データと複数のテストケースの実行を指示する1つ又はそれよりも多くのスクリプトとを含む1つ又はそれよりも多くの試験シナリオに従って、複合ソフトウエアシステムに関連した前記相互に関連するテストケースの全て又はその部分集合に対して性能結果のベースラインを作成する段階と、
    c)前記ソフトウエアモジュールの1つ又はそれよりも多くにおける変更を作成する段階と、
    d)前記複合ソフトウエアシステムの試験のための前記テストケースの部分集合を選択する段階と、
    を更に含み、
    選択する段階は、前記「自動多次元追跡可能性行列」からの情報に基づいて対話式「解析ロードマップ」の支援によって行われ、該「解析ロードマップ」は、前記相互に関連するコンポーネントのどれが前記変更によって影響を受ける場合があるかを識別する図式又は文字表示を提供するものであり、
    e)一組の変更後の結果を提供するために、該変更によって影響を受ける場合がある前記相互に関連するコンポーネントに関連する1つ又はそれよりも多くの試験シナリオの全て又はその部分集合を実行する段階と、
    f)以前に設定された機能性がまだ許容可能であるかを判断するために、前記変更後の結果を性能結果の前記ベースラインの対応する部分と比較する段階と、
    を更に含むことを特徴とする方法。
  30. 前記1つ又はそれよりも多くの変更されたソフトウエアモジュールの元のバージョンを含む複合ソフトウエアシステムを別々に実行する複数のサーバが存在し、
    前記1つ又はそれよりも多くの変更されたソフトウエアモジュールの変更バージョンで前記元のバージョンを更新する段階、
    を更に含むことを特徴とする請求項29に記載の方法。
  31. 前記更新する段階は、パッチを作成する段階と、該パッチを前記複数のサーバ上で実行する段階とを更に含むことを特徴とする請求項30に記載の方法。
  32. 1つ又はそれよりも多くの試験シナリオの全て又はその部分集合を実行する前記段階は、該1つ又はそれよりも多くの試験シナリオが完了するまで、(1)シナリオ内の前記テストケースの部分集合の実行、及び(2)段階(e)を反復して行う段階を更に含むことを特徴とする請求項29に記載の方法。
  33. 前記試験及び前記ソフトウエアの変更に関する情報は、「管理エンティティ」を用いて保存されることを特徴とする請求項29に記載の方法。
  34. 前記ソフトウエアの前記変更に応じて前記「自動追跡可能性行列」を更新する必要があるかを判断する段階と、そうである場合に前記複合ソフトウエアシステムの試験のための前記テストケースの部分集合を選択する前に該「自動追跡可能性行列」を更新する段階とを更に含むことを特徴とする請求項29に記載の方法。
  35. 前記選択されたテストケースの少なくとも一部分の試験は、自動試験ツールで行われることを特徴とする請求項29に記載の方法。
  36. 前記選択されたテストケースで使用される入力データ内の少なくとも1つのパラメータは、前記試験の実行中に複数の値の間で自動的に変えられることを特徴とする請求項35に記載の方法。
  37. 搬送波に組み込まれたコンピュータデータ信号であって、
    複合ソフトウエアシステム内の複数のソフトウエアモジュールの少なくとも1つと、複合ソフトウエアシステム内の相互に関連するソフトウエアモジュールの回帰試験のための複数のコンピュータ実装テストケースとの間の従属関係及び依存関係を形成する情報と、
    前記従属関係及び前記依存関係に関する情報を図式的に伝達するためのコンピュータシステムに対する命令と、
    を含み、
    個々のテストケース又はソフトウエアモジュールは、互いに対するそれらの関係を示す方法で表示され、
    前記表示された情報は、他のテストケース又はソフトウエアモジュールのどれが変更によって影響を受ける場合があるかを示すことができ、
    グラフィカルユーザインタフェースに対するユーザアクションに関連した所定のユーザアクションに応じて、選択された個々のテストケース又はソフトウエアモジュールに関する付加的な情報を表示するための命令と、
    次の試験のために前記グラフィカルユーザインタフェース上の前記伝達された情報からテストケース又はソフトウエアモジュールを電子的に選択するための手段を提供する命令と、
    を更に含むことを特徴とするコンピュータデータ信号。
  38. 入力データセット、関連のテストケース、及び確認された出力結果の所定の集合からのベースライン情報を更に含むことを特徴とする請求項37に記載のコンピュータデータ信号。
  39. 前記選択されたテストケース又はソフトウエアモジュールの手動又は自動実行を開始するための命令と、該実行されたテストケース又はソフトウエアモジュールからの出力結果を電子的に記憶するための命令とを更に含むことを特徴とする請求項38に記載のコンピュータデータ信号。
  40. 前記出力結果を前記ベースライン情報と比較するための命令を更に含むことを特徴とする請求項39に記載のコンピュータデータ信号。
  41. 前記出力結果と前記ベースライン情報の間の相違を自動的に識別するための命令と、該相違を是正するための1つ又はそれよりも多くの推奨されるアクションを自動的に識別するための命令とを更に含むことを特徴とする請求項40に記載のコンピュータデータ信号。
  42. 前記出力結果と前記ベースライン情報の間の日付特定の相違を除去するための命令を更に含むことを特徴とする請求項41に記載のコンピュータデータ信号。
  43. 前記相違の原因を特定するコンピュータ化されたデバッグツールを実行するための命令を更に含むことを特徴とする請求項41に記載のコンピュータデータ信号。
  44. 複数の人間テスターと、次の試験のために前記グラフィカルユーザインタフェース上の前記伝達された情報からユーザがテストケース又はソフトウエアモジュールを選択することに応じて該テスターの1人又はそれよりも多くによる試験作業を計画するための命令とに関する情報を更に含むことを特徴とする請求項37に記載のコンピュータデータ信号。
  45. 前記複合ソフトウエアシステム内の前記複数のソフトウエアモジュールの少なくとも1つと前記複数のコンピュータ実装テストケースの間の前記従属関係及び依存関係を形成する前記情報をユーザに修正させるための命令を更に含むことを特徴とする請求項37に記載のコンピュータデータ信号。
  46. 試験活動及びソフトウエア修正を説明する情報が「管理エンティティ」に提供されるように該「管理エンティティ」と通信するための命令を更に含み、
    前記ソフトウエアモジュールの変更を行う前にユーザに前記「管理エンティティ」に関連したエージェントから許可を取得するように要求する命令を更に含み、
    前記許可の取得もまた、前記「管理エンティティ」を用いて記録される、
    ことを特徴とする請求項37に記載のコンピュータデータ信号。
  47. 前記選択されたテストケース又はソフトウエアモジュールの1つ又はそれよりも多くの自動実行のための命令を更に含むことを特徴とする請求項37に記載のコンピュータデータ信号。
  48. 前記複合ソフトウエアシステムは、2つ又はそれよりも多くの供給業者によって提供された100を超えるソフトウエアモジュールを含むことを特徴とする請求項37に記載のコンピュータデータ信号。
  49. 前記複合ソフトウエアシステムは、3つ又はそれよりも多くの供給業者によって提供された500を超えるソフトウエアモジュールを含むことを特徴とする請求項37に記載のコンピュータデータ信号。
  50. 前記複合ソフトウエアシステムは、2つ又はそれよりも多くのサーバ上にある2つ又はそれよりも多くの供給業者からの2つ又はそれよりも多くの個別のコンピュータオペレーティングシステムとのインタフェースを含むことを特徴とする請求項37に記載のコンピュータデータ信号。
  51. 前記複合ソフトウエアシステムは、SAPソフトウエアを含むことを特徴とする請求項37に記載のコンピュータデータ信号。
  52. 前記従属関係及び依存関係に関する前記図式的に伝達された情報は、階層形式で提供されることを特徴とする請求項37に記載のコンピュータデータ信号。
  53. 前記従属関係及び依存関係に関する前記図式的に伝達された情報は、フォルダアイコン、文書アイコン、「プラス」記号付きアイコン、「マイナス」記号付きアイコン、ページアイコン、及び矢印アイコンのうちの少なくとも1つを含む階層形式で提供されることを特徴とする請求項37に記載のコンピュータデータ信号。
  54. 前記図式的に伝達された情報は、選択されたテストケース又はソフトウエアモジュールに関する付加的な情報を提供するためのハイパーリンクを更に含むことを特徴とする請求項53に記載のコンピュータデータ信号。
JP2006538482A 2003-11-04 2004-11-03 複合ソフトウエアシステムを実施して検証するための自動多次元追跡可能性行列を含む試験ツール Abandoned JP2007535723A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US51763103P 2003-11-04 2003-11-04
PCT/US2004/036752 WO2005045673A2 (en) 2003-11-04 2004-11-03 Testing tool for complex component based software systems
US10/980,920 US7490319B2 (en) 2003-11-04 2004-11-03 Testing tool comprising an automated multidimensional traceability matrix for implementing and validating complex software systems

Publications (1)

Publication Number Publication Date
JP2007535723A true JP2007535723A (ja) 2007-12-06

Family

ID=34576805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006538482A Abandoned JP2007535723A (ja) 2003-11-04 2004-11-03 複合ソフトウエアシステムを実施して検証するための自動多次元追跡可能性行列を含む試験ツール

Country Status (4)

Country Link
US (1) US7490319B2 (ja)
EP (1) EP1680741B1 (ja)
JP (1) JP2007535723A (ja)
WO (1) WO2005045673A2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010046972A1 (ja) * 2008-10-21 2010-04-29 富士通株式会社 変更影響調査支援プログラム、変更影響調査支援装置および変更影響調査支援方法
JP2012164232A (ja) * 2011-02-08 2012-08-30 Nippon Telegr & Teleph Corp <Ntt> 機能情報生成装置、機能情報生成方法及び機能情報生成プログラム
JP2012185642A (ja) * 2011-03-04 2012-09-27 Internatl Business Mach Corp <Ibm> テスト・ケース生成方法、プログラム及びシステム
JP2013505512A (ja) * 2009-11-19 2013-02-14 ソニー株式会社 コンピュータ装置のシステムヘルス及びパフォーマンスのケア
US9824224B2 (en) 2012-08-02 2017-11-21 International Business Machines Corporation Security-minded cloning method, system and program
JP2019532429A (ja) * 2016-11-02 2019-11-07 日立オートモティブシステムズ株式会社 計算機システム、テスト方法、および記録媒体
US11055206B2 (en) 2017-10-04 2021-07-06 Fujitsu Limited Non-transitory computer-readable storage medium, generation method, and information processing apparatus
JP7384054B2 (ja) 2019-02-07 2023-11-21 富士通株式会社 自動化されたソフトウェアプログラム修復

Families Citing this family (442)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7231606B2 (en) 2000-10-31 2007-06-12 Software Research, Inc. Method and system for testing websites
US7424702B1 (en) 2002-08-19 2008-09-09 Sprint Communications Company L.P. Data integration techniques for use in enterprise architecture modeling
CA2451253A1 (en) * 2003-11-27 2005-05-27 Ibm Canada Limited - Ibm Canada Limitee Method for competitive peer programming
US9489687B2 (en) * 2003-12-04 2016-11-08 Black Duck Software, Inc. Methods and systems for managing software development
US20060116966A1 (en) * 2003-12-04 2006-06-01 Pedersen Palle M Methods and systems for verifying protectable content
US7552093B2 (en) * 2003-12-04 2009-06-23 Black Duck Software, Inc. Resolving license dependencies for aggregations of legally-protectable content
US8700533B2 (en) * 2003-12-04 2014-04-15 Black Duck Software, Inc. Authenticating licenses for legally-protectable content based on license profiles and content identifiers
US7630994B1 (en) 2004-03-12 2009-12-08 Netapp, Inc. On the fly summarization of file walk data
US7844646B1 (en) 2004-03-12 2010-11-30 Netapp, Inc. Method and apparatus for representing file system metadata within a database for efficient queries
US7293039B1 (en) * 2004-03-12 2007-11-06 Network Appliance, Inc. Storage resource management across multiple paths
US7539702B2 (en) * 2004-03-12 2009-05-26 Netapp, Inc. Pre-summarization and analysis of results generated by an agent
US20050216241A1 (en) * 2004-03-29 2005-09-29 Gadi Entin Method and apparatus for gathering statistical measures
US20050229159A1 (en) * 2004-04-12 2005-10-13 Microsoft Corporation Version aware test management system and method
US8245201B2 (en) * 2004-04-30 2012-08-14 International Business Machines Corporation Method and system for recording and replaying service interactions
US7849438B1 (en) * 2004-05-27 2010-12-07 Sprint Communications Company L.P. Enterprise software development process for outsourced developers
WO2006002071A2 (en) * 2004-06-15 2006-01-05 K5 Systems Inc. System and method for monitoring performance of groupings of network infrastructure and applications
US7610578B1 (en) * 2004-08-24 2009-10-27 The Math Works, Inc. Test manager for integrated test environments
US7908313B2 (en) * 2004-07-21 2011-03-15 The Mathworks, Inc. Instrument-based distributed computing systems
US20070041041A1 (en) * 2004-12-08 2007-02-22 Werner Engbrocks Method and computer program product for conversion of an input document data stream with one or more documents into a structured data file, and computer program product as well as method for generation of a rule set for such a method
US20060136188A1 (en) * 2004-12-22 2006-06-22 Lacey David J Capturing curation data
US20060143533A1 (en) * 2004-12-22 2006-06-29 International Business Machines Corporation Apparatus and system for testing of software
US8484618B2 (en) * 2005-01-12 2013-07-09 Advanced Testing Technologies, Inc. Test program set obsolescence mitigation through software and automatic test equipment processes
US7624379B2 (en) * 2005-01-12 2009-11-24 Advanced Testing Technologies, Inc. Test program set obsolescence mitigation through software and automatic test equipment system processes
US7539977B1 (en) * 2005-01-21 2009-05-26 Xilinx, Inc. Automatic bug isolation in computer programming languages
US7568183B1 (en) 2005-01-21 2009-07-28 Microsoft Corporation System and method for automation testing and validation
US7614042B1 (en) * 2005-01-21 2009-11-03 Microsoft Corporation System and method for selecting applicable tests in an automation testing system
US7627312B2 (en) * 2005-02-03 2009-12-01 Satyam Computer Services Ltd. System and method for self-testing of mobile wireless devices
US7797245B2 (en) * 2005-03-18 2010-09-14 Black Duck Software, Inc. Methods and systems for identifying an area of interest in protectable content
US20060225041A1 (en) * 2005-04-04 2006-10-05 International Business Machines Corporation Method for testing modified user documentation software for regressions
US20060230320A1 (en) * 2005-04-07 2006-10-12 Salvador Roman S System and method for unit test generation
US20060242606A1 (en) * 2005-04-26 2006-10-26 International Business Machines Corporation Graphical roadmap view and framework for activity tracking and execution
US7478281B2 (en) * 2005-06-06 2009-01-13 Denniston William B System and methods for functional testing of embedded processor-based systems
US7712087B2 (en) * 2005-06-28 2010-05-04 Oracle International Corporation Methods and systems for identifying intermittent errors in a distributed code development environment
US20070033164A1 (en) * 2005-06-28 2007-02-08 Xerox Corporation ABAP utility program for assigning device types
JP4397354B2 (ja) * 2005-06-28 2010-01-13 富士通株式会社 テスト記録方法、テスト記録装置、およびテスト記録プログラム
US8484065B1 (en) 2005-07-14 2013-07-09 Sprint Communications Company L.P. Small enhancement process workflow manager
US8196104B2 (en) * 2005-08-31 2012-06-05 Sap Ag Systems and methods for testing application accessibility
US20070061289A1 (en) * 2005-09-09 2007-03-15 Douglas Brown Validator and method for managing database system performance
US20070061625A1 (en) * 2005-09-15 2007-03-15 Acosta Juan Jr Automation structure for software verification testing
US20070101196A1 (en) * 2005-11-01 2007-05-03 Rogers William A Functional testing and verification of software application
JP4516001B2 (ja) * 2005-11-14 2010-08-04 富士通株式会社 ソフトウェアテスト管理プログラム、ソフトウェアテスト管理装置、ソフトウェアテスト管理方法
US20070168742A1 (en) * 2005-11-18 2007-07-19 Microsoft Corporation Isolating code modules
US7735068B2 (en) * 2005-12-01 2010-06-08 Infosys Technologies Ltd. Automated relationship traceability between software design artifacts
US20070168975A1 (en) * 2005-12-13 2007-07-19 Thomas Kessler Debugger and test tool
US8359571B2 (en) * 2005-12-19 2013-01-22 International Business Machines Corporation Computer method and apparatus for activity-based version selection in a configuration management system
US8429610B2 (en) * 2005-12-20 2013-04-23 International Business Machines Corporation Computer method and apparatus for providing version-aware impact analysis
US9489290B1 (en) 2005-12-30 2016-11-08 The Mathworks, Inc. Scheduling tests based on a valuation system
US7873944B2 (en) * 2006-02-22 2011-01-18 International Business Machines Corporation System and method for maintaining and testing a software application
US8561036B1 (en) * 2006-02-23 2013-10-15 Google Inc. Software test case management
WO2007099547A1 (en) * 2006-03-01 2007-09-07 Antony K Alappatt An interaction-based method for the implementation of coordination systems
US7908590B1 (en) 2006-03-02 2011-03-15 Parasoft Corporation System and method for automatically creating test cases through a remote client
US20070214391A1 (en) * 2006-03-10 2007-09-13 International Business Machines Corporation Method and apparatus for testing software
US7895565B1 (en) * 2006-03-15 2011-02-22 Jp Morgan Chase Bank, N.A. Integrated system and method for validating the functionality and performance of software applications
CN101038566A (zh) * 2006-03-17 2007-09-19 鸿富锦精密工业(深圳)有限公司 计算机诊断测试系统
US8234680B2 (en) 2006-03-21 2012-07-31 International Business Machines Corporation Creation and use of test cases for automated testing of media-based applications
US20070234126A1 (en) * 2006-03-28 2007-10-04 Ju Lu Accelerating the testing and validation of new firmware components
US20070234029A1 (en) * 2006-03-28 2007-10-04 Rothman Michael A Methods and apparatus for context sensitive component dispatch management
US7930683B2 (en) * 2006-03-31 2011-04-19 Sap Ag Test automation method for software programs
US7856619B2 (en) * 2006-03-31 2010-12-21 Sap Ag Method and system for automated testing of a graphic-based programming tool
US9166809B2 (en) * 2006-04-03 2015-10-20 Verizon Patent And Licensing Inc. Automated network testing
US8010538B2 (en) * 2006-05-08 2011-08-30 Black Duck Software, Inc. Methods and systems for reporting regions of interest in content files
US7747984B2 (en) * 2006-05-30 2010-06-29 Microsoft Corporation Automatic test case for graphics design application
US20070288883A1 (en) * 2006-06-09 2007-12-13 International Business Machines Corporation Method for consolidated launching of multiple tasks
US20080010535A1 (en) * 2006-06-09 2008-01-10 Microsoft Corporation Automated and configurable system for tests to be picked up and executed
US7870536B2 (en) * 2006-06-15 2011-01-11 International Business Machines Corporation Computer implemented method and system for sharing resources among hierarchical containers of resources
US8302073B2 (en) * 2006-06-15 2012-10-30 International Business Machines Corporation Moving and copying dependencies along with source code
GB0611960D0 (en) * 2006-06-16 2006-07-26 Ibm Software testing method and system
JP2008003985A (ja) * 2006-06-26 2008-01-10 Dainippon Screen Mfg Co Ltd 開発支援システム、開発支援方法および開発支援プログラム
US8583772B2 (en) 2008-08-14 2013-11-12 International Business Machines Corporation Dynamically configurable session agent
US8949406B2 (en) * 2008-08-14 2015-02-03 International Business Machines Corporation Method and system for communication between a client system and a server system
US8868533B2 (en) 2006-06-30 2014-10-21 International Business Machines Corporation Method and apparatus for intelligent capture of document object model events
US8205189B2 (en) * 2006-07-13 2012-06-19 Oracle International Corporation Method and system for definition control in a data repository application
US20080034305A1 (en) * 2006-08-03 2008-02-07 International Business Machines Corporation Method for providing flexible selection time components
US7966604B2 (en) * 2006-08-14 2011-06-21 Honeywell International Inc. Web browser object based automatic testing method for web applications
US7640470B2 (en) * 2006-08-21 2009-12-29 Microsoft Corporation Meta-data driven test-data generation with controllable combinatorial coverage
US8516445B2 (en) 2006-08-23 2013-08-20 International Business Machines Corporation Multi-dimension code coverage
US10078574B2 (en) 2006-09-25 2018-09-18 Typemock Ltd. Methods and systems for isolating software components
US8789187B1 (en) * 2006-09-28 2014-07-22 Whitehat Security, Inc. Pattern tracking and capturing human insight in a web application security scanner
US8719787B2 (en) 2006-09-30 2014-05-06 American Express Travel Related Services Company, Inc. System and method for server migration synchronization
US7681045B2 (en) * 2006-10-12 2010-03-16 Black Duck Software, Inc. Software algorithm identification
US8010803B2 (en) * 2006-10-12 2011-08-30 Black Duck Software, Inc. Methods and apparatus for automated export compliance
US8392886B2 (en) * 2006-10-17 2013-03-05 Artoftest, Inc. System, program product, and methods to enable visual recording and editing of test automation scenarios for web application
US7934201B2 (en) 2006-10-17 2011-04-26 Artoftest, Inc. System, method, and computer readable medium for universal software testing
CN100547562C (zh) * 2006-10-18 2009-10-07 国际商业机器公司 自动生成可再现运行时问题的单元测试用例的方法和系统
GB0621408D0 (en) 2006-10-27 2006-12-06 Ibm A method, apparatus and software for determining a relative measure of build quality for a built system
US8510716B1 (en) * 2006-11-14 2013-08-13 Parasoft Corporation System and method for simultaneously validating a client/server application from the client side and from the server side
US8074204B2 (en) 2006-11-21 2011-12-06 Microsoft Corporation Test automation for business applications
US7793154B2 (en) * 2006-11-30 2010-09-07 International Business Machines Corporation Method and implementation for automating processes using data driven pre-recorded transactions
US8146006B2 (en) * 2006-12-01 2012-03-27 International Business Machines Corporation Method and apparatus for obtaining user interface information from executable program code
US8015039B2 (en) * 2006-12-14 2011-09-06 Sap Ag Enterprise verification and certification framework
TWI322350B (en) * 2006-12-15 2010-03-21 Inst Information Industry Test device, method, application program, and computer readable medium for deriving a qualified test case plan from a test case database
US8107101B2 (en) * 2006-12-15 2012-01-31 Lexmark International, Inc. Apparatus and method for evaluating RFID programming
WO2008074529A2 (en) * 2006-12-21 2008-06-26 International Business Machines Corporation Method, system and computer program for performing regression tests
US7620856B2 (en) * 2006-12-28 2009-11-17 Sap Portals Israel Ltd. Framework for automated testing of enterprise computer systems
US7937622B2 (en) 2006-12-29 2011-05-03 International Business Machines Corporation Method and system for autonomic target testing
US20080172652A1 (en) * 2007-01-15 2008-07-17 Microsoft Corporation Identifying Redundant Test Cases
US20080172651A1 (en) * 2007-01-15 2008-07-17 Microsoft Corporation Applying Function Level Ownership to Test Metrics
US20080172580A1 (en) * 2007-01-15 2008-07-17 Microsoft Corporation Collecting and Reporting Code Coverage Data
US20080172655A1 (en) * 2007-01-15 2008-07-17 Microsoft Corporation Saving Code Coverage Data for Analysis
US7810079B2 (en) * 2007-01-23 2010-10-05 Sas Institute Inc. System and method for determining execution path difference in program
US8010401B1 (en) * 2007-01-30 2011-08-30 Intuit Inc. Method and system for market research
US20080196012A1 (en) * 2007-02-12 2008-08-14 Panaya Ltd. System and methods for static analysis of large computer programs and for presenting the results of the analysis to a user of a computer program
US7779303B2 (en) * 2007-02-27 2010-08-17 Cisco Technology, Inc. Targeted regression testing
US7958495B2 (en) * 2007-03-08 2011-06-07 Systemware, Inc. Program test system
DE102007029133A1 (de) * 2007-03-20 2008-09-25 Ludwig-Maximilians-Universität Verfahren zum rechnergestützten Ermitteln der Abhängigkeiten einer Vielzahl von Modulen eines technischen Systems, insbesondere eines Softwaresystems
US20080244062A1 (en) * 2007-03-26 2008-10-02 Microsoft Corporation Scenario based performance testing
US20080244323A1 (en) * 2007-03-27 2008-10-02 Tim Kelso Program Test System
US20080244322A1 (en) * 2007-03-27 2008-10-02 Tim Kelso Program Test System
US20080244320A1 (en) * 2007-03-27 2008-10-02 Tim Kelso Program Test System
US20080244524A1 (en) * 2007-03-27 2008-10-02 Tim Kelso Program Test System
WO2008124038A1 (en) * 2007-04-03 2008-10-16 Ldra Technology, Inc. Automated management of software requirements verification
CN101286131B (zh) * 2007-04-09 2010-06-09 国际商业机器公司 服务测试方法和服务测试系统
US8028277B2 (en) * 2007-05-21 2011-09-27 International Business Machines Corporation Self-healing system and method for code optimization in a computing environment
US8392890B2 (en) 2007-10-15 2013-03-05 Software Research, Inc. Method and system for testing websites
US20080306986A1 (en) * 2007-06-08 2008-12-11 Accenture Global Services Gmbh Migration of Legacy Applications
US20090006897A1 (en) * 2007-06-27 2009-01-01 Microsoft Corporation Automated service testing
US9519571B2 (en) 2007-07-13 2016-12-13 International Business Machines Corporation Method for analyzing transaction traces to enable process testing
US20090031227A1 (en) * 2007-07-27 2009-01-29 International Business Machines Corporation Intelligent screen capture and interactive display tool
US20090038010A1 (en) * 2007-07-31 2009-02-05 Microsoft Corporation Monitoring and controlling an automation process
US8276117B2 (en) * 2007-08-03 2012-09-25 International Business Machines Corporation Displaying and refactoring programs that include database statements
US8473915B2 (en) * 2007-08-03 2013-06-25 International Business Machines Corporation Coverage analysis tool for testing database-aware software applications
US8700645B2 (en) * 2007-08-17 2014-04-15 Salesforce.Com, Inc. On-demand database service system, method, and computer program product for validating a developed application
US8042055B2 (en) 2007-08-31 2011-10-18 Tealeaf Technology, Inc. Replaying captured network interactions
US20090106001A1 (en) * 2007-10-17 2009-04-23 Atomic Energy Council - Institute Of Nuclear Energy Research Digital I&C software failure simulation test facility
US8266599B2 (en) * 2007-11-13 2012-09-11 Hewlett-Packard Development Company, L.P. Output from changed object on application
US20090132860A1 (en) * 2007-11-21 2009-05-21 Inventec Corporation System and method for rapidly diagnosing bugs of system software
US8756579B1 (en) * 2007-12-03 2014-06-17 Appcelerator, Inc. Client-side and server-side unified validation
US7937273B2 (en) * 2007-12-07 2011-05-03 Hewlett-Packard Development Company, L.P. Change collision calculation system and method
US8205120B2 (en) * 2007-12-21 2012-06-19 Sap Ag Intelligent test framework
US20090169008A1 (en) * 2007-12-26 2009-07-02 Gonzales Jesus Orlando Ii System and method for tracking testing of software modification projects from a wireless mobile device
US8359580B2 (en) * 2007-12-26 2013-01-22 Visa U.S.A. Inc. System and method for tracking testing of software modification projects
FR2925966B1 (fr) * 2007-12-28 2010-06-11 Thales Sa Procede de realisation d'un outil universel perenne de developpement de tests d'equipements et outil de mise en oeuvre
US8141047B2 (en) * 2008-01-07 2012-03-20 International Business Machines Corporation Dependent object framework for junit testing and software application component
US8151276B2 (en) * 2008-02-27 2012-04-03 Accenture Global Services Gmbh Test script transformation analyzer with change guide engine
US8458662B2 (en) * 2008-02-27 2013-06-04 Accenture Global Services Limited Test script transformation analyzer with economic cost engine
US8365147B2 (en) * 2008-02-27 2013-01-29 Accenture Global Services Limited Test script transformation architecture
US8516442B2 (en) * 2008-02-27 2013-08-20 Accenture Global Services Limited Graphical user interface metadata evolution tool
US8185917B2 (en) * 2008-02-27 2012-05-22 Accenture Global Services Limited Graphical user interface application comparator
US8132114B2 (en) 2008-02-27 2012-03-06 Accenture Global Services Limited Graphical user interface typing and mapping system
CN101960448A (zh) * 2008-02-29 2011-01-26 惠普开发有限公司 当前执行组件脚本的元素的识别
US8561025B1 (en) * 2008-03-31 2013-10-15 Apigee Corporation Flow and module level detecting and debugging with inclusion of generated log statements
US8566796B2 (en) * 2008-04-04 2013-10-22 Sas Institute Inc. Systems and methods for interactions with software probes
US20090271214A1 (en) * 2008-04-29 2009-10-29 Affiliated Computer Services, Inc. Rules engine framework
US20090282136A1 (en) * 2008-05-08 2009-11-12 Oracle International Corporation Automatic Generation of Web Service client for Web Services Interoperability Testing
US8423879B2 (en) * 2008-05-14 2013-04-16 Honeywell International Inc. Method and apparatus for test generation from hybrid diagrams with combined data flow and statechart notation
US8108178B2 (en) * 2008-05-16 2012-01-31 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Directed design of experiments for validating probability of detection capability of a testing system
WO2009148481A1 (en) * 2008-06-06 2009-12-10 Sapient Corporation Systems and methods for visual test authoring and automation
EP2133795A1 (en) * 2008-06-11 2009-12-16 Software AG System and method for testing a software product
US8806450B1 (en) * 2008-06-26 2014-08-12 Juniper Networks, Inc. Static analysis in selective software regression testing
US20100005341A1 (en) * 2008-07-02 2010-01-07 International Business Machines Corporation Automatic detection and notification of test regression with automatic on-demand capture of profiles for regression analysis
US20100031237A1 (en) * 2008-08-01 2010-02-04 International Business Machines Corporation Methods for Detecting Inter-Module Dependencies
KR101437453B1 (ko) * 2008-08-29 2014-11-03 삼성전자주식회사 워크폼 관리장치, 워크폼 관리방법, 화상형성장치 및 워크폼 관리 시스템
US8214671B2 (en) * 2008-09-11 2012-07-03 International Business Machines Corporation Managing dependencies among objects of a system for energy conservation
US8739154B2 (en) * 2008-10-24 2014-05-27 Oracle International Corporation Method and system for implementing performance kits
US8719385B2 (en) * 2008-10-28 2014-05-06 Honeywell International Inc. Site controller discovery and import system
US20100106543A1 (en) * 2008-10-28 2010-04-29 Honeywell International Inc. Building management configuration system
US8850347B2 (en) 2010-09-30 2014-09-30 Honeywell International Inc. User interface list control system
US8819562B2 (en) 2010-09-30 2014-08-26 Honeywell International Inc. Quick connect and disconnect, base line configuration, and style configurator
US20110093493A1 (en) * 2008-10-28 2011-04-21 Honeywell International Inc. Building management system site categories
US8578336B1 (en) * 2008-11-03 2013-11-05 United Services Automobile Association (Usaa) Systems and methods for providing a test automation framework having a unified user interface
US8359581B2 (en) * 2008-12-10 2013-01-22 International Business Machines Corporation Automatic collection of diagnostic traces in an automation framework
US20100153919A1 (en) * 2008-12-11 2010-06-17 Wolfram Kramer Systems and methods for tracking software stands in a software production landscape
US8776020B2 (en) * 2008-12-11 2014-07-08 Sap Ag Software configuration control wherein containers are associated with physical storage of software application versions in a software production landscape
US20100180260A1 (en) * 2009-01-10 2010-07-15 TestingCzars Software Solutions Private Limited Method and system for performing an automated quality assurance testing
US8549483B1 (en) * 2009-01-22 2013-10-01 Intuit Inc. Engine for scalable software testing
US8347147B2 (en) * 2009-03-09 2013-01-01 Wipro Limited Lifecycle management of automated testing
US8276020B2 (en) * 2009-03-18 2012-09-25 Sas Institute Inc. Systems and methods for automated determination of error handling
US8356285B2 (en) * 2009-03-31 2013-01-15 Oracle America, Inc. Facilitated introspection of virtualized environments
US9934320B2 (en) 2009-03-31 2018-04-03 International Business Machines Corporation Method and apparatus for using proxy objects on webpage overlays to provide alternative webpage actions
US8930818B2 (en) * 2009-03-31 2015-01-06 International Business Machines Corporation Visualization of website analytics
US8386851B2 (en) * 2009-04-22 2013-02-26 International Business Machines Corporation Functional coverage using combinatorial test design
US20100299654A1 (en) * 2009-05-21 2010-11-25 Microsoft Corporation Approach for root causing regression bugs
US8949772B1 (en) * 2009-06-01 2015-02-03 Amazon Technologies, Inc. Dynamic model based software application development
US8527953B2 (en) * 2009-06-11 2013-09-03 Accenture Global Services Limited Assessment system for choosing maintenance approaches for GUI-directed test scripts
US8195987B2 (en) * 2009-06-12 2012-06-05 Microsoft Corporation Hang recovery in software applications
US8595697B2 (en) * 2009-07-01 2013-11-26 International Business Machines Corporation Serializing a templated markup language representation of test artifacts
US20110040537A1 (en) * 2009-08-17 2011-02-17 Sap Ag Simulation for a multi-dimensional analytical system
WO2011023424A1 (en) 2009-08-27 2011-03-03 International Business Machines Corporation A method and system for testing a computer program
US8387017B2 (en) * 2009-09-03 2013-02-26 International Business Machines Corporation Black box testing optimization using information from white box testing
US8549490B2 (en) * 2009-09-29 2013-10-01 International Business Machines Corporation Static code analysis for packaged application customization
US20110098963A1 (en) * 2009-10-23 2011-04-28 Cisco Technology, Inc. Context based testing
US8739130B2 (en) * 2009-10-29 2014-05-27 Hewlett-Packard Development Company, L.P. Quality assurance testing
CN101727389B (zh) * 2009-11-23 2012-11-14 中兴通讯股份有限公司 一种分布式综合业务自动化测试系统及方法
JP5102823B2 (ja) * 2009-12-21 2012-12-19 インターナショナル・ビジネス・マシーンズ・コーポレーション 総テスト時間を最小にするようにテストシナリオを最適化するテスト支援装置、テスト装置、テスト支援方法及びコンピュータプログラム
US8997053B2 (en) * 2010-01-14 2015-03-31 Worksoft, Inc. System and method for automated testing of software applications with dynamic user interfaces spanning multiple technologies
US20110191676A1 (en) * 2010-01-29 2011-08-04 Microsoft Corporation Cross-Browser Interactivity Recording, Playback, and Editing
US8561021B2 (en) * 2010-02-08 2013-10-15 Microsoft Corporation Test code qualitative evaluation
US20110196539A1 (en) * 2010-02-10 2011-08-11 Honeywell International Inc. Multi-site controller batch update system
US20110214105A1 (en) * 2010-02-26 2011-09-01 Macik Pavel Process for accepting a new build
US8640098B2 (en) * 2010-03-11 2014-01-28 Honeywell International Inc. Offline configuration and download approach
US8650195B2 (en) * 2010-03-26 2014-02-11 Palle M Pedersen Region based information retrieval system
US9098619B2 (en) 2010-04-19 2015-08-04 Honeywell International Inc. Method for automated error detection and verification of software
US20110271253A1 (en) 2010-04-28 2011-11-03 International Business Machines Corporation Enhancing functional tests coverage using traceability and static analysis
US20110271252A1 (en) 2010-04-28 2011-11-03 International Business Machines Corporation Determining functional design/requirements coverage of a computer code
US8966447B2 (en) * 2010-06-21 2015-02-24 Apple Inc. Capturing and displaying state of automated user-level testing of a graphical user interface application
US9495282B2 (en) * 2010-06-21 2016-11-15 Salesforce.Com, Inc. Method and systems for a dashboard testing framework in an online demand service environment
US8533532B2 (en) * 2010-06-23 2013-09-10 International Business Machines Corporation System identifying and inferring web session events
US20120030651A1 (en) * 2010-07-30 2012-02-02 Sap Ag System and method for test strategy optimization
US8701198B2 (en) * 2010-08-10 2014-04-15 Salesforce.Com, Inc. Performing security analysis on a software application
US9507940B2 (en) 2010-08-10 2016-11-29 Salesforce.Com, Inc. Adapting a security tool for performing security analysis on a software application
US20120042302A1 (en) * 2010-08-16 2012-02-16 Bhava Sikandar Selective regression testing
US9069901B2 (en) * 2010-08-19 2015-06-30 Salesforce.Com, Inc. Software and framework for reusable automated testing of computer software systems
US8522083B1 (en) 2010-08-22 2013-08-27 Panaya Ltd. Method and system for semiautomatic execution of functioning test scenario
CN103180834B (zh) 2010-09-09 2015-12-02 国际商业机器公司 自动操作系统测试框架
US9767000B1 (en) * 2010-09-20 2017-09-19 Amazon Technologies, Inc. Selecting appropriate subsets of software tests
US8510601B1 (en) * 2010-09-27 2013-08-13 Amazon Technologies, Inc. Generating service call patterns for systems under test
US8826239B2 (en) * 2010-10-06 2014-09-02 International Business Machines Corporation Asynchronous code testing in integrated development environment (IDE)
RU2444056C1 (ru) 2010-11-01 2012-02-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ ускорения решения проблем за счет накопления статистической информации
US8661412B2 (en) * 2010-11-19 2014-02-25 Microsoft Corporation Managing automated and manual application testing
US8869112B2 (en) * 2010-11-30 2014-10-21 Sap Se System and method for modular business applications
US8954930B2 (en) * 2010-12-17 2015-02-10 Sap Se System and method for reducing test effort by object risk analysis
US8607203B1 (en) * 2010-12-17 2013-12-10 Amazon Technologies, Inc. Test automation framework using dependency injection
US8893081B2 (en) * 2010-12-22 2014-11-18 Microsoft Corporation Selectively enabling runtime editing of an application
US9064054B2 (en) * 2010-12-29 2015-06-23 Red Hat, Inc. Synchronizing execution of a testing application
US8984488B2 (en) 2011-01-14 2015-03-17 Honeywell International Inc. Type and range propagation through data-flow models
US9459846B2 (en) 2011-01-31 2016-10-04 Sap Se User interface style guide compliance
EP2482192B1 (en) * 2011-01-31 2018-10-24 Tata Consultancy Services Limited Testing lifecycle
US9841956B2 (en) 2011-01-31 2017-12-12 Sap Se User interface style guide compliance reporting
US20120198365A1 (en) * 2011-01-31 2012-08-02 Sap Ag User interface style guide compliance
US20120198367A1 (en) * 2011-01-31 2012-08-02 Sap Ag User interface style guide compliance forecasting
US8984343B2 (en) 2011-02-14 2015-03-17 Honeywell International Inc. Error propagation in a system model
GB2503595A (en) 2011-02-22 2014-01-01 Ibm On-page manipulation and real-time replacement of content
CN103502952B (zh) * 2011-03-08 2017-06-09 惠普发展公司,有限责任合伙企业 创建测试用例
US8566336B2 (en) 2011-03-30 2013-10-22 Splunk Inc. File identification management and tracking
JP5665188B2 (ja) * 2011-03-31 2015-02-04 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ソフトウエア更新を適用した情報処理装置を検査するシステム
US8839282B2 (en) * 2011-04-07 2014-09-16 Level 3 Communications, Llc Multimedia test systems
US8984121B1 (en) * 2011-04-21 2015-03-17 Intuit Inc. Dependency visualization and fault diagnosis using multidimensional models for software offerings
US9348735B1 (en) * 2011-05-08 2016-05-24 Panaya Ltd. Selecting transactions based on similarity of profiles of users belonging to different organizations
US9170925B1 (en) * 2011-05-08 2015-10-27 Panaya Ltd. Generating test scenario templates from subsets of test steps utilized by different organizations
US9092579B1 (en) * 2011-05-08 2015-07-28 Panaya Ltd. Rating popularity of clusters of runs of test scenarios based on number of different organizations
US9104815B1 (en) * 2011-05-08 2015-08-11 Panaya Ltd. Ranking runs of test scenarios based on unessential executed test steps
US9201773B1 (en) * 2011-05-08 2015-12-01 Panaya Ltd. Generating test scenario templates based on similarity of setup files
US9201774B1 (en) * 2011-05-08 2015-12-01 Panaya Ltd. Generating test scenario templates from testing data of different organizations utilizing similar ERP modules
US9134961B1 (en) * 2011-05-08 2015-09-15 Panaya Ltd. Selecting a test based on connections between clusters of configuration changes and clusters of test scenario runs
US9170809B1 (en) * 2011-05-08 2015-10-27 Panaya Ltd. Identifying transactions likely to be impacted by a configuration change
US9239777B1 (en) * 2011-05-08 2016-01-19 Panaya Ltd. Generating test scenario templates from clusters of test steps utilized by different organizations
US9201772B1 (en) * 2011-05-08 2015-12-01 Panaya Ltd. Sharing test scenarios among organizations while protecting proprietary data
US9069904B1 (en) * 2011-05-08 2015-06-30 Panaya Ltd. Ranking runs of test scenarios based on number of different organizations executing a transaction
US9317404B1 (en) * 2011-05-08 2016-04-19 Panaya Ltd. Generating test scenario templates from test runs collected from different organizations
US20120296687A1 (en) * 2011-05-18 2012-11-22 Infosys Limited Method, process and technique for testing erp solutions
JP5629239B2 (ja) * 2011-05-23 2014-11-19 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ソフトウェアの動作をテストする装置及び方法
US8732654B2 (en) * 2011-05-31 2014-05-20 Intuit Inc. Dependency-based impact analysis using multidimensional models of software offerings
US9424007B2 (en) * 2011-06-02 2016-08-23 Open Invention Network, Llc System and method for pervasive software platform-based model driven architecture transaction aware application generator
AU2012203333A1 (en) 2011-06-15 2013-01-10 Agile Software Pty Limited Method and apparatus for testing data warehouses
US8856724B2 (en) 2011-06-20 2014-10-07 Ebay Inc. Systems and methods for incremental software development
US20130024469A1 (en) * 2011-07-21 2013-01-24 International Business Machines Corporation Apparatus and method for preventing regression defects when updating software components
US8935676B2 (en) 2011-08-07 2015-01-13 Hewlett-Packard Development Company, L.P. Automated test failure troubleshooter
US8656365B2 (en) * 2011-09-01 2014-02-18 Infosys Limited Systems, methods, and computer-readable media for measuring quality of application programming interfaces
US8799869B2 (en) * 2011-10-03 2014-08-05 Accenture Global Services Limited System for ensuring comprehensiveness of requirements testing of software applications
US8863084B2 (en) * 2011-10-28 2014-10-14 Google Inc. Methods, apparatuses, and computer-readable media for computing checksums for effective caching in continuous distributed builds
US9058423B1 (en) * 2011-11-18 2015-06-16 Google Inc. Dynamic environment deployment within system tests to clusters, local machines or production
US8850268B2 (en) 2011-11-23 2014-09-30 Brainlab Ag Analysis of system test procedures for testing a modular system
US10169213B2 (en) * 2011-11-29 2019-01-01 Red Hat, Inc. Processing of an application and a corresponding test file in a content repository
US8707262B2 (en) * 2011-12-22 2014-04-22 Sap Ag Code scoring
US9348734B2 (en) * 2011-12-23 2016-05-24 Sap Se Generation of automated tests for business software solution packages
US9223839B2 (en) 2012-02-22 2015-12-29 Honeywell International Inc. Supervisor history view wizard
US9152541B1 (en) 2012-03-22 2015-10-06 Amazon Technologies, Inc. Automated mobile application verification
US20130263090A1 (en) * 2012-03-30 2013-10-03 Sony Online Entertainment Llc System and method for automated testing
US9268663B1 (en) * 2012-04-12 2016-02-23 Amazon Technologies, Inc. Software testing analysis and control
US9058428B1 (en) * 2012-04-12 2015-06-16 Amazon Technologies, Inc. Software testing using shadow requests
US20130290075A1 (en) * 2012-04-30 2013-10-31 Infosys Limited Localization quality assurance of localized software
US8850407B2 (en) * 2012-05-23 2014-09-30 Hewlett-Packard Development Company, L.P. Test script generation
US9003031B2 (en) * 2012-05-29 2015-04-07 Tata Consultancy Services Limited Method and system for network transaction monitoring using transaction flow signatures
US9594544B2 (en) * 2012-06-07 2017-03-14 Microsoft Technology Licensing, Llc Visualized code review
US9015666B2 (en) 2012-07-11 2015-04-21 International Business Machines Corporation Updating product documentation using automated test scripts
US9038030B2 (en) 2012-07-26 2015-05-19 Infosys Limited Methods for predicting one or more defects in a computer program and devices thereof
KR20140016696A (ko) * 2012-07-31 2014-02-10 삼성전자주식회사 시스템 성능 평가장치 및 방법
US8954931B2 (en) * 2012-08-03 2015-02-10 Sap Se System test scope and plan optimization
US9454464B2 (en) * 2012-08-08 2016-09-27 Cbs Interactive Inc. Application development center testing system
US9330365B2 (en) * 2012-09-27 2016-05-03 Tata Consultancy Services Limited Method and system for estimating size and effort of software assurance projects
US9635094B2 (en) 2012-10-15 2017-04-25 International Business Machines Corporation Capturing and replaying application sessions using resource files
US9529349B2 (en) 2012-10-22 2016-12-27 Honeywell International Inc. Supervisor user management system
US9536108B2 (en) 2012-10-23 2017-01-03 International Business Machines Corporation Method and apparatus for generating privacy profiles
US9229845B1 (en) * 2012-11-01 2016-01-05 Amazon Technologies, Inc. Testing using production data in scalable pre-production environments
US10521288B2 (en) * 2012-11-07 2019-12-31 International Business Machines Corporation Collaborative application testing
US9535720B2 (en) 2012-11-13 2017-01-03 International Business Machines Corporation System for capturing and replaying screen gestures
US10474735B2 (en) 2012-11-19 2019-11-12 Acoustic, L.P. Dynamic zooming of content with overlays
US9158536B2 (en) * 2012-12-06 2015-10-13 International Business Machines Corporation Program code library consolidation in an integrated development environment
US9176852B2 (en) * 2012-12-10 2015-11-03 International Business Machines Corporation Role-oriented testbed environments for use in test automation
US8943477B2 (en) * 2012-12-18 2015-01-27 International Business Machines Corporation Debugging a graphical user interface code script with non-intrusive overlays
JP6048957B2 (ja) * 2012-12-21 2016-12-21 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報処理装置、プログラム、及び情報処理方法
US20140201702A1 (en) * 2013-01-14 2014-07-17 International Business Machines Corporation Automatic Identification of Affected Product Assets with Work Items
CN104050161B (zh) 2013-03-11 2017-05-17 Sap欧洲公司 应用和数据服务器的动态桥接
US9098634B2 (en) 2013-05-13 2015-08-04 Hewlett-Packard Development Company, L.P. Creating test templates based on steps in existing tests
US9465726B2 (en) * 2013-06-05 2016-10-11 Vmware, Inc. Abstract layer for automatic user interface testing
US9978084B1 (en) 2013-06-14 2018-05-22 Groupon, Inc. Configurable relevance service test platform
US8997052B2 (en) 2013-06-19 2015-03-31 Successfactors, Inc. Risk-based test plan construction
US9183117B2 (en) * 2013-06-20 2015-11-10 Abbott Laboratories Inc. Method for developing and testing a connectivity driver for an instrument
SG11201508189RA (en) 2013-06-28 2015-11-27 Landmark Graphics Corp Smart grouping of seismic data in inventory trees
US10970183B1 (en) * 2013-08-16 2021-04-06 The Mathworks, Inc. System and method for improving model performance
US9021444B2 (en) * 2013-08-19 2015-04-28 Concurix Corporation Combined performance tracer and snapshot debugging system
US20150052400A1 (en) 2013-08-19 2015-02-19 Concurix Corporation Breakpoint Setting Through a Debugger User Interface
US9465721B2 (en) 2013-08-19 2016-10-11 Microsoft Technology Licensing, Llc Snapshotting executing code with a modifiable snapshot definition
US9645808B1 (en) * 2013-08-26 2017-05-09 Amazon Technologies, Inc. Integrating software updates with the testing and deployment of software
WO2015041648A1 (en) * 2013-09-19 2015-03-26 Hewlett-Packard Development Company, L.P. Application menu modification recommendations
US9830253B2 (en) 2013-09-27 2017-11-28 International Business Machines Corporation Eliminating redundant interactions when testing computer software applications
US20160232213A1 (en) * 2013-09-27 2016-08-11 Nec Corporation Information Processing System, Information Processing Method, and Recording Medium with Program Stored Thereon
IN2013DE02948A (ja) * 2013-10-04 2015-04-10 Unisys Corp
US9792194B2 (en) 2013-10-18 2017-10-17 International Business Machines Corporation Performance regression manager for large scale systems
US9971977B2 (en) 2013-10-21 2018-05-15 Honeywell International Inc. Opus enterprise report system
US9436460B2 (en) * 2013-10-29 2016-09-06 International Business Machines Corporation Regression alerts
US9268675B2 (en) * 2013-12-02 2016-02-23 Syntel, Inc. Computerized system and method for auditing software code
US20150220420A1 (en) * 2014-01-31 2015-08-06 Schlumberger Technology Corporation Performance evaluation and tuning systems and methods
FR3018118B1 (fr) * 2014-02-28 2016-04-29 Airbus Helicopters Procede de test d'un systeme electronique
US9298584B2 (en) 2014-03-12 2016-03-29 International Business Machines Corporation Artifact selection using textual reports
EP3129885B1 (en) 2014-04-08 2020-12-30 Turnkey Solutions Corp. Software test automation system and method
US9195457B1 (en) * 2014-06-11 2015-11-24 Amazon Technologies, Inc. Interactive application programming interface documentation
US10248508B1 (en) 2014-06-20 2019-04-02 Amazon Technologies, Inc. Distributed data validation service
US9933762B2 (en) 2014-07-09 2018-04-03 Honeywell International Inc. Multisite version and upgrade management system
US9606901B1 (en) * 2014-08-05 2017-03-28 Amdocs Software Systems Limited System, method, and computer program for generating a detailed design of at least one telecommunications based integration testing project
GB2529178A (en) 2014-08-12 2016-02-17 Ibm Test selection
US9720687B2 (en) * 2014-08-27 2017-08-01 ValGenesis, Inc. Validating and maintaining respective validation status of software applications and manufacturing systems and processes
US9639343B2 (en) * 2014-08-29 2017-05-02 Nxp Usa, Inc. Method for altering execution of a program, debugger, and computer-readable medium
US9875274B2 (en) * 2014-09-15 2018-01-23 Sap Se Extensibility of embedded database procedures
US9378119B2 (en) * 2014-09-17 2016-06-28 Verizon Patent And Licensing Inc. Release template
US10089217B2 (en) * 2014-09-23 2018-10-02 Red Hat, Inc. Identification of software test cases
EP3021225B1 (en) * 2014-11-14 2020-07-01 Mastercard International, Inc. Automated configuration code based selection of test cases for payment terminals
US9753841B1 (en) * 2014-12-22 2017-09-05 Ca, Inc. Generation of baseline test cases for composite software application
US20160180262A1 (en) * 2014-12-22 2016-06-23 Tom Brauer System and method for testing enterprise transactions
US9740593B2 (en) * 2015-01-08 2017-08-22 International Business Machines Corporation Comparative program execution through control of two or more debug sessions to automatically determine execution differences
WO2016114748A1 (en) * 2015-01-12 2016-07-21 Hewlett Packard Enterprise Development Lp Data comparison
JP6481387B2 (ja) * 2015-01-30 2019-03-13 富士通株式会社 関連情報提供方法、関連情報提供装置及び関連情報提供プログラム
US20160246705A1 (en) * 2015-02-23 2016-08-25 International Business Machines Corporation Data fabrication based on test requirements
US9880924B2 (en) * 2015-02-24 2018-01-30 Red Hat, Inc. Source code unit testing using an indexing tool
US10380009B2 (en) * 2015-02-27 2019-08-13 Walmart Apollo, Llc Code usage map
US20160259716A1 (en) * 2015-03-02 2016-09-08 Ca, Inc. Rebuilding an execution flow from an execution grid
US10534512B2 (en) * 2015-03-04 2020-01-14 Tata Consultancy Services Limited System and method for identifying web elements present on a web-page
US9892015B2 (en) 2015-03-16 2018-02-13 Microsoft Technology Licensing, Llc Integration and automation of build and test in a customized computing system
US9740590B2 (en) 2015-03-27 2017-08-22 International Business Machines Corporation Determining importance of an artifact in a software development environment
US9921945B2 (en) 2015-04-06 2018-03-20 Adp, Llc Automatic verification of JSON data
US10031831B2 (en) * 2015-04-23 2018-07-24 International Business Machines Corporation Detecting causes of performance regression to adjust data systems
US9740585B2 (en) 2015-06-23 2017-08-22 International Business Machines Corporation Flexible configuration and control of a testing system
US20170003924A1 (en) * 2015-06-30 2017-01-05 International Business Machines Corporation Replay of responsive web design (rwd) designed web sites
US10007594B2 (en) * 2015-07-21 2018-06-26 International Business Machines Corporation Proactive cognitive analysis for inferring test case dependencies
US9734047B2 (en) * 2015-07-28 2017-08-15 Testplant Europe Ltd Method and apparatus for an improved automated test of software with a graphical user interface
US9952965B2 (en) 2015-08-06 2018-04-24 International Business Machines Corporation Test self-verification with integrated transparent self-diagnose
GB201514336D0 (en) * 2015-08-12 2015-09-23 Basis Technologies Internat Ltd Testing of enterprise resource management systems
US9710364B2 (en) * 2015-09-04 2017-07-18 Micron Technology Licensing, Llc Method of detecting false test alarms using test step failure analysis
US10296445B2 (en) * 2015-09-13 2019-05-21 Ca, Inc. Automated system documentation generation
US10362104B2 (en) 2015-09-23 2019-07-23 Honeywell International Inc. Data manager
US10209689B2 (en) 2015-09-23 2019-02-19 Honeywell International Inc. Supervisor history service import manager
US9892019B2 (en) * 2015-10-16 2018-02-13 Successfactors Inc. Use case driven stepping component automation framework
US9652367B1 (en) * 2015-10-21 2017-05-16 Sap Portals Israel Ltd. Exploratory testing on multiple system landscapes
US10289534B1 (en) * 2015-10-29 2019-05-14 Amdocs Development Limited System, method, and computer program for efficiently automating business flow testing
US10025698B2 (en) * 2015-11-16 2018-07-17 Cognizant Technology Solutions India Pvt. Ltd System and method for efficiently predicting testing schedule and stability of applications
CN106257426A (zh) * 2016-01-27 2016-12-28 上海华测导航技术股份有限公司 基于gnss接收机的内存泄露检测方法
US10282283B2 (en) * 2016-01-28 2019-05-07 Accenture Global Solutions Limited Orchestrating and providing a regression test
WO2017146696A1 (en) * 2016-02-24 2017-08-31 Entit Software Llc Application content display at target screen resolutions
US9898392B2 (en) * 2016-02-29 2018-02-20 Red Hat, Inc. Automated test planning using test case relevancy
US10268453B1 (en) * 2016-03-07 2019-04-23 United States Of America As Represented By The Administrator Of The Nasa Interfacing with one or more intelligent systems
US9606900B1 (en) * 2016-03-24 2017-03-28 Fmr Llc Intelligent automation of computer software test scripts and code requirements
KR101797484B1 (ko) * 2016-06-29 2017-12-13 주식회사 티맥스 소프트 리호스팅의 테스트를 수행하기 위한 방법 및 컴퓨팅 디바이스
US10417116B2 (en) * 2016-07-28 2019-09-17 International Business Machines Corporation System, method, and apparatus for crowd-sourced gathering of application execution events for automatic application testing and replay
EP3497574A4 (en) 2016-08-09 2020-05-13 Sealights Technologies Ltd. SYSTEM AND METHOD FOR THE CONTINUOUS EXAMINATION AND PROVISION OF SOFTWARE
US10083110B2 (en) * 2016-08-16 2018-09-25 American Express Travel Related Services Company, Inc. Systems and methods for software testing and test management
US10503630B2 (en) * 2016-08-31 2019-12-10 Vmware, Inc. Method and system for test-execution optimization in an automated application-release-management system during source-code check-in
CN108376061B (zh) * 2016-10-13 2019-12-10 北京百度网讯科技有限公司 用于开发无人驾驶车辆应用的方法和装置
US20180114179A1 (en) * 2016-10-24 2018-04-26 Simmonds Precision Products, Inc. Product life cycle model storage architecture
US11216342B2 (en) * 2016-12-12 2022-01-04 Usablenet Inc. Methods for improved auditing of web sites and devices thereof
TWI647648B (zh) * 2016-12-30 2019-01-11 國家中山科學研究院 Product development management system
US10437586B2 (en) * 2017-01-03 2019-10-08 Infosys Limited Method and system for dynamic impact analysis of changes to functional components of computer application
JP6684233B2 (ja) * 2017-01-12 2020-04-22 株式会社日立製作所 テスト入力情報検索装置及び方法
US10204319B2 (en) * 2017-01-20 2019-02-12 Wipro Limited Enterprise system and method for facilitating common platform for multiple-users working parallelly in enterprise environment
US10162730B2 (en) * 2017-01-24 2018-12-25 Dell Products, L.P. System and method for debugging software in an information handling system
US10423520B2 (en) 2017-02-22 2019-09-24 Webomates LLC Method and system for real-time identification of anomalous behavior in a software program
US10908983B2 (en) 2017-03-31 2021-02-02 Cae Inc. Method and system for preventing an anomaly in a simulator
US10204034B2 (en) * 2017-04-06 2019-02-12 At&T Intellectual Property I, L.P. System and method for testing software applications in a software defined network
US10241904B2 (en) * 2017-04-10 2019-03-26 Microsoft Technology Licensing, Llc Test components factorization in a build system
US10430318B1 (en) * 2017-07-11 2019-10-01 Juniper Networks, Inc Systems and methods for efficiently performing regression testing on software updates
US20190018545A1 (en) * 2017-07-13 2019-01-17 International Business Machines Corporation System and method for rapid financial app prototyping
DE102017212612A1 (de) 2017-07-21 2019-01-24 Ford Global Technologies, Llc Verfahren zum automatischen Erzeugen von Tests für die Software eines Fahrzeugs
US10303587B2 (en) 2017-07-27 2019-05-28 Hcl Technologies Limited System and method for generating regression test suite
US10503631B1 (en) * 2017-07-31 2019-12-10 Cisco Technology, Inc. Runtime intelligence within an integrated development environment
US10423521B2 (en) 2017-08-24 2019-09-24 Salesforce.Com, Inc. Automatically executing stateless transactions with data dependency in test cases
WO2019051480A1 (en) 2017-09-11 2019-03-14 Nextworld Llc SYSTEMS AND METHODS FOR CREATING BUSINESS SOFTWARE
US11520606B2 (en) * 2017-09-22 2022-12-06 Vmware, Inc. Dynamic generation of user interface components based on hierarchical component factories
US10162740B1 (en) 2017-11-07 2018-12-25 Fmr Llc Automated intelligent execution of computer software test cases
US10552305B2 (en) * 2017-12-12 2020-02-04 Sap Se Custom upgrade testing system
US10810115B2 (en) * 2017-12-21 2020-10-20 Verizon Patent And Licensing Inc. Systems and methods using artificial intelligence to identify, test, and verify system modifications
CN108171290A (zh) * 2017-12-22 2018-06-15 大连运明自动化技术有限公司 基于rfid芯片的无纸化刀具数据传输方法
US11086765B2 (en) * 2018-02-02 2021-08-10 Jpmorgan Chase Bank, N.A. Test reuse exchange and automation system and method
WO2019183219A1 (en) 2018-03-22 2019-09-26 Snowflake Computing Inc. Incremental feature development and workload capture in database systems
US10402310B1 (en) * 2018-03-30 2019-09-03 Atlassian Pty Ltd Systems and methods for reducing storage required for code coverage results
US10496529B1 (en) * 2018-04-18 2019-12-03 Palantir Technologies Inc. Data unit test-based data management system
US10892973B2 (en) 2018-04-27 2021-01-12 Hewlett Packard Enterprise Development Lp Network health monitoring
US10671519B2 (en) * 2018-04-27 2020-06-02 Microsoft Technology Licensing, Llc Unit testing for changes to version control
US10585779B2 (en) * 2018-07-30 2020-03-10 General Electric Company Systems and methods of requirements chaining and applications thereof
US10831394B2 (en) * 2018-08-27 2020-11-10 International Business Machines Corporation Live upgrade of storage device driver using shim application
US10871977B2 (en) 2018-08-29 2020-12-22 Ernst & Young U.S. Llp Automated software script remediation methods and systems
CN109376069B (zh) * 2018-09-03 2023-07-21 中国平安人寿保险股份有限公司 一种测试报告的生成方法及设备
US10783051B2 (en) * 2018-09-06 2020-09-22 Servicenow, Inc. Performance regression framework
CN109376076B (zh) * 2018-09-21 2022-04-29 华迪计算机集团有限公司 一种用于集成系统的测试方法及装置
US11086759B2 (en) 2018-09-27 2021-08-10 SeaLights Technologies LTD System and method for probe injection for code coverage
US10710239B2 (en) 2018-11-08 2020-07-14 Bank Of America Corporation Intelligent control code update for robotic process automation
US10831640B2 (en) * 2018-11-14 2020-11-10 Webomates LLC Method and system for testing an application using multiple test case execution channels
US10769046B2 (en) * 2018-11-20 2020-09-08 Rubrik, Inc. Automated review of source code for style issues
US10866883B2 (en) * 2018-11-29 2020-12-15 Micro Focus Llc Detection of graphical user interface element of application undergoing functional testing
CN109614331A (zh) * 2018-12-06 2019-04-12 郑州云海信息技术有限公司 一种基于递归算法的测试用例矩阵生成方法及装置
CN109597413A (zh) * 2018-12-06 2019-04-09 南京华苏科技有限公司 一种基于rfid的产品测试的智能化管理方法
US11334472B2 (en) * 2018-12-14 2022-05-17 NextWorld, LLC Automated testing for metadata-driven custom applications
US11050850B1 (en) 2019-01-07 2021-06-29 Allstate Insurance Company System and methods for application programming interface validation and testing
US11138366B2 (en) 2019-02-25 2021-10-05 Allstate Insurance Company Systems and methods for automated code validation
US11048618B2 (en) * 2019-03-11 2021-06-29 International Business Machines Corporation Environment modification for software application testing
US11200154B2 (en) 2019-03-11 2021-12-14 International Business Machines Corporation Function modification for software application testing
US10719657B1 (en) * 2019-04-30 2020-07-21 Globalfoundries Inc. Process design kit (PDK) with design scan script
CN111930091A (zh) * 2019-05-13 2020-11-13 北京新能源汽车股份有限公司 一种电动车电子控制单元的网络测试方法及装置
US11144434B2 (en) * 2019-05-31 2021-10-12 The Mathworks, Inc. Refining coverage analyses using context information
US11093365B2 (en) 2019-07-15 2021-08-17 Bank Of America Corporation System for splicing and formatting code via machine learning
US11256608B2 (en) * 2019-08-06 2022-02-22 Red Hat, Inc. Generating test plans for testing computer products based on product usage data
US11573885B1 (en) 2019-09-26 2023-02-07 SeaLights Technologies LTD System and method for test selection according to test impact analytics
CN110704322B (zh) * 2019-09-30 2023-03-10 上海中通吉网络技术有限公司 软件测试方法和系统
CN110727595B (zh) * 2019-10-14 2023-09-05 北京智游网安科技有限公司 一种应用登录界面识别方法、智能终端及存储介质
US10922216B1 (en) * 2019-10-15 2021-02-16 Oracle International Corporation Intelligent automation test workflow
CN111209204B (zh) * 2020-01-06 2023-09-22 杭州涂鸦信息技术有限公司 一种基于JSON的web自动化测试方法及其系统和装置
US11303517B2 (en) * 2020-01-07 2022-04-12 International Business Machines Corporation Software patch optimization
US11212191B2 (en) 2020-01-07 2021-12-28 Forcepoint Llc GUI assisted infrastructure as code
US11169907B2 (en) 2020-01-15 2021-11-09 Salesforce.Com, Inc. Web service test and analysis platform
US11615016B2 (en) * 2020-01-23 2023-03-28 Hcl Technologies Limited System and method for executing a test case
US11354108B2 (en) * 2020-03-02 2022-06-07 International Business Machines Corporation Assisting dependency migration
US11074164B1 (en) * 2020-03-06 2021-07-27 Bank Of America Corporation Real-time regression test generator
US11200048B2 (en) 2020-05-14 2021-12-14 International Business Machines Corporation Modification of codified infrastructure for orchestration in a multi-cloud environment
CN111737148A (zh) * 2020-07-24 2020-10-02 深圳市富之富信息技术有限公司 自动回归测试方法、装置、计算机设备及存储介质
CN114003482B (zh) * 2020-07-28 2024-02-13 沈苏科技(苏州)股份有限公司 一种无编码型软件系统压力测试方法及系统
CN112100066B (zh) * 2020-09-10 2023-07-04 杭州览众数据科技有限公司 一种数据指标准确性的校验方法及自动化测试工具
CN112131116B (zh) * 2020-09-25 2023-06-27 中国直升机设计研究所 一种嵌入式软件自动化回归测试方法
US11294793B1 (en) * 2020-10-23 2022-04-05 UiPath Inc. Robotic process automation (RPA) debugging systems and methods
US11422795B2 (en) * 2020-11-23 2022-08-23 Cerner Innovation, Inc. System and method for predicting the impact of source code modification based on historical source code modifications
CN112463630A (zh) * 2020-12-08 2021-03-09 广州品唯软件有限公司 版本差异性测试方法、装置、计算机设备和存储介质
DE102020133828A1 (de) * 2020-12-16 2022-06-23 TÜV Informationstechnik GmbH Unternehmensgruppe TÜV NORD Computersystem, Verfahren und Computerprogramm zur Auditierung komplexer Informationen
CN112579840B (zh) * 2020-12-22 2024-04-09 中检计量有限公司 一种展示不同追溯结果的查询系统及方法
CN112711532B (zh) * 2020-12-29 2023-10-20 中国航空工业集团公司西安飞机设计研究所 一种起落架分区软件的自动化测试方法
US11163675B1 (en) 2021-04-07 2021-11-02 State Farm Mutual Automobile Insurance Company Mutation testing in parallel threads
US11237952B1 (en) * 2021-04-07 2022-02-01 State Farm Mutual Automobile Insurance Company Runtime class recompilation during mutation testing
CN113448847A (zh) * 2021-06-24 2021-09-28 新华三大数据技术有限公司 一种测试方法及系统
CN113704100A (zh) * 2021-08-20 2021-11-26 苏州智加科技有限公司 一种测试用例的自动管理方法及系统
CN114756477B (zh) * 2022-06-13 2022-09-02 南京讯优智超软件科技有限公司 融合客户行为回放的多维测试方法及系统
CN117290205A (zh) * 2022-10-25 2023-12-26 国家电投集团科学技术研究院有限公司 一种通用核电热工水力软件测试方法及装置
US11709757B1 (en) * 2023-03-08 2023-07-25 Citibank, N.A. Systems and methods for integrating script development and script validation platforms based on detected dependency branches in script code
CN116450532B (zh) * 2023-06-13 2023-09-05 西安晟昕科技股份有限公司 一种计算机软件性能多维测试方法
CN116467222A (zh) * 2023-06-19 2023-07-21 阿里巴巴(中国)有限公司 域名解析软件的测试方法、软件测试方法、装置及设备
US11914504B1 (en) * 2023-06-27 2024-02-27 Starbucks Corporation Performing physical experiments based on automatically-generated testing scripts
CN116860587B (zh) * 2023-09-05 2023-11-28 中国电子科技集团公司第十五研究所 面向战场态势性能优化的普适体系化设计框架的构建方法

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600789A (en) * 1992-11-19 1997-02-04 Segue Software, Inc. Automated GUI interface testing
EP0685084A1 (en) 1993-12-17 1995-12-06 Software Publishing Corporation Automatic gathering and graphical display of useability test data
CA2147036A1 (en) * 1994-05-16 1995-11-17 Yih-Farn Robin Chen System and method for selective regression testing
US5557539A (en) * 1994-06-13 1996-09-17 Centigram Communications Corporation Apparatus and method for testing an interactive voice messaging system
US6216109B1 (en) * 1994-10-11 2001-04-10 Peoplesoft, Inc. Iterative repair optimization with particular application to scheduling for integrated capacity and inventory planning
US5953519A (en) * 1995-06-12 1999-09-14 Fura; David A. Method and system for generating electronic hardware simulation models
US5655074A (en) * 1995-07-06 1997-08-05 Bell Communications Research, Inc. Method and system for conducting statistical quality analysis of a complex system
US6154753A (en) 1995-09-15 2000-11-28 Cable & Wireless, Inc. Document management system and method for business quality modeling
US5758062A (en) * 1996-04-30 1998-05-26 Oracle Corporation Method and apparatus for regression testing of application logic
US5949999A (en) * 1996-11-25 1999-09-07 Siemens Corporate Research, Inc. Software testing and requirements tracking
US6279826B1 (en) * 1996-11-29 2001-08-28 Diebold, Incorporated Fault monitoring and notification system for automated banking
US6021392A (en) * 1996-12-09 2000-02-01 Pyxis Corporation System and method for drug management
US6003006A (en) * 1996-12-09 1999-12-14 Pyxis Corporation System of drug distribution to health care providers
US6192108B1 (en) * 1997-09-19 2001-02-20 Mci Communications Corporation Performing automated testing using automatically generated logs
US6173440B1 (en) * 1998-05-27 2001-01-09 Mcdonnell Douglas Corporation Method and apparatus for debugging, verifying and validating computer software
US6587969B1 (en) * 1998-06-22 2003-07-01 Mercury Interactive Corporation Software system and methods for testing the functionality of a transactional server
US6061643A (en) * 1998-07-07 2000-05-09 Tenfold Corporation Method for defining durable data for regression testing
US6349238B1 (en) * 1998-09-16 2002-02-19 Mci Worldcom, Inc. System and method for managing the workflow for processing service orders among a variety of organizations within a telecommunications company
WO2000022595A1 (en) * 1998-10-13 2000-04-20 Integrated Systems Research Corporation System and method for fleet tracking
US6226784B1 (en) * 1998-10-14 2001-05-01 Mci Communications Corporation Reliable and repeatable process for specifying developing distributing and monitoring a software system in a dynamic environment
US6421822B1 (en) * 1998-12-28 2002-07-16 International Business Machines Corporation Graphical user interface for developing test cases using a test object library
US6415396B1 (en) * 1999-03-26 2002-07-02 Lucent Technologies Inc. Automatic generation and maintenance of regression test cases from requirements
AU5910800A (en) * 1999-06-30 2001-01-31 Accenture Llp A system, method and article of manufacture for tracking software sale transactions of an internet-based retailer for reporting to a software publisher
US6601233B1 (en) * 1999-07-30 2003-07-29 Accenture Llp Business components framework
US6934934B1 (en) 1999-08-30 2005-08-23 Empirix Inc. Method and system for software object testing
US6405364B1 (en) * 1999-08-31 2002-06-11 Accenture Llp Building techniques in a development architecture framework
US6839680B1 (en) * 1999-09-30 2005-01-04 Fujitsu Limited Internet profiling
US6301701B1 (en) * 1999-11-10 2001-10-09 Tenfold Corporation Method for computer-assisted testing of software application components
US6694509B1 (en) * 1999-12-28 2004-02-17 Ge Medical Systems Global Technology Company Llc Automated regression testing of workstation software
US6775824B1 (en) * 2000-01-12 2004-08-10 Empirix Inc. Method and system for software object testing
US20020072999A1 (en) * 2000-02-17 2002-06-13 International Business Machines Corporation System and method for providing integrated inventory control of time-sensitive inventory
AU2001255192A1 (en) 2000-03-23 2001-10-03 Igetsmart.Com, Inc. Using lead-times and usage rates to determine inventory reorder points and levels
US7047176B2 (en) * 2000-05-05 2006-05-16 Fujitsu Limited Method and system for hardware simulation
US20020026630A1 (en) * 2000-08-28 2002-02-28 John Schmidt Enterprise application integration methodology
US6415369B1 (en) * 2000-08-29 2002-07-02 Agere Systems Guardian Corp. Shared devices and memory using split bus and time slot interface bus arbitration
WO2002023432A1 (en) 2000-09-12 2002-03-21 Cunningham Stephen J Tracking method and system for marketing software
US20030018507A1 (en) * 2001-03-13 2003-01-23 Ed Flanagan Construction scheduling system
US6801818B2 (en) * 2001-03-14 2004-10-05 The Procter & Gamble Company Distributed product development
US20030009396A1 (en) * 2001-07-03 2003-01-09 Devries Raymond A. Tracking and electronic signaling system
US20030097640A1 (en) * 2001-07-25 2003-05-22 International Business Machines Corporation System and method for creating and editing documents
US6986125B2 (en) * 2001-08-01 2006-01-10 International Business Machines Corporation Method and apparatus for testing and evaluating a software component using an abstraction matrix
US20030033177A1 (en) * 2001-08-10 2003-02-13 Macgonigle Richard G. Method, system and storage medium for customer order processing
US20030078918A1 (en) * 2001-10-23 2003-04-24 Souvignier Todd J. Method, apparatus and system for file sharing between computers
US6993748B2 (en) * 2001-10-26 2006-01-31 Capital One Financial Corporation Systems and methods for table driven automation testing of software programs
US20030093478A1 (en) * 2001-11-13 2003-05-15 The Procter & Gamble Company Collaboration and innovation system
US7346893B2 (en) * 2002-03-28 2008-03-18 Sap Ag Exchange infrastructure system and method
US7089534B2 (en) * 2002-05-01 2006-08-08 International Business Machines Corporation Model based test generation for validation of parallel and concurrent software
US8386852B2 (en) * 2002-11-05 2013-02-26 Hewlett-Packard Development Company, L.P. Automated recording and replaying of software regression tests
WO2004046891A2 (en) 2002-11-19 2004-06-03 Safetzone Technologies Corporation Guest information tracking system and method
US20040103396A1 (en) * 2002-11-20 2004-05-27 Certagon Ltd. System for verification of enterprise software systems
US20040154001A1 (en) * 2003-02-05 2004-08-05 Haghighat Mohammad R. Profile-guided regression testing
US7065677B1 (en) * 2003-04-10 2006-06-20 Microsoft Corporation Method for testing operating system components

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5278439B2 (ja) * 2008-10-21 2013-09-04 富士通株式会社 修正支援プログラム、修正支援装置および修正支援方法
GB2477655A (en) * 2008-10-21 2011-08-10 Fujitsu Ltd Change impact research support program, change impact research support device and change impact research support method
WO2010046972A1 (ja) * 2008-10-21 2010-04-29 富士通株式会社 変更影響調査支援プログラム、変更影響調査支援装置および変更影響調査支援方法
GB2477655B (en) * 2008-10-21 2012-10-10 Fujitsu Ltd Change impact research support program, change impact research support device and change impact research support method
JP2013505512A (ja) * 2009-11-19 2013-02-14 ソニー株式会社 コンピュータ装置のシステムヘルス及びパフォーマンスのケア
JP2012164232A (ja) * 2011-02-08 2012-08-30 Nippon Telegr & Teleph Corp <Ntt> 機能情報生成装置、機能情報生成方法及び機能情報生成プログラム
JP2012185642A (ja) * 2011-03-04 2012-09-27 Internatl Business Mach Corp <Ibm> テスト・ケース生成方法、プログラム及びシステム
US9465724B2 (en) 2011-03-04 2016-10-11 International Business Machines Corporation Method, program, and system for generating test cases
US9483385B2 (en) 2011-03-04 2016-11-01 International Business Machines Corporation Method, program, and system for generating test cases
US9824224B2 (en) 2012-08-02 2017-11-21 International Business Machines Corporation Security-minded cloning method, system and program
JP2019532429A (ja) * 2016-11-02 2019-11-07 日立オートモティブシステムズ株式会社 計算機システム、テスト方法、および記録媒体
US11055206B2 (en) 2017-10-04 2021-07-06 Fujitsu Limited Non-transitory computer-readable storage medium, generation method, and information processing apparatus
JP7384054B2 (ja) 2019-02-07 2023-11-21 富士通株式会社 自動化されたソフトウェアプログラム修復

Also Published As

Publication number Publication date
EP1680741A2 (en) 2006-07-19
US7490319B2 (en) 2009-02-10
WO2005045673A2 (en) 2005-05-19
US20050166094A1 (en) 2005-07-28
EP1680741B1 (en) 2012-09-05
WO2005045673A3 (en) 2006-09-21

Similar Documents

Publication Publication Date Title
US7490319B2 (en) Testing tool comprising an automated multidimensional traceability matrix for implementing and validating complex software systems
US7913230B2 (en) Computer-implemented methods and systems for generating software testing documentation and test results management system using same
Mosley et al. Just enough software test automation
EP2228726B1 (en) A method and system for task modeling of mobile phone applications
US8539282B1 (en) Managing quality testing
US6701345B1 (en) Providing a notification when a plurality of users are altering similar data in a health care solution environment
US7403901B1 (en) Error and load summary reporting in a health care solution environment
AU2004233548B2 (en) Method for Computer-Assisted Testing of Software Application Components
US8381197B2 (en) Method and system for testing a software development activity
US8645326B2 (en) System to plan, execute, store and query automation tests
US20070038977A1 (en) Software development tool using a structured format to generate software code
Cagnin et al. PARFAIT: Towards a framework-based agile reengineering process
Lee et al. Testing
AU2001253522B2 (en) Method for a health care solution framework
Baumgartner et al. Test Automation Fundamentals: A Study Guide for the Certified Test Automation Engineer Exam–Advanced Level Specialist–ISTQB® Compliant
AU2001253522A1 (en) Method for a health care solution framework
Eide Quantification and traceability of requirements
do Nascimento et al. A method for rewriting legacy systems using business process management technology
Wang et al. MBT/CPN: a tool for model-based software testing of distributed systems protocols using coloured Petri nets
Virtanen Literature review of test automation models in Agile testing
MXPA06004919A (en) Testing tool comprising an automated multidimensional traceability matrix for implementing and validating complex software systems
Sharma et al. Automation Testing-HC Facets with UFT
Dehganpour Smart Scm with instant developer
Stapp et al. Chapter 2 Testing Throughout the Software Development Life Cycle
Gupta Test Automation and QTP: QTP 9.2, QTP 9.5, QTP 10.0 and Functional Test 11.0

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070928

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070928

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20090716