WO2012053392A1 - Software-product-line development assisting device, method thereof, and program thereof - Google Patents

Software-product-line development assisting device, method thereof, and program thereof Download PDF

Info

Publication number
WO2012053392A1
WO2012053392A1 PCT/JP2011/073318 JP2011073318W WO2012053392A1 WO 2012053392 A1 WO2012053392 A1 WO 2012053392A1 JP 2011073318 W JP2011073318 W JP 2011073318W WO 2012053392 A1 WO2012053392 A1 WO 2012053392A1
Authority
WO
WIPO (PCT)
Prior art keywords
software product
product line
development support
line development
component
Prior art date
Application number
PCT/JP2011/073318
Other languages
French (fr)
Japanese (ja)
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 株式会社日立製作所
Priority to GB1307123.8A priority Critical patent/GB2498305A/en
Publication of WO2012053392A1 publication Critical patent/WO2012053392A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The present invention enables the arbitrary mapping of components executed in the transition conditions for state transition, and enables the reuse of features. This software-product-line development assisting device (1) of a software system is provided with: a feature information recording unit (23) wherein feature information is recorded that represents characteristics including state transition information indicating the transition of the state of a virtual subject or control subject in the software system; a determination component selection means (13) that performs determination for causing transition of each state with respect to a user and enables the selection of any given determination component on the basis of the features; and a determination component management means (13) that enables the reading as needed and the recording/holding in a determination component recording unit (22) of selectable determination components.

Description

ソフトウェアプロダクトライン開発支援装置、その方法およびそのプログラムSoftware product line development support apparatus, method and program thereof
 本発明は、制御監視システムのソフトウェアプロダクトライン開発に関する情報を管理するソフトウェアプロダクトライン開発支援装置、その方法およびそのプログラムに関する。 The present invention relates to a software product line development support apparatus that manages information related to software product line development of a control monitoring system, a method thereof, and a program thereof.
 従来、ユーザのソフトウェアの開発を支援するソフトウェアプロダクトラインの開発には、一般にフィーチャ(特性)を関連付けたフィーチャモデルが利用される。このフィーチャモデルの作成に際しては、モデル作成者は、適切なフィーチャの抽出やフィーチャ間の関連付けの抽出を行うことが求められる。 Conventionally, a feature model associated with features (characteristics) is generally used to develop a software product line that supports user software development. When creating this feature model, the model creator is required to extract appropriate features and associations between features.
 例えば、特許文献1には、フィーチャ指向ソフトウェアプロダクトライン(feature-oriented software product line)の開発環境を提供するシステムが記載されている。この特許文献1のシステムは、特定ドメイン(または領域)に対して、既知のソフトウェア製品ライン方法論を適用してドメイン(例えば、制御対象)に対するフィーチャ分析と応用プログラムの開発のための必要なフィーチャ選択、再利用可能な資産コンポーネント(プログラムモジュール資産)の生成、マクロ処理を通じたソフトウェアコンポーネントの生成とコンポーネントに対する形状管理(プログラムソースの作り)、ソフトウェアコンポーネントを利用した応用ソフトウェア開発と仮想環境におけるソフトウェアテスティングの支援を行うものである。 For example, Patent Document 1 describes a system that provides a development environment for a feature-oriented software product line. This system of Patent Document 1 applies a known software product line methodology to a specific domain (or region), and performs necessary feature selection for feature analysis and application program development on the domain (for example, controlled object). , Generation of reusable asset components (program module assets), generation of software components through macro processing and shape management for components (creation of program sources), application software development using software components and software testing in virtual environments It is intended to support.
 特許文献1を含む従来の技術において、ドメイン分析・フィーチャ分析では機能的、環境的、技術的および具現的な共通点と相違点を明確に分析し、コンポーネント開発に反映することで、コンポーネントの再利用性と適用可能性を高める利点を有している。 In the conventional technology including Patent Document 1, domain analysis / feature analysis clearly analyzes the common points and differences between functional, environmental, technical, and realization, and reflects them in component development. It has the advantage of increasing usability and applicability.
特開2007-12003号公報JP 2007-12003 A
 ところで、一般にプラントなどを制御対象とする制御監視システムは次のような機能を有する。制御監視対象となる設備の情報を取得(以下、設備状態監視機能と称す)し、設備の状態をもとに制御演算(以下、制御演算機能と称す)を行い、制御監視対象の設備に対して制御出力(以下、制御出力機能と称す)を行い、当該設備を制御している。 By the way, in general, a control monitoring system for controlling a plant or the like has the following functions. Acquires information on equipment to be controlled and monitored (hereinafter referred to as equipment status monitoring function), performs control computation (hereinafter referred to as control computing function) based on the equipment status, Control output (hereinafter referred to as a control output function) to control the equipment.
 設備状態監視機能や制御出力機能は、システムごとに異なる制御監視対象の設備種別(例えば、運行システムの場合には普通列車、快速列車などの列車の種別)や制御出力の通信方式(例えば、通信プロトコル)などを相違点として捉え、ドメイン(例えば、制御対象)分析・フィーチャ(特性)分析を行い、再利用可能なコンポーネント(プログラムモジュール)が作成可能である。 Equipment status monitoring function and control output function are different for each system. Protocols) are considered as differences, domain (for example, control target) analysis and feature (characteristic) analysis are performed, and reusable components (program modules) can be created.
 しかし、制御演算機能は、制御監視対象となる設備の状態やシステム全体の状態を総合的に判断し演算を行い、制御監視対象となる設備に出力する機能を有している。これらの設備の状態やシステム全体の状態は、ユーザのシステム毎に異なることが一般的であり、従来の機能的、環境的、技術的、具現的なドメイン分析・フィーチャ分析で表現するには共通性が乏しく、再利用性が困難である。 However, the control calculation function has a function of comprehensively determining the state of the equipment to be controlled and monitored and the state of the entire system and performing the calculation, and outputting to the equipment to be controlled and monitored. The state of these facilities and the state of the entire system are generally different for each user's system, and it is common to express them with conventional functional, environmental, technical, and actual domain analysis and feature analysis. The reusability is difficult.
 例えば、あるユーザの中央集中型のAシステムにおいて、一部の装置で故障が発生した場合、制御演算機能は制御出力を行わないよう判断しなければならない。一方、他のユーザの分散型のBシステムにおいて、一部の装置に故障が発生した場合、制御演算機能は半自動で制御出力を行うが、Bシステム全体に重大な故障が発生した場合には、制御出力を行わないよう判断する。 For example, in a user's centralized A system, if a failure occurs in some devices, the control operation function must determine not to perform control output. On the other hand, in the distributed B system of other users, when a failure occurs in some devices, the control operation function performs control output semi-automatically, but when a serious failure occurs in the entire B system, It is determined not to perform control output.
 このように、システムの運用により実行する機能が異なることや、どの装置が故障したときに重故障として扱うかという点は、ユーザ毎のシステム構成や各ユーザの運用により異なるため、コンポーネントを実行するフィーチャを(システム構成×運用)の数だけ作成しなければならず、別のユーザのシステムに再利用可能なフィーチャを作成することは難しい。 In this way, the functions to be executed differ depending on the system operation, and the point of which device is treated as a major failure when it fails depends on the system configuration for each user and the operation of each user. It is necessary to create as many features as (system configuration × operation), and it is difficult to create a reusable feature in another user's system.
 すなわち、従来のソフトウェアプロダクトライン開発では、機能的、環境的、技術的、具現的なドメイン分析・フィーチャ分析に基づきフィーチャーモデリングおよびコンポーネントの開発を行う。しかし、ユーザの運用やシステム構成がシステムごとに異なる制御監視システムにおいて、機能的にまとめられたフィーチャではフィーチャ内にコンポーネントの追加、削除が発生するため、システム構成によってフィーチャの再利用性が望めない問題がある。 That is, in the conventional software product line development, feature modeling and component development are performed based on functional, environmental, technical, and concrete domain analysis and feature analysis. However, in a control and monitoring system in which user operations and system configurations differ from system to system, features that are functionally combined add or delete components within the features, so the reusability of features cannot be expected depending on the system configuration There's a problem.
 このように、制御監視システムは、ユーザごとの各システムの機能がそれぞれ異なるため、機能ごとのモジュールの組み換えで行われる現ソフトウェアプロダクトラインでは機能の共通化が不可能であり、対応が困難になっている。 As described above, since the functions of each system for each user are different for each control monitoring system, it is impossible to share functions in the current software product line that is performed by rearranging the modules for each function, making it difficult to deal with them. ing.
 本発明は上記実状に鑑み、状態遷移の遷移条件で実行されるコンポーネントを任意にマッピング可能とし、フィーチャを再利用可能とするソフトウェアプロダクトライン開発支援装置、その方法およびそのプログラムの提供を目的とする。 SUMMARY OF THE INVENTION In view of the above circumstances, an object of the present invention is to provide a software product line development support apparatus, a method thereof, and a program thereof that can arbitrarily map components executed under transition conditions of state transitions and can reuse features. .
 本発明の請求の範囲第1項に関わるソフトウェアプロダクトライン開発支援装置は、ソフトウェアシステムのソフトウェアプロダクトライン開発支援装置であって、前記ソフトウェアシステムにおける制御対象または仮想的な対象の状態の遷移を示す状態遷移の情報を含む特性を表すフィーチャの情報が記憶されるフィーチャ情報記憶部と、前記各状態を遷移させるための判断を行うとともにユーザに対して前記フィーチャに基づく判断コンポーネントを任意に選択可能とする判断コンポーネント選択手段と、前記選択可能な判断コンポーネントを、判断コンポーネント記憶部に記憶保持するとともに、必要に応じて読み出すことを可能とする判断コンポーネント管理手段とを具備している。 A software product line development support apparatus according to claim 1 of the present invention is a software product line development support apparatus of a software system, and indicates a state transition of a control target or a virtual target in the software system. A feature information storage unit that stores feature information representing characteristics including transition information, and a determination for shifting each state, and a user can arbitrarily select a determination component based on the feature Judgment component selection means, and judgment component management means for storing and holding the selectable judgment components in the judgment component storage unit and reading them out as necessary are provided.
 本発明の請求の範囲第11項に関わるソフトウェアプロダクトライン開発支援装置の方法は、ソフトウェアシステムのソフトウェアプロダクトライン開発支援装置の方法であって、前記ソフトウェアプロダクトライン開発支援装置は、フィーチャ情報記憶部と、判断コンポーネント選択手段と、判断コンポーネント管理手段とを具備し、前記フィーチャ情報記憶部に、前記ソフトウェアシステムにおける制御対象または仮想的な対象の状態の遷移を示す状態遷移の情報を含む特性を表すフィーチャの情報が記憶され、前記判断コンポーネント選択手段は、前記各状態を遷移させるための判断を行うとともにユーザに対して前記フィーチャに基づく判断コンポーネントを任意に選択可能とし、前記判断コンポーネント管理手段は、前記選択可能な判断コンポーネントを、判断コンポーネント記憶部に記憶保持するとともに必要に応じて読み出すことを可能としている。 A software product line development support apparatus method according to claim 11 of the present invention is a software product line development support apparatus method of a software system, wherein the software product line development support apparatus includes a feature information storage unit, A feature representing a characteristic including state transition information indicating a state transition of a control target or a virtual target in the software system in the feature information storage unit. Information is stored, and the determination component selection unit makes a determination for transitioning the respective states and allows a user to arbitrarily select a determination component based on the feature. Selectable The Do decision component, it is made possible to read as required and stores held in determining the component storage section.
 本発明の請求の範囲第21項に関わるソフトウェアプロダクトライン開発支援装置のプログラムは、本発明の請求の範囲第11項のソフトウェアプロダクトライン開発支援装置の方法を、コンピュータで実行させるためのプログラムである。 The software product line development support apparatus program according to claim 21 of the present invention is a program for causing a computer to execute the method of the software product line development support apparatus of claim 11 of the present invention. .
 本発明によれば、状態遷移の遷移条件で実行されるコンポーネントを任意にマッピング可能とし、フィーチャを再利用可能とするソフトウェアプロダクトライン開発支援装置、その方法およびそのプログラムを実現できる。 According to the present invention, it is possible to realize a software product line development support apparatus, a method thereof, and a program thereof that can arbitrarily map components executed under the transition condition of the state transition and can reuse the feature.
本発明の一実施形態に係るソフトウェアプロダクトライン開発支援装置のブロック図。1 is a block diagram of a software product line development support apparatus according to an embodiment of the present invention. 実施形態に係る実行コンポーネント情報の構成の一例を示す図。The figure which shows an example of a structure of the execution component information which concerns on embodiment. 実施形態に係る判断コンポーネント情報の構成の一例を示す図。The figure which shows an example of a structure of the judgment component information which concerns on embodiment. 実施形態に係るフィーチャ情報の構成の一例を示す図。The figure which shows an example of a structure of the feature information which concerns on embodiment. 実施形態に係る状態識別情報の登録を説明するための概念図。The conceptual diagram for demonstrating registration of the state identification information which concerns on embodiment. 実施形態に係る状態識別情報編集画面を示す図。The figure which shows the state identification information edit screen which concerns on embodiment. 実施形態に係る状態間関連情報の登録を説明するための概念図。The conceptual diagram for demonstrating registration of the relevant information between states which concerns on embodiment. 実施形態に係る状態間関連情報編集表示画面を示す図。The figure which shows the related information edit display screen between states which concern on embodiment. 実施形態に係る入れ子構造をとる状態遷移を表示した状態間関連情報編集画面を示す図。The figure which shows the related information edit screen between states which displayed the state transition which takes the nested structure which concerns on embodiment. 実施形態に係る状態遷移情報の整合性チェックの概念図。The conceptual diagram of the consistency check of the state transition information which concerns on embodiment. 実施形態に係る状態遷移不可能な条件の一例を示す図。The figure which shows an example of the conditions which cannot change the state which concern on embodiment.
 以下、本発明の実施形態について添付図面を参照して説明する。
 図1は、本発明の一実施形態に係るソフトウェアプロダクトライン開発支援装置1のブロック図である。
 本実施形態では、鉄道における列車の運行を管理する列車運行管理システムのソフトウェアプロダクトラインを開発するためのソフトウェアプロダクトライン開発支援装置1について述べる。列車運行管理システム(監視制御システム)の制御対象は、列車の運行に係わる設備などである。
