چکیده
1
مقدمه
2
فصل اول: کلیات معماری سرویس گرا
1-1) تعاریف اولیه
5
1-1-1) سبک معماری مبتنی بر سرویس
5
2-1) اهداف تحقیق
7
3-1) پیشینه تحقیق
8
4-1) روش کار و تحقیق
10
5-1) مقایسه ای بر مدلهای توسعه وابسته به معماری
11
1-5-1) توسعه مبتنی بر object
11
2-5-1) توسعه مبتنی بر مؤلفه
12
3-5-1) محاسبات توزیع یافته
13
4-5-1) معماری سرویس گرا
14
1-4-5-1) توسعه مبتنی بر سرویس
15
2-4-5-1) قابلیتهای معماری سرویس گرا
17
6-1) مؤلفه های SOA
18
7-1) اصول سرویس گرائی
21
8-1) سرویس گرائی و تشکیلات سازمانی
27
1-8-1) لایه های سرویس
29
1-1-8-1) لایه سرویس کاربردی
32
2-1-8-1) لایه سرویس تجاری
34
3-1-8-1) لایه سرویس همنوائی
34
2-8-1) سرویسهای Agnostic
37
فصل دوم : تحلیل مبتنی بر سرویس
1-2) چرخه حیات معماری سرویس گرا
40
2-2) استراتژیهای تحویل SOA
41
1-2-2) روش پایین به بالا
41
2-2-2) روش بالا به پایین
43
3-2-2) روش Meet-In-The-Middle
45
3-2) تحلیل سرویس گرا
47
1-3-2) اهداف تحلیل سرویس گرا
47
2-3-2) پروسه تحلیل سرویس گرا
48
فصل سوم : الگوها و اصول طراحی
1-3) نکات قابل توجه طراحی
52
1-1-3) مدیریت دانه بندی سرویس و مؤلفه
52
2-1-3) طراحی برای قابلیت استفاده مجدد
53
3-1-3) طراحی برای قابلیت ترکیب سرویس
54
1-3-1-3) اتصال و همبستگی
54
2-3) رهنمودهای عمومی
55
1-2-3) استانداردهای نامگذاری
55
2-2-3) طراحی عملیات سرویس به شکلی که ذاتا قابل توسعه باشد
56
3-2-3) تعیین متقاضیان مطرح سرویس
56
3-3) الگوهای طراحی و انواع معماری
57
1-3-3) الگوها
58
2-3-3) طراحی بنیادی
59
فصل چهارم : راهکار پیشنهادی
1-4) مرحله 1 بازبینی لایه بندی سیستم SOA
64
1-1-4) فعالیت 1 مروری بر استراتژیهای لایه بندی
64
2-1-4) فعالیت 2 بازبینی لایه بندی فاز تحلیل
66
3-1-4) فعالیت 3 معرفی لایه های تخصصی تر
67
1-3-1-4) لایه داده
67
2-3-1-4) لایه دسترسی سرویس
70
3-3-1-4) لایه تعامل
71
2-4) مرحله 2 تحلیل تغییرپذیری
77
1-2-4) فعالیت 1 شناسایی انواع تغییرپذیری
79
2-2-4) فعالیت 2 مدلهای موجود برای تغییرپذیری
83
3-2-4) فعالیت 3 گروهبندی و مدلسازی تغییرپذیری
84
4-2-4) فعالیت 4 نگاشت نقاط تغییرپذیر
87
3-4) مرحله 3 سرویسهای فاز طراحی
89
1-3-4) فعالیت 1 تعیین سرویسها
90
2-3-4) فعالیت 2 جایگاه سرویسهای کنترلی
98
4-4) مرحله 4 مروری بر دانه بندی
99
1-4-4) فعالیت 1 تکنیک دانه بندی سرویسها و چنددانه ای بودن
102
2-4-4) فعالیت 2 متدهای چند دانه ای سرویسها
104
5-4) مرحله 5 مدلسازی فرایند
108
1-5-4) استفاده از مدلسازی فرایند برای طراحی معماری سرویس گرا
108
2-5-4) ابزار مدلسازی فرایند
109
3-5-4) فعالیت طراحی فرایند کسب و کار مبتنی بر سرویس
113
فصل پنجم : بررسی موردی
1-5) انتخاب بررسی موردی
115
1-5) سیستم سفارش کالا
116
3-5) تحلیلی بر راهکار پیشنهادی
134
فصل ششم : نتیجه گیری و پیشنهادات
1-6) نتیجه گیری
136
2-6) پیشنهادات
138
مقاله
139
پیوستها
140
منابع و ماخذ
فهرست منابع فارسی
196
فهرست منابع لاتین
197
سایتهای اطلاع رسانی
200
اختصارات
201
چکیده انگلیسی
202
شکل 1-1) میان افزار مبتنی بر پیغام[24]
14
شکل 2-1) مدل مفهومی معماری سرویس گرا[24]
15
شکل 3-1) توسعه مبتنی بر سرویس[24]
16
شکل 4-1) یک دیدگاه اولیه از چگونگی قرار گرفتن منطق خودکارسازی در داخل واحدها توسط SOA
20
شکل 5-1) عملیاتهایی که به سرویسهای متفاوتی تعلق دارند و بخشهای متنوعی از منطق پروسه را نمایش می دهند.
20
شکل 6-1) چگونه مؤلفه های یک معماری سرویس گرا با یکدیگر ارتباط دارند.
21
شکل 7-1) پیمانهای سرویس به طور رسمی مؤلفه های سرویس, عملیات و پیغام از یک معماری سرویس گرا را تعریف می کند.
23
شکل 8-1) سرویسها وابستگی ها را به قرارداد سرویس محدود می کنند و با این کار به منطق سرویس دهنده زیرین و تقاضاکننده اجازه می دهند که loosely coupled باقی بمانند.
24
شکل 9-1) عملیات Update Everything یک ترکیب سرویس را بسته بندی می کند
25
شکل 10-1) مراحل statelessو stateful که یک سرویس درهنگام پردازش یک پیغام از آنها عبور می کند .
27
شکل 11-1) جایگاه سرویسها[1]
28
شکل 12-1) لایه های تخصصی سرویس[1]
32
شکل 13-1) سلسله مراتب چرخه حیات توسعه سرویسهای وب[9]
36
شکل 14-1) بخش بندی سرویسها که محیط راه حل و پردازشهای تجاری را تفکیک کرده است[1].
38
شکل 1-2) چرخه حیات معماری سرویس گرا
40
شکل 2-2) گامهای تکنیک پائین به بالا
42
شکل 3-2) گامهای تکنیک بالا به پائین
44
شکل 4-2) گامهای تکنیک meet in the middle [1]
46
شکل 1-3) در صورت تجزیه یک سرویس , الگوهای نظارتی به عدم تاثیرگذاری در قرارداد سرویس کمک می کنند.[27]
59
شکل 2-3) منطق Agnostic و [27] Non Agnostic
60
شکل 1-4) فعالیتهای فاز طراحی
63
شکل 2-4) مدل گسترش سیستم تحت تاثیر لایه بندی [30]
65
شکل 3-4) پنهان سازی پیچیدگی توسط لایه انتزاعی داده
69
شکل 4-4) لایه دسترسی سرویس[2]
70
شکل 5-4) ساختار منطقی از سرویسهای تعاملی
73
شکل 6-4) مثالهایی از سرویس تعاملی در SOA
76
شکل 7-4) چارچوب مبتنی بر سرویس برای سرویسهای تعاملی
76
شکل 8-4) 4 نو ع تغییرپذیری
80
شکل 9-4) واسط مورد نیاز فرایند کسب و کار
81
شکل 10-4) نقاط تغییرپذیر ممکن
82
شکل 11-4) شمایی از تغییرپذیری در XML [6]
83
شکل 12-4) مدل تصمیم , مدل واسطی برای سازگاری سرویسها می باشد[6]
84
شکل 13-4) دیاگرام فعالیت و نقاط تغییر پذیر[31]
85
شکل 14-4) مدل خصیصه[31]
86
شکل 15-4) سرویسهای Gateway [2]
92
شکل 16-4) سرویسهای Façade [2]
93
شکل 17-4) جایگاه دستورات کنترلی درمقایسه دو راه حل [2]
96
شکل 18-4) سرویسهای دانه درشت[11]
101
شکل 19-4) ارتباط سرویس دانه درشت و سرویس دانه ریز[11]
103
شکل 20-4) متد جدیدی برای ارسال اطلاعات آدرس اضافه شده است.[11]
105
شکل 21-4) یک متدی که هر دو نوع اطلاعات آدرس و حساب را بر می گرداند.[11]
105
شکل 22-4) متدی که مؤلفه های درخواست داده شده را برمی گرداند[11]
107
شکل 23-4) مدلسازی سلسله مراتبی با BPMN [5]
112
شکل 24-4) مجموعه مدلهای فاز طراحی و ارتباط آنها
113
شکل 1-5) دیاگرام فعالیت 3 عامل
117
شکل 2-5) سرویسهای کاندید
120
شکل 3-5) مدل لایه بندی سیستم
121
شکل 4-5) تغییر پذیری در گردش کار
122
شکل 5-5) مدل خصیصه
123
شکل 6-5) دیاگرام فعالیت برای شناسایی وابستگیها
124
شکل 7-5) دیاگرام General Composition
125
شکل 8-5) مدل نگاشت
125
شکل 9-5) لایه تامین کننده QOS
126
شکل 10-5) سرویسهای دانه ریز
127
شکل 11-5) دیاگرام Consignee Collaboration
127
شکل 12-5) دیاگرام Consignee Sequence Diagram
128
شکل 13-5) دیاگرام Shipper Collaboration
128
شکل 14-5) دیاگرام Shipper Sequence
129
شکل 15-5) دیاگرام Partial Order Process Collaboration
129
شکل 16-5) دیاگرام Partial Order Process Sequence
130
شکل 17-5) دیاگرام تعاملات مابین سرویس فرایند و سرویسهای همکار
131
شکل 18-5) مدل BPMN
132