JP5029584B2 - Development support equipment - Google Patents
Development support equipment Download PDFInfo
- Publication number
- JP5029584B2 JP5029584B2 JP2008303463A JP2008303463A JP5029584B2 JP 5029584 B2 JP5029584 B2 JP 5029584B2 JP 2008303463 A JP2008303463 A JP 2008303463A JP 2008303463 A JP2008303463 A JP 2008303463A JP 5029584 B2 JP5029584 B2 JP 5029584B2
- Authority
- JP
- Japan
- Prior art keywords
- resource usage
- component
- performance
- value
- development
- 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.)
- Expired - Fee Related
Links
Images
Description
本発明は開発支援装置に関し、特に複数のコンポーネントから構成されるシステムの開発を支援する開発支援装置に関する。 The present invention relates to a development support apparatus, and more particularly to a development support apparatus that supports development of a system composed of a plurality of components.
一般に、複数のソフトウェア・コンポーネント(以下、コンポーネントと記す)から構成される情報処理システムの開発は、幾つかの工程に分けて行われ、各工程毎にテストが実施される。 In general, development of an information processing system composed of a plurality of software components (hereinafter referred to as components) is performed in several steps, and a test is performed for each step.
例えば、コンポーネントの設計が行われた段階では、そのコンポーネント内のコードが正しい論理かどうかをチェックしたり、正しく機能するかどうかをチェックする単体テストが実施される。この単体テストの結果、誤りが検出された場合には、コンポーネントの再設計等が行われ、誤りが検出されなかった場合には次の工程へと作業が進められる。 For example, at the stage where a component is designed, a unit test is performed to check whether the code in the component is correct logic or whether it functions correctly. If an error is detected as a result of the unit test, component redesign or the like is performed. If no error is detected, the process proceeds to the next step.
また、全てのコンポーネントが出来上がった段階では、それらを結合してみて、コンポーネント間のつながりが正しいかどうかをチェックしたり、システム全体として要求されている機能や性能が満たされているかどうかをチェックする結合テストが実施される。この結合テストの結果、誤りや性能不足が検出された場合には、コンポーネントの設計段階など、より上流の工程に戻って設計をやり直し、誤りが検出されなかった場合には次の工程へと作業が進められる。 Also, when all the components are completed, combine them to check whether the connections between components are correct, and check whether the functions and performance required by the entire system are satisfied. An integration test is performed. If an error or insufficient performance is detected as a result of this integration test, return to the upstream process, such as the component design stage, and redesign, and if no error is detected, proceed to the next process. Is advanced.
このように設計の下流工程で誤りや不具合が見つかると、上流工程から設計をやり直す必要があるために、開発期間の長期化による納期遅れや開発コストの増大を引き起こすことになる。このような後戻りをできるだけ少なくするために、本来は上流工程で行われるテスト項目をより下流で実施できるようにする技術が幾つか提案されている。 Thus, when an error or a defect is found in the downstream process of the design, it is necessary to start the design again from the upstream process, which causes a delay in delivery due to a prolonged development period and an increase in development cost. In order to minimize such backtracking as much as possible, several techniques have been proposed that enable the test items originally performed in the upstream process to be performed further downstream.
例えば特許文献1には、テスト対象となるコンポーネントの上位コンポーネントおよび下位コンポーネントが未完成の状態でも、コンポーネントの資源使用量(具体的にはCPU時間)を予測できるコンポーネント性能測定手段が記載されている。また、このコンポーネント性能測定手段を使って予測した各コンポーネントの資源使用量と、各コンポーネントの処理の組み合わせによって実現されるトランザクションの処理内容とから、1トランザクションの資源使用量を算出し、この算出した1トランザクションの資源使用量をシステム性能予測モデルに入力して、複数のトランザクションを並行して実行した場合のシステム全体の性能(スループット、トランザクションのレスポンス時間)を予測する方法が記載されている。 For example, Patent Document 1 describes a component performance measurement unit that can predict a resource usage amount (specifically, CPU time) of a component even when a higher component and a lower component of the component to be tested are incomplete. . Also, the resource usage of one transaction is calculated from the resource usage of each component predicted by using this component performance measurement means and the transaction processing content realized by the combination of the processing of each component. A method for predicting the performance (throughput, transaction response time) of the entire system when a plurality of transactions are executed in parallel by inputting the resource usage of one transaction into the system performance prediction model is described.
特許文献1に記載の技術によれば、複数のコンポーネントから構成されるシステム全体の性能を実システムを構築することなく予測することができる。つまり、全てのコンポーネントの設計が終了していない段階で、これらのコンポーネントを結合したシステム全体の性能を予測することができるため、若し性能が不足していることが判明したならば、コンポーネントの再設計などを早い段階で着手することが可能になる。しかし、より好ましくは、各コンポーネントの設計に着手する前など、より早い段階で、システム全体に要求される性能を満足するために各コンポーネントが満足すべき条件が予測できれば良い。 According to the technique described in Patent Document 1, it is possible to predict the performance of the entire system including a plurality of components without constructing a real system. In other words, the performance of the entire system that combines these components can be predicted at the stage where the design of all components has not been completed, so if it turns out that the performance is insufficient, It becomes possible to start redesign etc. at an early stage. However, more preferably, it is only necessary to be able to predict the conditions that each component should satisfy in order to satisfy the performance required for the entire system at an earlier stage, such as before starting the design of each component.
本発明はこのような事情に鑑みて提案されたものであり、複数のコンポーネントから構成されるシステム全体に要求される性能を満足するために各コンポーネントに要求される制約条件を開発の早い段階で予測することができるようにすることにある。 The present invention has been proposed in view of such circumstances, and the constraint conditions required for each component in order to satisfy the performance required for the entire system composed of a plurality of components can be developed at an early stage of development. It is to be able to predict.
本発明の開発支援装置は、複数のコンポーネントから構成されるシステムの開発を支援する開発支援装置であって、既存システムを構成する個々のコンポーネントの種別毎に資源使用量を記憶する既存コンポーネント別資源使用量記憶手段と、開発対象システムを構成する各コンポーネントと同じ種別のコンポーネントについて前記既存コンポーネント別資源使用量記憶手段に記憶されている資源使用量を比較して、開発対象システムを構成する複数のコンポーネントへの資源使用量の配分比を算出する資源使用量配分比計算手段と、開発対象システムを構成する複数のコンポーネントが関与するトランザクションを複数同時に実行した場合のシステム全体の性能を予測するシステム性能予測手段と、開発対象システムを構成する複数のコンポーネントに対して前記算出された配分比を満足する範囲内で或る量の資源使用量を配分して前記システム性能予測手段による予測を行い、その予測結果が開発対象システムに要求される性能を満たさない場合には、前記配分比を満足する範囲内で前回と異なる量の資源使用量を配分して前記システム性能予測手段による予測を再度繰り返すことにより、性能要求を満足するために必要となる各コンポーネントの資源使用量を探索するコンポーネント制約条件決定手段とを備える。 The development support apparatus according to the present invention is a development support apparatus that supports the development of a system composed of a plurality of components, and stores the resource usage for each type of each component constituting the existing system. A plurality of components constituting the development target system are compared by comparing the resource usages stored in the resource usage storage means for each existing component for the same type of components as the components constituting the development target system. System performance that predicts the overall system performance when multiple transactions involving multiple components that make up the development target system are executed at the same time, and a resource usage allocation ratio calculation means that calculates the ratio of resource usage to components Predictive means and multiple computers that make up the development target system A certain amount of resource usage is allocated to the component within the range satisfying the calculated allocation ratio, and the system performance prediction unit performs prediction, and the prediction result indicates the performance required for the development target system. If not, it is necessary to satisfy the performance requirement by allocating the resource usage amount different from the previous amount within the range satisfying the allocation ratio and repeating the prediction by the system performance prediction means again. Component constraint condition determining means for searching for the resource usage of each component.
本発明によれば、複数のコンポーネントから構成されるシステム全体に要求される性能を満足するために各コンポーネントに要求される制約条件を開発の早い段階で予測することができる。 According to the present invention, it is possible to predict the constraint conditions required for each component at an early stage of development in order to satisfy the performance required for the entire system composed of a plurality of components.
次に本発明の実施の形態について図面を参照して詳細に説明する。 Next, embodiments of the present invention will be described in detail with reference to the drawings.
図1を参照すると、本発明の実施の形態に係わる開発支援装置10は、データ処理装置20と、記憶装置30と、入力装置40と、表示装置50とで構成される。
Referring to FIG. 1, a
データ処理装置20は、1台または複数台のCPUで構成され、資源使用量配分比計算手段21、コンポーネント制約条件決定手段22、システム性能予測手段23、制約条件登録手段24および制約条件検索手段25を機能手段として備えている。これらの機能手段は、図示しないプログラムをCPU上で実行することにより実現される。各機能手段は、概ね以下のような機能を有する。
The
資源使用量配分比計算手段21は、開発対象システムを構成する複数のコンポーネントへの資源使用量の配分比を算出する機能を有する。ここで、資源使用量とは、本実施の形態ではCPU使用時間である。 The resource usage amount distribution ratio calculating means 21 has a function of calculating a resource usage amount distribution ratio to a plurality of components constituting the development target system. Here, the resource usage is the CPU usage time in this embodiment.
システム性能予測手段23は、開発対象システムを構成する複数のコンポーネントが関与するトランザクションを複数同時に実行した場合のシステム全体の性能を予測する機能を有する。ここで、システム全体の性能とは、スループット、1トランザクション当たりのターンアラウンドタイム(レスポンスタイム)などのことである。システム構築における性能評価(予測)の方法論として、プログラム実行に必要な資源使用量を、見積り可能な程度にソフトウェア実行を分割した上で、各処理ステップについて見積もった資源使用量からシステム性能を予測する手法が公知である(例えば非特許文献1参照)。システム性能予測手段23は、この公知の予測手法を用いて実現されている。
The system
コンポーネント制約条件決定手段22は、システム性能予測手段23による予測動作を繰り返すことにより、開発対象システムに対して要求される性能を満足するために必要となる各コンポーネントの資源使用量を決定する機能を有する。
The component constraint
制約条件登録手段24は、コンポーネント制約条件決定手段22で決定された各コンポーネントの資源使用量を各コンポーネントの制約条件として、開発対象システムの性能要求および各コンポーネントと関連付けて制約条件データベース39に格納する機能を有する。
The constraint
制約条件検索手段25は、入力装置40から入力された検索要求にしたがって、制約条件データベース39を検索し、その検索結果を表示装置50に出力する機能を有する。
The constraint
記憶装置30は、磁気ディスクや主記憶メモリ等で構成され、コンポーネント別資源使用量データベース31、システム性能予測モデル32、開発対象システムのコンポーネント情報33、開発対象システムの性能要求34、コンポーネントが関与するトランザクションの処理情報35、各コンポーネントへの資源使用量配分比36、各コンポーネントへの配分資源使用量37、予測結果38および制約条件データベース39を記憶する。
The storage device 30 includes a magnetic disk, main storage memory, and the like, and includes a component-specific
コンポーネント別資源使用量データベース31は、既存システムを構成する個々のコンポーネントの種別毎の資源使用量を記憶する。図2を参照すると、コンポーネント別資源使用量データベース31には、コンポーネント種別が通信コンポーネント、検索・更新要求コンポーネント、データベースコンポーネントのそれぞれについて、既存システム中のコンポーネントを特定するコンポーネント識別子とそのコンポーネントの資源使用量との組が記憶されている。個々の資源使用量は、実際に稼動しているシステムから計測した値であっても良いし、特許文献1に記載されるようなコンポーネント性能測定手段によって測定(予測)された値であっても良い。図2には、3種類のコンポーネントについてしか資源使用量が記録されていないが、一般的にはより数多くの種類のコンポーネントについてその資源使用量が記録されている。或るコンポーネントがどの種別に分類されるかは、そのコンポーネントの持つ機能によって決定する。つまり、同じような機能を持つコンポーネントは同じ種別のコンポーネントに分類される。
The component-specific
システム性能予測モデル32は、システム性能予測手段23が予測に使用するモデルであり、待ち行列網モデルやシミュレーションモデルを用いたものが既存技術として存在している(例えば、非特許文献1参照)。
The system
開発対象システムのコンポーネント情報33は、開発対象システムを構成する各コンポーネントに関する情報として、コンポーネント識別子、フローチャート形式やテキスト形式で記述されたコンポーネントの機能説明などで構成される。
The
開発対象システムの性能要求34は、開発対象システムの非機能要求の内容である。具体的には、例えば「同時アクセス数が30のときに、ターンアラウンドタイムが3秒以内」といった内容が記載されている。
The
コンポーネントが関与するトランザクションの処理情報35は、開発対象システムを構成する複数のコンポーネントが関与するトランザクションの処理の流れを、フローチャート形式やテキスト形式で記述した情報である。開発対象システムを構成する複数のコンポーネントが関与するトランザクションの処理の流れの一例を図3に示す。この例では、開発対象システムは、通信コンポーネントA、検索・更新要求コンポーネントB、データベースコンポーネントCの3種類のコンポーネントから構成されている。
The
通信コンポーネントAは、システム外部より処理要求メッセージを受信し、メッセージ中の処理番号で示される処理を引数を付けて呼び出すことにより検索・更新要求コンポーネントBに依頼し、処理の戻り値を処理結果として検索・更新要求コンポーネントBから受け取って要求元に送信する。 The communication component A receives the processing request message from outside the system, requests the search / update request component B by calling the processing indicated by the processing number in the message with an argument, and uses the return value of the processing as the processing result. Received from the search / update request component B and transmitted to the request source.
検索・更新要求コンポーネントBは、通信コンポーネントAから引数で渡される処理番号に応じた要求(検索要求や更新要求)を作成してデータベースコンポーネントCに送信し、データベースコンポーネントCから処理結果を受け取って通信コンポーネントAに送信する。 The search / update request component B creates a request (search request or update request) corresponding to the processing number passed as an argument from the communication component A, transmits it to the database component C, receives the processing result from the database component C, and performs communication. Sent to component A.
これらの処理のために各コンポーネントA、B、Cが必要とするCPU使用時間の上限が、各コンポーネントA、B、Cの制約条件になる。また、各コンポーネントA〜Cによる処理はシーケンシャルに行われるため、各コンポーネントA、B、Cが必要とするCPU使用時間の合計がトランザクションに必要なCPU使用時間になる。 The upper limit of the CPU usage time required for each component A, B, and C for these processes is a constraint condition for each component A, B, and C. In addition, since the processing by each component A to C is performed sequentially, the total CPU usage time required by each component A, B, and C becomes the CPU usage time required for the transaction.
データベースコンポーネントCは、検索・更新要求コンポーネントBから要求を受信し、その要求に応じて検索あるいは更新を行い、結果を検索・更新要求コンポーネントBへ送信する。 The database component C receives the request from the search / update request component B, performs search or update according to the request, and transmits the result to the search / update request component B.
各コンポーネントへの資源使用量配分比36、各コンポーネントへの配分資源使用量37、予測結果38は、開発対象システムの各コンポーネントの制約条件を求める過程で一時的に生成される情報である。また、制約条件データベース39は、求められた各コンポーネントの制約条件を記憶するデータベースである。
The resource
入力装置40は、キーボードやマウス等で構成され、表示装置50は、LCDディスプレイ等で構成される。
The
次に本実施の形態に係わる開発支援装置100の動作を、図4のフローチャートの流れに沿って説明する。 Next, the operation of the development support apparatus 100 according to the present embodiment will be described along the flow of the flowchart of FIG.
まず、データ処理装置20の資源使用量配分比計算手段21は、開発対象システムのコンポーネント情報33を参照して、開発対象システムを構成する各コンポーネントの種別を判別し、各コンポーネントの種別と同じ種別の既存コンポーネントの資源使用量をコンポーネント別資源使用量データベース31から読み出す(ステップS101)。例えば、開発対象システムが、図3で示したような通信コンポーネントA、検索・更新要求コンポーネントB、データベースコンポーネントCで構成されており、コンポーネント別資源使用量データベース31に図2に示したような資源使用量が記憶されている場合、資源使用量配分比計算手段21は、通信コンポーネントの資源使用量として、10、12、…、検索・更新要求コンポーネントの資源使用量として、5、8、…、データベースコンポーネントCの資源使用量として50、70、…を読み出す。
First, the resource usage allocation ratio calculation means 21 of the
次に資源使用量配分比計算手段21は、読み出した各コンポーネント種別の資源使用量を比較して、開発対象システムを構成する複数のコンポーネントへの資源使用量の配分比を算出し、各コンポーネントへの資源使用量配分比36として記憶装置30に記憶する(ステップS102)。比較に際しては、各コンポーネント種別毎に、資源使用量の平均、中央値、最小値あるいは最大値などの予め定められた統計値を計算し、統計値どうしを比較する。そして、例えば通信コンポーネントの資源使用量の統計値を10、検索・更新要求コンポーネントの資源使用量の統計値を5、データベースコンポーネントの資源使用量の統計値を45とすると、資源使用量配分比計算手段21は、コンポーネントA、B、Cで構成される開発対象システムの当該コンポーネントへの資源使用量の配分比を、10:5:45、つまり、2:1:9に決定する。 Next, the resource usage amount distribution ratio calculation means 21 compares the resource usage amount of each component type read out, calculates the resource usage amount allocation ratio to a plurality of components constituting the development target system, Is stored in the storage device 30 as the resource usage amount distribution ratio 36 (step S102). In the comparison, for each component type, a predetermined statistical value such as an average, median value, minimum value, or maximum value of resource usage is calculated, and the statistical values are compared. For example, assuming that the statistical value of the resource usage of the communication component is 10, the statistical value of the resource usage of the search / update request component is 5, and the statistical value of the resource usage of the database component is 45, the resource usage allocation ratio calculation The means 21 determines the distribution ratio of the resource usage amount to the component of the development target system composed of the components A, B, and C as 10: 5: 45, that is, 2: 1: 9.
次に、コンポーネント制約条件決定手段22は、開発対象システムを構成する複数のコンポーネントが関与するトランザクションへ割り当てる資源使用量の初期値を設定する(ステップS103)。初期値としては、資源使用量配分比計算手段21で計算された各コンポーネント種別毎の資源使用量の統計値の和とすることができる。例えば、通信コンポーネント、検索・更新要求コンポーネントおよびデータベースコンポーネントの資源使用量の統計値がそれぞれ、10、5、45の場合、60を資源使用量の初期値に設定する。
Next, the component constraint
次にコンポーネント制約条件決定手段22は、記憶装置30から各コンポーネントへの資源使用量配分比36を読み出し、資源使用量の初期値をその配分比36で配分することにより、各コンポーネントへの配分資源使用量を計算し、記憶装置30に記憶する(ステップS104)。例えば、配分比が2:1:9、資源使用量の初期値が60のとき、通信コンポーネントAには10、検索・更新要求コンポーネントBには5、データベースコンポーネントCには45を分配する。
Next, the component constraint condition determination means 22 reads the resource usage
次にコンポーネント制約条件決定手段22は、予測に必要な情報をシステム性能予測手段23に入力して、開発対象システムを構成する複数のコンポーネントが関与するトランザクションを複数同時に実行した場合のシステム全体の性能を予測させる(ステップS105)。このとき、開発対象システムを構成する複数のコンポーネントが関与するトランザクションの情報は、コンポーネントが関与するトランザクションの処理情報35を記憶装置30から読み出して用いる。また、トランザクションの同時実行数は、記憶装置30から読み出した開発対象システムの性能要求34から抽出する。例えば、性能要求34が「同時アクセス数が30のときに、ターンアラウンドタイムが3秒以内」であれば、「同時アクセス数が30」の部分を認識して、トランザクションの同時実行数を30とする。
Next, the component constraint condition determination means 22 inputs information necessary for prediction to the system performance prediction means 23, and the performance of the entire system when a plurality of transactions involving a plurality of components constituting the development target system are executed simultaneously. Is predicted (step S105). At this time, the transaction information related to a plurality of components constituting the development target system is read from the
システム性能予測手段23は、記憶装置30からシステム性能予測モデル32を読み出し、このシステム性能予測モデル32に対して、開発対象システムを構成する複数のコンポーネントが関与するトランザクション当たりの資源使用量や同時実行トランザクション数などの情報を入力して、システム全体の性能(ターンアラウンドタイムなど)を予測し、その予測結果38を記憶装置30に記憶する。
The system
次にコンポーネント制約条件決定手段22は、記憶装置30から予測結果38を読み出し、記憶装置30から読み出した開発対象システムの性能要求34と比較する(ステップS106)。例えば、性能要求34が「同時アクセス数が30のときに、ターンアラウンドタイムが3秒以内」であれば、予測結果38で与えられるターンアラウンドタイムと3秒とを比較する。
Next, the component constraint
その結果、予測結果38が性能要求34を満足していなければ(ステップS107でNO)、開発対象システムを構成する複数のコンポーネントが関与するトランザクションへ割り当てる資源使用量をより削減するように変更し(ステップS108)、ステップS104に戻って上述した処理と同様の処理を繰り返す。他方、予測結果38が性能要求34を満足していれば(ステップS107でYES)、コンポーネント制約条件決定手段22は、予測結果38と性能要求34との差が予め設定された閾値以下かどうかを判定する(ステップS109)。例えば、性能要求34がターンアラウンドタイム3秒以下、予測結果38が1秒、予め設定されたターンアラウンドタイムの閾値が0.3秒であれば、予測結果38と性能要求34との差が閾値以下でないと判定する。予測結果38と性能要求34との差が閾値以下でなければ、制約条件が厳しすぎることになるので、コンポーネント制約条件決定手段22は、開発対象システムを構成する複数のコンポーネントが関与するトランザクションへ割り当てる資源使用量を増加する方向に変更し(ステップS110)、ステップS104に戻って上述した処理と同様の処理を繰り返す。
As a result, if the
ステップS108およびステップS110において実施される資源使用量の変更アルゴリズムの一例を以下に説明する。まず、資源使用量の初期値を用いた予測結果が性能要求を満足しない場合には、今回の資源使用量を上限値として保存した上で、予め定められた一定量だけ資源使用量を削減する。逆に、資源使用量の初期値を用いた予測結果が性能要求を満足しているが、性能要求との差が閾値より大きければ、今回の資源使用量を下限値として保存した上で、予め定められた一定量だけ資源使用量を増加する。 An example of the resource usage change algorithm implemented in step S108 and step S110 will be described below. First, if the prediction result using the initial value of the resource usage does not satisfy the performance requirement, the current resource usage is saved as the upper limit, and the resource usage is reduced by a predetermined amount. . Conversely, if the prediction result using the initial value of the resource usage satisfies the performance requirement, but the difference from the performance requirement is larger than the threshold, the current resource usage is saved as the lower limit, Increase resource usage by a fixed amount.
2度目以降の予測時においては、予測結果が性能要求を満足しない場合には、今回の資源使用量を上限値として保存した上で、下限値が保存されていなければ一定量だけ資源使用量を削減し、下限値が保存されていれば上限値と下限値との中間の値を、削減した資源使用量の値とする。また、予測結果が性能要求を満足しているが、性能要求との差が閾値より大きければ、今回の資源使用量を下限値として保存した上で、上限値が保存されていなければ一定量だけ資源使用量を増加し、上限値が保存されていれば上限値と下限値との中間の値を、増加した資源使用量の値とする。 In the second and subsequent predictions, if the prediction result does not satisfy the performance requirement, save the current resource usage as the upper limit value, and if the lower limit value is not saved, save the resource usage amount by a fixed amount. If the lower limit value is saved, an intermediate value between the upper limit value and the lower limit value is set as the reduced resource usage value. In addition, if the prediction result satisfies the performance requirement but the difference from the performance requirement is greater than the threshold, the current resource usage is saved as the lower limit, and if the upper limit is not saved, only a certain amount If the resource usage amount is increased and the upper limit value is stored, an intermediate value between the upper limit value and the lower limit value is set as the increased resource usage value.
以上のような変更アルゴリズムを用いることにより、予測結果が性能要求を満足し、且つその差が閾値以内に収まる資源使用量を探索することができる。なお、変更アルゴリズムは上記の例に限定されるものではなく、例えば、資源使用量の初期値を用いた予測結果が性能要求を満足しない場合には、資源使用量を少しずつ削減し、逆に資源使用量の初期値を用いた予測結果が性能要求を満足するが、閾値以上の差がある場合には、資源使用量を少しずつ増加するといったアルゴリズムも採用することができる。 By using the change algorithm as described above, it is possible to search for a resource usage amount in which the prediction result satisfies the performance requirement and the difference falls within the threshold. Note that the change algorithm is not limited to the above example. For example, if the prediction result using the initial value of the resource usage does not satisfy the performance requirement, the resource usage is reduced little by little. Although the prediction result using the initial value of the resource usage satisfies the performance requirement, if there is a difference equal to or greater than the threshold, an algorithm that increases the resource usage little by little can be employed.
コンポーネント制約条件決定手段22は、予測結果38と性能要求との差が閾値以下になると、その時点の各コンポーネントへの配分資源使用量37を各コンポーネントの制約条件として確定する(ステップS111)。制約条件登録手段24は、記憶装置30から各コンポーネントへの配分資源使用量37を読み出し、各コンポーネントの制約条件として、開発対象システムの性能要求34および各コンポーネントと対応付けて制約条件データベース39に格納する(ステップS112)。
When the difference between the
図5を参照すると、制約条件データベース39は、開発対象システムXを特定する情報(例えば開発対象システムを一意に識別する識別子)に対応付けて、構成コンポーネントA、B、Cが記憶されている。また、各コンポーネントA、B、Cに対応付けて、その制約条件a、b、cが記憶されている。さらに、開発対象システムXの性能要求Yと制約条件a、b、cとが対応付けられている。開発対象システムX、その性能要求Y、その構成コンポーネントA〜C、その制約条件a〜cの相互の関係が一意に辿れる構造であれば、対応付けの仕方は図5に示す方法以外の方法でも良い。
Referring to FIG. 5, the
設計者(ユーザ)は、入力装置40から制約条件検索手段25に対して検索条件を指定した検索要求を送信することにより、制約条件データベース39の内容を検索することができる。この場合、制約条件検索手段25は、コンポーネントの識別子をキーとした検索要求が入力された場合、そのコンポーネントに関連する全ての制約条件と、各制約条件に対応する性能要求とを制約条件データベース39から検索し、表示装置50に出力する。また、制約条件検索手段25は、性能要求をキーとした検索要求が入力された場合、その性能要求に関連する全ての制約条件と、その制約条件が課されるコンポーネントと、その性能要求が課される開発対象システムとを制約条件データベース39から検索し、表示装置50に出力する。
The designer (user) can search the contents of the
次に本実施の形態の効果を説明する。 Next, the effect of this embodiment will be described.
本実施の形態によれば、複数のコンポーネントから構成される開発対象システムの性能要求を満足するために各コンポーネントに要求される制約条件を、各コンポーネントの詳細な設計前に予測することができる。これにより、開発の早い段階から性能要求の検証を行うことが可能となり、無駄な後戻りによるコストの抑制や製品品質の向上につながる。 According to the present embodiment, it is possible to predict the constraint conditions required for each component in order to satisfy the performance requirements of the development target system composed of a plurality of components before the detailed design of each component. This makes it possible to verify performance requirements at an early stage of development, leading to cost reduction and product quality improvement due to unnecessary backtracking.
一般にシステム性能予測手段23は、複数のコンポーネントが関与するトランザクションにおける各コンポーネント毎の資源使用量(トランザクションの総資源使用量)が不明であれば、トランザクションを複数同時に実行した場合のシステム全体の性能は予測できない。このため、何らかの基準で、各コンポーネントの配分資源使用量を決定する必要がある。しかし、開発対象システムの各コンポーネントの設計が未だ完了していない段階では、各コンポーネントで必要な資源使用量を測定することはできない。また、トランザクションの総資源使用量を各コンポーネントに均等に割り当てたのでは、個々のコンポーネントの正確な制約条件は求められない。何故なら、コンポーネントの機能の違いによって、本来的に必要とする資源使用量に数倍から十数倍以上の差があるためである。そこで、本発明は、開発対象システムを構成する各コンポーネントと同じ種別のコンポーネントについて過去に計測された資源使用量を比較して、開発対象システムを構成する複数のコンポーネントへの資源使用量の配分比を算出することで、この課題を解決している。
In general, the system
以上本発明の実施の形態について説明したが、本発明は以上の実施の形態にのみ限定されず、その他各種の付加変更が可能である。例えば、前記の実施の形態では資源使用量がCPU使用時間である場合について説明したが、本発明は資源使用量がCPU使用時間に限定されるものではなく、資源使用量がネットワーク帯域の使用量、メモリ使用量などのリソース使用量とすることもできる。 Although the embodiment of the present invention has been described above, the present invention is not limited to the above embodiment, and various other additions and modifications can be made. For example, in the above embodiment, the case where the resource usage is the CPU usage time has been described. However, the present invention is not limited to the CPU usage time, and the resource usage is the network bandwidth usage. It can also be a resource usage amount such as a memory usage amount.
10…開発支援装置
20…データ処理装置
30…記憶装置
40…入力装置
50…表示装置
DESCRIPTION OF
Claims (4)
既存システムを構成する個々のコンポーネントの種別毎に資源使用量を記憶するコンポーネント別資源使用量記憶手段と、
開発対象システムを構成する各コンポーネントと同じ種別のコンポーネントについて前記コンポーネント別資源使用量記憶手段に記憶されている資源使用量を比較して、開発対象システムを構成する複数のコンポーネントへの資源使用量の配分比を算出する資源使用量配分比計算手段と、
開発対象システムを構成する複数のコンポーネントが関与するトランザクションを複数同時に実行した場合のシステム全体の性能を予測するシステム性能予測手段と、
開発対象システムを構成する複数のコンポーネントに対して前記算出された配分比を満足する範囲内で或る量の資源使用量を配分して、前記トランザクションを複数同時に実行した場合のシステム全体の性能を前記システム性能予測手段によって予測を行い、その予測結果が開発対象システムに要求される性能を満たさない場合には、前記配分比を満足する範囲内で前回と異なる量の資源使用量を配分し直して、前記システム性能予測手段による予測を再度繰り返すことにより、性能要求を満足するために必要となる各コンポーネントの資源使用量を探索するコンポーネント制約条件決定手段とを備え、
前記資源使用量配分比計算手段は、コンポーネント種別毎に複数の資源使用量から予め定められた種類の統計値を計算し、統計値どうしを比較して、開発対象システムを構成する複数のコンポーネントへの資源使用量の配分比を算出し、
前記コンポーネント制約条件決定手段は、前記資源使用量配分比計算手段で計算された各コンポーネントの統計値を加算して、最初に使用する資源使用量の初期値を求め、前記資源使用量の初期値を用いた予測結果が性能要求を満足しない場合には、今回の資源使用量を上限値として保存した上で、予め定められた一定量だけ資源使用量を削減し、逆に、前記資源使用量の初期値を用いた予測結果が性能要求を満足しているが、性能要求との差が閾値より大きければ、今回の資源使用量を下限値として保存した上で、予め定められた一定量だけ資源使用量を増加し、2度目以降の予測時においては、予測結果が性能要求を満足しない場合には、今回の資源使用量を上限値として保存した上で、下限値が保存されていなければ一定量だけ資源使用量を削減し、下限値が保存されていれば上限値と下限値との中間の値を、削減した資源使用量の値とし、また、予測結果が性能要求を満足しているが、性能要求との差が閾値より大きければ、今回の資源使用量を下限値として保存した上で、上限値が保存されていなければ一定量だけ資源使用量を増加し、上限値が保存されていれば上限値と下限値との中間の値を、増加した資源使用量の値とする
開発支援装置。 A development support device that supports development of a system composed of a plurality of components,
Component-specific resource usage storage means for storing the resource usage for each type of individual component constituting the existing system;
Compare the resource usage stored in the component-specific resource usage storage means for each component of the same type as the components constituting the development target system, and determine the resource usage for the plurality of components constituting the development target system. A resource usage allocation ratio calculating means for calculating an allocation ratio;
System performance prediction means for predicting the performance of the entire system when a plurality of transactions involving a plurality of components constituting the development target system are executed simultaneously;
The overall system performance when a plurality of transactions are executed simultaneously by allocating a certain amount of resource usage within a range satisfying the calculated allocation ratio to a plurality of components constituting the development target system. When the prediction is performed by the system performance prediction means and the prediction result does not satisfy the performance required for the development target system, the resource usage amount different from the previous time is redistributed within the range satisfying the allocation ratio. Component constraint condition determining means for searching for the resource usage of each component required to satisfy the performance requirement by repeating the prediction by the system performance predicting means again ,
The resource usage amount distribution ratio calculating means calculates a statistical value of a predetermined type from a plurality of resource usage amounts for each component type, compares the statistical values, and provides a plurality of components constituting the development target system. Calculate the resource usage ratio of
The component constraint condition determining means adds the statistical value of each component calculated by the resource usage amount distribution ratio calculating means to obtain an initial value of the resource usage amount to be used first, and the initial value of the resource usage amount If the prediction result using the above does not satisfy the performance requirement, the current resource usage is stored as an upper limit value, and then the resource usage is reduced by a predetermined amount. The prediction result using the initial value satisfies the performance requirement, but if the difference from the performance requirement is greater than the threshold value, save the current resource usage as the lower limit value, and then only a predetermined amount If the resource usage is increased and the prediction results do not satisfy the performance requirements for the second and subsequent predictions, the current resource usage is saved as the upper limit, and the lower limit is not saved. Use a certain amount of resources If the amount is reduced and the lower limit value is stored, the intermediate value between the upper limit value and the lower limit value is used as the value of the reduced resource usage, and the prediction result satisfies the performance requirement. If the difference is greater than the threshold, the current resource usage is saved as the lower limit, and if the upper limit is not saved, the resource usage is increased by a fixed amount, and if the upper limit is saved, the upper limit is saved. The development support device uses an intermediate value between the value and the lower limit value as the value of the increased resource usage .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008303463A JP5029584B2 (en) | 2008-11-28 | 2008-11-28 | Development support equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008303463A JP5029584B2 (en) | 2008-11-28 | 2008-11-28 | Development support equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010128835A JP2010128835A (en) | 2010-06-10 |
JP5029584B2 true JP5029584B2 (en) | 2012-09-19 |
Family
ID=42329175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008303463A Expired - Fee Related JP5029584B2 (en) | 2008-11-28 | 2008-11-28 | Development support equipment |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5029584B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2014097599A1 (en) | 2012-12-17 | 2017-01-12 | 日本電気株式会社 | Optimal design support apparatus, method and program |
JP7433085B2 (en) | 2019-03-06 | 2024-02-19 | 三菱電機株式会社 | system analyzer |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002183416A (en) * | 2000-12-15 | 2002-06-28 | Hitachi Ltd | System proposing method, device for performing it, storage medium storing its processing program |
JP4787460B2 (en) * | 2003-01-17 | 2011-10-05 | 日本電気株式会社 | System performance prediction method and method based on performance measurement of software components |
JP4843379B2 (en) * | 2006-05-23 | 2011-12-21 | 株式会社東芝 | Computer system development program |
-
2008
- 2008-11-28 JP JP2008303463A patent/JP5029584B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010128835A (en) | 2010-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4787460B2 (en) | System performance prediction method and method based on performance measurement of software components | |
Byun et al. | Reliability growth analysis of k-out-of-N systems using matrix-based system reliability method | |
US20070143166A1 (en) | Statistical method for autonomic and self-organizing business processes | |
Mariani et al. | A correlation-based design space exploration methodology for multi-processor systems-on-chip | |
CN109586954B (en) | Network traffic prediction method and device and electronic equipment | |
US10909503B1 (en) | Snapshots to train prediction models and improve workflow execution | |
US9134997B2 (en) | Methods for assessing deliverable product quality and devices thereof | |
Pierro et al. | A user-oriented model for oracles’ gas price prediction | |
JP6658507B2 (en) | Load estimation system, information processing device, load estimation method, and computer program | |
Beard et al. | Analysis of a simple approach to modeling performance for streaming data applications | |
CN111897706A (en) | Server performance prediction method, device, computer system and medium | |
CN113158435B (en) | Complex system simulation running time prediction method and device based on ensemble learning | |
Janáček et al. | Sequential approximate approach to the p-median problem | |
JP5029584B2 (en) | Development support equipment | |
Park et al. | Queue congestion prediction for large-scale high performance computing systems using a hidden Markov model | |
JP2009193205A (en) | Automatic tuning system, automatic tuning device, and automatic tuning method | |
Sehgal et al. | Predicting faults before testing phase using Halstead’s metrics | |
Liu et al. | Change point software belief reliability growth model considering epistemic uncertainties | |
JP2015191397A (en) | Design parameter search device, design parameter search method, and program | |
CN113742187A (en) | Capacity prediction method, device, equipment and storage medium of application system | |
JP3821834B2 (en) | Parallel efficiency calculation method | |
JP5532052B2 (en) | Evaluation model analysis system, evaluation model analysis method and program | |
CN110008098B (en) | Method and device for evaluating operation condition of nodes in business process | |
Sun | An influence diagram based cloud service selection approach in dynamic cloud marketplaces | |
CN112685390A (en) | Database instance management method and device and computing equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120221 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120412 |
|
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: 20120529 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120611 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150706 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |