JP6748307B2 - ソフトウェアプログラムを検証するための方法およびシステム - Google Patents
ソフトウェアプログラムを検証するための方法およびシステム Download PDFInfo
- Publication number
- JP6748307B2 JP6748307B2 JP2019542430A JP2019542430A JP6748307B2 JP 6748307 B2 JP6748307 B2 JP 6748307B2 JP 2019542430 A JP2019542430 A JP 2019542430A JP 2019542430 A JP2019542430 A JP 2019542430A JP 6748307 B2 JP6748307 B2 JP 6748307B2
- Authority
- JP
- Japan
- Prior art keywords
- software program
- source code
- modeling language
- data processing
- specifications
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 36
- 238000012545 processing Methods 0.000 claims description 59
- 238000010586 diagram Methods 0.000 claims description 58
- 238000011161 development Methods 0.000 claims description 42
- 230000003993 interaction Effects 0.000 claims description 28
- 230000006399 behavior Effects 0.000 claims description 10
- 238000012795 verification Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Description
Claims (14)
- 統合開発環境(113)においてソフトウェアプログラムを検証する、コンピュータ実装される方法であって、
データ処理システム(100)により、前記ソフトウェアプログラムの仕様に基づいて、ロギングステートメントを含む、前記ソフトウェアプログラムのソースコードを生成することを含み、前記ロギングステートメントは、前記ソフトウェアプログラムの前記仕様にタグ付けされたメタデータに基づいて、前記ソフトウェアプログラムの前記ソースコードにおける1つまたは複数の箇所に追加され、なお、前記ソフトウェアプログラムの前記仕様は、モデリング言語で表現されており、
前記方法は、
前記ロギングステートメントを有する前記ソースコードを実行することと、
前記ロギングステートメントに基づいて前記ソースコードの実行中に1つまたは複数のログファイルを生成することと、
前記1つまたは複数のログファイルを使用して前記モデリング言語での前記ソースコードの表現(500)を生成することと、
前記モデリング言語での前記ソースコードの表現(500)を使用して前記ソフトウェアプログラムの前記ソースコードを検証することと
を含む、コンピュータ実装される方法。 - 前記ソフトウェアプログラムの前記ソースコードは、手続き型プログラミング言語で生成される、
請求項1記載のコンピュータ実装される方法。 - 前記ソフトウェアプログラムの前記ソースコードを検証することは、
前記モデリング言語での前記ソースコードの表現(500)を、前記モデリング言語での、前記ソフトウェアプログラムの前記仕様と比較することと、
前記比較の結果に基づいて、前記ソフトウェアプログラムの前記ソースコードが前記ソフトウェアプログラムの前記仕様に準拠しているかどうかを判断することと、
前記ソフトウェアプログラムの前記ソースコードが前記ソフトウェアプログラムの前記仕様に準拠していない場合に、前記ソフトウェアプログラムの前記ソースコードを変更することと
を含む、請求項1記載のコンピュータ実装される方法。 - 前記モデリング言語での前記ソースコードの表現(500)は、統合モデリング言語(UML)図を含む、
請求項1記載のコンピュータ実装される方法。 - 前記ソフトウェアプログラムの前記仕様は、前記ソフトウェアプログラムによって駆動されるシステムに関連する複数の異なる要素間の相互作用の時系列のシーケンスで、前記ソフトウェアプログラムによって駆動されるシステムの挙動を規定するものである、
請求項1記載のコンピュータ実装される方法。 - 前記ソフトウェアプログラムの前記ソースコードの実行中に前記ログファイルを生成することは、
前記ソースコードの実行中に前記ロギングステートメントに基づいて前記ソフトウェアプログラムによって駆動されるシステムの要素間の1つまたは複数の相互作用を決定することと、
前記ソフトウェアプログラムによって駆動されるシステムの要素間の前記1つまたは複数の相互作用を前記ログファイルに時系列のシーケンスで記録することと
を含む、請求項5記載のコンピュータ実装される方法。 - データ処理システム(100)であって、
処理ユニット(102)と、
前記処理ユニット(102)に結合されたメモリ(104)と
を含み、
前記メモリ(104)は、モデル駆動型開発モジュール(114)を含み、
前記モデル駆動型開発モジュール(114)は、
ソフトウェアプログラムの仕様に基づいて、ロギングステートメントを含む、前記ソフトウェアプログラムのソースコードを生成するように構成されており、前記ロギングステートメントは、前記ソフトウェアプログラムの前記仕様にタグ付けされたメタデータに基づいて、前記ソフトウェアプログラムの前記ソースコードにおける1つまたは複数の箇所に追加され、なお、前記ソフトウェアプログラムの前記仕様は、モデリング言語で表現されており、
前記モデル駆動型開発モジュール(114)は、
前記ロギングステートメントを有する前記ソースコードを実行し、
前記ロギングステートメントに基づいて前記ソースコードの実行中に1つまたは複数のログファイルを生成し、
前記1つまたは複数のログファイルを使用してモデリング言語での前記ソースコードの表現(500)を生成する
ように構成されており、
前記モデル駆動型開発モジュール(114)は、前記モデリング言語での前記ソースコードの表現(500)を使用して前記ソフトウェアプログラムの前記ソースコードを検証するように構成されている、
データ処理システム(100)。 - 前記ソフトウェアプログラムの前記ソースコードは、手続き型プログラミング言語で生成される、
請求項7記載のデータ処理システム(100)。 - 前記ソフトウェアプログラムの前記ソースコードを検証する際に、
前記モデル駆動型開発モジュール(114)は、
前記モデリング言語での前記ソースコードの表現(500)を、前記モデリング言語での、前記ソフトウェアプログラムの前記仕様と比較し、
前記ソフトウェアプログラムの前記ソースコードが前記ソフトウェアプログラムの前記仕様に準拠しているかどうかを判断し、
前記ソフトウェアプログラムの前記ソースコードが前記ソフトウェアプログラムの前記仕様に準拠していない場合には、前記ソフトウェアプログラムの前記ソースコードを変更する
ように構成されている、請求項7記載のデータ処理システム(100)。 - 前記モデリング言語での前記ソースコードの表現は、統合モデリング言語(UML)図を含む、
請求項7記載のデータ処理システム(100)。 - 前記ソフトウェアプログラムの前記仕様は、前記ソフトウェアプログラムによって駆動されるシステムに関連する複数の異なる要素間の相互作用の時系列のシーケンスで、前記ソフトウェアプログラムによって駆動されるシステムの挙動を規定するものである、
請求項7記載のデータ処理システム(100)。 - 前記1つまたは複数のログファイルを生成する際に、
前記モデル駆動型開発モジュール(114)は、
前記ソースコードの実行中に前記ロギングステートメントに基づいて前記ソフトウェアプログラムによって駆動されるシステムの要素間の1つまたは複数の相互作用を決定し、
前記ソフトウェアプログラムによって駆動されるシステムの要素間の前記1つまたは複数の相互作用を前記ログファイルに時系列のシーケンスで記録する
ように構成されている、請求項7記載のデータ処理システム(100)。 - データ処理システム(100)によって実行された場合に、前記データ処理システム(100)に、統合開発環境(113)においてソフトウェアプログラムを検証する方法を実行させる命令が格納された、非一時的なコンピュータ可読記憶媒体であって、
前記方法は、
前記ソフトウェアプログラムの仕様に基づいて、ロギングステートメントを含む、前記ソフトウェアプログラムのソースコードを生成するステップを含み、前記ロギングステートメントは、前記ソフトウェアプログラムの前記仕様にタグ付けされたメタデータに基づいて、前記ソフトウェアプログラムの前記ソースコードにおける1つまたは複数の箇所に追加され、なお、前記ソフトウェアプログラムの前記仕様は、モデリング言語で表現されており、
前記方法は、
前記ロギングステートメントを有する前記ソースコードを実行するステップと、
前記ロギングステートメントに基づいて前記ソースコードの実行中に1つまたは複数のログファイルを生成するステップと、
前記1つまたは複数のログファイルを使用してモデリング言語での前記ソースコードの表現(500)を生成するステップと、
前記モデリング言語での前記ソースコードの表現(500)を使用して前記ソフトウェアプログラムの前記ソースコードを検証することと
を含む、非一時的なコンピュータ可読記憶媒体。 - 前記1つまたは複数のログファイルを生成する際に、
前記命令は、前記データ処理システム(100)に、
前記ソースコードの実行中に前記ロギングステートメントに基づいて前記システムの要素間の1つまたは複数の相互作用を決定することと、
前記システムの要素間の前記1つまたは複数の相互作用を前記ログファイルに時系列のシーケンスで記録することと
を含む方法ステップを実行させる、
請求項13記載の記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN201731003703 | 2017-02-01 | ||
IN201731003703 | 2017-02-01 | ||
PCT/EP2017/072187 WO2018141424A1 (en) | 2017-02-01 | 2017-09-05 | Methods and systems for verifying a software program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020505710A JP2020505710A (ja) | 2020-02-20 |
JP6748307B2 true JP6748307B2 (ja) | 2020-08-26 |
Family
ID=59772634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019542430A Active JP6748307B2 (ja) | 2017-02-01 | 2017-09-05 | ソフトウェアプログラムを検証するための方法およびシステム |
Country Status (5)
Country | Link |
---|---|
US (1) | US10929108B2 (ja) |
EP (1) | EP3563232A1 (ja) |
JP (1) | JP6748307B2 (ja) |
CN (1) | CN110574005B (ja) |
WO (1) | WO2018141424A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11385940B2 (en) | 2018-10-26 | 2022-07-12 | EMC IP Holding Company LLC | Multi-cloud framework for microservice-based applications |
US11533317B2 (en) * | 2019-09-30 | 2022-12-20 | EMC IP Holding Company LLC | Serverless application center for multi-cloud deployment of serverless applications |
US11580255B2 (en) * | 2019-11-11 | 2023-02-14 | Bank Of America Corporation | Security tool for n-tier platforms |
US11860795B2 (en) * | 2020-02-18 | 2024-01-02 | Arm Limited | Device, system, and method of determining memory requirements and tracking memory usage |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004038741A (ja) | 2002-07-05 | 2004-02-05 | Fujitsu Ltd | システムlsi開発支援システム |
US8020153B2 (en) | 2004-10-04 | 2011-09-13 | Panasonic Corporation | Source code checker, source code checking method, program for causing execution of the method, and storage medium for storing the program |
JP5203806B2 (ja) | 2008-06-06 | 2013-06-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | シーケンス図作成装置、シーケンス図作成方法及びコンピュータプログラム |
US8726254B2 (en) * | 2009-06-20 | 2014-05-13 | Microsoft Corporation | Embedded annotation and program analysis |
US20120159429A1 (en) * | 2010-12-15 | 2012-06-21 | Microsoft Corporation | Metadata based eventing |
US9448792B2 (en) * | 2013-03-14 | 2016-09-20 | Microsoft Technology Licensing, Llc | Automatic risk analysis of software |
KR101770292B1 (ko) * | 2014-11-27 | 2017-08-22 | 주식회사 엘지씨엔에스 | 컴퓨터 수행 가능한 모델 역공학 방법 및 장치 |
CN106557413A (zh) * | 2015-09-25 | 2017-04-05 | 伊姆西公司 | 基于代码覆盖率获取测试用例的方法和设备 |
US20180129581A1 (en) * | 2016-11-07 | 2018-05-10 | International Business Machines Corporation | Method for static and dynamic configuration verification |
-
2017
- 2017-09-05 US US16/481,905 patent/US10929108B2/en active Active
- 2017-09-05 CN CN201780087838.0A patent/CN110574005B/zh active Active
- 2017-09-05 EP EP17761516.8A patent/EP3563232A1/en not_active Withdrawn
- 2017-09-05 WO PCT/EP2017/072187 patent/WO2018141424A1/en active Search and Examination
- 2017-09-05 JP JP2019542430A patent/JP6748307B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
CN110574005B (zh) | 2021-06-08 |
US10929108B2 (en) | 2021-02-23 |
WO2018141424A1 (en) | 2018-08-09 |
EP3563232A1 (en) | 2019-11-06 |
JP2020505710A (ja) | 2020-02-20 |
US20190377556A1 (en) | 2019-12-12 |
CN110574005A (zh) | 2019-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11934301B2 (en) | System and method for automated software testing | |
US20240037020A1 (en) | System and Method for Automated Software Testing | |
JP6748307B2 (ja) | ソフトウェアプログラムを検証するための方法およびシステム | |
CN112424748B (zh) | 源代码文件推荐通知 | |
CN107220172B (zh) | 通过模型驱动技术进行自动用户界面(ui)测试的方法和系统 | |
US10289397B2 (en) | Silent installation of software with dependencies | |
US20200050540A1 (en) | Interactive automation test | |
JP2014191830A (ja) | アプリケーションの自動的な特徴駆動型のテスト及び品質チェックの方法、システム及び製品 | |
US10884905B2 (en) | Test script creation based on abstract test user controls | |
US20120084684A1 (en) | Rapid Automation Front-end Framework Library and Executable Graphic User Interface Testing System and Method | |
US11010286B1 (en) | Software testing with machine learning models | |
US9477582B2 (en) | Executable software specification generation | |
US20180150378A1 (en) | Verification of model-driven software architecture | |
US20120330859A1 (en) | Interactive business process modeling and simulation | |
US20220058582A1 (en) | Technical specification deployment solution | |
US11281437B2 (en) | User interface design platform, system, and method for applying consistent look and feel | |
US20180150379A1 (en) | Method and system of verifying software | |
US11030362B2 (en) | Modeling and cooperative simulation of systems with interdependent discrete and continuous elements | |
Riccobene et al. | Model-based simulation at runtime with abstract state machines | |
CN111949514A (zh) | 一种模型预测方法、装置及存储介质 | |
US20070226706A1 (en) | Method and system for generating multiple path application simulations | |
KR102087210B1 (ko) | 알고리즘을 통한 테스트 케이스 생성 및 페어와이즈 조합 기법을 사용한 테스트 케이스 추출 방법 및 이를 이용하는 추출 장치 | |
US20230401355A1 (en) | Method and system for validating product and manufacturing information of a geometric model | |
CN114943068A (zh) | 基于一站式开发构建平台的多人协同开发方法及相关设备 | |
Bell et al. | Azure IoT Solutions: Cloud Services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A529 | Written submission of copy of amendment under article 34 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A529 Effective date: 20190927 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190927 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20191106 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20191126 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200312 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200409 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200622 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200708 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200806 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6748307 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |