دانلود با لینک مستقیم و پر سرعت .
نوع فایل: word
قابل ویرایش 106 صفحه
چکیده:
سرویسگرایی، سبک و روشی برای طراحی، پیاده سازی، استقرار و مدیریت سیستمهای اطلاعاتی است. این سیستمها از مولفههایی تشکیل شدهاند که منطق سازمان و واحدهای کاری آن را پیاده سازی میکنند و سرویس نامیده میشوند. نقش مولفه سرویس در معماری سرویس گرا، اتوماسیون واحدهای کاری و دانه بندی آنها در واحدهای مجزاست بطوریکه بتوان سازمان و منطق کسب و کار آن، همچنین روندهای کاری موجود را با تغییرات قوانین و تکنولوژی بروز رسانی و هماهنگ نمود. سرویس گرایی، علاوه بر مزایایی از قبیل حذف سیلوهای اطلاعاتی و سرعت در پیاده سازی برنامههای کاربردی، سازمان را به سمت توزیع شدگی و مدیریت صحیح منابع پیش میبرد. لازم به ذکر است که ایجاد زیرساختهای لازم برای این رویکرد به دلیل نیاز به زمان و هزینه زیاد، برای سازمانهایی مناسب است که ناهمگن بوده و دارای توزیع شدگی زیادی هستند.
هدف از این تحقیق، ارائه تعاریف پایه، توصیف اصول سرویس گرایی و جایگاه معماری سرویس گرا میباشد و در نهایت لایههای مختلف سرویس در معماری سرویس گرا، استراتژی ها و متدلوژی ها مورد بررسی قرار میگیرد.
مقدمه:
به زبان ساده می توان اصطلاح «معماری سرویس گرا» را بیانگر نگرشی از معماری فناوری دانست که استفاده از سرویس های نرم افزاری با وابستگی ضعیف را جهت پشتیبانی از نیازمندی های فرآیندهای حرفه پیشنهاد می-کند
1- معماری مبتنی بر سرویس (سرویس گرا)
برای توسعه نرم افزار روشها و مدلهای گوناگونی ارائه شده است. در گذشته مدلهای توسعه نرم افزار مبتنی بر روشهای برنامه نویسی ساختار گرا و پیمانه ای(مدولار) بوده است. یک تحول اساسی در گسترش فن آوری توسعه نرم افزار با معرفی روش شی گرا بوجود آمد. در این روش با تجزیه مسئله به اشیاء مستقل و مشخص و سپس تعریف دقیق آن اشیاء و اختصاص داده و روش (متد) به آن اشیاء نرم افزار شکل می-گیرد. با ظهور مدل شی گرا در توسعه نرم افزار، راه برای ایجاد نرم افزارهای عظیم هموار گردید. بهینه کردن کار گروهی در شکل تقسیم یک پروژه بین شرکتهای مختلف امکانپذیر شد. به دلیل معین بودن مشخصات دقیق اشیا، افراد و گروههای مختلف می توانستند مستقلا روی بخشهای مختلف برنامه کار کنند. هر یک از بخش ها به تنهائی مورد آزمایش قرار می گرفت و پس از اطمینان از صحت و کارائی در بدنه اصلی برنامه لحاظ می شد. اما باید توجه داشت که هنوز بخش زیادی از کار، تهیه کدها و برنامه های واسط بود که بتواند ارتباط میان اشیاء را برقرار سازد.گسترش کاربردهای نرم افزار در تجارت و کسب و کار لزوم ایجاد ارتباط بین نرم افزارهای مختلف اهمیت بیشتری یافت. نگرش جدید به اجزاء مختلف نرم افزار به مثابه سرویس ، ایده جدیدی بود که می توانست این ارتباط را در زمان کوتاهتر و با هزینه کمتر میسر سازد.
این ارتباط قوی متضمن ایجاد قدرت در اجرا است از سوی دیگر باعث پیچیدگی و مانع گسترش آسان برنامه می شود. همچنین وابستگی شدید اشیاء به هم و وابسته بودن آنها به کدهای ارتباطی، توسعه نرم افزار را با دشواری مواجه می سازد. این مسائل در طراحی سرویس گرا لحاظ شده است.
مهمترین مفاهیم و اصول در نظر گرفته شده در طراحی سرویس گرا به شرح زیر می باشد:
1-کپسوله سازی سرویس : تاکید بر متمرکز کردن عملیات وابسته به داده در یک واحد (کپسول) مشخص و پنهان کردن پیاده سازی و مکانیزم درون واحد نرم افزاری است.
2-اتصال آزاد بین سرویسها : تاکید بر استقلال سرویسها و کاهش وابستگی سرویسها به یکدیگر است فقط کافی است سرویسها از وجود هم آگاه باشند.
3-قرارداد سرویس دهی :ارتباط بین سرویس ها بر اساس قرارداد تعریف شده ای است که در اسناد فنی بطور مشخص ذکر می شود.
4-مجرد ساختن سرویس : تاکید بر جدا کردن پیاده سازی از رابط (جهان خارج) و پنهان کردن مکانیزم و نحوه انجام کار در درون واحد ارائه دهنده سرویس می باشد.
5-استفاده مجدد و بازبکارگیری سرویس :تاکید بر طراحی سرویسها به نحوی است که بتوان آنها را در سامانه های مختلف بکار برد. با تاکید بیشتر بر استفاده مجدد.
6-قابلیت ترکیب سرویس : به معنی آنست که سرویسها به نحوی طراحی شوند که با برخورداری از قابلیت ترکیب شدن ایجاد سرویسهای مرکب (کامپوزیت) امکانپذیر باشد.
7-خودگردانی سرویس :عبارتست از قابلیت و قدرت سرویس در بکارگیری و مدیریت منابع خود بطور مستقل و همچنین کنترل کامل بر منطق پیاده سازی خود.
8- بدون حالت بودن سرویس : به این معنی است که سرویس باید در مورد فعالیت های گذشته (فراخوانی های گذشته) کمترین اطلاعات را نگه دارد و تاکید بر طراحی سرویس بنحوی است که حالتهای وابسته به گذشته کمتری داشته باشد.
9-قابلیت کشف شدن سرویس : به این معنی است که سرویس باید در یک محیط شبکه با استفاده از سازوکارهای مناسب توسط برنامه های دیگر آشکار شود. .
فهرست مطالب:
چکیده
فصل اول «مقدمه»
1- معماری مبتنی بر سرویس(سرویس گرا)
فصل دوم«کاربرد و اصول سرویس گرائی»
1- سرویس گرائی
2-1 سرویس گرائی و سازمان
2-1-1 جایگاه سرویسها در سازمان
2-1-2 معماری سرویسگرا
2-1-2-1 مولفههای منطقی معماری سرویسهای وب
2-1-2-2 اجزای منطق خودکارسازی
2-1-2-3 تعامل در سرویس گرایی
2-1-2-4 توصیف سرویس
2-1-2-5شی سرویس
2-1-2-6 پیغام رسانی
2-1-2-7 ضمانت های سرویس
2-1-2-8 ترکیب
2-1-3 مولفههای معماری سرویسگرا
2-1-4 ارتباط مولفهها در معماری سرویسگرا
2-2 اصول متداول سرویسگرایی
2-2-1 سرویسها قابلیت استفاده مجدد دارند
2-2-2- سرویس ها یک قراردادرسمی را به اشتراک می گذارند
2-2-3- سرویس های پیوند ضعیف دارند
2-2-4- سرویس ها منطق زیرین را از دنیای خارج جدا می کنند
2-2-5- سرویس ها را می توان ترکیب کرد
2-2-6- سرویس ها خود مختار هستند
2-2-7 خودمختاری در سطح سرویس1
2-2-8خودمختاری در سطح سرویس2
2-2-9 خودمختاری خالص
2-2-10 سرویس ها بدون حالت هستند
2-2-11 سرویس ها قابل کشف هستند
2-2-12 ردیابی
2-2-13لایه های معماری سرویس گرا
2-3-1 تجرید لایه سرویس
2-3-2منطق ارائه سرویس
2-3-3 ارتباط سرویس ها با منطق کاربردی موجود
2-3-4 نمایش منطق فرآیندهای سازمان توسط سرویس ها
2-3-5 افزایش سرعت عمل با نحوه ساخت و استقرار سرویس ها
2-3-6 ایجاد سطوح جداگانه
2-3-7 لایه سرویس کاربردی
2-3-8 لایه سرویس تجاری
2-3-9 لایه سرویس همنوایی
فصل سوم « استراتژیهای سرویس گرایی »
3-1- فازهای اصلی چرخه حیات در سرویس گرایی
3-1-1- تحلیل سرویس گرا
3-1-2- طراحی سرویس گرا
3-1-3- توسعه سرویس ها
3-1-4- تست سرویس ها
3-1-5- استقرار سرویس ها
3-1-6- مدیریت سرویس ها
3-2- حرکت بسوی معماری سرویس گرا
3-2-1 استراتژی بالا به پایین
3-3-2-1- فرآیند
3-2-2- استراتژی پایین به بالا
3-2-2-1- فرآیند
3-2-3 استراتژی سریع
3-2-3-1- فرآیند
فصل چهارم«متدلوژی مبتنی بر سرویس گرائی »
4-1 - معرفی متدولوژی های مبتنی بر معماری سرویس گرا
4-1-1- تحلیل و طراحی سرویس گرا (SOAD)
4--1-2- معماری و مدلسازی سرویس گرا (SOMA)
4-1-3 - متدولوژی کیفیت تکرارپذیر سرویس گرا
4-1-4- فرآیند سرویس گرا (The Service Oriented Process)
4-1-5- چارچوب معماری سرویس گرا (SOAF)
4-1-6-فرآیند یکپارچه سرویس گرا (SOUP)
4-1-7- متدولوژی طراحی و توسعه سرویس گرا
4-1-8 متدولوژی Erl
4-1-9- نماد مدلسازی فرآیند کسب و کار به زبان اجرائی فرآیند کسب و کار
4-1-10 متدولوژی برای معماریهای سرویس
4-2 معرفی SOMA
4-2-1 چشم انداز حرکت به سوی راه حلهای سرویس گرا
4-2-2 ابزار حمایتی Ratinal برای SOA
4-2-3 مدل سازنده
4-2-4 RUP SOMA
4-2-4-1 شناسائی سرویس های کاندیدا و جریانها
4-2-4-2 تجزیه دامنه
4-2-4-3 مدلسازی سرویس هدف
4-2-4-4 تحلیل دارائیهای موجود
4-2-5 مشخصه سازی سرویسها، مؤلفه ها و جریانها
4-2-6 عینیت بخشی سرویس ها
4-2-7 RUP SOMA -تعریف فراساختار سرویس
4-3 نقاط قوت و ضعف متدولوژیهای مبتنی بر معماری سرویس گرا
4-4 معرفی مدلهای دید معماری مبتنی بر معماری سرویس گرا
فصل پنجم«نتیجه گیری»
5-1 نتیجه گیری
5-2 کارهای آینده
فهرست شکل ها و جدول ها
لایه سرویس گرا
جدول 2-1 استراتژی بالا به پایین
پشته راه حل SOA
شکل Rational
شکل مراحل انجام کار SOMA
شکل مراحل انجام گام حرکت
شکل سرویس های کاندیدا و جریانها
شکل ناحیه وظیفه مندی
شکل مراحل پردازش سرویس های کاندید
شکل سرویس های جدید بر اساس انواع فرآیندها و قواعد
شکل مشخصه سرویس
شکل سرویس کاندیدها
شکل یک سرویس در مدل سرویس
شکل وابستگی سرویس ها
عینیت بخشی سرویسها
فرآیند توسعه پروژه نرم افزاری
جدول نقاط ضعف و قوت متدلوژی ها
شکل فرامدل SOA
شکل رهیافت 1+4 SOA
دید معماری 3بعدی 1+3 SOA
شکل مدل تعریف دامنه کسب و کار
شکل مدل تجاری سازمان
منابع و مأخذ:
[1] Weske, M. Business Process Management: Concepts,
Languages, Architectures, Springer, 2007.
[2] Erl, T., Service-Oriented Architecture: Concepts,
Technology, and Design, Prentice Hall, 2007.
[3] Jeston, J. and Nelis, J., Business Process Management:
Practical Guidelines to Successful Implementations,
Elsevier, 2008.
[4] Finger, P. and Smith, H., Business Process Management:
The Third Wave, Meghan Kiffer Press, 2006.
[5] Juric, M. and Pant, K., Business Process Driven SOA
using BPMN and BPEL, Packt Publishing, 2008.
[6] Process Management Lifecycle, SAP,
Site: https://www.sdn.sap.com/irj/sdn/bpx-cycle
[7] Khoshafian, S., Service Oriented Enterprises, Auerbach,
[8] Sprott, D., Wilkes, L., Understanding SOA, CBDI Forum,
[9] Erl, T., SOA: Principles of Service Design, Prentice Hall,
[10] Knipple, R., Service Oriented Enterprise Architecture,
MS Thesis, IT-University of Copenhagen, 2005.
[11] Krafzig, D., Banke, K. and Slama, D., Enterprise SOA:
Service-Oriented Architecture Best Practices, Prentice
Hall, 2004.
[12] Service Oriented Architecture (SOA) in the Real World,
Microsoft Publication, 2007.
[13] Pulier, E. and Taylor, H., Enterprise SOA, Manning,
[14] Bass, L., Clements, P. and Kazman, R., Software Architecture in Practice,
Addison-Wesley, 2nd edition, 2003.
[15] Parnas, D.L., “On the criteria to be used in decomposing systems into modules”,
Communications of the ACM, vol. 15(12), pp. 1053–1058, 1972.
[16] Stein, D., “An Aspect-Oriented Design Model Based on AspectJ and UML”, MS
Thesis, University of Essen, Germany, 2002.