به نام خدا
DESCRIPTION
به نام خدا. مروری بر معماری سرویس گرا ( SOA ). سیستم جامع دریایی. ارائه دهنده : شهرداد عزت دوست E-mail : [email protected]. فهرست مطالب. تاریخچه SOA ضرورتهای مطرح شدن SOA تعریف SOA تکنیکهای اصلی بکار رفته در SOA برداشتهای اشتباه از SOA ویژگیهای SOA مزایای SOA - PowerPoint PPT PresentationTRANSCRIPT
خدا نام بهگرا یس سرو ی مار برمع ی مرور
(SOA )
گرا سرویس معماری بر مروری(SOA )
دریایی جامع سیستم
دریایی جامع سیستمت ت ت تت ت تتت ت ت ت تتت : ت تتتتت تت
E-M AIL : SH .EZZATDOUST@ GM AIL.COM
دوست : عزت شهرداد دهنده ارائهE-MAIL : [email protected]
مطالب فهرست تاریخچهSOA مطرحشدن SOAضرورتهای تعریفSOA در رفته اصلیبکار SOAتکنیکهای برداشتهایاشتباهازSOA ویژگیهایSOA مزایایSOA دهنده SOAعناصرتشکیل سرویس و كاربردی فبرنامههای متدتوصی
تاریخچهSOA شدن مطرح SOAضرورتهای تعریفSOA در رفته بکار اصلی SOAتکنیکهای از اشتباه SOAبرداشتهای ویژگیهایSOA مزایایSOA دهنده تشکیل SOAعناصر سرویس و كاربردی های برنامه توصیف متد
SOAتاریخچه سNال SOAعبNارت بنNام 1996در گNارتنر شNرکت آنالیسNت YEFIMتوسNط
V. NATIS . این به نامبرده عبارت عین خورد سکه تحقیقی مقاله یک در: بود صورت
“SOA IS A SOFTWARE ARCHITECTURE THAT STARTS WITH AN INTERFACE DEFINITION AND BUILDS THE ENTIRE APPLICATION TOPOLOGY AS A TOPOLOGY OF INTERFACES,
INTERFACE IMPLEMENTATIONS AND INTERFACE CALLS…-…SOA WOULD BE BETTER-NAMED ‘INTERFACE-ORIENTED
ARCHITECTURE”’.
قبل SOAتفکر مدتها از نیازش و ندارد خاصی مبدع که است تفکریبحث مورد مختلف مقاالت در آن کلی مفاهیم و است بوده مشهود gکامًال
. بود کرفته قرارSOA مانند .OOنیز است پیموده را تفکر تا نویسی برنامه مسیر
شدن مطرح SOAضرورتهای
با مرتبط سیستمهای توسعه در معماری پیچیدگیجامع سیستمهای و بزرگ سازمانهای در هم
قواعد و فرآیندها در تغییر به بزرگ سازمانهای نیازنیاز و تغییرات ITتجاری این با مناسب انطباق به
سیستمهای توسعه به بزرگ سازمانهای نیازREUSABLE سیستمها نگهداری های هزینه کاهش و
نیاز و سازمانی بین تعامًالت همراهی ITتوسعه بهراستا این در
5
گرا سرویس معماری تعریفسیستمهای ساختن برای است راهی گرایی سرویس - گرایی سرویس ، حالتش ترین انتزاعی در شده توزیع – از بیند می سرویس كننده ارائه عنوان به را چیز همه
كاربردی های . MAINFRAMEبرنامه ارائه چاپگر یک تابه رابطها طریق از خودرا های قابلیت سرویس كنندگان . را قابلیتها این گرا سرویس معماری گذارند می نمایشدر قابلیتها این تا كند می منطبق رابطها با . خود شده تشكیل جدید فرآیند شوند فرآیندهاهماهنگرا جدید قابلیتهای از ای مجموعه كه است سرویس نیزیك . جداسازی سرویس، مدل مهم اصل میگذارد نمایش به . سرویس این فراخوان است سازی پیاده و ها رابط بیناینكه بدون ، كند درك را رابطها كه دارد نیاز فقط و فقط . میتواند سازی پیاده شود مختل گیرنده سرویس كار . همان كه بدانیم است جالب شود كامل زمان درطی
. شود ارائه سازی پیاده چندین بوسیله میتوانند رابطها
خرید
E-commerceportal
ها مشتری با ارتباط سرویس
مشتری مندی رضایت سرویس
و شناسی هویت سرویسسنجی اعتبار
فروش سرویس
پرداختنی سرویس
SOA درعمل
Service Service Service
Service Service Service
Bus
زیر بین ارتباط مشکل حلاز استفاده با ESBسیستمها
رفته بكار اصلی در تكنیكهایSOA
COMPONENT- BASED DEVELOPMENT
OBJECT ORIENTATION
BUSINESS PROCESS ENGINEERING
واقعی و آل ایده اشتباه، برداشتهایSOAاز
: با SOAاشتباه WEB SERVICESمتناظرو شده SOAاست توزیع سرویسهای معادل
است.
: آل مناسبی SOAایده بسیار بندی تقسیمبه را آنها و میدهد بدست تجاری ازسرویسهای
. کند می بازنمایی سازگار شکلی
: واقعیتSOA انجام روش در زیربنایی تغییری . است حرفه
SOAویژگیهای
Loosely coupled :به را سرویسها بین ارتباطات . میرساند حداقل
Contractual :توصیف در که توافقی به التزام . است آمده سرویسها
Autonomous :بطن در که تجاری منطق کنترل . است شده پوشانده سرویس
Abstract :کنندگان مصرف از را تجاری منطق . کند می مخفی سرویس
(SOA ویژگیهای ادامه ) در افزار نرم های اساس SOAمولفه بر که هستند سرویسهایی ،
. اند شده بنا استاندارد قراردادهای
در که ارتباطی ساختار شود SOAزیر طراحی بصورتی باید میشود استفاده . باشد مستقل زیرین پروتکل الیه از که
فراخوانی که صورتی در ، میدهد ارائه را درشت دانه تجاری سرویسهای . هستند ریز دانه ها افزار نرم در توابع
SOA های پروژه برای .Enterpriseبیشتر است کاربرد قابل بزرگ و
حل راه یک سازی باید SOAپیاده و است نشیب و فراز پر مسیر یک ابتدایدیده درستی به ارتقاء و نگهداری های روش و سازی فرهنگ سازمان در
شود.
Distribution اصلی های ارمغان از های SOAیکی سیستم معماری در. است افزاری نرم
. آورد می ارمغان به تغییرات برابر در را سازمان پذیری انعطاف و چابکی
. کند می کم را تکنولوژی به وابستگی
. ) / ندارد ) متمرکز غیر متمرکز استقرار نحوه به وابستگی
. سازد می آسان را سازمان سازی یکپارچه
. سازد می میسر را فرایندها سازی بهینه و فرایندها آنالیز امکان
انطباق در موجود می Businessو ITمشکالت تقلیل را سازمانها دردهد.
. دهد می کاهش را ها سیستم نگهداری های هزینه
SOAمزایای
SOAعناصر SERVICE MESSAGE INTERFACE CONTRACT POLICY CONVERSATION STATE TRANSACTIONS PROCESS
سرویس
Policy
Service
State
Message
Logic
سرویسها
پیاده در قادرند که افزاری نرم های واحدو رد طریق از یکدیگر با ، منطق سازی
. کنند برقرار ارتباط پیغامها نمودن بدل شئی یا و مولفه همانند سرویس یک
است. را خود به مربوط داده سرویس هر
. میکنند مدیریت
پیامها بعدی سرویس به سرویس یک از که اطالعاتی های واحد
. میشوند منتقل
. باشند ساختاریافته بسیار باید
و - نویسان برنامه بین ساختار این اسکیما از استفاده با. میشوند بدل و رد سرویسها
پیام یک فهم برای نیاز مورد اطالعات تمامی شامل بایدباشد.
. سازد فراهم را مختلف های تکنولوژی بین ارتباط اجازه
پیامها پردازش زیرساخت
Message processing infrastructure
Message processing infrastructure
Service
Service
Serialize
Encrypt
Sign
Deserialize
Authenticate
Audit
Log
ReliablemessagingEventing
Monitoring
Routing
Authorize
BusinessDocument
Service Interface
سرویس رابطهای
Service
Service
Businessdocument
Service interface
Contract
Service
Service
قرارداد
Process
DocumentA
DocumentC-1
DocumentC-2
DocumentB
EitherC-1 or C-2
Process
ContractService interface
Service interface
Service interface
Service interface
قرارداد
. است ستد و داد یک کامل کننده تعریف داد قرار یک
. است تجاری آداب یک داد قرار یک
. مینماید تعریف را آنها غالب و پیامها کلیه
. مینماید تعریف را پیامها ممکن های ترتیب کلیه
. میکند تعریف را شناسی هویت روش و پروتوکلها تمامی
چندگانه سرویسهای مشکًالت
انبار
مدیریت سفارشات
CRM
مالی
تولید
فرآیندی سرویسهای
سرویس سرویس تجاری
تجاری
سرویس تجاری
سرویس تجاری
سرویس
فرآیندی
فرآیندی سرویس
فرآیندی سرویسهای مزایای
. دهد می کاهش را فرآیندی تغییرات هزینه
. کند می کم را وابستگی میزان
. سازد می ساده را وظایف توزیع
ساده را استثنائات رفع ، مدت طوالنی تراکنشهای از استفاده بامیسازد تر
تجاری سرویسهای
Business Service
Business Service
Business Service
Business Service
ProcessService
Process Service
های مولفه تجاری
های مولفه تجاری
های مولفه تجاری
های مولفه تجاری
تجاری فرآیندهای
فرآیندهای تجاری
سرویسهای بندی الیه از ای نمونهتجاری
Service
Service façade
Business entity layer
Data representationlayer
Dataaccessors
Dataaccessors
Businessentities
Businessentities
Process service
های برنامه توصیف متدسرویس و كاربردی
CHF Pt 2 27
Scenarios and Business Processes
Data AnalysisFunctionalAnalysis
Initial Vision and Scope of Domain
DataModelling
Use Cases
DataSubjects
FunctionalDecomposition
AffinityAnalysis
BusinessComponents
Service Definition
Service Interface Components and Business Process Components
AgreedVision
Verify
Co-ordinate
Co-ordinate
Co-ordinate
Clusters
Candidate Components
Mapping
Reconcile& Reiterate
SOA – Service & Application Definition Method
ApplicationDefinition
Development ProjectDefinition
Mapping
Mapping
1
2
34
6
8
7
9
5
سرویس و كاربردی های برنامه توصیف متد
دامنه: 1گام دورنمای و اولیه انداز چشمها: 2گام سناریو و تجاری های فرآیندتجزیه: 3گام و كاربری موارد ، كردی كار تحلیل
كاركردیداده: 4گام و ها داده سازی مدل ، ای داده تحلیل
موضوعی هایوابستگی: 5گام تحلیلتجاری : 6گام های مولفه تعریفسرویسها: 7گام تعریفهای: 8گام مولفه و سرویس رابط های مولفه
تجاری فرآیندهایبه: 9گام انداز چشم و كاربردی های برنامه تعریف
رسیده توافق
دامنه: 1گام دورنمای و اولیه انداز چشم
شد خواهد پرسیده زیادی سئواالت انداز چشم فاز دربیاوریم؟ - بدست میخواهیم را چیزی چه
چیست؟ - سازمان مقاصد و اهدافدهیم؟ - می قرار خطاب مورد را تجاری مشكالت چه
است؟ - موجود مدونی های مندی نیاز چه - و تجاری فرایند معنی به تجاری وسعت و كرانه
چیست؟ تشكیالتی ساختارخارج - چیزی چه و دارد وجود محدوده در چیزی چه
است؟ آن از
ها: 2گام سناریو و تجاری های فرایند
تعدادی صورت به را اولیه انداز چشم توانیم می آیاآینده و جاری های فرآیند به را آنها و كرده سناریوبیان
سازیم؟ مرتبط
. كنیم می سازی مستند را ها سناریو این
روالهای فهم به منجر كه تجاری فرایند تعریف شروع . شود می نیاز مورد ای داده و كاربردی و كاری
كاركردی: 3گام تجزیه و كاربری موارد ، كردی كار تحلیل
و تجزیه را نیاز مورد وظایف ، كاربردی موارد از استفاده با . كارها از زیادی تعداد كه شویم می متوجه بزودی میکنیم تحلیل
كاربری موارد از تعدادی در چون هستند تكراری عملیات و . اند گرفته قرار استفاده مورد دوباره
، خطاب مورد تجاری نواحی و مشابه عملیات شناسایی برایمراتب سلسله یك در سازی خالصه و بندی گروه بوسیله را آنها
. میکنیم مرتب ای وظیفه تجزیه دریك یا
. در فعالیت هر میکنیم تركیب را شده تجزیه های وظیفه اكنونای وظیفه تجزیه در واحد اتفاق یك عنوان به باید تجاری فرآیند
. باشد موجود
كاركرد و تجاری فرایندهایتجاری
تجاری كاركرد انجام یك سازمان یك كه است کاری...... دهد می
. آن انجام برای است راهی تجاری فرایند یك
تشكیل را مراتبی سلسله ساختار یك تجاری كرد كار. دهد می
نماید می ای شبكه ساختار یك ایجاد تجاری فرایند
تجاری فرآیند سه
A X Y E
D
Start End
A M C N
D
Start End
A B C E
D
Start End
Pro
cess
1
Pro
cess
2
Pro
cess
3
Process Steps
پردازشی شبکه ساختار
DA X Y E M C N B
Process1
Process2
Process3
All Processes
Process Steps (Elementary Processes)
سلسله ساختار به حرفه فرآیندتوابع مراتبی
A X Y E
D
Start End
A M C N
D
Start End
A B C E
D
Start End
X C N D Y EMBA
Function 1 Function 2 Function 3
Overall
Pro
cess
1
Pro
cess
2
Pro
cess
3
Process Steps (Primitive Functions)
کارکرد تجزیه
Manage & OperateHealthcare Systems
Manage Access
Manage
Patient Journeys
Patient Logon
(Authentication)
Patient Logoff
Professional Logon
(Authentication)
Professional Logoff
Manage Patient
Information
Maintain Health
Classifications
Manage Patient
Care Records
Apply Patient Search
Manage Own Patient’s Details
View Own Personalized Area
View Own GP’s Details
Manage Own General Health data
Manage Donor Details
Manage Patient Details (by Prof)
Manage Family Members
View Immunizations/Vaccinations
Manage Personal Preferences
View Personalized Area (by Prof)
View Patient Health Records
Apply Clinical Override
Review Clinical Overrides
Generate Patient Events
Manage Own Patient Events
View Own Medical History
View Patient Journey
View Own Patient Journey
Manage
Patient Consents
Define General Consents
Manage Own Consents
Manage Care Relationships
Maintain Care
Pathways
Maintain Health Subject
Capture Clinical Codes
Model Clinical Codes
Perform Clinical Code
Translation
Maintain Care Pathways
Manage
Appointments
ManageOrganizational
Structure
Maintain Professional
Register
Book Appointment
Change Appointment
Access GP &
Hospital Systems
Access System Index
Access Event Detail
Maintain Clinical Processes
Maintain Role Definitions
Maintain Group/Team Structure
Maintain Group/Team Membership
Maintain Permission Delegations
Maintain Professional
Permissions
Maintain Professional Register
Maintain Specific Permissions
Define General Permissions
View Own Prof PermissionsDefine Role-based Access
Construct Patient Journey
Manage Referrals
موضوعی: 4گام های داده و ها داده سازی مدل ، ای داده تحلیل
چك چند و رود می پیش كاربردی تحلیل موازات به گام این . با كه است ها داده مدل توسعه هدف گیرد می صورت نیزرا ای وظیفه های نیاز از ردیفی كه قبولی قابل عمق و دقت
. بپذیرد صورت گیرد، بر در
كاربردی موارد تمامی كه شویم مطمن باید بخصوصطور به های داده تمامی و دارند صحیح های داده موجودیت
. اند شده داشته نگه بروز و وارد درستی
سطح در شده تعریف های موجودیت تمامی با ای داده مدلتمامی و شده تعین اصلی كلیدهای و میشوند بیان منطقی
. میشوند معین نیز چند به چند روابط
شده گرفته نظر در ضمنی طور به ها داده كردن نرمال روالبلوك. ” صورت به دارند تنگاتنگی ارتباط كه ی موجودیتها است . “ نام به گاهی ها گروه این شوند می بندی گروه ها داده “ های” مولفه تشكیل و شوند می نامیده ای داده موضوع
. دهند می را تجاری
وابستگی: 5گام تحلیل
. و مینماییم تحلیل را ای وظیفه كاربردهای و ها داده بین روابطگروه چند های به داده و تجاری ارزش دارای كه كفا خود
. كافی به كه هستند تجاری های مولفه اینها میرسیم باشند میبرنامه نهایی ساخت در ساخته ازپیش بلوكهای صورت
می سرویس را تجاری های فرایند و نموده شركت كاربردیدهند.
ها مولفه هستند این درشتی دانه كپسول اشیاء خصوصیات كه . كه همینطور میباشند دارا را گرایی شیئ مفهوم در سازی
گردهمایی صورت به ها مولفه این یابد، می ادامه توسعهخصوصیت كه كنند می ریزتربروز دانه نمایش OOاشیاء به را
. گذارند می كار به درشت دانه های مولفه تعریف برای كه هاییكه تكنیك
به كه هستند آنهای روند clustering and affinityمیanalysis . هستند. موسوم
) را ) كسترده صفحه صورت به معموال ماتریسی مجموع، درموجودیتهای حسب بر وظایف از شده تشكیل كه میسازند
عملیات به و دهد می نشان را آنها بین روابط كه ای داده CRUD(Create, Read, Update , Delete)معروف
. است موسوم( بندی یا Uو Cروی( clusteringخوشه كاندید های گروه
تجاری های . مولفه كه است معنی بدین این مینماید تعریف راو آورند می وجود به را ها داده فقط ها وظیفه گروه، هر در
. رسانند می بروز
تجاری : 6گام های مولفه تعریف
لیست یك صاحب ، اول مرحله پایان در ما اكنون. هستیم كاندید تجاری های مولفه
،اند شده تكمیل تجاری موقتی های وظیفه حد در اینهابر داللت كه هستند لیستی یك و داده دارای
. دارند شده عرضه سرویسهای
است ممكن كاندید تجاری های به مولفه موقتاهای مولفه نام به مولفه قسمتهایی و تجاری منطقی
. شوند تقسیم داده موجودیت های
وظیفه كاربرد و داده از دقیقتری تعاریف همچنین مانیز آمدند بدست ای وداده ای وظیفه تحلیل در كه ای
. میگیریم نظر در
سرویسها: 7گام تعریف
ها مولفه توسط شده مصرف و عرضه سرویسهایتر رسمی ، پاسخ و درخواست اسكیمهای ذكر با را
. میکنیم تعریف
گام در كه تجاری فرایند و سناریوها به مراجعه 2با : تمامی آیا که میشود بررسی شد داده توضیح
تعریف سرویسهای با تجاری فرایندهای و سناریوهاای داده نظر از چه و ای وظیفه نظر از چه شده
. شوند می حمایت
فرایند: 8گام های مولفه و سرویس رابط های مولفهتجاری
درستی به شده انتخاب كاربردی برنامه های مؤلفه. نمایند می تامین را نظر مورد قابلیتهای
ایجاد درستی به پیامها تمامی كه كنیم می بررسی. اند كرده دریافت پاسخ و شده
رسیده: 9گام توافق به انداز چشم و كاربردی های برنامه تعریف
برنامه این كه صورت این به را نهایی كاربردی برنامه تعریفمینماییم بازبینی و میكنیم فرموله دهد انجام باید را كاری چه
. شوند می برآورده ها نیاز آیا كه
میكنیم سازی مستند را تجاری های مولفهتوصیفات -
- تعامل - چگونگی سرویس رابطشوند - – می حمایت كه هایی وظیفه تجاری منطقی مولفه
ها - – داده مدیریت تجاری موجودیتهای مولفههایی - – داده چه به ای داده های پایگاه ها داده به دسترسی های مولفه
باشند داشته باید دسترسی( - سرویس – service agentsعوامل سرویسهای( به كه
. ) دارند) دسترسی خارجی دیگر
شما توجه از تشکر با
؟ پرسش