Embodiments of the present invention will be described below with reference to the accompanying drawings.
FIG. 1 is a block diagram of a software product line development support apparatus 1 according to an embodiment of the present invention.
In the present embodiment, a software product line development support device 1 for developing a software product line of a train operation management system that manages train operations on railways will be described. The control target of the train operation management system (monitoring control system) is equipment related to train operation.
 実施形態のソフトウェアプロダクトライン開発支援装置1は、列車の運行に係わる様々な特性を示すフィーチャの情報などを記憶するハードディスクなどの記憶手段である記憶部2と、マウスやキーボード、タッチパネルなどの入力装置31およびLCD(Liquid Crystal Display)などの表示装置32を備えるユーザインターフェース部3と、ソフトウェアプロダクトライン開発支援装置1の全体を制御する制御部4とを具備する。 The software product line development support device 1 of the embodiment includes a storage unit 2 that is a storage unit such as a hard disk that stores information on features indicating various characteristics related to train operations, and an input device such as a mouse, a keyboard, and a touch panel. 31 and a user interface unit 3 including a display device 32 such as an LCD (Liquid Crystal Display), and a control unit 4 that controls the entire software product line development support device 1.
 記憶部2には、ソフトウェアプロダクトライン開発支援装置1の制御(処理)を担うソフトウェアプロダクトライン開発支援プログラム10が記憶されている。CPU(Central Processing Unit)により、ソフトウェアプロダクトライン開発支援プログラム10(以下、開発支援プログラム10と称す)が実行されることにより、制御部4が具現化される。なお、図1においては、CPUが、HDD(Hard disk drive)などの記憶部2から開発支援プログラム10を読み出し主記憶部(図示せず)に展開して実行し、制御部4を具現化している状態を示している。 The storage unit 2 stores a software product line development support program 10 responsible for control (processing) of the software product line development support device 1. The control unit 4 is implemented by executing a software product line development support program 10 (hereinafter referred to as a development support program 10) by a CPU (Central Processing Unit). In FIG. 1, the CPU reads the development support program 10 from the storage unit 2 such as an HDD (Hard disk drive), develops and executes it in the main storage unit (not shown), and embodies the control unit 4. It shows the state.
 記憶部2は、実行されるプログラムモジュールである実行コンポーネントの情報(実行コンポーネント情報)を管理する実行コンポーネント情報保存部21と、判断を行うプログラムモジュールである判断コンポーネントの情報(判断コンポーネント情報)を管理する判断コンポーネント情報保存部22と、運行に係わる設備などの状態遷移を含むフィーチャ(特性)の情報を格納するフィーチャ情報保存部23と、各情報を分析した結果が格納されるフィーチャモデル分析結果保存部24とを含み構成されている。 The storage unit 2 manages an execution component information storage unit 21 that manages information (execution component information) of an execution component that is a program module to be executed, and information (determination component information) of a determination component that is a program module that performs a determination. Determination component information storage unit 22, feature information storage unit 23 that stores information of features (characteristics) including state transitions such as equipment related to operation, and feature model analysis result storage that stores the results of analyzing each information Part 24.
 開発支援プログラム10で具体化される制御部4は、ユーザインターフェース部3からの入出力を管理するインターフェース部11と、どういうプログラムモジュールレベルがあるかなどの実行コンポーネント情報を管理する実行コンポーネント情報管理部12と、どのような判断を行うプログラムモジュールがあるかなどの判断コンポーネント情報を管理する判断コンポーネント情報管理部13と、設備などの状態遷移を含むフィーチャの情報を管理するフィーチャ情報管理部14と、各種の情報を統合的に管理する情報管理部15と、記憶部2の各情報保存部(21、22、23、24)に保存されている情報からシステムの整合性チェックおよび自動ソースコードの生成やシステムテストなどを行う情報分析部16とを含み構成されている。 The control unit 4 embodied in the development support program 10 includes an interface unit 11 that manages input / output from the user interface unit 3 and an execution component information management unit that manages execution component information such as what program module level is present. 12, a judgment component information management unit 13 that manages judgment component information such as what kind of judgment is made for a program module, a feature information management unit 14 that manages information on features including state transitions such as equipment, System consistency check and automatic source code generation from information stored in each information storage unit (21, 22, 23, 24) of the storage unit 2 and the information management unit 15 for managing various types of information in an integrated manner And an information analysis unit 16 that performs system tests and the like. That.
 インターフェース部11は、本ソフトウェアプロダクトライン開発支援装置1の各種機能と操作者(ユーザ)が使用する入力装置31、表示装置32との間の情報の受け渡しを行うものである。なお、表示装置32は、ソフトウェアプロダクトラインの開発に際しての表示を行う。 The interface unit 11 exchanges information between the various functions of the software product line development support device 1 and the input device 31 and the display device 32 used by an operator (user). The display device 32 performs display when developing the software product line.
 例えば、インターフェース部11は、入力装置31からの操作者(ユーザ)の指示を情報管理部15や情報分析部16に伝達する機能と、情報管理部15や情報分析部16から伝えられる情報に基づいて表示装置32に表示すべき画面を生成する機能(例えば、画面定義、画面オブジェクトなど)を有している。また、インターフェース部11は、入力装置31からの操作者(ユーザ)の操作に応じて、表示装置32に表示される各種の画面の切り替えを行う機能(例えば、画面切り替え定義など)を備えている。 For example, the interface unit 11 is based on a function of transmitting an operator (user) instruction from the input device 31 to the information management unit 15 or the information analysis unit 16 and information transmitted from the information management unit 15 or the information analysis unit 16. And a function for generating a screen to be displayed on the display device 32 (for example, a screen definition, a screen object, etc.). The interface unit 11 also has a function (for example, a screen switching definition) for switching various screens displayed on the display device 32 in response to an operation of an operator (user) from the input device 31. .
 実行コンポーネント情報管理部12は、実行コンポーネント情報保存部21に保存される実行コンポーネント情報を管理するものである。
 記憶部2の実行コンポーネント情報保存部21は、個々の実行コンポーネントを識別する実行コンポーネント識別情報や実行コンポーネント間の親子関係を示す実行コンポーネント間の関連情報を含む実行コンポーネント間関連情報、実行コンポーネントを保存する記憶媒体である。
The execution component information management unit 12 manages execution component information stored in the execution component information storage unit 21.
The execution component information storage unit 21 in the storage unit 2 stores execution component related information including execution component identification information for identifying individual execution components, and related information between execution components indicating parent-child relationships between execution components, and execution components. Storage medium.
 記憶部2の判断コンポーネント情報保存部22は、個々の判断コンポーネントの情報(判断コンポーネント情報)、例えば判断コンポーネントの識別情報、判断コンポーネントなどや判断コンポーネント間の関連情報を含む設備情報を保存する記憶媒体である。
 制御部4の判断コンポーネント情報管理部13は、判断コンポーネント情報保存部22に保存される判断コンポーネント情報を管理するものである。すなわち、判断コンポーネント情報管理部13は、判断コンポーネント情報保存部22に判断コンポーネント情報を記憶・保持したり、読み出したり、更新したり、削除などする。
The determination component information storage unit 22 of the storage unit 2 stores storage information including information on individual determination components (determination component information), for example, identification information of determination components, determination components, and related information between determination components. It is.
The determination component information management unit 13 of the control unit 4 manages the determination component information stored in the determination component information storage unit 22. That is, the determination component information management unit 13 stores / holds, reads, updates, and deletes determination component information in the determination component information storage unit 22.
 記憶部2のフィーチャ情報保存部23は、制御対象となる設備などが保持する状態とその状態遷移の条件に使用される判断コンポーネントとの関係および状態遷移したときに実行される実行コンポーネントの情報を保存する記憶媒体に相当するものである。
 制御部4のフィーチャ情報管理部14は、フィーチャ情報保存部23に保存される状態遷移情報を含むフィーチャ情報を管理するものである。フィーチャ情報管理部14は、フィーチャ情報をフィーチャ情報保存部23に記憶したり、読み出し、更新したり、削除などする。なお、状態などのフィーチャ情報を保持するフィーチャ情報保存部23と、フィーチャ情報を管理するフィーチャ情報管理部14とは、任意の状態を定義するので、状態定義手段である。任意の状態は、ユーザがユーザインターフェース部3から入力することができる。或いは、他のシステムからデータを転送して、任意の状態をフィーチャ情報管理部14でフィーチャ情報保存部23に記録してもよい。
The feature information storage unit 23 of the storage unit 2 stores the relationship between the state held by the equipment to be controlled and the determination component used for the state transition condition, and information on the execution component executed when the state transition occurs. This corresponds to a storage medium to be stored.
The feature information management unit 14 of the control unit 4 manages feature information including state transition information stored in the feature information storage unit 23. The feature information management unit 14 stores, reads, updates, and deletes feature information in the feature information storage unit 23. Note that the feature information storage unit 23 that stores feature information such as a state and the feature information management unit 14 that manages feature information define state, and thus are state definition means. An arbitrary state can be input from the user interface unit 3 by the user. Alternatively, data may be transferred from another system, and an arbitrary state may be recorded in the feature information storage unit 23 by the feature information management unit 14.
 制御部4の情報管理部15は、各管理部12、13、14とインターフェース部11との情報の受け渡しや情報分析部16との情報の受け渡しを行うものである。
 情報分析部16は、情報管理部15から取得される実行コンポーネント情報と、判断コンポーネント情報と、状態遷移を含むフィーチャ情報とに基づき、各情報の整合性を検証する機能と、その検証結果を表示装置32側へ出力する機能と、実行可能なソースコード(プログラムソースのコード)を自動生成する機能と、生成したソースコードを試験する機能とを有する。
 記憶部2のフィーチャモデル分析結果保存部24は、情報分析部16が解析した結果を保存する記憶媒体である。
The information management unit 15 of the control unit 4 exchanges information between the management units 12, 13, and 14 and the interface unit 11 and exchanges information with the information analysis unit 16.
The information analysis unit 16 displays the function for verifying the consistency of each information based on the execution component information acquired from the information management unit 15, the determination component information, and the feature information including the state transition, and the verification result. It has a function of outputting to the device 32 side, a function of automatically generating executable source code (program source code), and a function of testing the generated source code.
The feature model analysis result storage unit 24 of the storage unit 2 is a storage medium that stores the results analyzed by the information analysis unit 16.
<各情報保存部21、22、23に保存される情報の構成>
 次に、各種の情報保存部21、22、23に保存される情報の構成について、図2~図4を参照して説明する。
 図2は、実行コンポーネント情報保存部21に保存される実行コンポーネント情報Jの構成の一例を示す図である。
 実行コンポーネント情報Jは、実行コンポーネント識別情報J1と実行コンポーネント間関連情報J2とを含む。
<Configuration of information stored in each information storage unit 21, 22, 23>
Next, the configuration of information stored in the various information storage units 21, 22, and 23 will be described with reference to FIGS.
FIG. 2 is a diagram illustrating an example of the configuration of the execution component information J stored in the execution component information storage unit 21.
The execution component information J includes execution component identification information J1 and execution component related information J2.
 実行コンポーネント識別情報J1は、個々の実行コンポーネントを識別するための“実行コンポーネントID(Identification)”や、“実行コンポーネント名”などの情報を含む。その他、実行コンポーネント識別情報J1は、当該実行コンポーネントが何を行うかのコメントである“実行コンポーネントコメント”、当該実行コンポーネントの“作成日時”を含む。 The execution component identification information J1 includes information such as “execution component ID (Identification)” and “execution component name” for identifying individual execution components. In addition, the execution component identification information J1 includes “execution component comment” which is a comment about what the execution component does, and “creation date and time” of the execution component.
 実行コンポーネント間関連情報J2は、実行コンポーネント間の関連情報を一意に識別するための“実行コンポーネント間関連ID”、実行コンポーネントの親子関係を識別するための“子実行コンポーネントID”などの情報を含む。さらに、実行コンポーネント間関連情報J2は、子実行コンポーネントとの関連を示す“子コンポーネントとの関連”(図2では、C10001またはC10002の何れかを選択する“択一式”を示す)、および当該実行コンポーネントが動作するために必要となる関連する実行コンポーネント情報を示す“実行コンポーネント参照関連”を含むものである。すなわち、図2では、実行コンポーネントIDが“C10000”の実行コンポーネントが動作するためには、実行コンポーネントIDが“C20001”の実行コンポーネントを参照する必要があることを示している。 The execution component relation information J2 includes information such as “execution component relation ID” for uniquely identifying the relation information between execution components and “child execution component ID” for identifying the parent-child relationship of the execution components. . Furthermore, the inter-execution component relation information J2 indicates “relationship with child component” (in FIG. 2, “selection” for selecting either C10001 or C10002) indicating the relation with the child execution component, and the execution It includes “execution component reference relation” indicating related execution component information necessary for the component to operate. That is, FIG. 2 shows that in order for the execution component with the execution component ID “C10000” to operate, it is necessary to refer to the execution component with the execution component ID “C20001”.
 図3は、判断コンポーネント情報保存部22(図1参照)に保存される判断コンポーネント情報Hの構成の一例を示す図である。
 判断コンポーネント情報Hは、判断コンポーネント識別情報H1および判断コンポーネント間関連情報H2を含む。
 判断コンポーネント識別情報H1は、個々の判断コンポーネントを識別するための“判断コンポーネントID”や、“判断コンポーネント名”などの情報を含む。さらに、判断コンポーネント識別情報H1は、当該判断コンポーネントの内容を示す“判断コンポーネントコメント”、その“作成日時”を含む。
