(57)【要約】      （修正有）【課題】システム構築において最適なアプリケーション基盤の選定を支援するシステムを提供する。【解決手段】サーバが、個々の基盤用ソフトウェアと当該基盤用ソフトウェアの特性情報とを対応付けて格納したデータベースを備え、構築対象システムのシステム要件の入力に応じて、システム要件を基に必要な複数の基盤用ソフトウェアの種類を決定してその種類を画面出力し、画面出力された種類毎に入力された個々の基盤用ソフトウェアの選定条件に応じてデータベースから該当する１又は複数の基盤用ソフトウェアを抽出し、種類毎に抽出された１又は複数の基盤用ソフトウェアを基に、アプリケーション基盤を構成する全ての組合せを作成し、作成された全ての組合せの各々をアプリケーション基盤候補として決定する手段と、を備える。【選択図】図１
2014096026.tif 000002
【特許請求の範囲】
【請求項１】
構築対象システムのアプリケーション基盤を構成する複数の基盤用ソフトウェアの組合せを選定することを支援するためのサーバを備えたアプリケーション基盤選定システムであって、前記サーバが、
個々の基盤用ソフトウェアと当該基盤用ソフトウェアの機能を含む特性情報とを対応付けて格納した第１のデータベースと、
構築対象システムのシステム要件の入力に応じて、前記システム要件を基に必要な複数の基盤用ソフトウェアの種類を決定し、決定した複数の基盤用ソフトウェアの種類を画面出力する手段と、
画面出力された複数の基盤用ソフトウェアの種類毎に、個々の基盤用ソフトウェアに関する機能を含む選定条件の入力に応じて、前記選定条件を基に前記第１のデータベースの前記特性情報を参照して該当する１又は複数の基盤用ソフトウェアを抽出する手段と、
基盤用ソフトウェアの種類毎に抽出された１又は複数の個々の前記基盤用ソフトウェアを基に、アプリケーション基盤を構成する複数の基盤用ソフトウェアの全ての組合せを作成し、作成された全ての組合せの各々をアプリケーション基盤候補として決定する手段と、を備えたことを特徴とする
アプリケーション基盤選定システム。
【請求項２】
過去に選定されたアプリケーション基盤を構成する複数の基盤用ソフトウェアの組合せを格納した第２のデータベースを備え、
決定された複数の前記アプリケーション基盤候補の各組合せについて、前記第２のデータベースを参照して同じ組合せの数をカウントし、カウントした数を各組合せについての実績値として決定する手段と、
決定した前記実績値の高い順に複数の前記アプリケーション基盤候補を画面出力する手段と、を備えたことを特徴とする
請求項１に記載のアプリケーション基盤選定システム。
【請求項３】
前記画面出力された複数の基盤用ソフトウェアの種類のうち、前提として使用する基盤用ソフトウェアが決定している場合、前記選定条件を入力することなく当該種類の前提基盤用ソフトウェアとして決定する手段を備えたことを特徴とする
請求項１又は２に記載のアプリケーション基盤選定システム。
【請求項４】
前記システム要件に予算が含まれかつ前記特性情報に個々の基盤用ソフトウェアの価格が含まれる場合、作成された前記複数の基盤用ソフトウェアの全ての組合せの各々について、複数の基盤用ソフトウェアの価格総計を算出し、前記価格総計が前記予算を上回る組合せをアプリケーション基盤候補から除外する手段を備えたことを特徴とする
請求項１〜３のいずれかに記載のアプリケーション基盤選定システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システム構築において利用する製品、例えばオープンソースソフトウェア（Open Source Software、以下「ＯＳＳ」と称する）等のアプリケーション基盤の選定を支援するためのアプリケーション基盤選定システムに関するものである。
【背景技術】
【０００２】
近年、情報技術の発展に伴い、様々な業務がシステム化されている。その中でもシステム構築においては、コンピュータの基本的な制御を行うオペレーティングシステム（Operating System）と、汎用的な機能を提供するミドルウェアやフレームワーク等は必要不可欠なものである。本明細書では、アプリケーションソフトウェアの土台として機能するオペレーティングシステム、ミドルウェア及びフレームワーク等のソフトウェアのｋ組合せを「アプリケーション基盤」と称している。
【０００３】
オペレーティングシステム及びミドルウェアは、製品やＯＳＳとして様々な開発ベンダやコミュニティが開発し、販売及び提供を行っており、その種類や数は多岐にわたる。実際のシステム構築においては、用途ごとに比較資料を作成し検証することで使用する製品やＯＳＳの中から所定の技術を選択し、それらを組合せてアプリケーション基盤を決定することができる。
【０００４】
また、特許文献１は、アプリケーションプログラムの作成において、複数の部品を組合せ、次々にプログラムを実行し評価を行うことを可能とするアプリケーションプログラムの構築支援方法を提示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平９−２５８９７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の方法は、組合せの対象となる部品が、アプリケーションプログラムの機能単位ごとに複数存在していなければならない。
【０００７】
また、近年の製品やＯＳＳなどの技術には膨大な機能が含まれていることから、それら全ての機能を検証するのは困難であり、機能の有無程度の簡易な調査のみで、使用する技術すなわちアプリケーション基盤を決定することも少なくない。その結果、想定していた動作と実際の機能が異なり、システムの要件や性能を満たせないという問題があった。これは、システム開発者がシステム化の対象となる業務並びに製品やＯＳＳの知識を詳細に把握していれば回避できるものの、常にそのような状況にあるとは限らない。
【０００８】
また、個々の製品やＯＳＳには問題が無くとも、それらを組合せてアプリケーション基盤として利用する場合には思わぬ不具合や劣化が発生することもあり、リスクを軽減するために実績のあるアプリケーション基盤が求められることも多い。
【０００９】
そこで、本発明の目的は、システム構築の際に最適なオペレーティングシステム及びミドルウェア等、すなわちアプリケーション基盤となる複数の基盤用ソフトウェアの製品又はＯＳＳの選定支援を行いかつ選定リスクを減らすためのアプリケーション基盤選定システムを提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するべく、本発明は以下の構成を提供する。
本発明の態様は、構築対象システムのアプリケーション基盤を構成する複数の基盤用ソフトウェアの組合せを選定することを支援するためのサーバを備えたアプリケーション基盤選定システムであって、前記サーバが、個々の基盤用ソフトウェアと当該基盤用ソフトウェアの機能を含む特性情報とを対応付けて格納した第１のデータベースと、構築対象システムのシステム要件の入力に応じて、前記システム要件を基に必要な複数の基盤用ソフトウェアの種類を決定し、決定した複数の基盤用ソフトウェアの種類を画面出力する手段と、画面出力された複数の基盤用ソフトウェアの種類毎に、個々の基盤用ソフトウェアに関する機能を含む選定条件の入力に応じて、前記選定条件を基に前記第１のデータベースの前記特性情報を参照して該当する１又は複数の基盤用ソフトウェアを抽出する手段と、基盤用ソフトウェアの種類毎に抽出された１又は複数の個々の前記基盤用ソフトウェアを基に、アプリケーション基盤を構成する複数の基盤用ソフトウェアの全ての組合せを作成し、作成された全ての組合せの各々をアプリケーション基盤候補として決定する手段と、を備えたことを特徴とする。
【００１１】
上記態様において、好適には、過去に選定されたアプリケーション基盤を構成する複数の基盤用ソフトウェアの組合せを格納した第２のデータベースを備え、決定された複数の前記アプリケーション基盤候補の各組合せについて、前記第２のデータベースを参照して同じ組合せの数をカウントし、カウントした数を各組合せについての実績値として決定する手段と、決定した前記実績値の高い順に複数の前記アプリケーション基盤候補を画面出力する手段と、を備える。
【００１２】
上記態様において、好適には、前記画面出力された複数の基盤用ソフトウェアの種類のうち、前提として使用する基盤用ソフトウェアが決定している場合、前記選定条件を入力することなく当該種類の前提基盤用ソフトウェアとして決定する手段を備える。
【００１３】
上記態様において、好適には、前記システム要件に予算が含まれかつ前記特性情報に個々の基盤用ソフトウェアの価格が含まれる場合、作成された前記複数の基盤用ソフトウェアの全ての組合せの各々について、複数の基盤用ソフトウェアの価格総計を算出し、前記価格総計が前記予算を上回る組合せをアプリケーション基盤候補から除外する手段を備える。
【発明の効果】
【００１４】
本発明のアプリケーション基盤選定システムによれば、次の様な効果がある。
システム構築にあたって、オペレーティングシステム、ミドルウェア又はフレームワーク等のアプリケーション基盤として使用する基盤用ソフトウェアの製品やＯＳＳに詳しくない場合であっても、構築対象システムのシステム要件と、現在稼働しているシステムで採用されたアプリケーション基盤実績とを基にして最適なアプリケーション基盤の選定を行うことができ、障害となるリスクを抑えることが可能となる。
【図面の簡単な説明】
【００１５】
【図１】図１は、本発明によるアプリケーション基盤選定システムの一実施形態の概略構成図である。
【図２】図２は、本システムにおける全体処理フローの一例を概略的に示したフローチャートである。
【図３】図３は、本システムにおいて構築しようとするシステム構成を設定するためのシステム構成設定画面の一例である。
【図４】図４は、本システムにおけるシステム構成決定部による処理フローの詳細を示すフローチャートである。
【図５】図５は、本システムにおいて前提となる基盤用ソフトウェアを設定するための前提基盤用ソフトウェア設定画面の一例である。
【図６】図６は、本システムにおいて前提となる基盤用ソフトウェアを決定する処理フローの一例を示したフローチャートである。
【図７】図７は、本システムにおいてアプリケーション基盤候補を設定するための画面の構成例である。
【図８】図８は、本システムにおいてアプリケーション基盤候補を検索する処理フローの一例を示したフローチャートである。
【図９】図９は、本システムにおいて実績値を計算する処理フローの一例を示したフローチャートである。
【図１０】図１０は、本システムにより決定されたアプリケーション基盤候補を出力した画面の一例である。
【図１１】図１１は、本システムにおいて基盤用ソフトウェアの情報を管理するためのデータベースの一例を示す構成図である。
【図１２】図１２は、本システムにおいてアプリケーション基盤実績を管理するデータベースの一例を示す構成図である。
【発明を実施するための形態】
【００１６】
以下、本発明を実施する場合の実施形態を、一例を示した図面を用いて詳細に説明する
図１は、本発明によるアプリケーション基盤選定システムの一実施形態の概略構成図である。本発明は、システム構築の際に、オペレーティングシステム、ミドルウェア及びフレームワーク等の既存の製品及び／又はＯＳＳの中から、構築しようとするシステム（以下、「構築対象システム」と称する）に最適なアプリケーション基盤を選定することを支援するシステムである。
【００１７】
以下、本システムにおいて、構築対象システムのアプリケーション基盤として選定の対象となるオペレーティングシステム、ミドルウェア及びフレームワーク等の既存の製品及び／又はＯＳＳである個々のソフトウェアを、「基盤用ソフトウェア」と称することとする。基盤用ソフトウェアのうち、有償で提供されるソフトウェアが「製品」であり、無償で公開されているソフトウェアが「ＯＳＳ」である。本システムの支援により選定される「アプリケーション基盤」は、通常、複数の基盤用ソフトウェアの組合せで構成される。好適には、本システムは、ユーザによるアプリケーション基盤の最終的な選定を支援するために、１又は複数のアプリケーション基盤候補を提示するものである。
【００１８】
図１に示したアプリケーション基盤選定システムは、クライアントアプリケーション101と、このクライアントアプリケーションプログラム101とデータの授受を行うアプリケーション基盤選定プログラム106と、アプリケーション基盤選定プログラム106と接続された基盤用ソフトウェアデータベース111及び実績データベース114とから構成されている。クライアントアプリケーション101とアプリケーション基盤選定プログラム106は、ネットワークによって接続され、連携して動作する。また、アプリケーション基盤選定プログラム106と実績データベース114及び基盤用ソフトウェアデータベース111も、ネットワークによって接続されている。
【００１９】
クライアントアプリケーションプログラム101は、典型例では、キーボード等の入力装置及びディスプレイ等の表示装置を備えた端末コンピュータに導入された所定のプログラムである。端末コンピュータのＣＰＵが、導入された所定のプログラムをメモリに読み込み実行することにより、クライアントアプリケーションプログラム101の機能を実現する。
【００２０】
アプリケーション基盤選定プログラム106は、典型例では、サーバコンピュータに導入された所定のプログラムである。サーバコンピュータのＣＰＵが、導入された所定のプログラムをメモリに読み込み実行することにより、アプリケーション基盤選定プログラム１０６の機能を実現する。各プログラムを接続するネットワークは、各コンピュータの備える通信装置を用いて実現される。
【００２１】
基盤用ソフトウェアデータベース111及び実績データベース114は、一例として、サーバコンピュータの外部記憶装置内に作成される。
【００２２】
クライアントアプリケーションプログラム101の機能処理部は、一例として、システム構成入力部102、前提基盤用ソフトウェア入力部103、アプリケーション基盤候補入力部104及び検索結果出力部105を備えている。各機能処理部に対しては、端末コンピュータに備わるwebブラウザ等を介して値の入力や結果の閲覧等を行うことができる。
【００２３】
アプリケーション基盤選定プログラム106の機能処理部は、一例として、システム構成決定部107、前提基盤用ソフトウェア検索部108、アプリケーション基盤候補検索部109及びアプリケーション基盤実績計算部110を備えている。
【００２４】
システム構成決定部107及び前提基盤用ソフトウェア検索部108は、クライアントアプリケーションプログラム101のシステム構成設定部102及び前提基盤用ソフトウェア入力部103からそれぞれパラメータを取得し、システム構築において利用される予定のシステム構成と前提製品を設定し表示する。
【００２５】
アプリケーション基盤候補検索部109は、クライアントアプリケーションプログラム101のアプリケーション基盤候補入力部104で入力された選定パラメータを基に、選定条件を満たす基盤用ソフトウェアを検索し、前提となる基盤用ソフトウェアと併せてアプリケーション基盤の候補を作成する。
【００２６】
アプリケーション基盤実績計算部110は、アプリケーション基盤候補検索部109で得られた基盤用ソフトウェアの組合せと、実績データベース115とを照合し、どの程度の実績があるかを検索し計算する。
【００２７】
基盤用ソフトウェアデータベース111は、一例として、基盤用ソフトウェア一覧テーブル112及び機能一覧テーブル113によって構成される。基盤用ソフトウェアデータベース111は、個々の基盤用ソフトウェアとその特性情報とを対応付けて格納している。基盤用ソフトウェア一覧テーブル112には、製品又はＯＳＳである基盤用ソフトウェアの名称（又は識別情報）と、その基盤用ソフトウェアの価格や区分等とが対応づけられて格納されている。また、機能一覧テーブル113には、ＳＳＬ(Secure Sockets Layer)、ＳＳＯ(Single Sign-on)などの機能名称（又は識別情報）と、その機能を持つ基盤用ソフトウェアの名称（又は識別情報）とが対応付けられて格納されている。
【００２８】
実績データベース115は、一例として、アプリケーション基盤実績一覧テーブル116で構成されている。アプリケーション基盤実績一覧テーブル116は、過去のシステム構築で使用されたアプリケーション基盤を構築実績として格納している。例えばHTTPサーバに「ＯＳＳ X」、アプリケーションサーバ(APサーバ)に「製品Y」, データベースサーバ(DBサーバ)に「製品Z」、といったように、実際のシステム構築で採用されたアプリケーション基盤を構成する基盤用ソフトウェアの組合せ情報を有する。
【００２９】
システム要件116は、構築するシステムの要件や制限事項が記されたドキュメントであり、ここに記載された内容を基に、クライアントアプリケーションプログラム101の各入力部を介してシステム要件の設定入力を行う。
【００３０】
以下の各図の説明においては、図１中の符号を参照する場合がある。
図２は、本システムにおける全体処理フローの一例を概略的に示したフローチャートである。
クライアントアプリケーションプログラムが起動すると、システム構成入力部102によりシステム構成設定画面が開かれ、システム構成を決定するためのパラメータの入力を促す。システム要件116に記されている構成図や文章をもとにシステム要件に関するパラメータが入力された後、アプリケーション基盤選定プログラム106に送信する。システム要件に関するパラメータにより、構築対象システムのアプリケーション基盤として必要な個々の基盤用ソフトウェアの種類を決定できる。システム構成決定部107が入力された設定を確定すると、前提基盤用ソフトウェア入力部103による前提基盤用ソフトウェア設定画面に遷移する（ステップ201）。前提基盤用ソフトウェア設定画面では、入力されたシステム要件のパラメータに応じて、アプリケーション基盤に含まれる個々の基盤用ソフトウェアの種類が表示される。
【００３１】
次に、ステップ201で決定したシステム構成において、予め使用することが決まっている基盤用ソフトウェア（以下、基盤用ソフトウェア全体の中で区別する場合は、「前提基盤用ソフトウェア」と称する）を選択する。基盤用ソフトウェアの選定においては、場合によっては必ず使用することが前提となっている場合もある。そこで、既に使用することが決まっている基盤用ソフトウェアに関しては、それを利用するものとして事前に設定する（ステップ202）。
【００３２】
ステップ202で入力されたパラメータは、前提基盤用ソフトウェア検索部108を介して処理される。その後、アプリケーション基盤候補入力部104によるアプリケーション基盤候補設定画面に遷移する。ここで、アプリケーション基盤候補設定画面に遷移した際、システム構成や前提基盤用ソフトウェアに間違いがあった場合、システム構成設定画面又は前提基盤用ソフトウェア設定画面に戻り、システム構成と前提基盤用ソフトウェアの選択をやり直すこともできる（ステップ203、204）
【００３３】
次に、アプリケーション基盤候補入力部104において、前提基盤用ソフトウェア以外の個々の基盤用ソフトウェアについて設定するため、業務要件や機能などを基に必要な選定パラメータからなる選定条件を入力する（ステップ205）。
【００３４】
ステップ205で指定した選定パラメータによる選定条件を満たす基盤用ソフトウェアを、基盤用ソフトウェアデータベース111から検索する。ここで、選定条件を満たす基盤用ソフトウェアが１つも存在しない場合、アプリケーション基盤の候補がないとみなし、再びアプリケーション基盤候補入力部104による設定画面へ遷移する（ステップ206、207）。
【００３５】
選定パラメータによる選定条件を満たす基盤用ソフトウェアが存在した場合、それらを組合せてアプリケーション基盤の候補を作成し、作成された全ての候補に対して実績値を算出する（ステップ208、209）。実績値の高い順にアプリケーション基盤を検索結果出力部105へ出力する（ステップ210）。
【００３６】
図３は、本システムにおいて、構築対象システムのシステム構成を設定するためにシステム構成入力部102により作成されるシステム構成設定画面の一例である。構成設定パラメータ301と、予算設定パラメータ302と、業種設定パラメータ303と、決定ボタン304とで構成されている。これらのパラメータは、システム要件116に記載された内容を基に入力される。構成設定パラメータ301は、webやクライアント・サーバといったシステム構成を決定するためのパラメータであり、この構成に応じてどの種類の基盤用ソフトウェア（特に、オペレーティングシステム以外の各サーバの種類）が使用されるかが決定される。例えば、Web3層ではクライアントとHTTPサーバ、APサーバ及びDBサーバが使用され、C/S2層ではクライアントとデータベースサーバが使用されることになる。
【００３７】
予算設定パラメータ302は、アプリケーション基盤のために基盤用ソフトウェアを購入する費用の上限を定めるパラメータであり、ユーザの想定金額との乖離を防ぐことが可能である。業種設定パラメータ303は、後述する検索処理を行う際の検索条件である。例えば金融系システム、流通系のシステム、などの項目が用意されている。決定ボタン305以外の項目においては、このシステム構成設定画面が表示されている間は任意のタイミングで入力、修正又は削除が可能である。決定ボタン305を押下すると、前提基盤用ソフトウェア入力部103による前提基盤用ソフトウェア設定画面へと遷移する。
【００３８】
図４は、図２のステップ201におけるシステム構成決定部107による処理フローの詳細を示すフローチャートの一例である。
システム構成決定部107は、システム構成入力部102において入力された、構成設定パラメータ301、予算設定パラメータ302及び業種設定パラメータ303を読み取り、適宜の記憶装置に保存する（ステップ401）。
【００３９】
次に、記憶装置に保存された構成設定パラメータ301から、どの種類の基盤用ソフトウェア（特にサーバの種類）が使用されるのかを判断する。使用されるサーバはシステム構成によって予め決められており、例えば、webやC/S3層を選択した場合はHTTPサーバ、APサーバ及びDBサーバが選定対象となり、C/S2層を選択した場合はDBサーバのみが選定対象となる。（ステップ402）
【００４０】
次に、予算設定パラメータ302に値が設定されているかどうかを判定する。この際、値が設定されていればその値を製品総額の上限として設定する。もし値が設定されていなければ、金額の上限はないと判断する（ステップ403、404）。
【００４１】
さらに、業種設定パラメータ303の値を判定する。特定の業種、例えば金融系のシステムが選択されている場合、アプリケーション基盤実績計算部110において実績を計算する際に、金融系のシステムで構築されたアプリケーション基盤のみを対象として検索を実施する。何も値が設定されていない場合は全ての実績を対象とする (ステップ405、406) 。
【００４２】
上記に示したシステム構成、予算、対象となる業種が決定すると、これらの情報を記憶装置に保持し、前提基盤用ソフトウェア入力部103による前提基盤用ソフトウェア設定画面に遷移する。（ステップ407）
【００４３】
図５は、本システムにおいて、前提基盤用ソフトウェアを設定するために前提基盤用ソフトウェア入力部103により作成される前提基盤用ソフトウェア設定画面の一例である。前提基盤用ソフトウェア設定画面で入力する値の種類や数は、図３のシステム構成設定画面で選択した値によって変化する。
【００４４】
例えば、図３のシステム構成設定画面の構成設定パラメータ301においてWeb3層が選択された場合、オペレーティングシステム、HTTPサーバ、APサーバ及びDBサーバが用いられ、C/S2層が選択された場合、オペレーティングシステム及びDBサーバが用いられる。このように、システムの構成によって使用するサーバの種類が異なるためである。
【００４５】
例えばシステム構成設定画面でWeb3層が選択された場合、アプリケーション基盤としてオペレーティングシステム、HTTPサーバ、APサーバ、DBサーバの４種類を使用することとなるので、前提基盤用ソフトウェア設定画面では、これらのサーバを選定するためのパラメータである前提オペレーティングシステム選択パラメータ501、前提HTTPサーバ選択パラメータ502、前提APサーバ選択パラメータ503、前提DBサーバ選択パラメータ504及び決定ボタン505が出現する。
【００４６】
ここで、システム構築において、使用するオペレーティングシステムが決定している場合、前提オペレーティングシステム選択パラメータ501において当該オペレーティングシステムの名称を選択することができる。その他のサーバのパラメータについても同様に、使用することが決定しているサーバの名称を入力する。設定終了後、決定ボタン505を押下すると、選択したパラメータが記憶装置に保持され、その後、前提基盤用ソフトウェア検索部108の処理が実行される。
【００４７】
図６は、図２のステップ202における前提基盤用ソフトウェア検索部108による処理の詳細を示すフローチャートの一例である。図５の前提基盤用ソフトウェア設定画面で設定した各種パラメータから、前提基盤用ソフトウェアを決定する。
【００４８】
まず、オペレーティングシステム等の名称欄に入力されたパラメータを読み取る（ステップ601）。読み取ったそれぞれのパラメータに値が設定されている（基盤用ソフトウェアの名称が入力されている）か否かを判定し、値が設定されている場合、そのパラメータに対応する基盤用ソフトウェアをシステム構築で使用するアプリケーション基盤の1つとして設定する。値が設定されていない場合、そのパラメータ欄に該当する前提基盤用ソフトウェアはないものとして処理する（ステップ602、603）。全てのパラメータについて処理が終了していない場合、次の基盤用ソフトウェアのパラメータを読み込み、同様の処理を実施し、最後にステップ604までの処理で決定した基盤用ソフトウェアの情報を保持し、アプリケーション基盤候補入力部104によるアプリケーション基盤候補設定画面へ遷移する（ステップ604、605）
【００４９】
図７は、本システムにおいて前提基盤用ソフトウェア以外の基盤用ソフトウェアを設定するために、アプリケーション基盤候補入力部104により作成されるアプリケーション基盤候補設定画面の例である。
【００５０】
アプリケーション基盤候補入力部104によるアプリケーション基盤候補設定画面は、まだ決定していないサーバの基盤用ソフトウェアを決定し、前提基盤用ソフトウェア入力部103で設定した前提基盤用ソフトウェアと組合せることにより、アプリケーション基盤の候補を作成するための画面である。
【００５１】
図７のアプリケーション基盤候補設定画面も、図５の前提基盤用ソフトウェア設定画面と同様、図３の画面で入力された構成設定パラメータ301に依存する。例としてWeb3層が選択された場合、Web3層で使用される、HTTPサーバ欄701、APサーバ欄702、DBサーバ欄703及びオペレーティングシステム欄705で構成される。
【００５２】
この時、ステップ603にて前提基盤用ソフトウェアが１つ以上設定されていた場合、設定された前提基盤用ソフトウェアの名称を、使用する基盤用ソフトウェアとして出力する。例えば、前提APサーバ選択パラメータ503に「製品AP-001」を入力した場合、アプリケーション基盤候補設定画面のAPサーバ欄702に「製品AP-001」が出力され、APサーバに使用する製品となる。
【００５３】
一方、空欄になっている箇所はアプリケーション基盤となるサーバ又はオペレーティングシステムに用いる基盤用ソフトウェアを選定する必要があるので、選定を行うためのパラメータが出現する。例えば、前提HTTPサーバ選択パラメータ501が空欄であった場合、アプリケーション基盤候補設定画面においてHTTPサーバを選定するためのHTTPサーバ選定パラメータ705が出現する。他のサーバについても同様の処理を実施する。ここではHTTPサーバを選定するためのHTTPサーバ選定パラメータ705と、DBを選定するためのDBサーバ選定パラメータ713を用いて説明を行う。
【００５４】
HTTPサーバ選定パラメータ705及びDBサーバ選定パラメータ713には、それぞれ基盤用ソフトウェアを選定するための選定パラメータが用意されており、システム要件に従って必要な機能に関連する項目の利用可否を判断する。
【００５５】
HTTPサーバ選定パラメータ705には、「APサーバ付属のHTTPサーバ利用」項目欄706、「暗号化」項目欄707、「クラスタ」項目欄708、「DWH」項目欄709、「レプリケーション」項目欄710、「災害対策」項目欄711、及び「ＯＳＳ」項欄目712等を有している。これら項目の数や種類は変更することが可能であり、さらに項目欄の説明文も変更可能である。これらの選定パラメータを、機能一覧テーブル112と照合することにより、該当する基盤用ソフトウェアを検索し選定することが可能となる。例えば「暗号化」項目707がチェックされた状態で検索ボタン720が押下されると、暗号化機能を有するHTTPサーバである基盤用ソフトウェアの検索が行われる。
【００５６】
次に、図２のステップ205〜210におけるアプリケーション基盤候補検索部109及びアプリケーション基盤実績計算部110による処理の詳細を図８〜図１２を用いて説明する。この処理により、アプリケーション基盤候補を決定し出力する。
【００５７】
先ず、図１１は、基盤用ソフトウェアデータベース111の有する（ａ）基盤用ソフトウェアテーブル113及び（ｂ）機能一覧テーブル112の構成例を示している。基盤用ソフトウェア一覧テーブル113は、基盤用ソフトウェアに一意に割り振られた「基盤用ソフウェアID」エントリ1101、基盤用ソフトウェアの名称である「基盤用ソフトウェア名称」エントリ1102、製品の価格である「価格」エントリ1103、及び基盤用ソフトウェアの区分を示す「区分」エントリ1104から構成されている。
【００５８】
機能一覧テーブル112は、機能に対して一意に割り振られた「機能ID」エントリ1105、SSL(Secure Sockets Layer)やSSO(Single Sign-on)等の機能名称である「機能名称」エントリ1106及び「基盤用ソフトウェアID」エントリ1107（基盤用ソフトウェア一覧テーブル113の「基盤用ソフウェアID」エントリ1101とリンク）から構成されている。ここで機能とは、ETL(Extract transform load)ツールやSSLなど、性能や可用性などを高めるための役割を指す。また、図１１（ｂ）の機能一覧テーブル112における各機能名称は、図７に示した選定パラメータの各項目と対応している。
【００５９】
図１２は、実績データベース114の有するアプリケーション基盤実績一覧テーブル115の構成例を示している。アプリケーション基盤実績一覧テーブル115は、過去に用いられた基盤用ソフトウェアの組合せ（すなわち各サーバとオペレーティングシステムとの組合せ）を示す「HTTPサーバ」エントリ1201、「APサーバ」エントリ1202、「DBサーバ」エントリ1203及び「OS」エントリ1204と、当該組合せが適用された業種を示す「業種」エントリ1205とから構成されている。
【００６０】
次に、図８及び図９を参照して処理フローを説明する。
図８は、アプリケーション基盤候補を決定するためのフローチャートの一例である。図７のアプリケーション基盤候補設定画面の検索ボタン720が押下されると、選択された選定パラメータがアプリケーション基盤候補検索部109に全て受け渡される（ステップ801）。
【００６１】
選定の対象となる基盤用ソフトウェアの種類毎（すなわちサーバ又はオペレーティングシステム毎）に、読み込んだ選定パラメータに定められた要件に合致する基盤用ソフトウェアを、図１１の機能一覧テーブル112及び基盤用ソフトウェア一覧テーブル113から検索し、要件に合致するものがあるか否かを判断する（ステップ802）。図７のアプリケーション基盤候補設定画面でいずれかの機能に関する選定パラメータが設定されている場合は、機能一覧テーブル112の「機能名称」エントリ1106を参照して、該当する機能のものを抽出し、その「基盤用ソフウェアID」エントリ1107を介して基盤用ソフトウェア一覧テーブル113から基盤用ソフウェア名称を特定する。例えば、図７のアプリケーション基盤候補設定画面で「ＯＳＳ」712の選定パラメータが設定されている場合、基盤用ソフトウェア一覧テーブル113の「基盤用ソフウェア名称」エントリ1102を参照して、ＯＳＳであるものを抽出する。
【００６２】
要件に合致する基盤用ソフトウェアが１つも存在しなかった場合、アプリケーション基盤候補を構成できないため、要件を再検討するため、図５の前提基盤用ソフトウェア設定画面に遷移する。全ての要件に一致する基盤用ソフトウェアが１つ以上存在した場合、それらの結果を記憶装置上に保存する（ステップ803、804、805）。選定の対象となる全ての基盤用ソフトウェアの種類に対して選定が行われていない場合、次の選定対象の基盤用ソフトウェアの種類についての選定条件を取得し、同様の処理を実施する（ステップ806）。
【００６３】
次に、ステップ805の検索結果をもとにアプリケーション基盤候補を作成する。Web3層の場合、アプリケーション基盤はHTTPサーバ、APサーバ、DBサーバ及びオペレーティングシステムの、４つのサーバ群（ここではオペレーティングシステムもサーバの範疇に含めている）の組合せである。上述した図６の処理フローで決定された前提基盤用ソフトウェアと、上述した図８の処理フローで抽出された選定条件を満たす基盤用ソフトウェアとの全ての組合せの各々をアプリケーション基盤候補とする。
【００６４】
例えば図７の画面で入力された選定条件に合致するHTTPサーバ製品が２つ、DBサーバが３つ抽出されたとすると、システム要件を満たすHTTPサーバ、APサーバ、 DBサーバ及びオペレーティングシステムの候補の数は、それぞれ２個、１個、３個及び１個となり、組合せは６通りとなる。
【００６５】
続いて、図３のシステム構成設定画面にて設定した予算パラメータ302と、各組合せにおける基盤用ソフトウェアの価格総計を比較し、予算パラメータ302を上回る場合はその組合せをアプリケーション基盤候補から除外する。組合せにおける基盤用ソフトウェアの価格総計は、基盤用ソフトウェア一覧テーブル113中の価格1103の値から求めることができる（ステップ807）。
【００６６】
ステップ807で予算要件を満たした全てのアプリケーション基盤候補に対して実績値（後述する図９参照）を計算し、実績値の高い順に検索結果出力部105による結果表示画面（後述する図１０参照）を出力する。（ステップ808、809）。
【００６７】
図９は、アプリケーション基盤実績計算部110によりアプリケーション基盤候補の各々の実績値を算出するための処理フローの一例である。実績値は各アプリケーション基盤候補の推奨度合いを示している。
【００６８】
アプリケーション基盤実績計算部110は、アプリケーション基盤候補検索部109による上記ステップ807で得られたアプリケーション基盤候補のうち、１件を取得し、記憶装置上に保持されている業種設定パラメータ303を参照する（ステップ901、902）。ここで、全ての業種を対象としている場合、アプリケーション基盤実績一覧テーブル115から、ステップ901で取得したアプリケーション基盤候補と同じ組合せを検索し、件数をカウントする（ステップ903）。特定の業種のみを対象としている場合、ステップ903と同じ処理を行った後、かつ業種エントリ1205が業種設定パラメータ303と同じ組合せのみを抽出してカウントする（ステップ904）。
【００６９】
ステップ903又は907で算出した値をステップ901で取得したアプリケーション基盤候補の実績値として設定する（ステップ905）。全ての候補について実績値の算出が行われていない場合、次の候補を取得して同様に算出する（ステップ906）。なお、この実績値の算出方法については、他の方法を用いて算出してもよい。
【００７０】
図１０は、検索結果出力部105による検索結果表示画面の表示例である。アプリケーション基盤候補となる基盤用ソフトウェアの組合せの一覧と各組合せの実績値とが表示される。例えば、基盤用ソフトウェアの組合せ1001は、HTTPサーバラベル1002、APサーバラベル1003、DBサーバラベル1004及びオペレーティングシステムラベル1005で構成されている。実績値1006の高い順にソートされることで推奨順序が一目で分かる。これにより、ユーザが、アプリケーション基盤となるオペレーティングシステムやミドルウェア等の基盤用ソフトウェアの組合せを選定し決定する際の工数やリスクを軽減できる。
【符号の説明】
【００７１】
101：クライアントアプリケーションプログラム、102：システム構成入力部、103：前提基盤用ソフトウェア入力部、104：アプリケーション基盤候補入力部、105：検索結果出力部、106：アプリケーション基盤選定プログラム、107：システム構成決定部、108：前提基盤用ソフトウェア検索部、109：アプリケーション基盤候補検索部、110：アプリケーション基盤実績計算部、111：製品一覧データベース（ＤＢ）、112：機能一覧テーブル、113：基盤用ソフトウェア一覧テーブル、114：実績データベース（ＤＢ）、115：アプリケーション基盤実績一覧テーブル
【図１】
2014096026.tif 000003
【図２】
2014096026.tif 000004
【図３】
2014096026.tif 000005
【図４】
2014096026.tif 000006
【図５】
2014096026.tif 000007
【図６】
2014096026.tif 000008
【図７】
2014096026.tif 000009
【図８】
2014096026.tif 000010
【図９】
2014096026.tif 000011
【図１０】
2014096026.tif 000012
【図１１】
2014096026.tif 000013
【図１２】
2014096026.tif 000014