Professor: Dr. Ahmad Abdollahzadeh Amirkabir University of Technology, Computer Engineering and Information Technology Department Intelligent Systems Laboratory Autumn 2009 Introduction to ebXML By: Roya Hosseini
رئوس مطالب معرفی ebXML توصیف اجزای اصلی ebXML مشکلات ebXML Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 2
معرفی ebXML (electronic business XML) حاصل تلاش مشترک میان UN/CEFACT و OASIS است. ebXML نحوه انجام تجارت الکترونیک را بر اساس XML بیان می کند. بعد از 18 ماه تلاش، اولین نسخه آن، نسخه 1.0 در مه 2001 ایجاد شد. هدف ebXML فراهم آوردن چارچوبی است که بتوان به وسیله آن یک بازار تجارت جهانی را ایجاد نمود. ebXML به business process ها وابسته است و چارچوبی را ایجاد می کند که شرکت ها می توانند در آن register نموده و سپس شریک تجاری خود را از طریق آن discover کنند. شرکت ها business process های خود را به شکل تعریف شده توصیف می کنند و سندهای xml آن را در رجیستری ثبت می کنند. یکی از هدف های اصلی ebXML فراهم کردن امکان انجام تجارت الکترونیکی برای سازمان های SME ( با اندازه کوچک تا متوسط ) است. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 3
در یک نگاه ebXML Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 4
ebXML شامل سه فاز اصلی است : پیاده سازی یافتن و بازیابی (discovery and retrieval) زمان اجرا Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 5
بخش های اصلی معماری ebXML عبارتند از : ebXML Registry/Repository ebXML Business Processes ebXML Collaboration Protocol Profiles(CPP) Collaboration Protocol Agreements(CPA) ebXML Core Components (CC) ebXML Messaging Service(MS) Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 6
ebXML registry /repository پایگاه داده توزیع شده در ebXML است. شامل یک واسط client برای رجیستر نمودن CPP ، CPA ، CC و object های تجاری و.... و یک واسط برای پرسش و query است. معماری registry /repository ebXML مبتنی بر معماری سرویس دهنده - سرویس گیرنده است. در این حالت ارتباط میان موجودیت ها در ebXML به وسیله HTTP و یا ebXML messaging service انجام می شود. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 7
ebXML Business Processes در ebXML یک business collaboration یک realization هست از یک business process. Business process ها برای ذخیره شدن در رجیستری باید ابتدا توسط UMM مدل سازی شوند. UMM یک روش مدل سازی در ebXML است که به کمک آن می توان یک business process و مراحل آن را توصیف نمود. business process ها به وسیله UML مدل می شوند و بعد از آن به XML تبدیل و در رجیستری ذخیره می شوند. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 8
جایگاه specification schema business process در سیستم ebXML Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 9
ارتباط میان business process specification با UMM/CPP/CPA/CC Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 10
اجزای اصلی business process specification schema Business Collaboration Business transaction Business document flow Choreography pattern Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 11
ebXML در Business Collaboration Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 12
ebXML در Business transaction Business transaction ها نقش اصلی در business collaboration را دارند و میان دو فرد با نقش های مختلف صورت می گیرند. هر business transaction دو activity دارد : Requesting business activity Responding business activity هر تراکنش یا fail شده و یا با موفقیت انجام می شود. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 13
Business document flow در ebXML هر Requesting business activity تنها یک document envelope دارد در حالیکه Responding business activity می تواند صفر یا تعداد بیشتری document envelope داشته باشد. یک document envelope به business document ها ارجاع می کند و می تواند شامل چندین attachment باشد. 14 Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML
دیاگرام UML برای Business Transaction Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 15
Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 16
دیاگرام UML برای document flow ها Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 17
Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 18
Binary Collaboration ها در ebXML بعد از اینکه business transaction ها تعریف شدند، binary collaboration ها ایجاد می شوند. یک binary collaboration می تواند با business state های مختلفی (start, complete, fork, join) realize شود. هر business transaction activity یک state می باشد. هر business transaction activity (business state) نقش های مختلفی دارد و از یک نقش شروع می شود و به نقش دیگر می رود. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 19
Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 20
Choreography Choreography برای تعیین ترتیب اجرای business transaction ها به کار می رود. برای این منظور از transition class استفاده می شود. یک binary collaboration از چندین transition تشکیل شده است. هر transition یک condition guard و یک condition expression دارد و از یک business state به business state دیگر می رود. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 21
Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 22
Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 23
ebXML collaboration protocol profile and ebXML collaboration agreement CPP توانایی ها و قابلیت های یک شرکت را توصیف می کند. به دو یا تعداد بیشتری business process که در ebXML Registry/Repository ذخیره شده است رجوع می کند. CPP اطلاعات فنی ebXML ( نوع پرتکل، امنیت، پیام رسانی و...) را نیز در بردارد. CPA اشتراک میان دو CPP است. بعد از اینکه دو شرکت بر CPA توافق کردند، سیستم ebXML خود را بر اساس آن می سازند. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 25
Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 26
ebXML Core Components موجودیت های هستند که حاوی low-level data fields هستند ( آدرس، مکان،...). Business object ها از مجموع چند cc ایجاد می شوند. business document ها از business object ها و cc ها تشکیل می شوند. تمامی document ها در ebXML Registry/Repository ذخیره می شوند. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 27
ebXML Messaging Service این سرویس امنیت، مدیریت ایراد ها و پیام رسانی قابل اطمینان را در ebXML فراهم می کند. MS براساس پرتکل TCP/IP کار می کند و وظیفه اش ارسال و دریافت پیام های XML از نقطه A به نقطه B است. ebXML بر اساس پرتکل soap کار می کند.. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 28
ساختار پیام در ebXML بسته ebXML شامل یک header container و یک payload container می باشد. header container حاوی اطلاعات ebXML و Soap می باشد. payload container حاوی خود داده است. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 29
امنیت پیام رسانی ریسک های امنیتی شامل دسترسی غیر مجاز، تهدید صحت داده، تهدید محرمانگی داده و... است. برای این منظور می توان از w3c XML signature specification برای امضا و از XML encryption برای رمزنگاری استفاده نمود. از certificate ها برای امضا نمودن استفاده می شود. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 30
مشکلات ebXML روش استانداردی برای تبدیل UML به XML وجود ندارد. استانداردی برای استخراج CPA از CPP موجود نیست. Application های امروزی قابلیت یکپارچه سازی package های نرم افزاری ebXML را ندارند. Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 31
منبع : Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 32
Roya Hosseini CEIT - Business Intelligence - Introduction to ebXML 33