JP2010198529A - Method and apparatus for roughly estimating actually used amount of system memory - Google Patents

Method and apparatus for roughly estimating actually used amount of system memory Download PDF

Info

Publication number
JP2010198529A
JP2010198529A JP2009045234A JP2009045234A JP2010198529A JP 2010198529 A JP2010198529 A JP 2010198529A JP 2009045234 A JP2009045234 A JP 2009045234A JP 2009045234 A JP2009045234 A JP 2009045234A JP 2010198529 A JP2010198529 A JP 2010198529A
Authority
JP
Japan
Prior art keywords
platform
information
model
memory usage
modeling
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.)
Granted
Application number
JP2009045234A
Other languages
Japanese (ja)
Other versions
JP5327451B2 (en
Inventor
Takumi Fujiwara
巧 藤原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2009045234A priority Critical patent/JP5327451B2/en
Publication of JP2010198529A publication Critical patent/JP2010198529A/en
Application granted granted Critical
Publication of JP5327451B2 publication Critical patent/JP5327451B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a method, apparatus and program for roughly estimating a used amount of memory in an actual system, which can estimate the used amount of memory with use of a modeling language before building an actual system environment. <P>SOLUTION: The apparatus for roughly estimating an actually used amount of system memory has a modeling tool 100, and an operational environment 200. Moreover, the apparatus includes a modeling means for producing a model with the modeling language, and a simulation execution means 104 for executing simulation of the produced model, and roughly estimates the used amount of memory without coding. The apparatus further includes a memory used amount information collecting-and-storing means that divides processing, which cannot be simulated only with the model, into minimum processing units to collect and store the information about the used amount of memory. The modeling means includes a platform non-depending model producing means 101, a platform specialized model producing means 102, and a source code producing means 103. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、コンピュータを用いた情報処理システムにおける実システムメモリ使用量概算方法及び装置に関し、詳しくは、モデリング言語を利用した実システムメモリ使用量概算方法、装置、及びプログラムに関する。   The present invention relates to an actual system memory usage estimation method and apparatus in an information processing system using a computer, and more particularly to an actual system memory usage estimation method, apparatus, and program using a modeling language.

従来この種のシステムメモリ使用量の概算方法としては、特許文献1及び2に記載の方法がある。   Conventionally, there is a method described in Patent Documents 1 and 2 as a method for estimating the amount of system memory usage of this type.

特許文献1には、車載用電子制御装置に関し、プログラムの実行を行うCPUとこのCPUの指令に基きセンサ類からの入力処理とアクチュエータ類に対する出力処理とプログラム書換装置との入力処理とアクチュエータ類に対する出力処理とCPUの演算処理とのプログラムやデータを格納すると共に、複数の記憶ブロックに分割されて記憶ブロック毎に各種プログラムが格納される記憶装置とを備えている。記憶装置の各記憶ブロックには、プログラムやデータの良否を示すフラグが共に格納されている。このフラグが記憶ブロックにプログラムが書き込まれ、このプログラムが照合されて良否が確認された後に書き込まれるようにしたものである。   Patent Document 1 relates to an on-vehicle electronic control device, a CPU that executes a program, an input process from sensors based on a command from the CPU, an output process for actuators, an input process with a program rewriting device, and an actuator. A program and data for output processing and CPU calculation processing are stored, and a storage device is provided that is divided into a plurality of storage blocks and stores various programs for each storage block. Each storage block of the storage device stores a flag indicating whether the program or data is good or bad. This flag is written after the program has been written to the storage block and the program has been verified to determine whether it is acceptable.

また、特許文献2は、オブジェクト指向評価装置に関して、クラス構造を規定したオブジェクト指向設計情報を解析し、予め実行環境毎に登録した実行環境情報を用いて、クラスで使用されるメモリ使用量の予測式を導出し、解析/予測式導出手段を設けた構成を有している。   Further, Patent Document 2 relates to an object-oriented evaluation apparatus, analyzes object-oriented design information that defines a class structure, and uses the execution environment information registered in advance for each execution environment to predict the memory usage used in the class. An equation is derived, and an analysis / prediction equation deriving unit is provided.

従来のシステム構築では、実運用環境を構築しなければ、システムのメモリ使用量を測定することができなかったため、プログラムの最適化はシステムの環境構築後に行う必要があった。システムの最適化はソースコードに手を加えるため、変更箇所に対応する仕様書も修正する必要があり、修正量が多いため、容易ではない。また、ソースコードに手を加えるため、バグを発生させる可能性も高いといった問題も発生していた。
In the conventional system construction, the memory usage of the system cannot be measured unless the actual operation environment is constructed. Therefore, it is necessary to optimize the program after the system environment construction. Since optimization of the system involves modifying the source code, it is necessary to modify the specifications corresponding to the changed part, and the amount of modification is large, which is not easy. In addition, there was a problem that bugs are likely to occur because the source code is modified.

特開2001−84134号公報JP 2001-84134 A 特開2002−73380号公報JP 2002-73380 A

これまでシステム開発ではシステムが使用するメモリ量は実行時に測定されるため、設計時にはどの程度メモリが使用されるか、設計者が独自の方法で推測する必要があった。   So far, in system development, the amount of memory used by the system is measured at the time of execution. Therefore, it has been necessary for the designer to estimate how much memory is used at the time of design by a unique method.

また、仕様の変更やOSやサーバソフトなどのミドルウェア、利用しているライブラリのバージョン等の変更が発生した場合は、ソースコードを修正後、コンパイル、配備等を行ってから再度メモリ使用量を測定しなければならなかった。   In addition, if there is a change in specifications, middleware such as OS or server software, or the version of the library being used, measure the memory usage again after correcting the source code, compiling, deploying, etc. Had to do.

このため、メモリ使用の最適化を行うのはシステムの動作確認を行った後になり、メモリ使用量に関して問題があった場合の対応としてはシステムの設定項目のチューニングやバージョンアップに伴うプログラムの最適化が必要であった。   For this reason, optimization of memory usage is performed after confirming the system operation. If there is a problem with memory usage, the optimization of the program accompanying tuning of system setting items or version upgrade is possible. Was necessary.

更にそれらの最適化に伴ったソースコードの修正を行う場合は、設計書の修正も必要になるため、修正コストが多くなっていた。   Further, when the source code is modified along with the optimization, the design document needs to be modified, so that the modification cost is increased.

そこで、本発明の技術的課題は、実システム環境を構築する前にメモリ使用量が算出できるモデリング言語を利用した実システムメモリ使用量概算方法、装置及びプログラムを提供することにある。   Therefore, a technical problem of the present invention is to provide an actual system memory usage estimation method, apparatus, and program using a modeling language that can calculate the memory usage before constructing an actual system environment.

本発明によれば、モデリング言語によってモデルを作成するモデリング段階と、作成したモデルをシミュレーションするシミュレーション実行段階とを備え、コーディングせずにメモリの使用量の概算を算出することを特徴とする実システムメモリ使用量概算方法が得られる。   According to the present invention, there is provided a real system comprising a modeling stage for creating a model by a modeling language and a simulation execution stage for simulating the created model, and calculating an approximate memory usage without coding A memory usage estimation method is obtained.

また、本発明によれば、前記実システムメモリ使用量概算方法において、さらに、前記モデルだけではシミュレーションできない処理を最小処理単位に分割してメモリの使用量の情報を収集し保存するメモリ使用量情報収集格納段階とを備え、前記シミュレーション実行段階は、前記メモリの使用量の情報を参照しながら、前記モデルのシミュレーション処理を行うとともに、シミュレーション処理における時系列順に並んだシステムの処理であるアクティビティ毎に使用されるメモリ使用量を記録することで、コーディングせずにメモリの使用量の概算を算出することを特徴とする実システムメモリ使用量概算方法が得られる。   According to the present invention, in the real system memory usage estimation method, further, memory usage information for collecting and storing memory usage information by dividing a process that cannot be simulated by the model alone into minimum processing units. A storage step, and the simulation execution step performs simulation processing of the model while referring to information on the memory usage, and for each activity that is a system processing arranged in time series in the simulation processing. By recording the memory usage to be used, an actual system memory usage estimation method can be obtained, characterized in that an approximation of the memory usage is calculated without coding.

また、本発明によれば、前記実システムメモリ使用量概算方法において、モデリング過程と、運用環境過程とを備え、前記運用環境過程は、シミュレーションできない処理を運用環境で動作させて、メモリ使用量を取得するモニタリング段階を含み、前記モデリング過程は、システムの分析及び設計工程でモデリング言語を利用してシステムの分析モデル及び設計モデルを作成するプラットフォーム非依存モデル作成段階と、作成されたプラットフォーム非依存モデル、言語情報を含むプラットフォーム情報、及びマッピング情報を利用して、プラットフォーム特化モデルを作成するプラットフォーム特化モデル作成段階と、前記プラットフォーム特化モデルから前記言語情報を基に対象となる言語で記述されたソースコードを作成するソースコード作成段階と、前記プラットフォーム特化モデルの情報だけではシミュレーションできない処理を最小処理単位に分割し、プラットフォーム非依存モデル基本テンプレートとして抽出する基本テンプレート抽出段階と、モニタリングして得られたモニタリング結果とモニタリング環境の環境情報が記述されているマッピング情報を合わせた動作情報を格納するための動作情報保存段階と、前記シミュレーション実行段階とを含み、前記モデリング段階は、前記プラットフォーム非依存モデル作成段階、前記プラットフォーム特化モデル作成段階、及び前記ソースコード作成段階を含み、前記メモリ使用量情報収集格納段階は、前記基本テンプレート抽出段階、前記モニタリング段階、及び前記動作情報保存段階を備え、前記シミュレーション実行段階は、前記プラットフォーム特化モデルを、前記動作情報を基に擬似的に実行することを特徴とする実システムメモリ使用量概算方法が得られる。   According to the present invention, the real system memory usage estimation method includes a modeling process and an operational environment process, and the operational environment process operates a process that cannot be simulated in the operational environment to reduce the memory usage. Including a monitoring stage to be acquired, and the modeling process includes a platform independent model creation stage for creating an analysis model and a design model of a system using a modeling language in a system analysis and design process, and a created platform independent model A platform-specific model creation stage that creates a platform-specific model using platform information including language information and mapping information, and is described in the target language based on the language information from the platform-specific model. Create source code A basic template extraction stage in which a code creation stage, a process that cannot be simulated only by the platform specific model information is divided into minimum processing units and extracted as a platform independent model basic template, and monitoring results and monitoring obtained by monitoring An operation information storage step for storing operation information combined with mapping information describing environment information of the environment, and the simulation execution step, wherein the modeling step includes the platform-independent model creation step, the platform Including a specialized model creation step and a source code creation step, wherein the memory usage information collection and storage step comprises the basic template extraction step, the monitoring step, and the operation information storage step, and the simulation ® down execution stage, the platform-specific model, the actual system memory usage amount approximating method characterized by performing pseudo obtained based on the operation information.

また、本発明によれば、前記実システムメモリ使用量概算方法において、前記モニタリング段階は、予め作成したテストを実施しやすい前記運用環境に合わせたマッピングファイルを利用して、前記プラットフォーム非依存モデル基本テンプレートからプラットフォーム特化モデル基本テンプレートを作成し、ソースコード、実行ファイルを生成し、動作確認用の入力データを利用して、動作のモニタリングを行い、前記シミュレーション実行段階は、プラットフォーム特化モデルに含まれる動的な情報を利用し、プログラムの動作をシミュレートするとともに実行時に扱うデータは実システム用入力データによって設定され、これを基に動作を決定して実運用時に利用するメモリ使用量を算出することを特徴とする実システムメモリ使用量概算方法が得られる。   Also, according to the present invention, in the actual system memory usage estimation method, the monitoring step uses the mapping file suitable for the operation environment in which a test created in advance is easy to perform, and the platform independent model basics Create platform-specific model basic template from template, generate source code and execution file, monitor operation using input data for operation confirmation, and the simulation execution stage is included in platform-specific model Dynamic information is used to simulate program operations and the data handled at runtime is set by the input data for the actual system. Based on this, the operation is determined and the amount of memory used for actual operation is calculated. Real system memory usage Calculation method is obtained.

また、本発明によれば、モデリング言語によってモデルを作成するモデリング手段と、作成したモデルをシミュレーションするシミュレーション実行手段とを備え、コーディングせずにメモリの使用量の概算を算出することを特徴とする実システムメモリ使用量概算装置が得られる。   In addition, according to the present invention, it is characterized by comprising modeling means for creating a model by a modeling language and simulation execution means for simulating the created model, and calculating an approximate amount of memory usage without coding. A real system memory usage estimation device is obtained.

また、本発明によれば、前記実システムメモリ使用量概算装置において、前記モデルだけではシミュレーションできない処理を最小処理単位に分割してメモリの使用量の情報を収集し保存するメモリ使用量情報収集格納手段を備え、前記シミュレーション実行手段は、前記メモリの使用量の情報を参照しながら、前記モデルのシミュレーション処理を行うとともに、シミュレーション処理における時系列順に並んだシステムの処理であるアクティビティ毎に使用されるメモリ使用量を記録することを特徴とする実システムメモリ使用量概算装置が得られる。   Further, according to the present invention, in the real system memory usage estimation device, memory usage information collection storage that collects and stores memory usage information by dividing a process that cannot be simulated only by the model into minimum processing units. The simulation execution means performs simulation processing of the model while referring to information on the amount of memory used, and is used for each activity that is a system processing arranged in chronological order in the simulation processing. An apparatus for estimating the actual system memory usage, which records the memory usage, is obtained.

また、本発明によれば、前記実システムメモリ使用量概算装置において、モデリングツールと、運用環境とを備え、前記運用環境は、シミュレーションできない処理を運用環境で動作させて、メモリ使用量を取得するモニタリング手段を備え、前記モデリングツールは、システムの分析及び設計工程でモデリング言語を利用してシステムの分析モデル及び設計モデルを作成するプラットフォーム非依存モデル作成手段と、作成されたプラットフォーム非依存モデル、言語情報を含むプラットフォーム情報、及びマッピング情報を利用して、プラットフォーム特化モデルを作成するプラットフォーム特化モデル作成手段と、前記プラットフォーム特化モデルから前記言語情報を基に対象となる言語で記述されたソースコードを作成するソースコード作成手段と、前記プラットフォーム特化モデルの情報だけではシミュレーションできない処理を最小処理単位に分割し、プラットフォーム非依存モデル基本テンプレートとして抽出する基本テンプレート抽出手段と、
モニタリングして得られたモニタリング結果とモニタリング環境の環境情報が記述されているマッピング情報を合わせた動作情報を格納するための動作情報保存手段と、前記シミュレーション実行手段とを備え、前記モデリング手段は、前記プラットフォーム非依存モデル作成手段、前記プラットフォーム特化モデル作成手段、及び前記ソースコード作成手段を備え、前記メモリ使用量情報収集格納手段は、前記基本テンプレート抽出手段、前記モニタリング手段、及び前記動作情報保存手段を備え、前記シミュレーション実行手段は、前記プラットフォーム特化モデルを、前記動作情報を基に擬似的に実行することを特徴とする実システムメモリ使用量概算装置が得られる。
According to the present invention, the actual system memory usage estimation device includes a modeling tool and an operating environment, and the operating environment acquires a memory usage by operating a process that cannot be simulated in the operating environment. The modeling tool includes a platform independent model creating means for creating a system analysis model and a design model using a modeling language in a system analysis and design process, and the created platform independent model and language. Platform-specific model creating means for creating a platform-specific model using platform information including information and mapping information, and a source described in the target language from the platform-specific model based on the language information Source code to create code And de creation unit, and the base template extracting unit operable to divide the process is can not be simulated by information platform-specific model the minimum processing unit, and extracts as a platform-independent model base template,
Operation information storage means for storing operation information combining the monitoring results obtained by monitoring and mapping information in which the environment information of the monitoring environment is described, and the simulation execution means, the modeling means, The platform-independent model creation means, the platform-specific model creation means, and the source code creation means, the memory usage information collection storage means, the basic template extraction means, the monitoring means, and the operation information storage And a simulation execution unit that executes the platform-specific model in a pseudo manner based on the operation information.

また、本発明によれば、前記実システムメモリ使用量概算装置において、前記モニタリング手段は、予め作成したテストを実施しやすい前記運用環境に合わせたマッピングファイルを利用して、前記プラットフォーム非依存モデル基本テンプレートからプラットフォーム特化モデル基本テンプレートを作成し、ソースコード、実行ファイルを生成し、動作確認用の入力データを利用して、動作のモニタリングを行い、前記シミュレーション実行手段は、プラットフォーム特化モデルに含まれる動的な情報を利用し、プログラムの動作をシミュレートするとともに実行時に扱うデータは実システム用入力データによって設定され、これを基に動作を決定して実運用時に利用するメモリ使用量を算出することを特徴とする実システムメモリ使用量概算装置が得られる。   Further, according to the present invention, in the actual system memory usage estimation device, the monitoring means uses the mapping file suitable for the operation environment in which a test created in advance is easy to perform, and the platform independent model basic Create a platform-specific model basic template from the template, generate source code and executable files, monitor the operation using input data for operation confirmation, and the simulation execution means is included in the platform-specific model Dynamic information is used to simulate program operations and the data handled at runtime is set by the input data for the actual system. Based on this, the operation is determined and the amount of memory used for actual operation is calculated. Real system memory usage Calculation device is obtained.

また、本発明によれば、前記コンピュータを、モデリング言語によってモデルを作成するモデリング手段と、作成したモデルをシミュレーションするシミュレーション実行手段としてコーディングせずにメモリの使用量の概算を算出するように機能させるための実システムメモリ使用量概算プログラムが得られる。   Further, according to the present invention, the computer is caused to function to calculate an approximate memory usage without coding as a modeling means for creating a model in a modeling language and a simulation execution means for simulating the created model. A real system memory usage estimation program is obtained.

また、本発明によれば、前記実システムメモリ使用量概算プログラムにおいて、さらに、コンピュータを、前記モデルだけではシミュレーションできない処理を最小処理単位に分割してメモリの使用量の情報を収集し保存するメモリ使用量情報収集格納手段として機能させ、前記シミュレーション実行手段は、前記メモリの使用量の情報を参照しながら、前記モデルのシミュレーション処理を行うとともに、シミュレーション処理における時系列順に並んだシステムの処理であるアクティビティ毎に使用されるメモリ使用量を記録するように機能することを特徴とする実システムメモリ使用量概算プログラムが得られる。   According to the present invention, in the real system memory usage estimation program, the computer further divides processing that cannot be simulated by the model alone into minimum processing units, and collects and stores memory usage information. The simulation execution means is a system process arranged in time series order in the simulation process while performing the simulation process of the model while referring to the usage amount information of the memory. A real system memory usage estimation program is obtained, which functions to record the memory usage used for each activity.

また、本発明によれば、前記実システムメモリ使用量概算プログラムにおいて、コンピュータにさらに、モデリングツールと、運用環境として機能させ、前記運用環境は、シミュレーションできない処理を運用環境で動作させて、メモリ使用量を取得するモニタリング手段として機能させ、前記モデリングツールは、システムの分析及び設計工程でモデリング言語を利用してシステムの分析モデル及び設計モデルを作成するプラットフォーム非依存モデル作成手段と、作成されたプラットフォーム非依存モデル、言語情報を含むプラットフォーム情報、及びマッピング情報を利用して、プラットフォーム特化モデルを作成するプラットフォーム特化モデル作成手段と、前記プラットフォーム特化モデルから前記言語情報を基に対象となる言語で記述されたソースコードを作成するソースコード作成手段と、前記プラットフォーム特化モデルの情報だけではシミュレーションできない処理を最小処理単位に分割し、プラットフォーム非依存モデル基本テンプレートとして抽出する基本テンプレート抽出手段と、モニタリングして得られたモニタリング結果とモニタリング環境の環境情報が記述されているマッピング情報を合わせた動作情報を格納するための動作情報保存手段と、前記シミュレーション実行手段として機能させ、前記モデリング手段は、前記プラットフォーム非依存モデル作成手段、前記プラットフォーム特化モデル作成手段、及び前記ソースコード作成手段として機能し、前記メモリ使用量情報収集格納手段は、前記基本テンプレート抽出手段、前記モニタリング手段、及び前記動作情報保存手段として機能し、前記シミュレーション実行手段は、前記プラットフォーム特化モデルを、前記動作情報を基に擬似的に実行するように機能することを特徴とする実システムメモリ使用量概算プログラムが得られる。   Further, according to the present invention, in the actual system memory usage estimation program, the computer further functions as a modeling tool and an operating environment, and the operating environment operates a process that cannot be simulated in the operating environment to use the memory. The modeling tool functions as a monitoring means for acquiring a quantity, and the modeling tool uses a modeling language in a system analysis and design process to create a system independent model and a design model, and a created platform Platform-specific model creation means for creating a platform-specific model using an independent model, platform information including language information, and mapping information, and a target language based on the language information from the platform-specific model Source code creation means for creating the described source code, basic template extraction means for dividing a process that cannot be simulated only by the information of the platform specific model into the minimum processing units, and extracting it as a platform independent model basic template, and monitoring Function information storage means for storing operation information combining the monitoring results obtained and the mapping information in which the environment information of the monitoring environment is described, and function as the simulation execution means, and the modeling means It functions as a platform-independent model creation means, the platform-specific model creation means, and the source code creation means, and the memory usage information collection storage means includes the basic template extraction means, the monitoring means , And the operation information storage means, wherein the simulation execution means functions to execute the platform specific model in a pseudo manner based on the operation information. A program is obtained.

また、本発明によれば、前記実システムメモリ使用量概算プログラムにおいて、前記モニタリング手段は、予め作成したテストを実施しやすい前記運用環境に合わせたマッピングファイルを利用して、前記プラットフォーム非依存モデル基本テンプレートからプラットフォーム特化モデル基本テンプレートを作成し、ソースコード、実行ファイルを生成し、動作確認用の入力データを利用して、動作のモニタリングを行羽陽に機能し、前記シミュレーション実行手段は、プラットフォーム特化モデルに含まれる動的な情報を利用し、プログラムの動作をシミュレートするとともに実行時に扱うデータは実システム用入力データによって設定され、これを基に動作を決定して実運用時に利用するメモリ使用量を算出するように機能することを特徴とする実システムメモリ使用量概算プログラムが得られる。   Further, according to the present invention, in the actual system memory usage estimation program, the monitoring means uses the mapping file suitable for the operation environment in which a test created in advance is easy to perform, and the platform independent model basic A platform-specific model basic template is created from the template, source code and an execution file are generated, operation monitoring is performed using input data for operation confirmation, and the simulation execution means is a platform The dynamic information contained in the specialized model is used to simulate the operation of the program and the data handled at the time of execution is set by the input data for the actual system. Based on this, the operation is determined and used at the actual operation It functions to calculate memory usage. Real system memory usage estimate program that is obtained.

本発明によれば、シミュレーションを実施し、メモリ使用量を算出することによって、実システム環境を構築する前にメモリ使用量が算出できる実システムメモリ使用量概算方法、装置およびプログラムを提供することができる。   According to the present invention, it is possible to provide a real system memory usage estimation method, apparatus, and program capable of calculating a memory usage before constructing a real system environment by performing a simulation and calculating a memory usage. it can.

また、本発明によれば、設計・分析の段階でモデリング言語を利用し、システムのメモリ使用量を算出することができ、コーディングを実施する必要のないために、モデリング言語を使い、コーディングせずにシステムのメモリ使用の最適化ができるモデリング言語を利用した実システムメモリ使用量概算方法、装置およびプログラムを提供することができる。   In addition, according to the present invention, a modeling language can be used at the design / analysis stage to calculate the memory usage of the system, and it is not necessary to perform coding. It is possible to provide an actual system memory usage estimation method, apparatus, and program using a modeling language capable of optimizing system memory usage.

本発明の実施の形態によるシステムの全体図である。1 is an overall view of a system according to an embodiment of the present invention. 本発明の実施の形態によるシステムのシミュレーション実行手段の流れに着目した図である。It is the figure which paid its attention to the flow of the simulation execution means of the system by embodiment of this invention. 本発明の実施の形態によるシステムの動作情報取得手段の流れに着目した図である。It is the figure which paid its attention to the flow of the operation | movement information acquisition means of the system by embodiment of this invention. 本発明の実施の形態によるシステムの利用するデータの例を示す図である。It is a figure which shows the example of the data which the system by embodiment of this invention utilizes. (a)及び(b)は本発明の実施の形態によるシステムの動作を示すフローチャート図である。(A) And (b) is a flowchart figure which shows operation | movement of the system by embodiment of this invention. 本発明の実施の形態によるシステムのシミュレーション実施時の詳細情報を示す図で、(a)は動的情報、(b)は静的情報、(c)はシミュレーション結果及びメモリ使用量情報をそれぞれ示している。FIG. 5 is a diagram showing detailed information when a system is simulated according to an embodiment of the present invention, where (a) shows dynamic information, (b) shows static information, and (c) shows simulation results and memory usage information. ing. (a),(b)及び(c)は本発明の実施の形態によるシステムのシミュレーション実行時の動作を示すフローチャートを示す図である。(A), (b) and (c) is a figure which shows the flowchart which shows the operation | movement at the time of the simulation execution of the system by embodiment of this invention. (a),(b),(c),(d),(e),(f)はUMLの場合のシミュレーションの流れを示す図で,(a)は動的情報のシーケンス図,(b)は静的情報のクラス図、(c)はマッピング情報を示す図、(d)は実システム用入力データを示す図、(e)シミュレーション結果、(f)メモリ使用量情報を示す図である。(A), (b), (c), (d), (e), (f) are diagrams showing the flow of simulation in the case of UML, (a) is a sequence diagram of dynamic information, (b) Is a diagram showing static information, (c) is a diagram showing mapping information, (d) is a diagram showing input data for a real system, (e) a simulation result, and (f) a diagram showing memory usage information.

以下、本発明の実施の形態によるシステムの構成について図面を参照して説明する。   Hereinafter, the configuration of a system according to an embodiment of the present invention will be described with reference to the drawings.

図1は本発明の実施の形態によるシステムの全体図である。図2は本発明の実施の形態によるシステムのシミュレーション実行手段の流れに着目した図である。   FIG. 1 is an overall view of a system according to an embodiment of the present invention. FIG. 2 is a diagram focusing on the flow of the simulation execution means of the system according to the embodiment of the present invention.

図3は本発明の実施の形態によるシステムの動作情報取得手段の流れに着目した図である。図4は本発明の実施の形態によるシステムの利用するデータの例を示す図である。   FIG. 3 is a diagram focusing on the flow of operation information acquisition means of the system according to the embodiment of the present invention. FIG. 4 is a diagram showing an example of data used by the system according to the embodiment of the present invention.

図1を参照すると、本発明は、コンピュータ等の情報処理装置に用いられるプログラムを有するシステムを開発する際に、モデリング言語を利用して分析及び設計工程で作成したモデル図111と、実システム構築時のミドルウェア、実装言語、OSといったプラットフォーム情報113を利用することで、設計工程でシステムのメモリ使用量を概算し、最適な構成を設計するための支援を行うものである。   Referring to FIG. 1, in the present invention, when developing a system having a program used in an information processing apparatus such as a computer, a model diagram 111 created in an analysis and design process using a modeling language and an actual system construction are shown. By using the platform information 113 such as middleware, implementation language, and OS, the memory usage of the system is estimated in the design process, and support for designing an optimum configuration is provided.

さらに、図1を参照して、本発明を更に具体的に説明する。   Further, the present invention will be described more specifically with reference to FIG.

本発明の実施の形態による実システムメモリ使用量概算システムは、モデリンググツール100と、運用環境200とを備えて構成されている。   The actual system memory usage estimation system according to the embodiment of the present invention includes a modeling tool 100 and an operation environment 200.

図1のシステムは利用する機能によって大きく図2又は図3に分割して記述することができる。   The system of FIG. 1 can be largely divided into FIG. 2 or FIG. 3 depending on the function to be used.

モデリングツール100は、プラットフォーム非依存モデル(PIM)作成手段101と、プラットフォーム特化モデル(PSM)作成手段102と、ソースコード作成手段103と、シミュレーション実行手段104と、基本テンプレート抽出手段106と、モニタリング手段105と、動作情報保存手段107とを含む。   The modeling tool 100 includes a platform independent model (PIM) creating unit 101, a platform specific model (PSM) creating unit 102, a source code creating unit 103, a simulation executing unit 104, a basic template extracting unit 106, a monitoring Means 105 and operation information storage means 107.

これらの各手段はそれぞれ概略つぎのように動作する。   Each of these means generally operates as follows.

プラットフォーム非依存モデル作成手段101は、システムの分析、設計工程でモデリング言語を利用してシステムの分析モデル図、設計モデル図を作成するための手段である。プラットフォーム非依存モデル110で描かれるモデル図は、標準化されたモデリング言語を用いて記述する。この工程のモデル図では実行環境や言語に依存した情報は含まれず、対象となるドメイン内で分析されたモデルが記述される。作成されるモデル図には、静的な情報(プログラムの構成やデータ構造の情報)を含むものと動的な情報(時系列に動作するフロー図やアルゴリズム)を含むものの少なくともどちらか一方が存在する。本発明で述べる機能を利用するためには動的な情報が記述された図が必要となる。   The platform-independent model creation means 101 is a means for creating a system analysis model diagram and a design model diagram using a modeling language in the system analysis and design process. The model diagram drawn by the platform independent model 110 is described using a standardized modeling language. The model diagram of this process does not include information depending on the execution environment and language, and describes the model analyzed in the target domain. The created model diagram contains at least one of static information (program structure and data structure information) and dynamic information (flow diagram and algorithm that operates in time series). To do. In order to use the functions described in the present invention, a diagram describing dynamic information is required.

プラットフォーム特化モデル作成手段102は、作成されたプラットフォーム非依存モデル、プラットフォーム情報113(言語情報、環境情報等)、マッピング情報114を利用して、プラットフォーム特化モデル111を作成する手段である。プラットフォーム特化モデルでは、言語情報を利用してプログラミング言語に特化した情報をモデル図の中に反映する。また、環境情報を利用することでOSや使用するDB、実行時に利用するアプリケーションサーバ等のミドルウェア情報を取り入れる。その他にも実行時に利用するフレームワークの情報を利用することで汎用的に記述された処理をフレームワークに特化した形へと落とし込むことが可能になる。   The platform-specific model creating unit 102 is a unit that creates the platform-specific model 111 using the created platform-independent model, platform information 113 (language information, environment information, etc.), and mapping information 114. In the platform-specific model, language information is used to reflect information specific to the programming language in the model diagram. Also, by using the environment information, middleware information such as the OS, the DB to be used, and the application server to be used at the time of execution is incorporated. In addition, by using the information of the framework used at the time of execution, it becomes possible to drop the processing described in general purpose into a form specialized for the framework.

図4を参照すると、本発明の実施の形態によるシステムの利用するデータの例は、プラットフォーム情報(環境依存情報(APサーバ1)、環境依存情報(DB2、言語情報4)マッピング情報3等が示されている。   Referring to FIG. 4, examples of data used by the system according to the embodiment of the present invention include platform information (environment-dependent information (AP server 1), environment-dependent information (DB2, language information 4), mapping information 3 and the like. Has been.

ソースコード作成手段103は、プラットフォーム特化モデルから言語情報4を基に対象となる言語で記述されたソースコード112を作成する手段である。プラットフォーム特化モデルを利用し、静的な情報からデータ構造部分を、動的な情報からロジック部分のソースコードを自動生成する。   The source code creating means 103 is means for creating a source code 112 described in a target language based on the language information 4 from the platform specific model. Using a platform specific model, the data structure part is automatically generated from static information, and the source code of the logic part is automatically generated from dynamic information.

シミュレーション実行手段104はプラットフォーム特化モデルを擬似的に実行するための手段である。プラットフォーム特化モデルに含まれる動的な情報を利用し、プログラムの動作をシミュレートする。実行時に扱うデータは実システム用入力データ125によって設定され、これを基に動作を決定して実運用時に利用するメモリ使用量を算出する。   The simulation execution means 104 is a means for executing the platform specific model in a pseudo manner. Uses dynamic information contained in a platform-specific model to simulate program behavior. Data to be handled at the time of execution is set by the actual system input data 125, and an operation is determined based on this data to calculate the amount of memory used for actual operation.

基本テンプレート抽出手段106はプラットフォーム特化モデルの情報だけではシミュレーションできない処理を最小処理単位に分割し、プラットフォーム非依存モデル基本テンプレート116として抽出するための手段である。ここで述べるプラットフォーム特化モデルの情報だけではシミュレーションできない処理とは、モデルから処理を呼び出しているにも関わらず、その処理の詳細情報がモデル図には記述されてない場合の処理であり、主に開発対象外のライブラリ機能がそれにあたる。測定対象指定情報119に抽出された処理単位が記録される。   The basic template extraction means 106 is a means for dividing a process that cannot be simulated only by platform-specific model information into minimum processing units and extracting it as a platform-independent model basic template 116. The processing that cannot be simulated only by the platform-specific model information described here is processing when detailed processing information is not described in the model diagram even though the processing is called from the model. This is the library function that is not developed. The extracted processing unit is recorded in the measurement target designation information 119.

プラットフォーム非依存モデル基本テンプレートはモニタリング手段105、動作情報保存手段107を通して、メモリの使用量の情報が収集される。   The platform-independent model basic template collects memory usage information through the monitoring means 105 and the operation information storage means 107.

プラットフォーム非依存モデル基本テンプレートはツール内部で蓄積され、同じ処理が重複しないように管理される。   Platform-independent model basic templates are stored inside the tool and managed so that the same process is not duplicated.

モニタリング手段105はシミュレーションできない処理を運用環境で動作させて、メモリ使用量を取得するための手段である。予め作成したテストを実施しやすい運用環境200に合わせたマッピングファイル117を利用して、プラットフォーム非依存モデル基本テンプレートからプラットフォーム特化モデル基本テンプレート118を作成する。その後、ソースコード120、実行ファイル121を生成し、動作確認用の入力データ122を利用して、動作のモニタリングを行う。   The monitoring unit 105 is a unit for acquiring a memory usage amount by operating a process that cannot be simulated in an operating environment. A platform-specific model basic template 118 is created from a platform-independent model basic template using a mapping file 117 tailored to the operational environment 200 in which a test created in advance is easy to implement. Thereafter, the source code 120 and the execution file 121 are generated, and the operation is monitored using the input data 122 for operation confirmation.

動作情報保存手段107はモニタリングして得られたモニタリング結果123とモニタリング環境の環境情報が記述されているマッピング情報117を合わせて格納するための手段である。   The operation information storage unit 107 is a unit for storing the monitoring result 123 obtained by monitoring and the mapping information 117 in which the environment information of the monitoring environment is described together.

シミュレーション結果情報の値を正確にするために、複数のマッピング情報を利用して得られた動作情報の値を利用した統計値を算出することもできる。   In order to make the value of the simulation result information accurate, it is also possible to calculate a statistical value using the value of operation information obtained using a plurality of mapping information.

次に、図5のフローチャートを参照して本発明の実施の形態によるシステムの動作について詳細に説明する。図5(a)及び図5(b)は本発明の実施の形態によるシステムの動作を示すフローチャート図である。   Next, the operation of the system according to the embodiment of the present invention will be described in detail with reference to the flowchart of FIG. FIGS. 5A and 5B are flowcharts showing the operation of the system according to the embodiment of the present invention.

図5(a)を参照しながら、まず、要件に従ってプラットフォーム非依存モデルの作成を行う(ステップSA1)。プラットフォーム非依存モデルは実装言語や動作環境に依存しない状態のモデル図である。プラットフォーム非依存モデルの作成を実現する手段としてはBPEL(Business Process Execution Language)設計支援ツールやUML(Unified Modeling Language)作成支援ツールやなどの一般的なモデリング支援ツールを利用することができる。   With reference to FIG. 5A, first, a platform-independent model is created according to the requirements (step SA1). The platform-independent model is a model diagram that does not depend on the implementation language or the operating environment. General modeling support tools such as a BPEL (Business Process Execution Language) design support tool and a UML (Unified Modeling Language) creation support tool can be used as means for realizing creation of a platform-independent model.

次に、マッピング情報が作成されているか否か判断される(ステップSA2)。   Next, it is determined whether mapping information has been created (step SA2).

設定されていない場合には、設定する(ステップSA3)。次に、プラットホーム情報が設定されているか否かが判断される(ステップSA4)。設定されていない場合には、設定する(ステップSA5)。   If it is not set, it is set (step SA3). Next, it is determined whether or not platform information is set (step SA4). If it is not set, it is set (step SA5).

設定情報が設定されていない場合は、プラットフォーム特化モデルを作成する前にユーザは構築するシステムのプラットフォーム依存情報(言語情報、実行環境情報)を設定する。   If the setting information is not set, the user sets platform-dependent information (language information and execution environment information) of the system to be built before creating the platform specific model.

設定されたプラットフォーム依存情報を基にプラットフォーム特化モデルを自動生成する(ステップSA6)。さらに、ソースファイル(ソースコード)の自動再生成を行う(ステップSA7)。これらの処理は、MDA(Model−Driven Architecture)を実現するためのツールで実現可能である。同時にプラットフォーム)非依存モデル基本テンプレートと測定対象指定情報の抽出を行う(ステップSA8)。   A platform-specific model is automatically generated based on the set platform-dependent information (step SA6). Further, the source file (source code) is automatically regenerated (step SA7). These processes can be realized by a tool for realizing MDA (Model-Driven Architecture). At the same time, the platform) independent model basic template and measurement target designation information are extracted (step SA8).

次に、シミュレーションを行う前に、動作情報が設定されているか否か判断される(ステップSA9)。動作情報が設定されていない場合は、動作情報を設定するか否か判断される(ステップSA10)。動作情報を自分で行う場合には、動作情報の設定を行う(SA11)。なお、大まかな数値が設定できる場合は手動で設定する。   Next, before performing the simulation, it is determined whether or not the operation information is set (step SA9). If the operation information is not set, it is determined whether or not the operation information is set (step SA10). If the operation information is to be performed by itself, the operation information is set (SA11). If a rough value can be set, set it manually.

設定できない場合は,動作情報を取得する(ステップSA12)。   If it cannot be set, operation information is acquired (step SA12).

即ち、図5(b)に示すように、自動で算出する場合は動作させる環境を用意し、その環境に合わせたマッピング情報を記述する。作成されたマッピングファイルを基にプラットフォーム非依存モデル基本テンプレートからプラットフォーム特化モデル基本テンプレートを作成する(ステップSB1)。さらに、プラットフォーム特化モデル基本テンプレートと測定対象指定情報を利用して、ソースコードを生成する(ステップSB2)。このソースコードは測定対象指定情報を基に通常のプラットフォーム特化モデル基本テンプレートに記述された処理に加えて、モニタリングに必要な処理が追記されている。ソースファイルを基に実行ファイルを生成後(ステップSB3)、運用環境で実行し、入力データを設定して(ステップSB4)、モニタリングを行う(ステップSB5)。モニタリングされた結果はモニタリング結果として出力される。出力されたモニタリング結果、およびマッピング情報を利用し、動作情報を設定し、保存する(ステップSB6)。   That is, as shown in FIG. 5B, when automatically calculating, an environment to be operated is prepared, and mapping information according to the environment is described. A platform-specific model basic template is created from the platform-independent model basic template based on the created mapping file (step SB1). Further, a source code is generated using the platform-specific model basic template and the measurement target designation information (step SB2). In this source code, in addition to the processing described in the normal platform specific model basic template based on the measurement target designation information, processing necessary for monitoring is added. After the execution file is generated based on the source file (step SB3), it is executed in the operating environment, input data is set (step SB4), and monitoring is performed (step SB5). The monitored result is output as the monitoring result. Using the output monitoring result and mapping information, operation information is set and stored (step SB6).

図5(a)に戻って、シミュレーションを実施する前に実システム用入力データを設定する(ステップSA13)。動作情報、実システム用入力データを基にシミュレーションを行う(ステップSA14)。   Returning to FIG. 5A, the actual system input data is set before the simulation is performed (step SA13). A simulation is performed based on the operation information and actual system input data (step SA14).

図6は本発明の実施の形態によるシステムのシミュレーション実施時の詳細情報を示す図、図7は本発明の実施の形態によるシステムのシミュレーション実行時の動作を示すフローチャートを示す図である。   FIG. 6 is a diagram showing detailed information at the time of executing the simulation of the system according to the embodiment of the present invention, and FIG. 7 is a flowchart showing the operation at the time of executing the simulation of the system according to the embodiment of the present invention.

図6を参照すると、図6(a)は、動的情報、図6(b)は静的情報、図6(c)はシミュレーション結果及びメモリ使用量情報をそれぞれ示している。   Referring to FIG. 6, FIG. 6A shows dynamic information, FIG. 6B shows static information, and FIG. 6C shows simulation results and memory usage information.

図7(a),(b),(c)を参照すると、シミュレーション時に利用するモデル図は処理を時系列に表現したものであり、開始から終了までが1つのツリー構造で表現することができる。   Referring to FIGS. 7A, 7B, and 7C, the model diagram used at the time of the simulation expresses the processing in time series, and the start to the end can be expressed by one tree structure. .

ここで、本発明では、モデルに記述されているシステムの動作をアクティビティと呼び、時系列順に並んだアクティビティでは先に実行されるものを親アクティビティ、後に実行されるものを子アクティビティと呼ぶ。言語によっては、時系列に呼ばれるのではなく、並列に実行されるアクティビティは兄弟アクティビティと呼ぶこととする。   Here, in the present invention, the operation of the system described in the model is called an activity, and in activities arranged in chronological order, one executed first is called a parent activity, and one executed later is called a child activity. Depending on the language, activities that are executed in parallel rather than in time series are called sibling activities.

また、シミュレーションはツリー構造のデータを順次探索することでメモリ使用量が計算されるが、子アクティビティと兄弟アクティビティの解析の優先度はそれぞれのアクティビティの依存関係に基づいて決定される。子アクティビティが全ての兄弟アクティビティが実行されることを期待する場合、兄弟アクティビティが優先しなければならない。   In the simulation, the memory usage is calculated by sequentially searching the tree-structured data. The priority of analysis of the child activity and the sibling activity is determined based on the dependency of each activity. If a child activity expects all sibling activities to be executed, the sibling activity must take precedence.

図7(a)を参照すると、シミュレーションが開始されると、PSMの動的情報が読み込まれ(ステップSA71)、アクティビティが設定され(ステップSA72)、アクティビティ処理の実行がなされる(ステップSA73)。   Referring to FIG. 7A, when simulation is started, PSM dynamic information is read (step SA71), an activity is set (step SA72), and an activity process is executed (step SA73).

図7(c)を参照すると、アクティビティ処理の実行が開始されると、開始点からアクティビティが読み込まれ(ステップSC1)、実行される。具体的には、アクティビティ実行時には、メモリ使用量を記録するための領域が確保され(ステップSC2)、処理が実行できるか否か判断され(ステップSC3)、処理が可能な場合には、アクティビティを実行し(ステップSC4)、外部データが必要か否か判断される。ここで、外部データが必要な場合は、入力データを読み込み(ステップSC6)、メモリ使用量情報を記録する(ステップSC6)。必要でない場合には、直接メモリ使用量情報を記録する(ステップSC6)。次に変数が作成されるか否か判断される(ステップSC8)。   Referring to FIG. 7C, when the execution of the activity process is started, the activity is read from the start point (step SC1) and executed. Specifically, when the activity is executed, an area for recording the memory usage is secured (step SC2), it is determined whether the process can be executed (step SC3), and if the process is possible, the activity is selected. It is executed (step SC4), and it is determined whether or not external data is necessary. If external data is required, input data is read (step SC6) and memory usage information is recorded (step SC6). If not necessary, memory usage information is directly recorded (step SC6). Next, it is determined whether or not a variable is created (step SC8).

変数が作成される場合には、変数作成処理の実行がなされる(ステップSC9)。   If a variable is created, variable creation processing is executed (step SC9).

アクティビティ内で変数が作成されると生成される変数や使用している変数の構造を静的情報から調べ、言語情報とマッピングすることで使用されるメモリ量を計算する。   When a variable is created in an activity, the variable to be generated and the structure of the variable being used are checked from static information, and the amount of memory used is calculated by mapping it with language information.

具体的に、図7(b)に示すように、変数作成処理の実行が開始されると、性的情報から変数のデータ構造を読み込み(ステップSB71)、言語情報から使用バイト数を読み込み(ステップSB72)、メモリ使用量情報を記録する(ステップSB73)。アクティビティ毎に使用されるメモリ使用量が記録される。   Specifically, as shown in FIG. 7B, when execution of the variable creation process is started, the data structure of the variable is read from the sexual information (step SB71), and the number of used bytes is read from the language information (step SB71). SB72) and memory usage information is recorded (step SB73). The amount of memory used for each activity is recorded.

