(57)【要約】【課題】本発明は、ＭＤＡを適用したオブジェクト指向によるソフトウェア開発の分析で作成されるアクションの品質を検査してプログラム作成の支援を行うオブジェクト指向プログラム作成支援システムに関する。【解決手段】オブジェクト指向プログラム作成支援システム１は、ＭＤＡを適用したオブジェクト指向の動的分析のアクション記述でアクションを作成するソフトウェアの開発を支援するに際して、作成されるアクションの品質を検査する品質チェック部５を設けている。したがって、作成されたアクションの品質に問題がないかどうかをチェックして、ソースコードとして実装される前段階の上流工程で品質の問題点を発見することができ、品質の面においても検査することができる。【選択図】          図１
2006072623.tif 000002
【特許請求の範囲】
【請求項１】
モデル駆動型アーキテクチャを適用したオブジェクト指向によるソフトウェア開発を支援するオブジェクト指向プログラム作成支援システムにおいて、前記ソフトウェア開発の動的分析のアクション記述で作成されるアクションの品質を検査するアクション品質検査手段を備えていることを特徴とするオブジェクト指向プログラム作成支援システム。
【請求項２】
前記アクション品質検査手段は、プログラミング言語のソースコードの静的解析を行うのに使用するメトリックの中で、アクション言語に適用可能な項目を検査する項目検査手段を備えている特徴とする請求項１記載のオブジェクト指向プログラム作成支援システム。
【請求項３】
前記オブジェクト指向プログラム作成支援システムは、前記アクションの構文解析を行う構文解析手段を備え、前記アクション品質検査手段は、当該構文解析手段と連携して前記アクションの品質を検査することを特徴とする請求項１または請求項２記載のオブジェクト指向プログラム作成支援システム。
【請求項４】
前記オブジェクト指向プログラム作成支援システムは、所定の出力手段を備え、前記アクション品質検査手段の検査結果を解析して、当該解析結果と推測されるアクション記述上の問題点を前記出力手段から出力することを特徴とする請求項１から請求項３のいずれかに記載のオブジェクト指向プログラム作成支援システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オブジェクト指向プログラム作成支援システムに関し、詳細には、モデル駆動型アーキテクチャ（Model-Driven Architecture：ＭＤＡ）を適用したオブジェクト指向によるソフトウェア開発の分析で作成されるアクションの品質を検査してプログラム作成の支援を行うオブジェクト指向プログラム作成支援システムに関する。
【背景技術】
【０００２】
モデル駆動型アーキテクチャ（以下、ＭＤＡという。）を用いたオブジェクト指向のプログラムの作成においては、要求分析、静的分析及び動的分析を行い、この動的分析の１つであるアクション記述の成果物として、アクションが作成される。
【０００３】
そして、ＣやＣ＋＋等のプログラム言語のソースコードに対する品質の測定に関しては、従来から様々な方法が提案され、ツールとして提供されている（特許文献１〜特許文献３参照）。
【０００４】
ソースコードの測定は、対象プログラムの文法や構文の解析だけでなく、デバッグや再利用のし易さに影響するプログラムの複雑度や可読性についても行えるようになってきている。
【０００５】
例えば、特許文献１記載の従来技術は、入力プログラムを解析して、プログラムの規約に対する違反を指摘し、規約に適合したコードの例を生成する。
【０００６】
この従来技術は、具体的には、入力プログラムの構文を解析して、構文解析結果である構文解析情報と規約情報とを照合して、解析情報を元にした規約に適合するコードを出力している。
【０００７】
【特許文献１】特開２０００−１３２３８７号公報
【特許文献２】特開２００１−１２５７７９号公報
【特許文献３】特開２０００−２７６３４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記従来技術にあっては、構文解析結果である構文解析情報と規約情報とを照合して、解析情報を元にした規約に適合するコードを出力するのみであるため、ＭＤＡを適用したオブジェクト指向開発の動的分析におけるアクションに関して自動的に処理できる項目としては、構文エラーのチェックのみであり、アクションの品質については、開発者が自分自身で確認するか、アクションレビューを行って確認する必要があり、利用性を向上させる上で、改良の必要があった。
【０００９】
そこで、本発明は、ＭＤＡを用いたオブジェクト指向によるソフトウェアの開発の分析で作成されるアクションの構文のエラーを発見するだけでなく、品質の面においても検査して、より一層利用性の良好なオブジェクト指向プログラム作成支援システムを提供することを目的としている。
【００１０】
そこで、請求項１記載の発明は、モデル駆動型アーキテクチャを適用したオブジェクト指向によるソフトウェア開発を支援するに際して、ソフトウェア開発の動的分析のアクション記述で作成されるアクションの品質を検査するアクション品質検査手段を設けることにより、作成されたアクションの品質に問題がないかどうかをチェックして、ソースコードとして実装される前段階の上流工程で品質の問題点を発見し、品質の面においても検査して、より一層利用性の良好なオブジェクト指向プログラム作成支援システムを提供することを目的としている。
【００１１】
請求項２記載の発明は、アクション品質検査手段に、プログラミング言語のソースコードの静的解析を行うのに使用するメトリックの中で、アクション言語に適用可能な項目を検査する項目検査手段を設けることにより、作成されたアクションの複雑度および可読性について問題がないかどうかを動的分析の段階で自動的にチェックして、即座にステートチャート図を再検討して、品質改善できるようにし、より一層利用性の良好なオブジェクト指向プログラム作成支援システムを提供することを目的としている。
【００１２】
請求項３記載の発明は、アクション品質検査手段が、アクションの構文解析を行う構文解析手段と連携してアクションの品質を検査することにより、操作性を向上させるとともに、常に品質を意識しながらアクション記述を行えるようにし、より一層利用性の良好なオブジェクト指向プログラム作成支援システムを提供することを目的としている。
【００１３】
請求項４記載の発明は、アクション品質検査手段の検査結果を解析して、当該解析結果と推測されるアクション記述上の問題点を出力手段から出力することにより、アクションの品質のチェック結果を表示して、その結果から予測される記述上の問題点を開発者に通知して、アクションの記述のどこにどういった問題があるかを開発者が学びながら開発を進めることができるようにし、アクションの品質向上をより一層促して、より一層利用性の良好なオブジェクト指向プログラム作成支援システムを提供することを目的としている。
【課題を解決するための手段】
【００１４】
請求項１記載の発明のオブジェクト指向プログラム作成支援システムは、モデル駆動型アーキテクチャを適用したオブジェクト指向によるソフトウェア開発を支援するオブジェクト指向プログラム作成支援システムにおいて、前記ソフトウェア開発の動的分析のアクション記述で作成されるアクションの品質を検査するアクション品質検査手段を備えていることにより、上記目的を達成している。
【００１５】
この場合、例えば、請求項２に記載するように、前記アクション品質検査手段は、プログラミング言語のソースコードの静的解析を行うのに使用するメトリックの中で、アクション言語に適用可能な項目を検査する項目検査手段を備えているものであってもよい。
【００１６】
また、例えば、請求項３に記載するように、前記オブジェクト指向プログラム作成支援システムは、前記アクションの構文解析を行う構文解析手段を備え、前記アクション品質検査手段は、当該構文解析手段と連携して前記アクションの品質を検査するものであってもよい。
【００１７】
さらに、例えば、請求項４に記載するように、前記オブジェクト指向プログラム作成支援システムは、所定の出力手段を備え、前記アクション品質検査手段の検査結果を解析して、当該解析結果と推測されるアクション記述上の問題点を前記出力手段から出力するものであってもよい。
【発明の効果】
【００１８】
請求項１記載の発明のオブジェクト指向プログラム作成支援システムによれば、モデル駆動型アーキテクチャを適用したオブジェクト指向によるソフトウェア開発を支援するに際して、ソフトウェア開発の動的分析のアクション記述で作成されるアクションの品質を検査するアクション品質検査手段を設けているので、作成されたアクションの品質に問題がないかどうかをチェックして、ソースコードとして実装される前段階の上流工程で品質の問題点を発見することができ、品質の面においても検査して、より一層利用性を向上させることができる。
【００１９】
請求項２記載の発明のオブジェクト指向プログラム作成支援システムによれば、アクション品質検査手段に、プログラミング言語のソースコードの静的解析を行うのに使用するメトリックの中で、アクション言語に適用可能な項目を検査する項目検査手段を設けているので、作成されたアクションの複雑度および可読性について問題がないかどうかを動的分析の段階で自動的にチェックして、即座にステートチャート図を再検討して、品質改善することができ、より一層利用性を向上させることができる。
【００２０】
請求項３記載の発明のオブジェクト指向プログラム作成支援システムによれば、アクション品質検査手段が、アクションの構文解析を行う構文解析手段と連携してアクションの品質を検査するので、操作性を向上させるだけでなく、常に品質を意識しながらアクション記述を行えるようにすることができ、より一層利用性を向上させることができる。
【００２１】
請求項４記載の発明のオブジェクト指向プログラム作成支援システムによれば、アクション品質検査手段の検査結果を解析して、当該解析結果と推測されるアクション記述上の問題点を出力手段から出力するので、アクションの品質のチェック結果を表示して、その結果から予測される記述上の問題点を開発者に通知して、アクションの記述のどこにどういった問題があるかを開発者が学びながら開発を進めることができ、アクションの品質向上をより一層促して、より一層利用性を向上させることができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の好適な実施例を添付図面に基づいて詳細に説明する。なお、以下に述べる実施例は、本発明の好適な実施例であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。
【実施例１】
【００２３】
図１及び図２は、本発明のオブジェクト指向プログラム作成支援システムの一実施例を示す図であり、図１は、ＭＤＡを用いたオブジェクト指向プログラム作成支援システム１のブロック構成図である。
【００２４】
オブジェクト指向プログラム作成支援システム１は、構文チェック部（構文解析手段）２、構文チェック結果取得部３、結果表示部（出力手段）４、品質チェック部（アクション品質検査手段）５、ソフトウェアメトリック部６、品質チェック結果取得部７等を備えており、コンピュータ等を用いて構成されている。
【００２５】
構文チェック部２及び品質チェック部５にアクション１０が入力され、このアクション１０は、ＭＤＡを用いたオブジェクト指向プログラムの開発の分析における動的分析の１つであるアクション記述によって生成される。
【００２６】
すなわち、ＭＤＡを用いたオブジェクト指向プログラムの開発における分析は、図２に示すように、要求分析１１、静的分析１２及び動的分析１３の順に分析処理が行われ、動的分析１３の１つであるアクション記述によってアクション１０が生成される。
【００２７】
構文チェック部２は、入力されるアクション１０の構文解釈を行って、構文に誤りがないかどうかチェック（検査）し、構文チェック結果取得部３が構文チェック部２によるアクション１０の構文チェックのチェック結果を取得して、結果表示部４に表示出力させる。
【００２８】
品質チェック部５は、入力されるアクション１０の品質についてチェック（検査）を行って、品質チェック結果取得部７が品質チェック部５によるアクション１０の品質チェックのチェック結果を取得して、結果表示部４に表示出力させる。
【００２９】
そして、ソフトウェアメトリック部６は、アクション１０の静的解析を行うのに使用するメトリックである品質判定基準が予め登録されており、この品質判定基準として、アクション１０の複雑度や可読性等を判断する指標が登録されている。
【００３０】
すなわち、品質チェック部５は、まず、読み込んだアクション１０とソフトウェアメトリック部６に登録されている複雑度や可読性等を判断する指標である品質判定基準とを照らし合わせて、アクション１０の品質を測定し、測定した結果を解析して、チェック対象のアクション１０のどの部分にどのような問題があるかを特定する。例えば、品質チェック部５は、アクション１０内でネストが深い箇所がある場合には、その部分は複雑度が高いと判断する。
【００３１】
したがって、品質チェック部５は、アクション品質検査手段として機能するとともに、項目検査手段としても機能している。
【００３２】
品質チェック結果取得部７は、品質チェック部５による品質チェックの結果、問題有りと判断されたアクション１０内の箇所とその問題点を取得して、結果表示部４に表示出力する。
【００３３】
次に、本実施例の作用を説明する。オブジェクト指向プログラム作成支援システム１は、ＭＤＡを用いたオブジェクト指向プログラムの開発における分析のうち、動的解析１３の１つであるアクション記述によって作成された成果物であるアクション１０の構文チェックを行って、チェック結果を表示出力するとともに、アクション１０の品質チェックを行って、チェック結果を表示出力する。
【００３４】
すなわち、オブジェクト指向プログラム作成支援システム１は、通常のオブジェクト指向プログラム作成支援システムと同様に、構文チェック部２が、ＭＤＡを用いたオブジェクト指向プログラムの開発における分析の動的解析１３の１つであるアクション記述によって作成された成果物であるアクション１０を読み込んで、当該アクション１０の構文に誤りがないかどうかチェック（検査）し、構文チェック結果取得部３が構文チェック部２によるアクション１０の構文チェックのチェック結果を取得して、結果表示部４に表示出力させる。
【００３５】
一方、オブジェクト指向プログラム作成支援システム１は、品質チェック部５が、アクション１０を読み込んで、まず、当該アクション１０とソフトウェアメトリック６に登録されているアクション１０の複雑度や可読性等を判断する指標である品質判定基準と照らし合わせて、アクションの品質を測定する。このアクション１０の品質の測定では、アクション１０の複雑度や可読性等が測定される。
【００３６】
そして、品質チェック部５は、次に、アクション１０の品質の測定結果を解析し、チェック対象のアクション１０のどの部分にどのような問題があるかを特定する。例えば、品質チェック部５は、アクション１０内でネストが深い箇所がある場合には、その部分は複雑度が高いと判断する。
【００３７】
オブジェクト指向プログラム作成支援システム１は、品質チェック部５による品質チェックの結果を、品質チェック結果取得部７が取得して、問題有りと判断されたアクション１０内の箇所とその問題点を、結果表示部４に表示出力する。
【００３８】
このように、本実施例のオブジェクト指向プログラム作成支援システム１は、モデル駆動型アーキテクチャを適用したオブジェクト指向によるソフトウェア開発を支援するに際して、ソフトウェア開発の動的分析のアクション記述で作成されるアクション１０の品質を検査する品質チェック部５を設けている。
【００３９】
したがって、作成されたアクションの品質に問題がないかどうかをチェックして、ソースコードとして実装される前段階の上流工程で品質の問題点を発見することができ、品質の面においても検査して、より一層利用性を向上させることができる。
【００４０】
また、本実施例のオブジェクト指向プログラム作成支援システム１は、品質チェック部５を、プログラミング言語のソースコードの静的解析を行うのに使用するメトリックの中で、アクション言語に適用可能な項目を検査するためのメトリックを格納するソフトウェアメトリック６を備え、品質チェック部５がソフトウェアメトリック６のメトリックを用いてアクション言語に適用可能な項目を検査している。
【００４１】
したがって、作成されたアクションの複雑度および可読性について問題がないかどうかを動的分析の段階で自動的にチェックして、即座にステートチャート図を再検討して、品質改善することができ、より一層利用性を向上させることができる。
【００４２】
さらに、本実施例のオブジェクト指向プログラム作成支援システム１は、品質チェック部５が、アクションの構文解析を行う構文チェック部２と連携してアクションの品質を検査している。
【００４３】
したがって、操作性を向上させるだけでなく、常に品質を意識しながらアクション記述を行えるようにすることができ、より一層利用性を向上させることができる。
【００４４】
また、本実施例のオブジェクト指向プログラム作成支援システム１は、品質チェック結果取得部７が、品質チェック部５の検査結果を解析して、当該解析結果と推測されるアクション記述上の問題点を結果表示部４に出力している。
【００４５】
したがって、アクションの品質のチェック結果を表示して、その結果から予測される記述上の問題点を開発者に通知して、アクションの記述のどこにどういった問題があるかを開発者が学びながら開発を進めることができ、アクションの品質向上をより一層促して、より一層利用性を向上させることができる。
【００４６】
以上、本発明者によってなされた発明を好適な実施例に基づき具体的に説明したが、本発明は上記のものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００４７】
ＭＤＡを用いたオブジェクト指向プログラムの開発でのアクションの構文チェックだけでなく、品質についてもチェックして、生産性と利用性の良好なオブジェクト指向プログラム作成支援システムに適用することができる。
【図面の簡単な説明】
【００４８】
【図１】ＭＤＡを用いたオブジェクト指向プログラム作成支援システムのブロック構成図。
【図２】ＭＤＡを用いたオブジェクト指向プログラムの開発における分析過程を示す図。
【符号の説明】
【００４９】
１  オブジェクト指向プログラム作成支援システム１
２  構文チェック部
３  構文チェック結果取得部
４  結果表示部
５  品質チェック部
６  ソフトウェアメトリック部
７  品質チェック結果取得部
１０  アクション
１１  要求分析
１２  静的分析
１３  動的分析
【図１】
2006072623.tif 000003
【図２】
2006072623.tif 000004