FIG. 3 is a diagram illustrating an example of the configuration of the determination component information H stored in the determination component information storage unit 22 (see FIG. 1).
The judgment component information H includes judgment component identification information H1 and judgment component related information H2.
The determination component identification information H1 includes information such as “determination component ID” and “determination component name” for identifying individual determination components. Further, the determination component identification information H1 includes a “determination component comment” indicating the content of the determination component and its “creation date”.
 判断コンポーネント間関連情報H2は、当該判断コンポーネントの関連情報を一意に識別するための“判断コンポーネント間関連ID”、当該判断コンポーネントの親子関係をなす“子判断コンポーネントID”などの情報を含む。さらに、判断コンポーネント間関連情報H2は、子判断コンポーネントとの関連を示す“子コンポーネントとの関連”(図3では、“C10001”または“C10002”の何れかを選択する“択一式”が指定された場合を示す)、当該判断コンポーネント(W10000)を動作させる際に必要となる判断コンポーネントを示す“判断コンポーネント間関連”を含むものである。つまり、図3では、判断コンポーネント(W10000)を動作させるには判断コンポーネントID:C20001、C20002、C20003の判断コンポーネントを参照する必要があることを示している。 The inter-determination component related information H2 includes information such as “relation ID between determination components” for uniquely identifying the relevant information of the determination component, and “child determination component ID” forming a parent-child relationship of the determination component. Further, in the relation information H2 between judgment components, “association with child components” indicating the relation with child judgment components (in FIG. 3, “selection type” for selecting either “C10001” or “C10002” is designated. "Indicates the relationship between determination components" indicating the determination components required when operating the determination component (W10000). That is, FIG. 3 shows that it is necessary to refer to the judgment components of judgment component IDs C20001, C20002, and C20003 in order to operate the judgment component (W10000).
 図4は、フィーチャ情報保存部23に保存される状態遷移情報のフィーチャ情報Fの構成の一例を示す図である。
 フィーチャ情報Fは、状態識別情報F1および状態間関連情報F2を含む。
 状態識別情報F1は、個々の設備などの状態を識別するための“状態ID”や、状態名称、本状態に至る場合に実行される実行コンポーネントF1aなどの情報を含む。実行コンポーネントF1aは、本状態に入る際(entry)には自動制御Aを実行し、本状態の間(stay)は、何もせず(NULL)、本状態から出る際(exit)には何もしない (NULL)ことを示している。状態識別情報F1には、その他、本状態の内容を説明する“コメント”、本状態の“作成日時”が表示される。 
FIG. 4 is a diagram illustrating an example of the configuration of the feature information F of the state transition information stored in the feature information storage unit 23.
The feature information F includes state identification information F1 and state related information F2.
The state identification information F1 includes information such as a “state ID” for identifying a state of each facility, a state name, an execution component F1a executed when the state is reached. The execution component F1a executes automatic control A when entering this state (entry), does nothing during this state (stay), and does nothing when exiting this state (exit). No (NULL). In the status identification information F1, “comment” explaining the contents of this status and “creation date” of this status are displayed.
 状態間関連情報F2は、状態間の関連情報である状態間関連情報を識別する“関連ID”を含み、また、状態から状態への“状態遷移情報”として設備の状態間の遷移するための条件として使用される状態判断コンポーネントF2a、状態遷移元F2bと状態遷移先F2cを含むものである。 The inter-state relation information F2 includes a “relation ID” for identifying inter-state relation information, which is relation information between states, and is used for transitioning between equipment states as “state transition information” from state to state. It includes a state determination component F2a, a state transition source F2b, and a state transition destination F2c that are used as conditions.
<ソフトウェアプロダクトライン開発支援を実現する各種の処理>
 次に、ソフトウェアプロダクトライン開発支援を実現する各種の処理について、図5~図11を参照して、説明する。
 以下では、設備などの状態に関して、「1.状態識別情報の登録」、「2.状態間関連情報の登録」、「3.状態遷移の整合性チェック」、「4.状態遷移を実現するソースコード生成」について説明し、その後、生成されたプログラムソースのテストである「5.生成ソースコードの試験」について説明する。
<Various processes to realize software product line development support>
Next, various processes for realizing software product line development support will be described with reference to FIGS.
In the following, regarding the state of equipment, etc., “1. Registration of state identification information”, “2. Registration of related information between states”, “3. Check consistency of state transitions”, “4. Sources for realizing state transitions” “Code generation” will be described, and then “5. Test of generated source code” which is a test of the generated program source will be described.
 なお、実行コンポーネント情報、判断コンポーネント情報については、記憶部2に登録済みであるものとする。実行コンポーネント情報、判断コンポーネント情報の登録は、従来のコンポーネント作成や応用プログラム作成、ソフトウェアプログラム作成に類するものであり周知の技術であるため、ここでは特に説明しない。さらに実行コンポーネント、判断コンポーネントは登録時に試験済みとし、保証されているものとする。 Note that the execution component information and the judgment component information are registered in the storage unit 2. Registration of execution component information and determination component information is similar to conventional component creation, application program creation, and software program creation, and is a well-known technique, and is not particularly described here. Furthermore, it is assumed that the execution component and the judgment component are tested at the time of registration and guaranteed.
 1.状態識別情報の登録
 図5は、状態識別情報の登録を説明するための概念図である。
 状態遷移作成者(ユーザ)Pは、図6に示される状態識別情報編集画面G1を介して、状態の作成を行う。
 一般に、状態を作成する対象は制御対象となる設備やシステム全体の状態など状態遷移を持つ具現的な対象について作成されるものであるが、仮想的な設備や事象についての対象に状態を定義しても構わない。
1. Registration of State Identification Information FIG. 5 is a conceptual diagram for explaining registration of state identification information.
The state transition creator (user) P creates a state via the state identification information editing screen G1 shown in FIG.
In general, the state is created for specific objects that have state transitions, such as the equipment to be controlled and the state of the entire system, but states are defined for virtual equipment and events. It doesn't matter.
 状態識別情報編集画面G1では、定義した状態に遷移した際に実行される実行コンポーネント(以下、entry時実行コンポーネントとする)を実行コンポーネントコンボボックスG1aから選択可能である。具体的には、状態識別情報編集画面G1で、entry時実行コンポーネントを選択する実行コンポーネントコンボボックスG1aをクリックすると、このクリック情報により、図5のインターフェース部11、情報管理部15、実行コンポーネント情報管理部12を介して、実行コンポーネント情報管理部12が実行コンポーネント情報保存部21から選択可能な実行コンポーネント一覧を取得することで、実行コンポーネントコンボボックスG1aに表示する。
 ユーザは、必要に応じて実行コンポーネントコンボボックスG1aに表示された実行コンポーネント一覧からentry時の実行コンポーネントを選択する。entry時に実行する必要がない場合は、非選択の状態で問題ない。
In the state identification information editing screen G1, an execution component (hereinafter referred to as an entry-time execution component) that is executed when transitioning to a defined state can be selected from the execution component combo box G1a. Specifically, when the execution component combo box G1a for selecting the entry execution component is clicked on the state identification information editing screen G1, the interface unit 11, the information management unit 15, and the execution component information management of FIG. The execution component information management unit 12 acquires a selectable execution component list from the execution component information storage unit 21 via the unit 12, and displays it in the execution component combo box G1a.
The user selects an execution component at the time of entry from the execution component list displayed in the execution component combo box G1a as necessary. If there is no need to execute at entry, there is no problem in the unselected state.
 また、定義した状態に停滞している(定義した状態を維持している)場合に実行されるコンポーネントや、状態から抜け出した場合に実行されるコンポーネント(以下、それぞれstay時実行コンポーネント、exit時実行コンポーネントとする)に関しても同様に、それぞれ実行機能フィーチャ(stay)コンボボックスG1b、実行機能フィーチャ(exit)コンボボックスG1cから選択することが可能である。なお、状態識別情報編集画面G1には、状態名称“NOP”の内容を説明する“コメント”、“作成日時”が表示される。 In addition, the component that is executed when stagnant in the defined state (maintaining the defined state), and the component that is executed when exiting from the state (hereinafter referred to as "stay execution component" and "exit execution" respectively) Similarly, it is possible to select an execution function feature (stay) combo box G1b and an execution function feature (exit) combo box G1c. In the state identification information editing screen G1, “comment” and “creation date / time” explaining the contents of the state name “NOP” are displayed.
 状態遷移作成者Pが「登録」ボタンG1dを押下すると、状態識別情報編集画面G1で入力した情報が、ユーザインターフェース部3(図1参照)から、図5のインターフェース部11、情報管理部15、フィーチャ情報管理部14を介して、フィーチャ情報管理部14によってフィーチャ情報保存部23に保存される。 When the state transition creator P presses the “Register” button G1d, information input on the state identification information editing screen G1 is transferred from the user interface unit 3 (see FIG. 1) to the interface unit 11, the information management unit 15, FIG. It is stored in the feature information storage unit 23 by the feature information management unit 14 via the feature information management unit 14.
 2.状態間関連情報の登録
 図7は、状態間関連情報の登録を説明するための概念図である。
 状態遷移作成者(ユーザ)Pは、図8に示す状態間関連情報編集表示画面G2を介して、状態から状態へ遷移する状態遷移の条件定義を行う。一般に、状態遷移する条件は、その条件を判断するフィーチャを利用するものとするが、各設備の入出力情報(標準入出力情報や外部システムの入出力情報)を使用しても構わない。
2. Registration of related information between states FIG. 7 is a conceptual diagram for explaining registration of related information between states.
The state transition creator (user) P defines the condition of the state transition for transitioning from state to state via the inter-state related information edit display screen G2 shown in FIG. In general, the condition for state transition uses a feature that determines the condition, but input / output information of each facility (standard input / output information and input / output information of an external system) may be used.
 まず、状態遷移作成者Pは、「1.状態識別情報の登録」で登録した状態を図8の状態間関連情報編集表示画面G2の状態情報一覧G2aで選択する。状態間関連情報編集表示画面G2の状態情報一覧G2aのスペースに登録されている全ての状態一覧が表示されている。
 状態遷移作成者(ユーザ)Pは、ユーザインターフェース部3(図1参照)を介して、状態情報一覧G2aから使用する状態を選択し、状態間関連情報編集画面G2bに登録する。
First, the state transition creator P selects the state registered in “1. Registration of state identification information” from the state information list G2a on the inter-state related information edit display screen G2 in FIG. All status lists registered in the space of the status information list G2a on the inter-status related information edit display screen G2 are displayed.
The state transition creator (user) P selects a state to be used from the state information list G2a via the user interface unit 3 (see FIG. 1) and registers it in the inter-state related information editing screen G2b.
 次に、ユーザインターフェース部3で、図8の状態間関連情報編集画面G2bにおいて、状態遷移が起りうる状態間を、マウスでドラッグなどして状態遷移線G2sで結びつける。
 図8の状態間関連情報編集画面G2bにおける遷移元(矢印の始点)の状態と遷移先(矢印の終点)の状態を選択した結果は、図7のインターフェース部11、情報管理部15を介して、フィーチャ情報管理部14に通知され、一時的にフィーチャ情報管理部14で管理される、例えばフィーチャ情報管理部14の一時記憶領域に保存される。
Next, in the user interface unit 3, in the state related information editing screen G2b of FIG. 8, the states where the state transition can occur are connected by the state transition line G2s by dragging with the mouse.
The result of selecting the state of the transition source (start point of the arrow) and the state of the transition destination (end point of the arrow) on the inter-state related information editing screen G2b of FIG. 8 is obtained via the interface unit 11 and the information management unit 15 of FIG. The feature information management unit 14 is notified, and is temporarily managed by the feature information management unit 14, for example, stored in a temporary storage area of the feature information management unit 14.
 さらに、図9に示す状態間関連情報編集画面G2bのように、入れ子構造をとりうる状態G2b1に関しては、その状態G2b1内にさらに状態遷移を格納することができる。つまり、親状態(G2b1)になったタイミングで、最初に遷移する状態G2b2を上記と同様に定義する。 Further, as for the state G2b1 that can take a nested structure as shown in the inter-state related information editing screen G2b shown in FIG. 9, further state transitions can be stored in the state G2b1. That is, the state G2b2 that first transitions at the timing when the parent state (G2b1) is reached is defined in the same manner as described above.
 次に、ユーザインターフェース部3(図1参照)を介して、状態遷移が生じる条件を定義する。
 状態遷移線G2sをクリックし、条件コンポーネント入力コンボボックスG2cに表示されている判断コンポーネントと返り値G2dの選択をする。選択可能な判断コンポーネントは、図7の判断コンポーネント情報保存部22、判断コンポーネント情報管理部13、情報管理部15、インターフェース部11を介して、判断コンポーネント情報管理部13が判断コンポーネント情報保存部22から取得することで、結果を表示装置32(図1参照)に表示する。
Next, conditions for causing state transition are defined via the user interface unit 3 (see FIG. 1).
The state transition line G2s is clicked, and the judgment component and the return value G2d displayed in the condition component input combo box G2c are selected. Selectable determination components are determined by the determination component information management unit 13 from the determination component information storage unit 22 via the determination component information storage unit 22, the determination component information management unit 13, the information management unit 15, and the interface unit 11 of FIG. By acquiring, the result is displayed on the display device 32 (see FIG. 1).
 そして、選択した結果は、図7のインターフェース部11、情報管理部15を介して、フィーチャ情報管理部14に通知され、フィーチャ情報管理部14が一時的に記憶する、例えば、フィーチャ情報管理部14の一時記憶領域に保存する。ここで、状態遷移するための判断コンポーネントは1つとは限らず、複数選択することも可能であり、複数の判断コンポーネントの論理式を組んでも構わない。なお、条件コンポーネント入力コンボボックスG2cで選択した判断コンポーネントと選択した返り値G2dは、条件コンポーネント一覧G2eに表示される。
 状態遷移作成者Pが図9の「登録」ボタンG2fを押下すると、入力した情報は、図7のインターフェース部11、情報管理部15を介して、フィーチャ情報管理部14に通知され、フィーチャ情報管理部14によりフィーチャ情報保存部23に保存される。
Then, the selected result is notified to the feature information management unit 14 via the interface unit 11 and the information management unit 15 in FIG. 7, and is temporarily stored in the feature information management unit 14, for example, the feature information management unit 14 Save to the temporary storage area. Here, the number of determination components for state transition is not limited to one, and a plurality of determination components can be selected, and logical expressions of a plurality of determination components may be combined. The determination component selected in the conditional component input combo box G2c and the selected return value G2d are displayed in the conditional component list G2e.
When the state transition creator P presses the “Register” button G2f in FIG. 9, the input information is notified to the feature information management unit 14 via the interface unit 11 and the information management unit 15 in FIG. The information is stored in the feature information storage unit 23 by the unit 14.
 3.状態遷移の整合性チェック
 図10は、状態遷移情報の整合性チェックを説明するための概念図である。
 前記の「1.状態識別情報の登録」、「2.状態間関連情報の登録」の登録完了後、図10に示す実行コンポーネント情報保存部21、判断コンポーネント情報保存部22、フィーチャ情報保存部23に登録されている内容の整合性チェックを行う。
3. State Transition Consistency Check FIG. 10 is a conceptual diagram for explaining state transition information consistency check.
After completion of the registration of “1. Registration of state identification information” and “2. Registration of related information between states”, the execution component information storage unit 21, the determination component information storage unit 22, and the feature information storage unit 23 shown in FIG. Check the consistency of the contents registered in.
 まず、フィーチャ情報保存部23に保存されているentry時実行コンポーネント、stay 時実行コンポーネント、exit時実行コンポーネントおよび判断コンポーネントが、それぞれ実行コンポーネント情報保存部21、判断コンポーネント情報保存部22に存在するか、それぞれ実行コンポーネント情報管理部12、判断コンポーネント情報管理部13で確認する。削除等され存在しないフィーチャを使用していた場合は、インターフェース部11を介して、図1のユーザインターフェース部3の表示装置32にエラーとして表示する。 First, whether the entry execution component, the stay execution component, the exit execution component, and the determination component stored in the feature information storage unit 23 exist in the execution component information storage unit 21 and the determination component information storage unit 22, respectively. The execution component information management unit 12 and the determination component information management unit 13 confirm each of them. If a non-existing feature is used, such as being deleted, it is displayed as an error on the display device 32 of the user interface unit 3 in FIG.
 次に、状態遷移の整合性チェックを情報分析部16が行う。論理的に状態遷移が不可能な状態が定義されていないか、チェックを行う。
 図11に状態遷移不可能な条件の一例G2gを示す。
 図11の例に示したように、情報分析部16の状態遷移の整合性チェックの結果、論理が矛盾している状態遷移や1つの状態から状態遷移が不可能な条件があった場合(図11の一例G2g)は、インターフェース部11を介して、ユーザインターフェース部3の表示装置32にエラーとして表示する。
Next, the information analysis unit 16 performs a state transition consistency check. It is checked whether a state that cannot logically change state is defined.
FIG. 11 shows an example of the condition G2g where state transition is impossible.
As shown in the example of FIG. 11, when there is a state transition in which the logic is inconsistent or a condition incapable of state transition from one state as a result of the consistency check of the state transition of the information analysis unit 16 (FIG. 11 G2g) is displayed as an error on the display device 32 of the user interface unit 3 via the interface unit 11.
 状態遷移作成者P(ユーザ)は、表示装置32に表示される各エラーの内容を確認し、必要に応じて、実行コンポーネント情報、判断コンポーネント情報、フィーチャ情報を修正し、再度、整合性チェックをかける。 The state transition creator P (user) checks the contents of each error displayed on the display device 32, corrects the execution component information, the judgment component information, and the feature information as necessary, and performs the consistency check again. Call.
 4.状態遷移を実現するソースコード生成
 次に、状態遷移を実現するソースコードを生成する。
 情報分析部16は、登録されている情報を基に状態遷移を実現する実行可能なソースコードを自動生成する。状態遷移図を用いた自動のソースコード生成については周知の技術であるため、ここでは特に説明しない。
4). Source Code Generation that Realizes State Transition Next, source code that realizes state transition is generated.
The information analysis unit 16 automatically generates executable source code that realizes state transition based on the registered information. Since automatic source code generation using a state transition diagram is a well-known technique, it is not particularly described here.
 生成されたソースコードは、実際に列車運行管理システム(監視制御システム)にダウンロードされて制御を行うコードであり、次に説明する「5.生成ソースコードの試験」に用いられるものである。生成されたソースコードは、フィーチャモデル分析結果保存部24に情報分析部16によって保存される。 The generated source code is code that is actually downloaded and controlled by the train operation management system (monitoring control system), and is used in “5. Test of generated source code” described below. The generated source code is stored in the feature model analysis result storage unit 24 by the information analysis unit 16.
 5.生成ソースコードの試験
 次に、「4.状態遷移を実現するソースコード生成」で生成したソースコードの試験を情報分析部16(図1参照)が行う。前記で定義した状態遷移と判断コンポーネントと実行コンポーネントの組み合わせを、仮想環境上で網羅的に試験する。試験のシナリオは情報分析部16において、ソースコード生成を行った際に、テストコードも同時に吐き出され、仮想環境で意図通りに作動するか検証することができる。
5. Test of Generated Source Code Next, the information analysis unit 16 (see FIG. 1) performs a test of the source code generated in “4. Source code generation for realizing state transition”. A combination of the state transition, determination component, and execution component defined above is comprehensively tested on the virtual environment. When the test scenario is generated in the information analysis unit 16 at the source code generation, the test code is also discharged at the same time, and it can be verified whether the test scenario operates as intended in the virtual environment.
 上記構成によれば、外部定義により指定した状態遷移に従い、コンポーネント実行(実行コンポーネント、判断コンポーネント)の条件をソフトウェア開発者(ユーザ)が任意に選択可能とする。
 すなわち、システム構成や運用が各ユーザごとに異なる特徴をもつ制御監視システム(例えば、列車運行管理システム)において、コンポーネントの実行タイミングは異なるが、比較的統一されている状態遷移に着目し、状態遷移の遷移条件で実行されるコンポーネントをソフトウェア開発者(ユーザ)が、図8、図9に示すように、任意にマッピング可能とすることで、フィーチャの再利用性が図れ、ソフトウェアプロダクトラインの高生産性を実現できる。
According to the above configuration, the condition of component execution (execution component, determination component) can be arbitrarily selected by the software developer (user) according to the state transition specified by the external definition.
In other words, in a control and monitoring system (for example, a train operation management system) with different system configuration and operation for each user, the component execution timing is different, but focusing on relatively uniform state transitions, state transitions As shown in Fig. 8 and Fig. 9, software developers (users) can arbitrarily map components that are executed under the transition conditions of the above, enabling feature reusability and high production of software product lines. Can be realized.
 なお、前記実施形態においては、ソフトウェアプロダクトライン開発支援装置1は、一つの形態に制御部4が納まる場合を例示しているが、説明した機能が果たせれば、複数のコンピュータ上に制御部4を展開してもよい。
 また、記憶部2は、別体のデータベースサーバに記憶してもよいし、分割して構成してもよい。
In the above embodiment, the software product line development support apparatus 1 exemplifies a case where the control unit 4 is accommodated in one form. However, if the described function can be performed, the control unit 4 is installed on a plurality of computers. May be deployed.
Moreover, the memory | storage part 2 may memorize | store in a separate database server, and may be divided | segmented and comprised.
 本発明は、状態遷移図を用いて表現が可能なシステムや処理であれば、監視制御システムに限ることなく、他のシステム装置や処理でも利用することが可能である。 The present invention is not limited to the monitoring control system as long as it is a system or process that can be expressed using a state transition diagram, and can also be used in other system devices and processes.
 1   ソフトウェアプロダクトライン開発支援装置
 10  ソフトウェアプロダクトライン開発支援プログラム
 12  実行コンポーネント情報管理部(コンポーネント定義手段、実行コンポーネントチェック手段)
 13  判断コンポーネント情報管理部(判断コンポーネント選択手段、判断コンポーネント管理手段、判断コンポーネントチェック手段)
 14  フィーチャ情報管理部(フィーチャ管理手段、状態定義手段、コンポーネント定義手段、状態管理手段、状態遷移手段)
 16  情報分析部(ソースコード生成手段、ソフトウェア試験手段、整合性チェック手段)
 21  実行コンポーネント情報保存部(コンポーネント定義手段)
 22  判断コンポーネント情報保存部(判断コンポーネント記憶部)
 23  フィーチャ情報保存部(状態定義手段、フィーチャ情報記憶部、状態管理手段、コンポーネント定義手段)
 24  フィーチャモデル分析結果保存部
 F2  状態間関連情報(状態遷移手段)
DESCRIPTION OF SYMBOLS 1 Software product line development support apparatus 10 Software product line development support program 12 Execution component information management part (component definition means, execution component check means)
13 Judgment Component Information Management Unit (Judgment Component Selection Unit, Judgment Component Management Unit, Judgment Component Checking Unit)
14 Feature information management unit (feature management means, state definition means, component definition means, state management means, state transition means)
16 Information analysis section (source code generation means, software test means, consistency check means)
21 execution component information storage (component definition means)
22 Judgment Component Information Storage Unit (Judgment Component Storage Unit)
23 Feature information storage unit (state definition unit, feature information storage unit, state management unit, component definition unit)
24 Feature model analysis result storage F2 State related information (state transition means)