また、ライブラリ呼び出し等のシミュレーションができないアクティビティが実行された場合には、即ち、ステップSC3に「No」の場合には、動作情報を利用して(動作情報を読み込み(ステップSC4′)、メモリ使用量情報を記録する(ステップSC5′)。このようにそれぞれの情報を利用することでシステム実行時のメモリ使用量を算出する。   If an activity that cannot be simulated, such as library call, is executed, that is, if “No” in step SC3, the operation information is used (the operation information is read (step SC4 ′) and the memory is used). The amount information is recorded (step SC5 '), and the amount of memory used when the system is executed is calculated by using each piece of information in this way.

例として図8のようなUMLの場合のシミュレーションの流れを示す。   As an example, the flow of simulation in the case of UML as shown in FIG. 8 is shown.

図8(a)で示すように、システムはまず、図8(c)で示すマッピング情報を利用し、プラットフォーム情報とのマッピングを行う。   As shown in FIG. 8A, the system first performs mapping with platform information using the mapping information shown in FIG.

[1]まず、システムはPSMを利用し、action( )アクティビティを実行する。このとき、外部からの入力が必要とされているため、図8(d)に示す実システム用入力データ情報を読み込み、該当する値を設定する。   [1] First, the system executes an action () activity using PSM. At this time, since input from the outside is required, the actual system input data information shown in FIG. 8D is read and the corresponding value is set.

action( )アクティビティが実行されるとシステムはメモリ使用量の情報を記録するための記憶領域を確保する。action( )アクティビティは引数でStringとintを利用しているため、図8(c)に示す言語情報から使用するメモリ使用量を取得し、図8(f)に示すメモリ使用量情報に記録する。   When the action () activity is executed, the system secures a storage area for recording information on memory usage. Since the action () activity uses String and int as arguments, the memory usage used from the language information shown in FIG. 8C is acquired and recorded in the memory usage information shown in FIG. .

次に、action( )アクティビティ内では、B[ ]が宣言されているので、図8(c)で示す言語情報から使用するメモリ使用量を取得する。   Next, since B [] is declared in the action () activity, the memory usage to be used is acquired from the language information shown in FIG.

同様に、図8(a)のループ時のiの宣言やオブジェクトB生成時のパラメータ等のメモリ利用時に図8(c)で示す言語情報から情報を取得し、図8(f)に示すメモリ使用量情報のテーブルに書きこんでいく。   Similarly, information is acquired from the language information shown in FIG. 8C when the memory such as the declaration of i at the time of loop in FIG. 8A and the parameters at the time of generating the object B is used, and the memory shown in FIG. Write to the usage information table.

[2]オブジェクトBを生成する際には、図8(b)に示す静的情報を利用し、必要なメモリ量を計算する。各アクティビティ[3]、[4]のシミュレーションが終わると、スコープ内でのメモリ使用量を合計し、図8(e)に示すシミュレーション結果に記録する。   [2] When generating the object B, the required memory amount is calculated using the static information shown in FIG. When the simulations of the activities [3] and [4] are finished, the memory usage in the scope is totaled and recorded in the simulation result shown in FIG.

図7(c)に戻って、スコープ内の全メモリ使用量を算出し(ステップSC10)、子アクティビティ(以下、単に子と呼ぶ)か兄弟アクティビティ(以下、単に兄弟と呼ぶ)があるか否かが判断される(ステップSC11)、子及び兄弟がいない場合には、終了する。一方、子か兄弟がいる場合には、再び、子か兄弟がいるかいなか、判断される(ステップSC12)。子か兄弟がいない場合には、アクティビティを設定し(ステップSC14)、アクティビティ処理の実行(ステップSC15)がなされ、ステップS11に戻る。ステップSC12において、子か兄弟がいる場合には、子と兄弟の優先度を決定した後(ステップSC13)に、ステップSC14を行う。   Returning to FIG. 7C, the total memory usage in the scope is calculated (step SC10), and whether there is a child activity (hereinafter simply referred to as a child) or a sibling activity (hereinafter simply referred to as a sibling). Is determined (step SC11), and if there are no children and siblings, the process ends. On the other hand, if there are children or brothers, it is determined again whether there are children or brothers (step SC12). If there are no children or siblings, an activity is set (step SC14), an activity process is executed (step SC15), and the process returns to step S11. If there are children or siblings in step SC12, the priority of the children and siblings is determined (step SC13), and then step SC14 is performed.

以上説明した、本発明の発明の形態においては、シミュレーションを実施し、メモリ使用量を算出するために、実システム環境を構築する前にメモリ使用量を算出することができる。   In the embodiment of the present invention described above, the memory usage can be calculated before the real system environment is constructed in order to perform simulation and calculate the memory usage.

また、本発明の発明の形態においては、設計・分析の段階でモデリング言語を利用し、システムのメモリ使用量を算出することができ、コーディングを実施する必要のないために、モデリング言語を使い、コーディングせずにシステムのメモリ使用を最適化することができる。   In the embodiment of the present invention, a modeling language can be used at the design and analysis stage to calculate the memory usage of the system, and since there is no need to perform coding, the modeling language is used. System memory usage can be optimized without coding.

以上説明したように、本発明に係る実システムメモリ使用量概算方法、装置、及びプログラムによれば、モデリング言語でモデリングを行えるシステム開発のメモリ使用量算出に適用できる。   As described above, the actual system memory usage estimation method, apparatus, and program according to the present invention can be applied to the calculation of memory usage for system development that can perform modeling in a modeling language.

具体的には、Java(登録商標)やC#言語等を利用したオブジェクト指向開発でのUMLを利用した分析、設計や、WS−BPELやBPMNといったビジネスプロセスモデリング言語を利用した分析、設計に適用される。   Specifically, it is applied to analysis and design using UML in object-oriented development using Java (registered trademark), C # language, etc., and analysis and design using business process modeling languages such as WS-BPEL and BPMN. Is done.

1 環境依存情報(APサーバ)
2 環境依存情報(データベース)
3 マッピング情報
4 言語情報
100 モデリンググツール
101 プラットフォーム非依存モデル(PIM)作成手段
102 プラットフォーム特化モデル(PSM)作成手段
103 ソースコード作成手段
104 シミュレーション実行手段
105 モニタリング手段
106 基本テンプレート抽出手段
107 動作情報保存手段
111 プラットフォーム特化モデル(モデル図)
112 ソースコード
113 プラットフォーム情報
114 マッピング情報
116 プラットフォーム非依存モデル基本テンプレート
117 マッピングファイル(情報)
118 プラットフォーム特化モデル基本テンプレート
119 測定対象指定情報
120 ソースコード
121 実行ファイル
122 入力データ
123 モニタリング結果
125 実システム用入力データ
200 運用環境
1 Environment-dependent information (AP server)
2 Environment-dependent information (database)
3 mapping information 4 language information 100 modeling tool 101 platform independent model (PIM) creation means 102 platform specific model (PSM) creation means 103 source code creation means 104 simulation execution means 105 monitoring means 106 basic template extraction means 107 operation information Preservation means 111 Platform-specific model (model diagram)
112 Source code 113 Platform information 114 Mapping information 116 Platform independent model basic template 117 Mapping file (information)
118 Platform Specific Model Basic Template 119 Measurement Target Specification Information 120 Source Code 121 Executable File 122 Input Data 123 Monitoring Result 125 Input Data for Real System 200 Operating Environment

Claims (12)

モデリング言語によってモデルを作成するモデリング段階と、作成したモデルをシミュレーションするシミュレーション実行段階とを備え、コーディングせずにメモリの使用量の概算を算出することを特徴とする実システムメモリ使用量概算方法。   An actual system memory usage estimation method comprising: a modeling stage for creating a model by a modeling language; and a simulation execution stage for simulating the created model, and calculating an estimation of memory usage without coding. 請求項1に記載の実システムメモリ使用量概算方法において、さらに、前記モデルだけではシミュレーションできない処理を最小処理単位に分割してメモリの使用量の情報を収集し保存するメモリ使用量情報収集格納段階とを備え、前記シミュレーション実行段階は、前記メモリの使用量の情報を参照しながら、前記モデルのシミュレーション処理を行うとともに、シミュレーション処理における時系列順に並んだシステムの処理であるアクティビティ毎に使用されるメモリ使用量を記録することを特徴とする実システムメモリ使用量概算方法。   2. The memory usage information collecting and storing step of collecting and storing memory usage information by dividing a process that cannot be simulated by the model alone into minimum processing units, according to the method for estimating the actual system memory usage according to claim 1. The simulation execution stage performs simulation processing of the model while referring to information on the amount of memory used, and is used for each activity that is a system process arranged in chronological order in the simulation processing. An actual system memory usage estimation method characterized by recording memory usage. 請求項2に記載の実システムメモリ使用量概算方法において、モデリング過程と、運用環境過程とを備え、
前記運用環境過程は、シミュレーションできない処理を運用環境で動作させて、メモリ使用量を取得するモニタリング段階を含み、
前記モデリング過程は、
システムの分析及び設計工程でモデリング言語を利用してシステムの分析モデル及び設計モデルを作成するプラットフォーム非依存モデル作成段階と、
作成されたプラットフォーム非依存モデル、言語情報を含むプラットフォーム情報、及びマッピング情報を利用して、プラットフォーム特化モデルを作成するプラットフォーム特化モデル作成段階と、
前記プラットフォーム特化モデルから前記言語情報を基に対象となる言語で記述されたソースコードを作成するソースコード作成段階と、
前記プラットフォーム特化モデルの情報だけではシミュレーションできない処理を最小処理単位に分割し、プラットフォーム非依存モデル基本テンプレートとして抽出する基本テンプレート抽出段階と、
モニタリングして得られたモニタリング結果とモニタリング環境の環境情報が記述されているマッピング情報を合わせた動作情報を格納するための動作情報保存段階と、
前記シミュレーション実行段階とを含み、
前記モデリング段階は、前記プラットフォーム非依存モデル作成段階、前記プラットフォーム特化モデル作成段階、及び前記ソースコード作成段階を含み、
前記メモリ使用量情報収集格納段階は、前記基本テンプレート抽出段階、前記モニタリング段階、及び前記動作情報保存段階を備え、
前記シミュレーション実行段階は、前記プラットフォーム特化モデルを、前記動作情報を基に擬似的に実行することを特徴とする実システムメモリ使用量概算方法。
The real system memory usage estimation method according to claim 2, comprising a modeling process and an operational environment process,
The operational environment process includes a monitoring step of acquiring memory usage by operating a process that cannot be simulated in the operational environment,
The modeling process includes
A platform-independent model creation stage for creating a system analysis model and a design model using a modeling language in the system analysis and design process;
A platform-specific model creation stage for creating a platform-specific model using the created platform-independent model, platform information including language information, and mapping information;
A source code creation stage for creating a source code described in a target language based on the language information from the platform-specific model;
A basic template extraction step of dividing a process that cannot be simulated only by information of the platform-specific model into minimum processing units and extracting it as a platform-independent model basic template;
An operation information storage stage for storing operation information in which monitoring results obtained by monitoring and mapping information in which environment information of the monitoring environment is described are stored;
Including the simulation execution step,
The modeling stage includes the platform-independent model creation stage, the platform-specific model creation stage, and the source code creation stage,
The memory usage information collection storage step includes the basic template extraction step, the monitoring step, and the operation information storage step,
In the simulation execution step, the platform specific model is executed in a pseudo manner based on the operation information.
請求項3に記載の実システムメモリ使用量概算方法において、前記モニタリング段階は、予め作成したテストを実施しやすい前記運用環境に合わせたマッピングファイルを利用して、前記プラットフォーム非依存モデル基本テンプレートからプラットフォーム特化モデル基本テンプレートを作成し、ソースコード、実行ファイルを生成し、動作確認用の入力データを利用して、動作のモニタリングを行い、
前記シミュレーション実行段階は、プラットフォーム特化モデルに含まれる動的な情報を利用し、プログラムの動作をシミュレートするとともに実行時に扱うデータは実システム用入力データによって設定され、これを基に動作を決定して実運用時に利用するメモリ使用量を算出することを特徴とする実システムメモリ使用量概算方法。
4. The actual system memory usage estimation method according to claim 3, wherein the monitoring step uses a platform-independent model basic template from a platform-independent model basic template using a mapping file that is prepared in advance and is easy to perform a test. Create a specialized model basic template, generate source code and execution file, use the input data for operation confirmation, monitor the operation,
The simulation execution stage uses dynamic information included in the platform-specific model to simulate the operation of the program and the data handled at the time of execution is set by the input data for the actual system, and the operation is determined based on this And calculating the amount of memory used for actual operation, and calculating the amount of memory used for actual system.
モデリング言語によってモデルを作成するモデリング手段と、作成したモデルをシミュレーションするシミュレーション実行手段とを備え、コーディングせずにメモリの使用量の概算を算出することを特徴とする実システムメモリ使用量概算装置。   An actual system memory usage estimation device comprising: modeling means for creating a model by a modeling language; and simulation execution means for simulating the created model, and calculating an estimation of memory usage without coding. 請求項5に記載の実システムメモリ使用量概算装置において、
前記モデルだけではシミュレーションできない処理を最小処理単位に分割してメモリの使用量の情報を収集し保存するメモリ使用量情報収集格納手段を備え、前記シミュレーション実行手段は、前記メモリの使用量の情報を参照しながら、前記モデルのシミュレーション処理を行うとともに、シミュレーション処理における時系列順に並んだシステムの処理であるアクティビティ毎に使用されるメモリ使用量を記録することを特徴とする実システムメモリ使用量概算装置。
In the real system memory usage estimation device according to claim 5,
Memory usage information collection and storage means for collecting and storing memory usage information by dividing a process that cannot be simulated by the model alone into minimum processing units, and the simulation executing means includes information on the memory usage. An actual system memory usage estimation device that performs simulation processing of the model and records the memory usage used for each activity that is a system processing arranged in chronological order in the simulation processing. .
請求項6に記載の実システムメモリ使用量概算装置において、モデリングツールと、運用環境とを備え、
前記運用環境は、シミュレーションできない処理を運用環境で動作させて、メモリ使用量を取得するモニタリング手段を備え、
前記モデリングツールは、
システムの分析及び設計工程でモデリング言語を利用してシステムの分析モデル及び設計モデルを作成するプラットフォーム非依存モデル作成手段と、
作成されたプラットフォーム非依存モデル、言語情報を含むプラットフォーム情報、及びマッピング情報を利用して、プラットフォーム特化モデルを作成するプラットフォーム特化モデル作成手段と、
前記プラットフォーム特化モデルから前記言語情報を基に対象となる言語で記述されたソースコードを作成するソースコード作成手段と、
前記プラットフォーム特化モデルの情報だけではシミュレーションできない処理を最小処理単位に分割し、プラットフォーム非依存モデル基本テンプレートとして抽出する基本テンプレート抽出手段と、
モニタリングして得られたモニタリング結果とモニタリング環境の環境情報が記述されているマッピング情報を合わせた動作情報を格納するための動作情報保存手段と、
前記シミュレーション実行手段とを備え、
前記モデリング手段は、前記プラットフォーム非依存モデル作成手段、前記プラットフォーム特化モデル作成手段、及び前記ソースコード作成手段を備え、
前記メモリ使用量情報収集格納手段は、前記基本テンプレート抽出手段、前記モニタリング手段、及び前記動作情報保存手段を備え、
前記シミュレーション実行手段は、前記プラットフォーム特化モデルを、前記動作情報を基に擬似的に実行することを特徴とする実システムメモリ使用量概算装置。
The real system memory usage estimation device according to claim 6, comprising a modeling tool and an operating environment,
The operational environment includes a monitoring unit that obtains memory usage by operating a process that cannot be simulated in the operational environment,
The modeling tool is:
A platform-independent model creation means for creating a system analysis model and a design model using a modeling language in a system analysis and design process;
Platform-specific model creation means for creating a platform-specific model using the created platform-independent model, platform information including language information, and mapping information;
Source code creating means for creating a source code described in a target language based on the language information from the platform-specific model;
Basic template extraction means for dividing a process that cannot be simulated only by the information of the platform specific model into minimum processing units and extracting it as a platform independent model basic template;
Operation information storage means for storing operation information combining monitoring results obtained by monitoring and mapping information describing environment information of the monitoring environment;
The simulation execution means,
The modeling means includes the platform-independent model creation means, the platform-specific model creation means, and the source code creation means,
The memory usage information collection storage means comprises the basic template extraction means, the monitoring means, and the operation information storage means,
The simulation execution means executes the platform specific model in a pseudo manner on the basis of the operation information.
請求項7に記載の実システムメモリ使用量概算装置において、前記モニタリング手段は、予め作成したテストを実施しやすい前記運用環境に合わせたマッピングファイルを利用して、前記プラットフォーム非依存モデル基本テンプレートからプラットフォーム特化モデル基本テンプレートを作成し、ソースコード、実行ファイルを生成し、動作確認用の入力データを利用して、動作のモニタリングを行い、前記シミュレーション実行手段は、プラットフォーム特化モデルに含まれる動的な情報を利用し、プログラムの動作をシミュレートするとともに実行時に扱うデータは実システム用入力データによって設定され、これを基に動作を決定して実運用時に利用するメモリ使用量を算出することを特徴とする実システムメモリ使用量概算装置。   8. The actual system memory usage estimation device according to claim 7, wherein the monitoring means uses a mapping file suitable for the operation environment in which a test created in advance is easy to perform, and uses the platform-independent model basic template as a platform. Create a specialized model basic template, generate source code and execution file, monitor the operation using the input data for operation confirmation, and the simulation execution means is a dynamic model included in the platform specialized model Data is used to simulate program operations and data handled at runtime is set by actual system input data. Based on this, the operation is determined and the amount of memory used for actual operation is calculated. Real system memory usage estimation device. コンピュータを、モデリング言語によってモデルを作成するモデリング手段と、作成したモデルをシミュレーションするシミュレーション実行手段としてコーディングせずにメモリの使用量の概算を算出するように機能させるための実システムメモリ使用量概算プログラム。   Real system memory usage estimation program for causing a computer to function to calculate an estimation of memory usage without coding as a modeling means for creating a model by a modeling language and a simulation execution means for simulating the created model . 請求項9に記載された実システムメモリ使用量概算プログラムにおいて、さらに、コンピュータを、前記モデルだけではシミュレーションできない処理を最小処理単位に分割してメモリの使用量の情報を収集し保存するメモリ使用量情報収集格納手段として機能させ、前記シミュレーション実行手段は、前記メモリの使用量の情報を参照しながら、前記モデルのシミュレーション処理を行うとともに、シミュレーション処理における時系列順に並んだシステムの処理であるアクティビティ毎に使用されるメモリ使用量を記録するように機能することを特徴とする実システムメモリ使用量概算プログラム。   10. The real system memory usage estimation program according to claim 9, further comprising: dividing a process that cannot be simulated by the model alone into minimum processing units to collect and store memory usage information. The simulation execution means functions as information collection and storage means, and performs simulation processing of the model while referring to information on the memory usage, and for each activity that is processing of the system arranged in chronological order in the simulation processing An actual system memory usage estimation program, which functions to record the memory usage used for the system. 請求項10に記載の実システムメモリ使用量概算プログラムにおいて、コンピュータにさらに、モデリングツールと、運用環境として機能させ、
前記運用環境は、シミュレーションできない処理を運用環境で動作させて、メモリ使用量を取得するモニタリング手段として機能させ、
前記モデリングツールは、システムの分析及び設計工程でモデリング言語を利用してシステムの分析モデル及び設計モデルを作成するプラットフォーム非依存モデル作成手段と、作成されたプラットフォーム非依存モデル、言語情報を含むプラットフォーム情報、及びマッピング情報を利用して、プラットフォーム特化モデルを作成するプラットフォーム特化モデル作成手段と、前記プラットフォーム特化モデルから前記言語情報を基に対象となる言語で記述されたソースコードを作成するソースコード作成手段と、前記プラットフォーム特化モデルの情報だけではシミュレーションできない処理を最小処理単位に分割し、プラットフォーム非依存モデル基本テンプレートとして抽出する基本テンプレート抽出手段と、モニタリングして得られたモニタリング結果とモニタリング環境の環境情報が記述されているマッピング情報を合わせた動作情報を格納するための動作情報保存手段と、前記シミュレーション実行手段として機能させ、
前記モデリング手段は、前記プラットフォーム非依存モデル作成手段、前記プラットフォーム特化モデル作成手段、及び前記ソースコード作成手段として機能し、
前記メモリ使用量情報収集格納手段は、前記基本テンプレート抽出手段、前記モニタリング手段、及び前記動作情報保存手段として機能し、
前記シミュレーション実行手段は、前記プラットフォーム特化モデルを、前記動作情報を基に擬似的に実行するように機能することを特徴とする実システムメモリ使用量概算プログラム。
The actual system memory usage estimation program according to claim 10, further causing a computer to function as a modeling tool and an operating environment,
The operational environment operates a process that cannot be simulated in the operational environment, and functions as a monitoring unit that acquires memory usage,
The modeling tool includes platform-independent model creation means for creating a system analysis model and a design model using a modeling language in a system analysis and design process, platform information including the created platform-independent model and language information. And platform-specific model creation means for creating a platform-specific model using mapping information, and a source for creating a source code described in the target language from the platform-specific model based on the language information Code generation means, basic template extraction means for dividing a process that cannot be simulated only by the information of the platform-specific model into minimum processing units and extracting it as a platform-independent model basic template, and obtained by monitoring Monitoring results and the operation information storage means for storing operation information environment information is combined mapping information described monitoring environment, to function as the simulation execution unit,
The modeling means functions as the platform-independent model creation means, the platform-specific model creation means, and the source code creation means,
The memory usage information collection storage means functions as the basic template extraction means, the monitoring means, and the operation information storage means,
The simulation execution means functions so as to execute the platform-specific model in a pseudo manner based on the operation information.
請求項11に記載の実システムメモリ使用量概算プログラムにおいて、前記モニタリング手段は、予め作成したテストを実施しやすい前記運用環境に合わせたマッピングファイルを利用して、前記プラットフォーム非依存モデル基本テンプレートからプラットフォーム特化モデル基本テンプレートを作成し、ソースコード、実行ファイルを生成し、動作確認用の入力データを利用して、動作のモニタリングを行羽陽に機能し、前記シミュレーション実行手段は、プラットフォーム特化モデルに含まれる動的な情報を利用し、プログラムの動作をシミュレートするとともに実行時に扱うデータは実システム用入力データによって設定され、これを基に動作を決定して実運用時に利用するメモリ使用量を算出するように機能することを特徴とする実システムメモリ使用量概算プログラム。   12. The actual system memory usage estimation program according to claim 11, wherein the monitoring means uses a mapping file suitable for the operation environment in which a test created in advance is easy to implement, to create a platform from the platform-independent model basic template. A specialized model basic template is created, source code and an executable file are generated, operation monitoring is performed using input data for operation confirmation, and the simulation execution means is a platform specialized model. The amount of memory used to simulate the operation of the program using the dynamic information contained in, and the data handled at the time of execution is set by the input data for the actual system, and the operation is determined based on this data for actual operation Characterized by functioning to calculate System memory use amount approximating program.
JP2009045234A 2009-02-27 2009-02-27 Method and apparatus for estimating actual system memory usage Expired - Fee Related JP5327451B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009045234A JP5327451B2 (en) 2009-02-27 2009-02-27 Method and apparatus for estimating actual system memory usage

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009045234A JP5327451B2 (en) 2009-02-27 2009-02-27 Method and apparatus for estimating actual system memory usage

Publications (2)

Publication Number Publication Date
JP2010198529A true JP2010198529A (en) 2010-09-09
JP5327451B2 JP5327451B2 (en) 2013-10-30

Family

ID=42823163

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009045234A Expired - Fee Related JP5327451B2 (en) 2009-02-27 2009-02-27 Method and apparatus for estimating actual system memory usage

Country Status (1)

Country Link
JP (1) JP5327451B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017002222A1 (en) * 2015-07-01 2017-01-05 株式会社日立製作所 System deployment device and system deployment method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005078243A (en) * 2003-08-29 2005-03-24 Denso Corp Microcomputer resource consumption estimating program, microcomputer resource consumption estimating device, and program generating method
JP2005327094A (en) * 2004-05-14 2005-11-24 Internatl Business Mach Corp <Ibm> Uml design method
JP2007188179A (en) * 2006-01-11 2007-07-26 Toshiba Corp Performance evaluation device for computer system, performance evaluation method, and performance evaluation program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005078243A (en) * 2003-08-29 2005-03-24 Denso Corp Microcomputer resource consumption estimating program, microcomputer resource consumption estimating device, and program generating method
JP2005327094A (en) * 2004-05-14 2005-11-24 Internatl Business Mach Corp <Ibm> Uml design method
JP2007188179A (en) * 2006-01-11 2007-07-26 Toshiba Corp Performance evaluation device for computer system, performance evaluation method, and performance evaluation program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017002222A1 (en) * 2015-07-01 2017-01-05 株式会社日立製作所 System deployment device and system deployment method

Also Published As

Publication number Publication date
JP5327451B2 (en) 2013-10-30

Similar Documents

Publication Publication Date Title
JP5197688B2 (en) Integrated environment generator
Siegmund et al. SPL Conqueror: Toward optimization of non-functional properties in software product lines
US9946517B2 (en) Dynamic model based software application development
US9141350B2 (en) Embedded system performance
Becker et al. Model-based performance prediction with the palladio component model
Krogmann Reconstruction of software component architectures and behaviour models using static and dynamic analysis
JP5396979B2 (en) Software development support device, system, software development support device function expansion method, and program
US8046202B1 (en) Generation of intermediate representations based on user specified elements in a graphical model that enable simulation, propagation and code generation
US11373114B1 (en) CSP-based synthesis of a quantum circuit
JP4978233B2 (en) Simulator development system and simulator development method
US11281988B1 (en) Re-generation of a gate-level quantum circuit based on gate-level analysis
US20080313599A1 (en) Method, system and computer program for developing software applications with increased modularity
Siegmund et al. Measuring non-functional properties in software product line for product derivation
Jahr et al. A pattern-supported parallelization approach
US11126408B2 (en) Incremental code generation method
JP5327451B2 (en) Method and apparatus for estimating actual system memory usage
JP2008276735A (en) Program code converter and program code conversion method
Fahringer et al. Teuta: Tool support for performance modeling of distributed and parallel applications
JP4870956B2 (en) Embedded program generation method, embedded program development system, and information table section
JP2007018313A (en) Circuit design program, circuit design device and circuit design method
Hugues et al. Using MDE for the rapid prototyping of space critical systems
Chidisiuc et al. CD++ Builder: an eclipse-based IDE for DEVS modeling.
US20230111924A1 (en) Functional-level processing component for quantum computers
Davis et al. Merging application models in a MDA based runtime environment for enterprise information systems
Eskeli Integrated tool support for hardware related software development

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130328

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130403

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130603

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: 20130626

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130709

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees