micro focus server express for linux 基幹業務の linux への マイグレーションを実現...

43
1 Micro Focus Server Express for Linux 基基基基基 Linux 基基 基基基基基基基基基基基 2003 基 7 基 2 基 基基基基基基基基基基基基基

Upload: salome

Post on 08-Jan-2016

56 views

Category:

Documents


5 download

DESCRIPTION

Micro Focus Server Express for Linux 基幹業務の Linux への マイグレーションを実現 2003年 7月 2日. マイクロフォーカス株式会社. Micro Focus 会社紹介. Server Express 製品概要. 既存 COBOL ロジックの再利用. Linux/Java における COBOL の利用. プログラミングの注意点. 会社概要. 設立 1976年 英国にて設立 1984年 日本支社設立 業務内容 COBOL コンパイラおよび開発支援ツールの開発・販売・保守 ミッション - PowerPoint PPT Presentation

TRANSCRIPT

1

Micro Focus Server Express

for Linux

基幹業務の Linux へのマイグレーションを実現

2003 年 7 月 2 日マイクロフォーカス株式会社

2

Server Express 製品概要

既存 COBOL ロジックの再利用

Linux/Java における COBOL の利用

プログラミングの注意点

Micro Focus 会社紹介Micro Focus 会社紹介

3

会社概要• 設立

– 1976 年 英国にて設立– 1984 年 日本支社設立

• 業務内容– COBOL コンパイラおよび開発支援ツールの開発・販売・保

守• ミッション

– 基幹業務アプリケーション開発における生産性向上と容易な保守を可能にし、更に .NET や JAVA 等の最新の技術に対応することにより、お客様の アプリケーション資産の将来に渡る有効活用とビジネスの発展を支援します。

• 規模– 従業員数 約 470 名

• 最近のトピックス– LINUX 対応製品を発表– Web サービス向けに完全な COBOL サポートを発表– 優れた顧客サービスに与えられる世界的な賞を 2 年連続で受

賞– ISO2002 規格のサポートを発表– DePaul 大学(米国イリノイ州)、 COBOL 再利用テクノ

ロジが、 Java の書き換えと比較して 1/3 の時間とコストで済むと発表

4

マイクロフォーカス製品ラインナップ

• Micro Focus Net Express– Windows 上の GUI を使った COBOL の統合開発環境– メインフレーム、 UNIX のクロス開発もサポート– ウィザードによる開発支援– Java 、 COM 、 .NET 、 CORBA に対応

• Micro Focus Server Express– UNIX/LINUX 対応の最新 COBOL 開発環境– 32/64 ビット UNIX/LINUX 対応– マルチスレッド対応– Java クラス、 Servlet 、 EJB に容易にラッピング

5

COBOL 資産の継承を支援

• Micro Focus Revolve– リバースエンジニアリングツール– クロス参照、オーバービューにより対象を把握– ビジネスロジックの迅速な理解– スクラップアンドビルド、再利用を支援– COBOL に加え、 JCL 、 CICS 、 IMS 定義も分析

• Micro Focus EnterpriseLink– Web エミュレータ– メインフレーム端末を Web ブラウザに置き換え– XML アプリケーションのメインフレーム接続も可能

6

IBM 環境下でのマイクロフォーカス製品

7

IBM

PARTNERSHIP

• 「業務用アプリケーションの 70% が COBOL であることを考えるベースと、 COBOL 開発の専門家であるマイクロフォーカス社のようなパートナーと協力することは、極めて重要です。多くの新規または既存のアプリケーションにとって Server Express は重要な開発ツールです。」

Joan Dunguid 氏 (IBM 社、 Linux zSeries マーケティング担当ディレクタ)

• 「 Micro Focus は AIX 上で稼動する、幅広いアプリケーション製品群への貴重な追加製品です。 Micro Focus と IBM eServer pSeries のシステムの組合せによって、両社の共通顧客に、費用対効果に優れ、柔軟かつ高性能なプラットフォームを提供することができます。」

Val Rahmani 氏 (IBM 社サーバーグループ、

IBM eServer pSeries  担当ジェネラル・マネージャ )

8

Windows 用 COBOL 開発環境

9

UNIX 用 COBOL 開発環境

10

Server Express 製品概要Server Express 製品概要

既存 COBOL ロジックの再利用

Linux/Java における COBOL の利用

プログラミングの注意点

Micro Focus 会社紹介

11

Micro Focus Server Express

概要• Java と COBOL の連携

– Servlet, EJB などから COBOL ロジックを利用• 分散開発環境

– Windows で開発、 UNIX でビルド・統合テスト・運用• 高性能

– 64bit マシンコード生成 (Linux は次版からサポート )– 旧版 COBOL 製品に比べ 20% から 200% の性能向上

• マルチスレッド– COBOL で OS レベルのスレッド制御が可能

• デバッグ機能の強化– マルチスレッドのデバッグ– COBOL以外の言語との混在デバッグ

• 豊富なユーティリティ– コアダンプ解析ツール– データベースアクセス

12

Micro Focus Server Express

概要

13

WindowsWindows

UNIXUNIX サーバーサーバー

利 点利 点 ・  Windows GUI 環境でのエディト・デバッグ

・ アプリケーションのビルドプロセスを自動化

・ SJIS, EUC 環境を一元管理

Micro Focus Server Express

概要

14

CGI, NSAPI CGI, NSAPI の場の場合合

JAVA JAVA の場の場合合

UNIXUNIX サーバーサーバーNet Express

インターネットアプリケーションウィザード

による HTML, COBOL CGI の自動生成

Net Express によるデバッグ

SOLO配下でのローカルデバッグ

Windows

WebWeb ブラウザブラウザ

Micro Focus Server Express

概要

15

■製品の販売についてのお問い合わせ先

   エンサイクロソフト株式会社

   オペレーション推進部

Tel: 044-201-5505 / Fax: 044-201-2930

■製品に関する技術的なお問い合わせ先

   マイクロフォーカス株式会社

Tel:0120-209612

e-mail:[email protected]

Micro Focus Server Express

概要

16

Server Express 製品概要

既存 COBOL ロジックの再利用既存 COBOL ロジックの再利用

Linux/Java における COBOL の利用

プログラミングの注意点

Micro Focus 会社紹介

17

e 時代を支える COBOL

• 実績– 四半世紀を超える開発・販売・保守– ANSI 規格制定のリーダーシップ– 事実上の業界標準 COBOL– IBM メインフレーム COBOL との高い互換性– IBM ミドルウェア (TX series,MQ,DB2 等 )が唯一公式に しているサポート サー

製ドベンダー COBOL

• 多様なソリューションを支援– 既存システムから COBOL ロジックを再利用してのリホスティン

グ、 WEB化、 WEB サービスへの直接連携– COBOL 開発ノウハウを活かした新規構築– ERP パッケージとの併用– 既存の Micro Focus COBOL の最新環境への移行

• 多くのプラットフォームに対応する COBOL コンパイラ– Windows 、 UNIX ( AIX 、 HP-

UX 、 Solaris 、 Tru64 )、 LINUX– xSeries 、 pSeries 、 zSeries 、 Itanium2 、 PA-

RISC 、 SPARC 、 Alpha

18

既存システム資産の現状

• 全世界的にみると、実際に稼動している業務システムの 70%は COBOL で記述

• 1万 6千社の大企業で、今も開発言語として採用

70%

20%10%

COBOLVisual Basic

J avaその他( 含む)(出展: Giga Information Group, 2000)

19

COBOL 資産の量

• 米 IBM の推測– 98 年末時点で世界に 1500億行– 投下された資金が 5兆ドル( 600兆円)

• 米コンサルティング会社の見方– 毎年 50億行ずつコードが増えている

20

COBOL は働き盛り

• 新しい言語への不安– 基幹システムのライフサイクルは 10 年以上– プラットフォーム変更に耐えられるか

• 技術者の不足– 業務知識を持つ Java プログラマー?– 他人が書いた Java 、 C プログラムを保守?

完成度 少年期 ティーンエイジャー期 成年期 円熟期 老年期 老境期

開発言語 XML, EJ B HTML, J ava COBOL,C++

SmallTalk,RPG, C

FORTRANADA

PL/ 1

短期的展望 模索 普及 再見直し 再見直し 後退傾向 減衰傾向

次期ステップ 1年 2年 10年 5年 5年 終息

Gartner Group Gartner's Application Development Research Note, 25 February 2000.

21

メインフレーム市場

• 日本は「メインフレーム大国」• 2002 年を境にオープンへの切り替え加速

– メインフレーム利用企業の「コスト削減要求」– 紹介記事

• 2003 年 2 月 14 日• 日経 ITPro 「記者の眼」

22

適材適所、プログラム言語選択

• 現在のアプリケーション開発の前提は– Web 対応– Web システムとの連携

• プログラミング言語の選択が重要– 開発の半分以上はビジネスロジックの組上げ– 最適な言語選択が生産性と品質を向上

• COBOL と Java– フロント画面 Java 、サーバー側 COBOL– 有効桁数 18桁の COBOL は保険料率計算など安心– 「 COBOLか Java 」ではなく「 COBOL と Java 」

23

オープンシステムにおける COBOL

メインフレームオルタナティブとしての Windows 、 UNIX– COBOL バッチプログラムの高い移植性

アプリケーションサーバーとしての Windows 、 UNIX– ホスト集中型の従来型アプリケーションとの親和性