Claims (21)

  1.  ソフトウェアシステムのソフトウェアプロダクトライン開発支援装置であって、
     前記ソフトウェアシステムにおける制御対象または仮想的な対象の状態の遷移を示す状態遷移の情報を含む特性を表すフィーチャの情報が記憶されるフィーチャ情報記憶部と、
     ユーザに対して、前記各状態を遷移させるための判断を行うとともに前記フィーチャに基づく判断コンポーネントを、任意に選択可能とする判断コンポーネント選択手段と、
     前記選択可能な判断コンポーネントを、判断コンポーネント記憶部に記憶保持するとともに、必要に応じて読み出すことを可能とする判断コンポーネント管理手段とを
     具備することを特徴とするソフトウェアプロダクトライン開発支援装置。
    A software product line development support device for a software system,
    A feature information storage unit that stores information on features representing characteristics including state transition information indicating state transition of a controlled object or a virtual object in the software system;
    A determination component selecting means for making a determination for transitioning the states to the user and making it possible to arbitrarily select a determination component based on the feature;
    A software product line development support apparatus comprising: a determination component management unit that stores and holds the selectable determination components in a determination component storage unit and that can be read out as necessary.
  2.  請求の範囲第1項に記載のソフトウェアプロダクトライン開発支援装置において、
     機能的にまとめられた前記フィーチャと、前記判断コンポーネントとを分離して管理する
     ことを特徴としたソフトウェアプロダクトライン開発支援装置。
    In the software product line development support device according to claim 1,
    A software product line development support apparatus characterized by separating and managing the features grouped functionally and the determination component.
  3.  請求の範囲第2項に記載のソフトウェアプロダクトライン開発支援装置において、
     任意の状態を定義する状態定義手段と、
     前記定義された各状態には、その状態になったときに始めて実行される実行コンポーネント、状態を維持しているときに実行される実行コンポーネント、次の状態に移るときに実行される実行コンポーネントを定義可能であるコンポーネント定義手段とを
     具備することを特徴としたソフトウェアプロダクトライン開発支援装置。
    In the software product line development support device according to claim 2,
    State defining means for defining an arbitrary state;
    Each of the defined states includes an execution component that is executed for the first time when the state is reached, an execution component that is executed when the state is maintained, and an execution component that is executed when the next state is moved. A software product line development support device comprising a component definition means that can be defined.
  4.  請求の範囲第3項に記載のソフトウェアプロダクトライン開発支援装置において、
     ユーザにより選択されたコンポーネントの実行結果を用いて、前記定義された状態の間を遷移させる状態遷移手段を
     具備することを特徴としたソフトウェアプロダクトライン開発支援装置。
    In the software product line development support device according to claim 3,
    A software product line development support apparatus, comprising: a state transition unit that transitions between the defined states using an execution result of a component selected by a user.
  5.  請求の範囲第3項または第4項に記載のソフトウェアプロダクトライン開発支援装置において、
     前記状態遷移手段は、
     前記ソフトウェアシステムの入出力情報によって、前記状態間を遷移させる 
     ことを特徴としたソフトウェアプロダクトライン開発支援装置。
    In the software product line development support device according to claim 3 or 4,
    The state transition means includes
    Transition between the states according to input / output information of the software system
    A software product line development support device.
  6.  請求の範囲第3項または第4項に記載のソフトウェアプロダクトライン開発支援装置において、
     ユーザにより定義される前記任意の状態を入れ子構造で構成する状態管理手段を
     具備することを特徴としたソフトウェアプロダクトライン開発支援装置。
    In the software product line development support device according to claim 3 or 4,
    A software product line development support device comprising state management means for configuring the arbitrary state defined by a user in a nested structure.
  7.  請求の範囲第3項または第4項に記載のソフトウェアプロダクトライン開発支援装置において、
     前記実行コンポーネントが実行コンポーネント記憶部にあるかチェックする実行コンポーネントチェック手段と、
     前記判断コンポーネントが前記判断コンポーネント記憶部にあるかチェックする判断コンポーネントチェック手段とを
     具備することを特徴としたソフトウェアプロダクトライン開発支援装置。
    In the software product line development support device according to claim 3 or 4,
    Execution component check means for checking whether the execution component is in the execution component storage unit;
    A software product line development support apparatus, comprising: determination component check means for checking whether the determination component is in the determination component storage unit.
  8.  請求の範囲第4項に記載のソフトウェアプロダクトライン開発支援装置において、
    前記状態遷移が整合がとれているかチェックする整合性チェック手段を
    具備することを特徴としたソフトウェアプロダクトライン開発支援装置。
    In the software product line development support device according to claim 4,
    A software product line development support device comprising consistency check means for checking whether the state transition is consistent.
  9.  請求の範囲第3項または第4項に記載のソフトウェアプロダクトライン開発支援装置において、
     ユーザにより定義された前記フィーチャと前記実行および前記判断コンポーネントとから実行可能なソースコードを生成するソースコード生成手段を
     具備することを特徴としたソフトウェアプロダクトライン開発支援装置。
    In the software product line development support device according to claim 3 or 4,
    A software product line development support device comprising source code generation means for generating executable source code from the feature defined by a user and the execution and determination components.
  10.  請求の範囲第4項に記載のソフトウェアプロダクトライン開発支援装置において、
     前記状態間の遷移と前記判断コンポーネントと前記実行コンポーネントとの組み合わせを仮想環境で意図通りに作動するか試験するソフトウェア試験手段を
     具備することを特徴としたソフトウェアプロダクトライン開発支援装置。
    In the software product line development support device according to claim 4,
    A software product line development support apparatus, comprising: software testing means for testing whether a combination of the transition between the states, the determination component, and the execution component operates as intended in a virtual environment.
  11.  ソフトウェアシステムのソフトウェアプロダクトライン開発支援装置の方法であって、
     前記ソフトウェアプロダクトライン開発支援装置は、フィーチャ情報記憶部と、判断コンポーネント選択手段と、判断コンポーネント管理手段とを具備し、
     前記フィーチャ情報記憶部に、前記ソフトウェアシステムにおける制御対象または仮想的な対象の状態の遷移を示す状態遷移の情報を含む特性を表すフィーチャの情報が記憶され、
     前記判断コンポーネント選択手段は、ユーザに対して、前記各状態を遷移させるための判断を行うとともに前記フィーチャに基づく判断コンポーネントを、任意に選択可能とし、
     前記判断コンポーネント管理手段は、前記選択可能な判断コンポーネントを、判断コンポーネント記憶部に記憶保持するとともに必要に応じて読み出すことを可能とする
     ことを特徴とするソフトウェアプロダクトライン開発支援装置の方法。
    A software product line development support apparatus method for a software system, comprising:
    The software product line development support apparatus includes a feature information storage unit, a determination component selection unit, and a determination component management unit,
    The feature information storage unit stores feature information representing characteristics including state transition information indicating state transition of a control target or a virtual target in the software system,
    The determination component selection unit makes a determination for transitioning the states to the user and arbitrarily selects a determination component based on the feature.
    The method of the software product line development support apparatus, wherein the determination component management means stores the selectable determination component in a determination component storage unit and can read out the determination component as necessary.
  12.  請求の範囲第11項に記載のソフトウェアプロダクトライン開発支援装置の方法において、
     機能的にまとめられた前記フィーチャと、前記判断コンポーネントとを分離して管理する
     ことを特徴としたソフトウェアプロダクトライン開発支援装置の方法。
    In the method of the software product line development support apparatus according to claim 11,
    A software product line development support apparatus method characterized by separating and managing the functionally grouped features and the judgment component.
  13.  請求の範囲第12項に記載のソフトウェアプロダクトライン開発支援装置の方法において、
     前記ソフトウェアプロダクトライン開発支援装置は、状態定義手段と、コンポーネント定義手段とを具備し、
     前記状態定義手段は、任意の状態を定義し、
     前記コンポーネント定義手段は、前記定義された各状態には、その状態になったときに始めて実行される実行コンポーネント、状態を維持しているときに実行される実行コンポーネント、次の状態に移るときに実行される実行コンポーネントを定義可能とする
     ことを特徴としたソフトウェアプロダクトライン開発支援装置の方法。
    In the method of the software product line development support apparatus according to claim 12,
    The software product line development support device comprises state definition means and component definition means,
    The state defining means defines an arbitrary state,
    The component definition means includes, in each defined state, an execution component that is executed for the first time when the state is reached, an execution component that is executed when the state is maintained, and a transition to the next state. A software product line development support apparatus method characterized in that execution components to be executed can be defined.
  14.  請求の範囲第13項に記載のソフトウェアプロダクトライン開発支援装置の方法において、
     前記ソフトウェアプロダクトライン開発支援装置は、状態遷移手段を具備し、
     前記状態遷移手段は、ユーザにより選択されたコンポーネントの実行結果を用いて、前記定義された状態の間を遷移させる
     ことを特徴としたソフトウェアプロダクトライン開発支援装置の方法。
    In the method of the software product line development support apparatus according to claim 13,
    The software product line development support device comprises state transition means,
    The state transition means transitions between the defined states using the execution result of the component selected by the user.
  15.  請求の範囲第13項または第14項に記載のソフトウェアプロダクトライン開発支援装置の方法において、
     前記状態遷移手段は、
     前記ソフトウェアシステムの入出力情報によって、前記状態間を遷移させる
     ことを特徴としたソフトウェアプロダクトライン開発支援装置の方法。
    In the method of the software product line development support apparatus according to claim 13 or 14,
    The state transition means includes
    A method of a software product line development support apparatus, wherein transition between the states is made according to input / output information of the software system.
  16.  請求の範囲第13項または第14項に記載のソフトウェアプロダクトライン開発支援装置の方法において、
     前記ソフトウェアプロダクトライン開発支援装置は、状態管理手段を具備し、
     前記状態管理手段は、ユーザにより定義される前記任意の状態を入れ子構造で構成する
     ことを特徴としたソフトウェアプロダクトライン開発支援装置の方法。
    In the method of the software product line development support apparatus according to claim 13 or 14,
    The software product line development support device comprises a state management means,
    The state management means configures the arbitrary state defined by the user in a nested structure.
  17.  請求の範囲第13項または第14項に記載のソフトウェアプロダクトライン開発支援装置の方法において、
     前記ソフトウェアプロダクトライン開発支援装置は、実行コンポーネントチェック手段と、判断コンポーネントチェック手段とを具備し、
     前記実行コンポーネントチェック手段は、前記実行コンポーネントが実行コンポーネント記憶部にあるかチェックし、
     前記判断コンポーネントチェック手段は、前記判断コンポーネントが前記判断コンポーネント記憶部にあるかチェックする
     ことを特徴としたソフトウェアプロダクトライン開発支援装置の方法。
    In the method of the software product line development support apparatus according to claim 13 or 14,
    The software product line development support device includes execution component check means and determination component check means,
    The execution component check means checks whether the execution component is in the execution component storage unit,
    The method of software product line development support apparatus, wherein the determination component check means checks whether the determination component is in the determination component storage unit.
  18.  請求の範囲第14項に記載のソフトウェアプロダクトライン開発支援装置の方法において、
     前記ソフトウェアプロダクトライン開発支援装置は、整合性チェック手段を具備し、
     前記整合性チェック手段は、前記状態遷移が整合がとれているかチェックする
     ことを特徴としたソフトウェアプロダクトライン開発支援装置の方法。
    In the method of the software product line development support apparatus according to claim 14,
    The software product line development support device comprises consistency check means,
    The method of the software product line development support apparatus, wherein the consistency check means checks whether the state transition is consistent.
  19.  請求の範囲第13項または第14項に記載のソフトウェアプロダクトライン開発支援装置の方法において、
     前記ソフトウェアプロダクトライン開発支援装置は、ソースコード生成手段を具備し、
     前記ソースコード生成手段は、ユーザにより定義された前記フィーチャと前記実行および前記判断コンポーネントとから実行可能なソースコードを生成する
     ことを特徴としたソフトウェアプロダクトライン開発支援装置の方法。
    In the method of the software product line development support apparatus according to claim 13 or 14,
    The software product line development support device comprises source code generation means,
    The method of the software product line development support device, wherein the source code generation means generates executable source code from the feature defined by a user and the execution and determination components.
  20.  請求の範囲第14項に記載のソフトウェアプロダクトライン開発支援装置の方法において、
     前記ソフトウェアプロダクトライン開発支援装置は、ソフトウェア試験手段を具備し、
     前記ソフトウェア試験手段は、前記状態間の遷移と前記判断コンポーネントと前記実行コンポーネントとの組み合わせを仮想環境で意図通りに作動するか試験する
     ことを特徴としたソフトウェアプロダクトライン開発支援装置の方法。
    In the method of the software product line development support apparatus according to claim 14,
    The software product line development support device comprises software testing means,
    The method of the software product line development support apparatus, wherein the software test means tests whether the transition between the states and the combination of the determination component and the execution component operate as intended in a virtual environment.
  21.  請求の範囲第11項から第14項または第18項または第20項の何れか一項に記載のソフトウェアプロダクトライン開発支援装置の方法を、コンピュータで実行させるためのプログラム。 A program for causing a computer to execute the method of the software product line development support apparatus according to any one of claims 11 to 14, or 18 or 20.
