【文献】
インタビュー(2) 株式会社大和総研ビジネス・イノベーション 既存のIT資産を最大限有効に活用し、低コストでスピーディーなSOA化を実現,PROVISION,日本,日本アイ・ビー・エム株式会社,2009年 5月13日,第61号,p.24−31
【文献】
城田真琴,システム設計 きほんのき 〜SOA編〜,ITアーキテクトのためのシステム設計実践ガイド VOL.1,日本,日経BP社,2009年 8月 1日,第1巻,p.86−91
次期端末と、現行ホストコンピュータと、次期ホストコンピュータとが、チャネル統合基盤を介して接続されるコンピュータシステムにおける画面間の情報連携のための制御方法であって、
前記次期端末が、
前記現行ホストコンピュータのアプリケーションによって制御される現行画面と、前記次期ホストコンピュータのアプリケーションで用いられる次期画面において、前記現行画面の構成を定義する現行画面定義体と、前記次期画面の構成を定義する次期画面定義体と、前記現行画面と前記次期画面との入出力データに引き渡し項目を定義する項目引継定義体とに基づき、前記現行画面と前記次期画面との間で画面間の情報連携を行い、前記次期端末の表示画面上でマルチ画面制御する表示ステップと、
前記チャネル統合基盤に対して、前記現行画面からの要求データをトランザクションとして送信するステップと、
前記チャネル統合基盤に対して、ソフトウェアの機能を業務上の一処理に相当する単位でサービスとして定義するビジネスサービス定義体に基づいて、前記次期画面からの要求データをビジネスサービスとして送信するステップとを実行し、
前記チャネル統合基盤が、
前記次期ホストコンピュータのアプリケーションに対して、前記ビジネスサービスと前記次期ホストコンピュータのアプリケーションの業務コンポーネントを一つのサービスとして定義するシステムサービスと画面IDとの関係を一元管理するマッピング定義体に基づいて、前記ビジネスサービスから前記システムサービスへのマッピングを行うステップを実行する、
ことを特徴とする制御方法。
【発明の概要】
【発明が解決しようとする課題】
【0006】
したがって本発明では、上記の課題に鑑み、既存のホスト側のアプリケーションを変更することなく、新規のホスト側のアプリケーションの新機能にも対応した統合された端末システム、かつ、新旧複数のアプリケーションにおける複数の画面間で情報連携することが可能な端末システムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するため、本発明の端末システムは、以下のような解決手段を提供する。
【0008】
請求項1の発明は、次期端末と、現行ホストコンピュータと、次期ホストコンピュータとが、チャネル統合基盤を介して接続される端末システムであって、 前記次期端末は、前記現行ホストコンピュータのアプリケーションによって制御される現行画面と前記次期ホストコンピュータのアプリケーションで用いられる次期画面
において、前記現行画面の構成を定義する現行画面定義体と、前記次期画面の構成を定義する次期画面定義体
と、前記現行画面と前記次期画面との入出力データに引き渡し項目を定義する項目引継定義体とに基づき、前記現行画面と前記次期画面との間で画面間の情報連携を行い、マルチ画面制御する表示画面制御部と、前記チャネル統合基盤に対して、前記現行画面からの要求データをトランザクションとして送信するトランザクション生成部と、前記チャネル統合基盤に対して、ソフトウェアの機能を業務上の一処理に相当する単位でサービスとして定義するビジネスサービス定義体に基づいて、前記次期画面からの要求データをビジネスサービスとして送信するビジネスサービス生成部とを備え、前記チャネル統合基盤は、前記次期ホストコンピュータのアプリケーションに対して、前記ビジネスサービ
スと前記次期ホストコンピュータのアプリケーションのコンポーネントを、業務上の一処理に相当するシステムサービスとして定義するシステムサービス
と画面IDとの関係を一元管理するマッピング定義体を有するサービスマッピング部を備える、ことを特徴とする。
【0009】
本発明によれば、端末とホストコンピュータ間にチャネル統合基盤を配置することで、新旧のホストシステムにおける様々なプロトコル変換に対応でき、複数のアプリケーションで制御されるデータの受け渡し方法を整理し、ビジネスサービスとシステムサービスの概念を導入しつつ、一つの端末上で新旧アプリケーションの画面を統合することができる。
また、項目引継定義体を表示画面制御部に備えることで、現行画面と次期画面との間での情報連携を容易に実現することができる。
【0012】
請求項
2の発明は、請求項
1の発明において、前記項目引継定義体は、更に前記次期画面間または前記現行画面間での入出力データの引き渡しを定義することを特徴とする。
【0013】
本発明によれば、現行画面と次期画面の間での情報連携だけでなく、次期画面間または現行画面間での情報連携を構築することができる。
【0014】
請求項
3の発明は、請求項1の端末システムの発明を下記のような画面の制御方法の発明として捉えたものであり、請求項1の発明と同様な作用効果を奏する。
次期端末と、現行ホストコンピュータと、次期ホストコンピュータとが、チャネル統合基盤を介して接続されるコンピュータシステムにおける画面間の情報連携のための制御方法であって、前記次期端末が、前記現行ホストコンピュータのアプリケーションによって制御される現行画面と、前記次期ホストコンピュータのアプリケーションで用いられる次期画面
において、前記現行画面の構成を定義する現行画面定義体と、前記次期画面の構成を定義する次期画面定義体と
、前記現行画面と前記次期画面との入出力データに引き渡し項目を定義する項目引継定義体とに基づき、前記現行画面と前記次期画面との間で画面間の情報連携を行い、前記次期端末の表示画面上でマルチ画面制御する表示ステップと、前記チャネル統合基盤に対して、前記現行画面からの要求データをトランザクションとして送信するステップと、前記チャネル統合基盤に対して、ソフトウェアの機能を業務上の一処理に相当する単位でサービスとして定義するビジネスサービス定義体に基づいて、前記次期画面からの要求データをビジネスサービスとして送信するステップと
を実行し、前記チャネル統合基盤が、前記次期ホストコンピュータのアプリケーションに対して、前記ビジネスサービス
と前記次期ホストコンピュータのアプリケーションの業務コンポーネントを一つのサービスとして定義するシステムサービス
と画面IDとの関係を一元管理するマッピング定義体に基づいて、前記ビジネスサービスから前記システムサービスへのマッピングを行うステップ
を実行する、ことを特徴とする。
【発明の効果】
【0015】
本発明によれば、既存のホスト側のアプリケーションを変更することなく、新規のホスト側のアプリケーションの新機能にも対応し、新旧複数のアプリケーションにおける複数の画面間で情報連携することが可能な統合された端末システムを提供することができる。
【発明を実施するための形態】
【0017】
以下、添付図面を参照して、本発明を実施するための形態(以下、実施形態)について詳細に説明する。なお、実施形態の説明の全体を通して同じ要素には同じ番号を付している。
【0018】
図1は、本発明に係るシステム全体構成の概略を示す図である。本システムは全体としては、次期端末100と、チャネル統合基盤200(CIS; Channel Integration System)、現行オンライン・ホストコンピュータ300a、次期オンライン・ホストコンピュータ300b、バッチ処理ホストコンピュータ310、及び次期セキュリティ基盤400で主に構成されている。各ホストコンピュータ(300a,300b,310)は、現行DB320aと次期DB320bによって互いにデータを共有する。
【0019】
次期端末100は、OSとしてWindows(登録商標)を搭載した一般的なパーソナルコンピュータまたはワークステーションであり、現行オンライン・ホストコンピュータ300a上で稼働する現行アプリケーションによって制御される現行画面101と、次期オンライン・ホストコンピュータ300b上で稼働する次期アプリケーションのための次期画面102を、一つの端末上でマルチ画面・マルチタブによって統合したクライアント端末である。
【0020】
チャネル統合基盤200は、チャネルAPサーバ210とチャネルDBサーバ220とで構成されるサブシステムであり、次期端末100とホストコンピュータ300a、300bとの間に入り、端末とホストコンピュータ間の様々なプロトコル変換や端末からの要求に対してホスト・アプリケーションで提供されるサービス(ソフトウェアのまとまった機能)の統合を行う。
【0021】
チャネルAPサーバ210は、さらに次期端末AP211とサービス統合エンジン212とから構成されている(”AP”はApplicationの略。以下同じ)。次期端末AP211は、次期端末100からの接続依頼に基づき接続を実施する接続制御機能、端末の運用状況をデータベースに反映したり、データを取得する端末管理機能、ログインID/パスワードのチェックを行うログイン制御、ログインユーザのメニュー情報を取得し、可能なメニューを回答するメニュー制御、及びログインユーザのアクセス権限を取得し回答するアクセス制御の機能を有する。
【0022】
サービス統合エンジン212は、業務上の一処理単位に相当するソフトウェア部品を「サービス」として提供するためのサービスの制御(振分、電文変換)や各種インターフェース(SOAP(Simple Object Access Protocol)I/F、TN3270(Telnet3270)接続I/F、MQ接続(Message Queuing)I/F)の制御や、端末の制御情報の処理を行う。現行画面関連アプリ213は、現行オンライン・ホストコンピュータ300a向けの専用機能(電文変換や制御処理)を行う。
【0023】
チャネルDBサーバ220は、コールセンタアクセス権限管理機能、次期端末アドレスやLTERM(Logical Terminal)割り当てを動的に行い管理する機能、サービス定義体を保持し、次期サービスを管理する機能を有する。
【0024】
本システムでは、次期端末100とチャネル統合基盤200とは、SOAPプロトコルで接続され、チャネル統合基盤200と現行オンライン・ホストコンピュータ300aとはTN3270接続、次期オンライン・ホストコンピュータ300bとはMQ接続で、いずれの接続もTCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルが用いられている。
【0025】
次期セキュリティ基盤400は、セキュリティ機能をホストから切り離し、かつ従来のメニューとアクションに加え、グループ別アクセス権限を実施するセキュリティDB401を一元管理する。
【0026】
図2は、本発明の第一の実施形態に係る端末システムの機能ブロックを示す図である。本端末システムは、前図のシステム全体構成のうちから端末に関係するオンライン部分を取り出したものであり、主として、バッチ処理ホストコンピュータ310を除いたものである。
【0027】
次期端末100には、機能部として、表示画面制御部103、トランザクション生成部104、BS(Business Service)生成部105備えられている。表示画面制御部103は、操作員からのキーボードやマウスからの入力操作を受け付けて画面に表示したり、入力データをトランザクション生成部104またはBS生成部105に送り、入力データに対するホスト側アプリケ−ションからの応答データを画面に表示する役目を果たす。
【0028】
表示画面制御部103は、「画面定義体」や「画面遷移定義体」に基づいて、複数画面かつ複数タブの画面を表示し、制御する機能を果たす。画面定義体とは、各画面の構造をGUIパーツの配置を指定し、そこに紐づくデータを項目IDで定義したものであり、現行画面101には現行画面定義体1、次期画面102には次期画面定義体2が対応する。現行画面定義体1は、現行のホスト・アプリケーションのもとで使用される画面の構成を定義するものであり、独自のフォーマットを用いて作成されている。次期画面定義体2は、次期オンライン・アプリケーションのもとで使用される画面の構成を定義するものであり、XML(Extensible Markup Language)を用いて作成されている。
【0029】
また、表示画面制御部103は、操作員に対して表示するメニュー画面の構成(例えば、メインメニュー画面、サブメニュー画面等)を定義するメニュー定義3、画面中の入出力データ項目を一義的に定義する項目辞書4、画面に表示される各メッセージを定義するメッセージ定義5、データの意味を表すコードを定義したコード定義6のような複数のデータ定義体を参照する。また、表示画面制御部103は、端末画面内で入力内容をチェックする(ノーマライズ)機能も有する。
【0030】
さらに、表示画面制御部103は、項目引継定義体7を有しており、現行画面に表示するデータを次期画面に表示するため、または、次期画面に表示するデータを現行画面に表示するため、あるいは次期画面間で同じデータを表示するため、引継すべきデータ項目を定義する。例えば、現行入力画面の入力データを、次期入力画面にも同時に表示させるには、それぞれの画面IDとデータ項目IDを対応付けしてテーブルに定義しておく。出力データについても同様である。
【0031】
トランザクション生成部104は、表示画面制御部103から現行画面入力データ10aを受け取ると、ホスト・アプリケーションに向けて、トランザクション(トランザクション名+要求データ(項目ID)10b)を生成し、チャネル統合基盤200に送信する。また、チャネル統合基盤200から、画面ID+応答データ(項目ID)10eを受信すると、それを表示画面制御部103に返信し、現行画面出力データ10fを表示させる。
【0032】
BS生成部105は、BS定義体8に基づき、サービスに必要な電文の組立てや文字変換を行い、サービス電文の組立て時に入力内容をチェックし、ビジネスサービス(ビジネスサービス名と要求データ(XML)20bからなる)を生成する機能を果たす。ここで、「サービス」とは、サービス指向アーキテクチャ(SOA;Service Oriented Architecture)のもと、外部から標準化された手順によって呼び出すことができる一まとまりのソフトウェアの集合であり、単体で人間にとって意味のある単位の機能を持つものを指す。また、本端末システムにおける「ビジネスサービス」とは、ソフトウェアの機能を業務上の一処理に相当する単位でサービスとして定義したものであり、サービスのうち最も粒度(処理単位の規模)の荒いものを指すものである。BS定義体8に、ビジネスサービス名、ビジネスサービス機能、入力データ項目ID、出力データ項目ID等で定義される。
【0033】
BS生成部105は、表示画面制御部103から、次期画面入力データ20aを受け取ると、それをビジネスサービス名+要求データ(XML)20bに変換する。この要求データに対する応答であるビジネスサービス名+応答データ(XML)20gを受信すると、それを表示画面制御部103に返し、次期画面出力データ20hを表示させる。
【0034】
また、BS生成部105は、複数の画面の遷移を制御するため画面遷移定義体9を参照する。画面遷移定義体9は、複数の画面間の遷移を定義するものであり、各画面のIDと遷移条件、遷移前後の状態を表したものである。
【0035】
チャネル統合基盤200は、前述したとおり、チャネルAPサーバ210とチャネルDBサーバ220とで構成されているが、以下では特に区別することなく、単にチャネル統合基盤200とする。チャネル統合基盤200は、プロトコル変換部201(SOAP接続プロトコル、TN3270接続、MQ接続プロトコルの各インターフェースを制御する)と、サービス定義体であるBS定義体とSS定義体11に基づき、一つのビジネスサービス(BS;Business Service)を、より粒度の細かい「システムサービス(SS;System Service)」にマッピングするサービスマッピング部202とを備えている。システムサービスとは、次期ホストコンピュータのアプリケーションの業務コンポーネントを、ブログラム上の部品でなく、一つのサービスの単位として定義したものである。したがって、一つのビジネスサービスは、一または複数のシステムサービスで構成される。
【0036】
なお、SS定義体11に含まれるデータは、BS定義体8とほぼ同様であるが、SS定義体11には、次期ホスト・アプリケーションの業務コンポーネントのエントリポイントが含まれる。なお、図ではプロトコル変換部201とサービスマッピング部202は現行画面ルート(10a〜10f)と次期画面ルート(20a〜20h)にそれぞれ別々に対応しているように見えるが、次期画面ルートであってもプロトコル変換は必要であるため互いに連携している。
【0037】
なお、上記の各種定義体は、本システムとは別の開発システムの支援ツールによって別途作成されるものとする。
【0038】
セキュリティDB401は、チャネル統合基盤200とは別に、次期セキュリティ基盤400として構築されたサーバ上に設けられ、セキュリティ機能をホストから切り離し、かつ従来のメニューとアクションに加え、グループ別アクセス権限を実施するためのDBであり、プロトコル変換部201、及びサービスマッピング部202から参照される。
【0039】
ホストコンピュータ300は、現行オンライン・ホストコンピュータ300aと次期オンライン・ホストコンピュータ300bを便宜上まとめて表したものであり、プロトコル・インターフェース層301(TN3270/MQ)、ミドルウェア層302(IMS/SAIL)、ユーザACP層303、及びアプリケーション層304として、現行適用業務プログラム304a(現行アプリケーション)と次期オンラインメイン/業務コンポーネント304b(次期アプリケーション)の4つの層に分かれている。
【0040】
プロトコトル・インターフェース層301は、TN3270接続とMQ接続とからなり、現行アプリケーションはTN3270接続、次期アプリケーションは、MQ接続を用いるようになっている。いずれもプロトコルはTCP/IPである。
【0041】
ミドルウェア層302は、IBM(登録商標)社のトランザクションマネジメントとデータマネジメントのミドルウェアであるIMS(Information Management System)と、同じくIBM(登録商標)社の勘定系システム開発向けのパッケージソフトウェアであるSAIL(System development Aid for IMS/ESA on-Line applications)で構成される。
【0042】
ユーザACP層303は、ユーザACP(Application Control Program)で構成され、アプリケーション層に対して必要なデータの制御を行うためのプログラムである。ユーザACPは、チャネル統合基盤200のプロトコル変換部201から、トランザクション名+要求データ(項目ID)10bを受信すると、現行適用業務プログラム304aに対して、アプリケーションへの要求データ10cのみをインプットとして受け渡す。また、現行適用業務プログラム304aからの応答データ10dを画面ID+応答データ(項目ID)10eの形式で、チャネル統合基盤200に返信する。画面遷移や項目属性は、現行アプリケーションである現行適用業務プログラム304aで制御されている。
【0043】
次期ホスト・アプリケーション層の前段である次期オンラインメインは、ビジネスロジックを実装した後段の複数の業務コンポーネントを組み合わせ、一つのサービスを実行させるための制御プログラムである。このようにすることで、次期アプリケーションは、構造化されずに肥大化した現行アプリケーションとは異なり、システムサービスとしての汎用性のあるソフトウェア部品を構築することができる。
【0044】
ユーザACP303は、トランザクション名+要求データ20cをチャネル統合基盤200のサービスマッピング部202から受信すると、アプリケーションに必要な要求データ20dのみを取り出し、次期オンラインメイン320に受け渡す。次期アプリケーション側で応答データ20eを受け取ると、トランザクション名+応答データ20fに変換し、チャネル統合基盤200に返信する。
【0045】
このようにして本端末システムにおいては、現行画面101または次期画面102から入力されたデータが、チャネル統合基盤200のプロトコル変換部201またはサービスマッピング部202を介して、ホスト側に渡され、ホスト側のアプリケーションで入力データが処理されてその応答データが同じルートで逆変換されて端末側に返信されて表示されることになる。
【0046】
上記の端末システムの機能構成は、あくまで一例であり、一つの機能部を更に分割したり、複数の機能部をまとめて一つの機能部として構成してもよい。各機能部は、装置に内蔵されたCPU(Central Processing Unit)が、ROM(Read Only Memory)またはハードディスク等の記憶装置に格納されたコンピュータ・プログラムを読み出し、CPUにより実行されたコンピュータ・プログラムが、記憶装置に格納されたデータベース(DB;Data Base)やメモリ上の記憶領域からテーブル等の必要なデータを読み書きし、場合によっては、関連するハードウェア(例えば、入出力装置、表示装置、通信インターフェース装置)を制御することによって実現される。また、本発明の実施形態におけるデータベース(DB)は、商用データベースであってもよい。また、各定義体は、単なるテーブルやファイルの集合体をも意味し、データの内部構造自体は問わないものとする。
【0047】
図3は、本発明の第一の実施形態に係る画面間の情報連携の概念を示す図である。ここでは具体例として、
図3上段の現行画面定義体1が、クレジットカードの顧客の「取引明細照会」の画面を表しているものとする。この画面IDを「001」とする。画面001には、入力データとして、項目ID00の「会員番号」(クレジットカード番号)が、出力データとして、項目ID10の「氏名」と、項目ID11の「連絡先」と、項目ID20の「取引明細」とが定義されているものとする。操作員が、この画面から「会員番号」を入力すると、表示画面制御部103によってトランザクションが生成され、要求データとして(項目ID00)が含められ、ホスト側に送信され、ホスト側の現行適用業務プログラム304aから応答データ(項目ID10,11,20)が返信される。
【0048】
図3下段の次期画面定義体2は、具体例として「会員情報照会」を表しているものとする。この画面IDを「002」とする。また、会員情報には「氏名」、「連絡先」などの基本情報2aと、「住所」、「勤務先」、「生年月日」などの詳細情報2bがあるものとする。上段の画面001で入力された「会員番号」、及びホスト側から得られた基本情報の「氏名」、「連絡先」が画面002の「会員番号」、「氏名」、「連絡先」に引継がれる。
【0049】
このとき項目引継定義体7には、2つの方式がある。まず、方式1では、項目IDが同じ場合、各画面ごとに項目を引継がせるか否かを指定することができる。ここで引継ぎ対象となった項目は、次期端末の共有メモリ内に記録され、以降の同じ項目IDの表示の際に利用されることとなる。すなわち、図示する項目引継定義体7aの「項目引継へのデータ渡し」が、「○」の場合、次期画面内の共有メモリにある項目ID01のデータを上書きし、「×」なら上書きしない。また、「項目引継からのデータ受取」が、「○」の場合、画面ID001に項目ID01を表示する際に共有メモリ内のデータを表示させ、「×」なら表示させない。
【0050】
方式2では、異なる項目ID間での引継ぎにも対応できるように、引継ぎ先IDを指定して表示させることができる。画画面ID001から画面ID002へ引継される項目IDを、項目引継定義体7bで図示するように明示する。ここで、画面ID002の()内の数字は、次期画面のXML形式で書かれた各データ項目の画面内の位置やIDを模式的に表しているものとする。すなわち例えば、画面ID001の項目ID00(会員番号)は、画面ID002のXMLの(00)に引継がれることになる。このようにして画面ID001に入力されたデータ及び出力として表示されたデータは、自動的に画面ID002に引継ぐことができる。
【0051】
画面ID002では、このようにして引継がれたデータ以外にも、ホスト側(次期ホスト・アプリケーション層)に対して会員詳細情報サービスを送信することができる。BS定義体8には、「BS名」、「入力データ」、「出力データ」が図示するように定義されているとすると、このときビジネスサービス名として「会員詳細情報サービス」と要求データ(入力データと要求データをXML形式で表したもの)20bがホスト側に送信される。送信された要求の応答データ20gは同じビジネスサービス名で返信される。このようにして画面ID002は、画面ID001から入出力データを引継いだり、新たなサービス要求をホスト側に送信して追加データを受信したりして、画面全体のデータを表示することができる。
【0052】
図4は、本発明の第二の実施形態に係る端末システムの機能ブロックを示す図である。第二の実施形態では、
図2の第一の実施形態の機能ブロック図におけるチャネル統合基盤200のサービスマッピング部202は、ビジネスサービス、システムサービス、画面IDの関係を一元管理させるようにする。このための新たな定義体としてマッピング定義体12が用いられる。この場合、ビジネスサービス20bに対するBS生成部105への応答は、ビジネスサービスではなく、画面IDごとの応答データ20gとなる。また、画面遷移定義体9は、サービスマッピング部202で参照するようにして画面遷移の制御をサービスマッピング部202で行ってもよい。他の機能ブロックは、第一の実施形態と同様であるので説明は省略する。
【0053】
以上、実施形態を用いて本発明を説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されないことは言うまでもない。上記実施形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。またその様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。