電子情報通信学会 2006年総合大会 Webサービス標準化 の提案と実装 2006年3月26日 松江工業高等専門学校 越田高志.

Slides:



Advertisements
Similar presentations
1 WSIF における Web サービス・メソッドの自動設 定 2004 年 3 月 23 日 越田高志 松江工業高等専門学校 情報工学科 電子情報通信学会 2004年総合 大会.
Advertisements

1 プリミティブ Web サービスの 入出力データに関する一考察 2005 年 3 月 21 日 松江工業高等専門学校 情報工学科 奈良先端科学技術大学院大学 情報科学研究科 越田高志 電子情報通信学会 2005年総合 大会.
OWL-Sを用いたWebアプリケーションの検査と生成
6.4継承とメソッド 6.5継承とコンストラクタ 11月28日 時田 陽一
相互作用図 FM11010 田中健太.
PROCESS 14:一般情報(2) InstallShieldLecture
ヘルスケア連動型 市販薬検索システム 研究者 : 加納 えり 指導教員 : 越田 高志.
Webサービスに関する基本用語 Masatoshi Ohishi / NAOJ & Sokendai
JPAを利用した RESTful Webサービスの開発
Web-EDI方式 シナリオ1 [実験番号] : 実験タイトル 1 :標準類の評価
Visual Studio 2005による XML Web サービス入門
WebサービスII (第10回) 2007年11月28日 植田龍男.
WSDL と JAX-RPC 年10月13日 Webサービス II (第3回) WSDL と JAX-RPC 年10月13日.
Javaのインタフェース についての補足 2006年5月17日 海谷 治彦.
「まめだくん Ver.1.0」 特徴と利用方法.
Webを利用した授業支援システムの開発 北海道工業大学 電気電子工学科 H 渋谷 俊彦.
変数のスコープの設計判断能力 を育成するプログラミング教育
リファクタリングのための 変更波及解析を利用した テスト支援ツールの提案
同期的にアドバイスを活性化できる分散動的アスペクト指向システム
WSDL と JAX-RPC 年10月20日 Webサービス II (第4回) WSDL と JAX-RPC 年10月20日.
2005年10月6日 植田龍男 Webサービス II (第2回) 年10月6日 植田龍男.
第20章 Flyweight ~同じものを共有して無駄をなくす~
ユースケース オブジェクト指向の要求分析のためのモデル。 スウェーデンのイヴァー・ヤコブソンが1990年代前半に開発。
C++とオブジェクトデータベース入門 8.オブジェクトデータベースとは 森井 喬 Webページ
RMI ソフトウェア特論 第6回 /
入出力データ型に透過な Webサービス動的実行システム 松江工業高等専門学校 情報工学科 越田高志 情報処理学会第68回全国大会
第12回 2007年7月13日 応用Java (Java/XML).
第10回 2007年6月29日 応用Java (Java/XML).
SOAP/UDDI/WSDLによるB2Bシステムの開発
SOAP/UDDI/WSDLによるB2Bシステム構築の一事例
細かい粒度で コードの再利用を可能とする メソッド内メソッドと その効率の良い実装方法の提案
独習JAVA 6.8 コンストラクタの修飾子 6.9 メソッドの修飾子 6.10 ObjectクラスとClassクラス 11月28日(金)
オブジェクト指向 プログラミング 第十一回 知能情報学部 新田直也.
第11回 2007年7月6日 応用Java (Java/XML).
暗黙的に型付けされる構造体の Java言語への導入
WebサービスII (第7回) 2007年11月7日 植田龍男.
オブジェクト指向プログラムにおける エイリアス解析手法の提案と実現
ユーザ毎にカスタマイズ可能な Webアプリケーションの 効率の良い実装方法
Webサービスによる 加工工程決定支援システム
Web-EDIのシステムを利用するには 1.「パソコンとインターネット」を利用できる環境が必要です
10-1 SAXの概要 10-2 Saxプログラミングの基礎 10-3 saxのプログラム例
加工工程決定支援システム 電子情報通信学会 2010年総合大会 2010年3月18日 松江工業高等専門学校  情報工学科 越田 高志.
加工工程決定支援に対する自動化 電子情報通信学会2008年総合大会 松江工業高等専門学校 情報工学科 越田 高志, 牧 聡史
7.4 intanceof 演算子 7.5~7.9パッケージ 2003/11/28 紺野憲一
通信機構合わせた最適化をおこなう並列化ンパイラ
調達見積回答 [インストラクタ・ノートがここに表示されます(ある場合)].
ソフトウェア制作論 平成30年11月21日.
プリミティブWebサービスとエージェントによる商品調達B2Bシステムの設計と実装
オブジェクト指向 プログラミング 第十ニ回 知能情報学部 新田直也.
シナリオを用いたレビュー手法PBRの追証実験 - UMLで記述された設計仕様書を対象として -
RDFの生産工程管理システムへの適用 情報処理学会 第74回全国大会 2012年3月6日 松江工業高等専門学校  情報工学科 越田 高志.
マイグレーションを支援する分散集合オブジェクト
生産工程管理支援システム -検索Webサービスの実行自動化-
ISO23950による分散検索の課題と その解決案に関する検討
仮想マシンと物理マシンを一元管理するための仮想AMT
「マイグレーションを支援する分散集合オブジェクト」
セマンテックWebを利用した加工工程決定支援システム
セマンティックWebの 生産管理システムへの適用
@MD-NET Web-EDI導入について ~ 説明会資料 ~
ユビキタスコンピューティングの ための ハンドオーバー機能付きRMIの実装
ゲームのタスクシステム 導入編 レベル2くまー By keychan.
プログラム分散化のための アスペクト指向言語
オントロジーを利用した Webサービスの実行支援に関する研究
生産工程管理支援 GUIシステム 電子情報通信学会 2014年総合大会 2014年3月19日 松江工業高等専門学校  情報工学科 越田 高志.
エイリアス関係を考慮した Javaプログラム用静的スライシングツール
セマンティックWebの 生産管理システムへの適用
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
地理情報コンテンツ・データベースコンテンツ新規作成
第6章 インターネットアプリケーション 6.1 インターネットアプリケーション 6.2 Javaによるネットワーク処理 6.3 電子メール
P2Pによる協調学習システム 唐澤 信介   北海道工業大学 電気工学専攻.
Presentation transcript:

電子情報通信学会 2006年総合大会 Webサービス標準化 の提案と実装 2006年3月26日 松江工業高等専門学校 越田高志

1.はじめに Webサービスとは Webサービスを構成する基本技術 Webサービスの問題点 データアクセスプロトコルとしてSOAPを用い,XML形式でデータ交換を行う分散処理プログラムのこと. Webサービスを構成する基本技術 SOAP,UDDI,WSDLである. Webサービスの問題点 ユーザが必要とする,または利用したいWebサービスの検出が難しい. ユーザがWebサービスを利用する際に,その機能や入出力インターフェースなど利用法について短時間で正確に知ることが難しい.

Webサービスに関して,その名称,機能説明,入出力IFに関する規約などはなく,全て提供者に委ねられている.     従って, ユーザは利用するWS個々に機能,入出力データの確認と理解が必要である. 標準化することによって,理解と確認を容易にする. 解決 Webサービスの標準化 プリミティブWebサービスの提案[1]

プリミティブWebサービス 定義 : 様々なビジネス分野で,共通に利用 可能な一意に統一された名称,機能,入出力IFをもつ標準化されたWebサービスとして定義する. WSに対する曖昧さ,不確定性が無くなる. 一度,それについて理解すれば良い. 任意のビジネスプロセスに対しても,ユーザ主体で PWSの組合せとして処理できる. PWSを実現するためには,どうすれば良いのか?  (入出力IFの統一,スタブレス実行が必要)

Webサービス実行の流れ UDDIレジストリ Webサービス提供者 ユーザ クライアント・プログラムの作成と①~④を自動化した. WSDLファイル Webサービスに関する情報 ・Webサービス,WSDLのアドレス Webサービスの登録 ②情報 ①検索 ④結果 ユーザ ③実行 クライアント・プログラムの作成 クライアント・プログラムの作成と①~④を自動化した.

2.Webサービスのデータ型について 入力IFの統一とスタブレス実行が必要! WSの実行を動的,かつ自動化したい. 基本型と複合型(基本型を複数個組み合わせたもの) 複合型の場合,実行前にそのデータ型に対応したJavaBeansクラスの開発が必要. それを自動化した出力データ型に依存しない,自動化・統合化されたWS動的実行システムは開発済み. 現在のWSは,入力データ型は基本型である. (何故なら,複合型にすると,実行時にユーザ側で複合型に対応したJavaBeansクラスを用意する必要がある.)