PCT/JP2011/073318 2010-10-20 2011-10-11 Software-product-line development assisting device, method thereof, and program thereof WO2012053392A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB1307123.8A GB2498305A (en) 2010-10-20 2011-10-11 Software-product-line development assisting device, method thereof, and program thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010-235037 2010-10-20
JP2010235037A JP5319643B2 (en) 2010-10-20 2010-10-20 Software product line development support apparatus and method

Publications (1)

Publication Number Publication Date
WO2012053392A1 true WO2012053392A1 (en) 2012-04-26

Family

ID=45975109

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/073318 WO2012053392A1 (en) 2010-10-20 2011-10-11 Software-product-line development assisting device, method thereof, and program thereof

Country Status (3)

Country Link
JP (1) JP5319643B2 (en)
GB (1) GB2498305A (en)
WO (1) WO2012053392A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5605397B2 (en) 2012-07-11 2014-10-15 株式会社デンソー Method and apparatus for determining necessity of joint inspection
JPWO2021256500A1 (en) * 2020-06-19 2021-12-23

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0863345A (en) * 1994-08-22 1996-03-08 Sony Corp Automatic program generation device
JPH1031581A (en) * 1996-07-18 1998-02-03 Hitachi Zosen Corp Control software generation support device in mechanism system
JP2001290635A (en) * 2000-04-07 2001-10-19 Nippon Seigyo Kk Development system for software
JP2007133772A (en) * 2005-11-11 2007-05-31 Canon Inc Device, method and program for generating object-oriented program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0863345A (en) * 1994-08-22 1996-03-08 Sony Corp Automatic program generation device
JPH1031581A (en) * 1996-07-18 1998-02-03 Hitachi Zosen Corp Control software generation support device in mechanism system
JP2001290635A (en) * 2000-04-07 2001-10-19 Nippon Seigyo Kk Development system for software
JP2007133772A (en) * 2005-11-11 2007-05-31 Canon Inc Device, method and program for generating object-oriented program

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KEI ITO ET AL.: "A Specification-Level Simulation Environment for Embedded Software Development", IPSJ SIG NOTES, vol. 2002, no. 64, 11 July 2002 (2002-07-11), pages 43 - 50 *
MINORU YOSHIDA ET AL.: "A Software Product Line of Train Integrated Management Systems", IPSJ SIG NOTES, vol. 2005, no. 29, 18 March 2005 (2005-03-18), pages 113 - 120 *

Also Published As

Publication number Publication date
JP2012088933A (en) 2012-05-10
GB201307123D0 (en) 2013-05-29
JP5319643B2 (en) 2013-10-16
GB2498305A (en) 2013-07-10
GB2498305A8 (en) 2013-08-28

Similar Documents

Publication Publication Date Title
US9754059B2 (en) Graphical design verification environment generator
JP2009265810A (en) Status transition test support device, status transition test support program and status transition test support method
Campos et al. A more intelligent test case generation approach through task models manipulation
US10572247B2 (en) Prototype management system
Mahey Robotic Process Automation with Automation Anywhere: Techniques to fuel business productivity and intelligent automation using RPA
Imran et al. Software sustainability: a systematic literature review and comprehensive analysis
Dumas et al. Robotic Process Mining.
JP5319643B2 (en) Software product line development support apparatus and method
Muñoz et al. DevOps: Foundations and its utilization in data center
Kreutz et al. DevOps for Developing Cyber-Physical Systems
JP2009245177A (en) Feature model creation support device and program
Baumgartner et al. Test Automation Fundamentals: A Study Guide for the Certified Test Automation Engineer Exam–Advanced Level Specialist–ISTQB® Compliant
Tanir Simulation-based software engineering
WO2016199383A1 (en) Service design assistance device, method, and program recording medium
JP5321286B2 (en) Program model checking method, program model checking program
Velozo et al. Evaluation of a Mobile Software Development Company
JP7328922B2 (en) Setting device, setting method, and program
Tran et al. Integrating run‐time changes into system and software process enactment
Lai et al. Can SysML Be Used for Enterprise Modelling?
JP6603637B2 (en) User interface connection device and program
Rother et al. Testing Best Practices
Sabharwal et al. Factors Leading to Agile Operations
Baquirin Navigating Growth: Experiences of a Junior Software Developer in Web and Mobile Development
Olausson et al. Continuous delivery with visual studio alm 2015
Vithanage Web Based Recruitment Management System

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11834232

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 1307123

Country of ref document: GB

Kind code of ref document: A

Free format text: PCT FILING DATE = 20111011

WWE Wipo information: entry into national phase

Ref document number: 1307123.8

Country of ref document: GB

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11834232

Country of ref document: EP

Kind code of ref document: A1