COBOL の一般的特性– 高い可読性、保守性、生産性、均質な品質

40 年間で証明された開発方法論としての COBOL COBOL プログラマの高い資質

クライアント

プレゼンテーーション

アプリケーションサーバー

サービスロジック

ロジック

サービス要求サービス要求

データアクセスデータアクセス

サーバーサイドでのビジネスロジックに COBOL の活用を

24

アプリケーションサーバー

COBOL ロジックのコンポーネント化

ビジネスロジック

EVALUATE SHOR WHEN ADD-VA PERFORM AD WHEN DELETE PERFORM DE

COMPUTE INHE = YEARS-GIVE / ( 12 + IND

IF ( CUSTOMER- > ‘20011212’ ) AND

COM+ ラッピングラッピング

ラッピングラッピング

ラッピングラッピング

ラッピングラッピング

ラッピングラッピング

.NET Framework

Java クラス

EnterpriseJava Bean

CORBAオブジェクト

クライアント

プレゼンテーーション

サービス要求

サービス要求• 多言語•HTML•ASP•JSP•VisualBasic•C# ….

• ヘテロ プラットフォーム

•メインフレーム•Windows•UNIX•Linux•モバイル端末 … .

強固なビジネスロジックをどこからでも、誰からでも…

25

• Web アプリケーション構築で COBOL を活用するために、既存COBOL 資産を活用したい

ロジックの抽出が必要• 既存 COBOL プログラム = プラットフォーム依存部 + ロジック• プラットフォーム依存部

– レガシー環境に特有の DB/DC処理部分– 画面入出力

• ロジック– 業務の計算・編集・ DB 照会 / 更新

• ロジックは入力パラメタを処理して出力パラメタを作製する手続き– CICS トランザクションの COMAREA– RECEIVE文で受け取る電文のレコード形式– IN と OUT に着目して抽出する

既存 COBOL ロジックの再利用

26

オンラインプログラムの構造

PROCEDURE DIVISION. ENTRY 'DLITCBL' USING IO-PCB ALT-PCB. PERFORM 画面入力 . PERFORM 業務処理 . PERFORM 画面出力 . GOBACK.

画面入力 . CALL 'CBLTDLI' USING GN IO-PCB MID-AREA.

画面出力 . CALL 'CBLTDLI' USING ISRT IO-PCB MOD-

AREA MOD-NAME.

業務処理 .

<<< 再利用されるロジック >>>

典型的な IMS オンライン

既存 COBOL ロジックの再利用

27

既存 COBOL ロジックの再利用

ツールの活用 – Micro Focus Revolve

クロス参照と最文書化

28

Server Express 製品概要

既存 COBOL ロジックの再利用

Linux/Java における COBOL の利用Linux/Java における COBOL の利用

プログラミングの注意点

Micro Focus 会社紹介

29

Linux による Java ベースシステム構築と COBOL

JSPServlet

COBOL

EJB

WebSphere Application ServerDB2

さまざまな連携方法で、 COBOL ロジックの利用が可能 疎結合 – バッチのみ COBOL 、 DB は共有 蜜結合 – JSP/Servlet/EJB から COBOL ロジックを利用

バッチ処理層COBOL

30

COBOL ロジックの利用方法 Micro Focus提供の mfcobol.runtime クラス

COBOL プログラムのロード、呼び出し パラメタ型変換、返却値 参照系の利用で便利

Micro Focus提供の COP Framework 別プロセスの COBOL Server により一元処理 Javaからは pure Java の ClientRequest オブジェクトでメッセージ送受信

Application Server に負担をかけない ミドルウェア経由のコンポーネント化

IBM MQ IBM TX Series (CICS) BEA Tuxedo 日立 OpenTP1 NEC TPBase トランザクション処理で利用

31

Mfcobol.runtime クラスの利用

runtimeオブジェクト

Java クラス

JVM

COBOLプログラム

COBOLプログラム

COBOLプログラム

Cobcall()

COBOLランタイムシステム

32

Micro Focus COP Framework

ClientRequestオブジェクト

Java クラスCOBOLServer

JVM

COBOLプログラム

COBOLプログラム

COBOLプログラム

Cobcall()

COBOLランタイムシステム

33

IBM TX Series による連携

Transaction GatewayECI リスエスタ

JSP/Servlet

TX Series

COBOLプログラム

COBOLプログラム

COBOLプログラム

CICS コマンド

COBOLランタイムシステム

WebSphereApplication Server

注: TX Series の Linux版は まだ提供されていません

34

Micro Focus Enterprise Server による

連携

自動生成 EJB

JSP/Servlet

Micro FocusEnterprise Server

COBOLプログラム

COBOLプログラム

COBOLプログラム

自動マッピング

COBOLランタイムシステム

WebSphereApplication Server

Micro Focusバイナリプロトコル

開発環境InterfaceMappingToolkit

注: Server Express 4.0 J にて 提供が予定されている機能です

35

ABK システム – ドイツ (ドイツにおける銀行用支払トランザクション・ソフトウェアの大手プロバ

イダ)

• ビジネスの課題

– 顧客がトランザクション・スループットの迅速化を要求– …より低いトランザクションあたりのコストで

• 解決策– 銀行用支払アプリケーションを Unix から移行– …Linux 稼動の IBM zSeries メインフレームへ– …アプリケーションの再コンパイルのみで

• 成果– 首尾よく移行が完了– 顧客のトランザクションを削減– ドイツ国内 5 万件の銀行間トランザクションのを 6 時間以内で処理

再コンパイルのみで、新プラットフォームを活用

36

Server Express 製品概要

既存 COBOL ロジックの再利用

Linux/Java における COBOL の利用

プログラミングの注意点プログラミングの注意点

Micro Focus 会社紹介

37

インタフェース設計の留意点

COBOL のデータ型のマッピング COBOL データ型と Java データ型

COBOL のレコード形式 一般に項目数が非常に多い – CICS の COMAREA など Java はひとつのメソッドに 300個のパラメータがあることを想定

していない XML などテキストベースのインタフェース

Java ではテキスト形式での交換が安全 IN/OUT パラメータの配置

OUT パラメータはテキスト型返却値にまとめると簡単 COBOL レコードをテキストへエンコード・デコードする処理が必

38

インタフェース設計の留意点

COBOL のデータ型と Java データ型Java データ型 COBOL記法 COBOL データ型 説明

byte jbyte pic s99 comp-5 1 バイトの符号付き整数

short jshort pic s9(4) comp-5 2 バイトの符号付き整数

int jint pic s9(9) comp-5 4 バイトの符号付き整数

long jlong pic s9(18) comp-5 8 バイトの符号付き整数

boolean jboolean pic 99 comp-5 ゼロ値は偽、ゼロ以外は真

char jchar (Unicode) pic 9(4) comp-5

Java 中の文字はすべて 2 バイトの Unicode 文字

float jfloat comp-1 浮動小数点数型

double jdouble comp-2 倍精度浮動小数点数型

String MF-jstring ポインタ 文字列またはバッファのアドレス、サイズおよび容量を与えるユーザー定義型

Net Express 、 Server Express が提供する COPY ライブラリとクラスライブラリで実現

39

IN/OUT パラメータのテキストへのエンコード・デコード 基本データ型は Net Express や Server Express が提供す

るメカニズムで変換される Java などで 既存 COBOL をラッピングする場合、 COBOL の

LINKAGE-SECTION に記述されたレコードを、ラッピングで変換する必要がある

レコード型は、要素を個別のパラメタにするよりも、テキスト形式にまとめて、ひとつのパラメタとしたほうが良い

“&&” のようなセパレータで区切られたテキスト表現とする COBOL の UNSTRING文で渡されたテキストを要素へ分割 COBOL の NUMVAL関数で、テキスト形式の数値を任意の

COBOL 数値型に変換可能

01 ITEM-1 PIC S9(8)V9(5) USAGE PACKED-DECIMAL.MOVE FUNCTION NUMVAL(“+123.456”) TO ITEM-1.

インタフェース設計の留意点

40

スレッド競合の回避

スレッド競合の問題 Java では、コンポーネントをサーバー上プロセス内のスレッド

としてインスタンス化する COBOL プログラム中のリソースは通常プロセス内 Static

WORKING-STORAGE SECTION のデータ オープンされたファイルの結合子

同一コンポーネントのインスタンスが同時に複数存在すると、リソースの競合が発生し、誤操作の原因となる

プロセス

Static なリソース

スレッド 1

MOVE 1 TO A

スレッド 2

MOVE 2 TO A

41

Java の場合 COBOL を利用する Java メソッドを Synchronize属性にする

同時に1インスタンスしか実行されないことを強制 COBOL コンポーネントをスレッドセーフにコンパイルする

SERIAL指令 – 同時にひとつしか実行されないように強制一般に小さい処理に適切

REENTRANT指令 – すべてのリソースをスレッド毎に作製するように強制

一般にオーバーヘッドは大きい COBOL コンポーネントをスレッドセーフに再設計する

競合するデータは THREAD-LOCAL SECTION に配置 セマフォやミューテックスを使用して、競合するロジック部分を占有す

スレッド競合の回避

42

デモ システム構成

43

ご案内

• 詳細な技術情報について– 無料定期セミナー

• Windows アプリケーション構築セミナー• Java 環境での COBOL の活用技法• 既存システムの再利用とダウンサイジング

• ユーザー事例、技術資料、製品マニュアル、ソリューションプロバイダ募集要項等http://www.microfocus.co.j p/