入力データ型が複合型の利点 →  1つのオブジェクトとして操作できるので,コードが  シンプルになり,開発と処理操作が容易になる.データ内容がカプセル化できるので, 入出力データ型の一元化も可能になる. public class GoodsService6{ // (A) 基本型入力データ  public SData6 getStocks(String btype, Stirng id, String gcode, int quantity, int price) throws Exception{ public class GoodsService6{ // (B) 複合型入力データ  public SData6 getStocks(GData6 details) throws Exception{ データ型と順番!

入出力データ型に依存しないWebサービス動的実行システム WSの入力データ型に複合型を使いたい.そうなれば,入力データ型の一元化 → WSの標準化 ユーザ側でその複合型WSが容易に利用できることが必要である. その入力複合型に対応したJavaBeansクラスを動的に生成し,かつスタブレスで実行可能にすれば良い. 入出力データ型に依存しないWebサービス動的実行システム 開発

入出力データ型がともに複合型であるWSに対する処理の流れ

複合型入出力データをもつWSのWSDL記述の一部 <wsdl:types> <schema targetNamespace="http://10.70.51.20:8080/axis/services" xmlns="http://www.w3.org/2001/XMLSchema"> <import namespace="http://schemas.xmlsoap.org/soap/encoding/" /> <complexType name="GData6"> <sequence> <element name="beertype" nillable="true" type="xsd:string" /> <element name="quantity" type="xsd:int" /> </sequence> </complexType> <element name="GData6" nillable="true" type="tns1:GData6" /> <complexType name="SData6"> <sequence> <element name="beercode" nillable="true" type="xsd:string" /> <element name="beername" nillable="true" type="xsd:string" /> <element name="casevalue" type="xsd:int" /> <element name="totalcost" type="xsd:int" /> <element name="unitvalue" type="xsd:int" /> <element name="SData6" nillable="true" type="tns1:SData6" /> </schema> </wsdl:types> <wsdl:message name="getStocksRequest"> <wsdl:part name="in0" type="tns1:GData6" /> </wsdl:message> <wsdl:message name="getStocksResponse"> <wsdl:part name="getStocksReturn" type="tns1:SData6" /> </wsdl:message> 入力データ部分 出力データ部分

3.標準化されたWebサービスの開発 RosettaNetの製品調達PIPsに対応したPWSを開発し,  ビジネスプロセスに沿ってその実行を確認した. PIPの種類 説明 3A1 製品見積もりの要求 3A4 製品発注の要求 3A10 製品見積もり受領通知 3A13 製品発注の受領通知 バイヤー セラー

3.1 製品調達ビジネスプロセスの流れ (1) バイヤーから 製品見積もり要求(3A1) → セラーに送信する. 3.1 製品調達ビジネスプロセスの流れ (1) バイヤーから 製品見積もり要求(3A1) → セラーに送信する. (2) セラーはそれを受けて,指定された項目に対して供給が可能か否か   を回答する.この回答送信に対しては,セラー側で用意した伝票番   号が新たに出力データに追加されて,返信される. (3) バイヤーから 見積もり受領通知(3A10) → セラーに送信する. (4) その後,バイヤーから 製品発注要求(3A4) → セラーに行う. (5) セラーはこの製品発注要求を受けて,その伝票番号をチェックして,   既に製品見積もりプロセス(3A1)が完了していることを確認した後,受  注完了通知をバイヤーに返す. (6) バイヤーは,セラーからの受注完了通知を受取った後に,→ 受注受  領通知(3A13) → セラーに送信する.

3.2 プリミティブWebサービスの設計と実装 PIPsに対応したPWSを設計・開発した. PIP PWS名 メソッド名 入出力データ型 3A1 DataManage1 requestQuote   Order 3A4 DataManage2 requestOrder 3A10 DataManage3 requestReply 3A13 入出力データ型OrderのWSDL記述を示す.

入出力データ型OrderのWSDL記述 <complexType name="Order"> <sequence>   <element name="customerID"   type="xsd:int"/>   <element name="customerName" type="xsd:string"/>   <element name="message"     type="xsd:string"/>   <element name="orderDate"    type="xsd:string"/>   <element name="orderID" type="xsd:string"/>   <element name="passwd"   type="xsd:string"/>   <element name="price" type="xsd:int"/>   <element name="productCode" type="xsd:string"/>   <element name="quantity" type="xsd:int"/>   <element name="receiptDate" type="xsd:string"/>   <element name="sellerID“ type="xsd:int"/>   <element name="sellerName" type="xsd:string"/>   <element name="totalPrice“ type="xsd:int"/>   <element name="unit" type="xsd:int"/> </sequence> </complexType> 入出力データ型OrderのWSDL記述

図2 セラーにおける PWSの配備状況

図3 DataManage1 PWSの実行結果

4.まとめ ・複合型入出力データを利用することで,入出力IFが 統一されたWS標準化(PWS)が実現できる. ・その標準化されたWSの利用促進には,入出力デー タ型に依存しないWS動的実行システムを利用する 必要がある(それも併せて開発済み). ・標準化されたWS(PWS) ⇒ RosettaNetの商品調  達ビジネスプロセスに対応したPWSを開発・実装・ 動作実験を行い,提案の有効性を確認した.