Download presentation
Presentation is loading. Please wait.
1
エージェントによる Web サービス連携型商取引システム 研究者 :白池美穂 指導教員:越田高志
2
1.はじめに インターネットの利用環境 l 情報の受け手であったユーザが情報の発信者に もなる双方向の通信に変化している。 Google Yahoo 新しい Web サービス マッシュアップ l 企業が提供している Web サービスをユーザ が組み合わせて新たな Web サービスを作り 出す。
3
研究の背景 Web サービス 連携 l 商取引のビジネス分野では、 複数の Web サービスの連携 がほとんどない。 l インターンシップで商取引 のシステムを開発 連携がない そこ で・・・
4
l 複数の Web サービスとそれらの連携を行 う協調エージェントを開発する。 エージェント Web サービス サーバ ネットワーク
5
2.研究目標 lWeb サービスの開発 商取引の基本手順に対応した Web サービス l 協調エージェントの開発 複数の Web サービスを連携させるエージェン ト ユースケースの商取引を 実現するシステムを開発
6
3.システムの概要 加工食品メーカ 小売業者 卸売業者 選別されたメーカ 要求 回答 信用調査会社 商品受注 Web サービス ① ② ③ ④ ⑤ ⑥⑦ ⑧ エージェント 信用調査 Web サービス 在庫確認 見積り要求 在庫確認 見積り回答 商品選別 発注 メーカ商品 受注完了 信用調査 回答 信用調査 要求 商品受注 完了 商品要求 エージェント 信用調査 Web サービス 商品受注 Web サービス
7
開発環境 Java 言語 JDK1.6 エージェントシステム Jade4.0 Web サービス Axis2-1.5 データベース MySQL
8
開発した Web サービス l 加工食品メーカ ・在庫管理 Web サービ ス ・商品受注 Web サービ ス l 信用調査会社 ・信用調査 Web サービ ス 4.システムの構成と機能
9
開発したエージェント l 卸売業者 ・ StockServiceAgent メーカの Web サービスを連携するエージェント ・ CreditServiceAgent 信用調査の Web サービスを実行するエージェント ・ ClientAgent これら 2 つのエージェントを連携し制御するエージェント
10
5.システムの実証実験 l 信用調査 Web サービス実行 ( ②, ③ ) 入力画面 出力画面
11
l 在庫管理 Web サービス実行 ( ④ ) ・選択条件 番号1:最安価の商品を選択する 番号2:特定のメーカを指定する 番号3: 100g 当りの価格が最安価の商品を選択する 信用調査完了後 (卸売業者 → 3メーカ) 1 を入力
12
l 在庫管理 Web サービスの実行結果 ( ⑤ ) (3メーカ → 卸売業者) ham_A 社 ham_B 社 ham_C 社 最安価をエージェント によって決める
13
エージェントによる選別結果 選別結果 最終確認 商品受注 Web サービス 実行 ( ⑥ ) 受注完了 メッセー ジ ham_B 社 商品受注 Web サービス 実行 ( ⑦ ) メーカ → 卸売業者 卸売業者 → メーカ
14
6.おわりに ・ 商取引の基本手順に対応した Web サービスを 開発した。 ・複数の Web サービスの連携を行うエージェント を開発した。 ・ユースケースの商取引を実現するシステム を開発した。 l まとめ
15
ご清聴ありがとうございました。 l 今後の課題 ・ ユーザインターフェースを全てコマンド プロンプトで開発した。 今後は、入出力を GUI で構成するよう 検討して行きたい。
16
エージェント連携プログラム // リクエストメッセージ作成 ACLMessage requestMsg1 = new ACLMessage(ACLMessage.REQUEST); // 自分自身のエージェント名をセット requestMsg1.setSender(getAID()); // 送信先エージェント名指定 requestMsg1.addReceiver(new AID(agname, false)); requestMsg1.setLanguage(codec.getName()); requestMsg1.setOntology(ontology.getName()); try{ manager.fillContent(requestMsg1,new Action(new AID(agname,false),request1)); // リクエストメッセージを送信 send(requestMsg1); System.out.println("Requests have been sent to Web Service Agent."); System.out.println("Agent answers the results of Web Service(getCredit)."); }catch(Exception e){ e.printStackTrace(); } ClientAgent
17
Web サービス稼働プログラム //peak6 の「在庫管理 Web サービス」実行 RPCServiceClient serviceClient = new RPCServiceClient(); Options options = serviceClient.getOptions(); EndpointReference targetEPR =new EndpointReference( ur1 ); options.setTo( targetEPR ); // メソッド指定 QName opGetStock = new QName("http://ws.apache.org/axis2", "getStockdetails"); //peak16 の「在庫管理 Web サービス」実行 RPCServiceClient serviceClient2 = new RPCServiceClient(); Options options2 = serviceClient2.getOptions(); EndpointReference targetEPR2 =new EndpointReference( ur2 ); options2.setTo( targetEPR2 ); StockServiceAgent
18
REST 型と SOAP 型の違い lREST(REpresentational State Transfer) ・ HTTP プロトコルでやり取り ・初期の学習コストが低い ・手軽に試せる lSOAP(Simple Object Access Protocol) ・拡張性が高い ・ Web サービスの実行結果を別の Web サービス の入力として扱える
19
加工食品メーカのデータベース hamtypehamnamecodepricevolumestocksmakername Roast ham slicesOban ham1000143018015000ham_A Roast hamRoast10002150040015950ham_A Boneless ham slicesSlice ham1000332012020000ham_A Boneless hamBoneless10004200034011000ham_A Raw hamRaw1000530010010000ham_A Roast ham slicesRoast1000640015015950ham_A Roast hamJukusei ham10007200042013000ham_A Stock テーブル 商品名 ハムの種類 コード 価格 内容量 在庫数 メーカ 名
20
加工食品メーカデータベース 業者名 業者 ID コード 納品日 受注日 個数 Orders テーブル
21
信用調査会社データベース nameheadaddresstelcredit CompanyAShiraikeShimane,Matsue,Nishiikuma,14-4123-456-789OK CompanyBMohammadK.Ali203 N.Goodwin Ave.,URBANA,IL 61801218-625-084OK CompanyCKousenTaro8653 Warmwell,San Diego,CA 92119.690-584-225OK Company テーブル 代表者名 小売業者名 住所 電話番号 信用結果
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.