|
Service Oriented Architecture
|
دانشجویان کارشناسی ارشد رشته های کامپیوتر-نرم افزار و فناوری اطلاعات که مایل به انجام کارآموزی در پروژه های مربوط به معماری سازمانی سرویس گرا هستند می توانند رزمه کاری و علمی خود را به ایمیل (a.mahjoorian@gmail.com) ارسال نمایند. از بین متقاضیان تعدادی انتخاب شده و برای کاراموزی دعوت می شوند، محل کار در تهران می باشد. (کارآموزان فقط از میان دانشجویان دوره کارشناسی ارشد انتخاب می شوند)
پروژه هائی که کاراموزان انتخاب شده در آن فعالیت خواهند کرد جزو معدود پروژه های کلان و کلیدی کشور می باشند که اکثرا تحت حمایت http://www.enterprisearchitecture.ir بوده و شماری از بهترین متخصصان این حوزه در آن مشغول هستند.
+ تعریف و مفاهیم پایه مربوط به معماری سرویس گرا (SOA) ، یکپارچه سازی سیستم های سازمانی (EAI) و معماری سیستم های جامع اطلاعاتی (Total Solution)
+ مقالات و پژوهش های معماری سرویس گرا
+ پایان نامه های کارشناسی ارشد معماری سیستمهای اطلاعاتی
+ اسلایدها و ارائه های آموزشی در حوزه های SOA, BPM, EAI, ESOA
+ پروژه های ملی در حوزه معماری سازمانی سرویس گرا و یکپارچه سازی سیستم های اطلاعاتی انجام شده در ایران
+ اخبار و رویدادهای مربوط به معماری سازمانی سرویس گرا (Service Oriented Enterprise Architecture)
+ برگزاری دوره های آموزشی معماری سرویس گرا برای سازمانها و شرکت های پیشرو
|
تعداد یافته ها در Google (میلیون) |
عبارت جستجو |
|
5 |
RUP |
|
20 |
UML |
|
21 |
BPM |
|
14 |
OOP |
|
34 |
SOA |
|
تعداد یافته ها در Google (میلیون) |
عبارت جستجو |
|
0.4 |
"Rational Unified Process" |
|
1 |
"Unified Modeling Language" |
|
5 |
"Business Process Management" |
|
4 |
"Object oriented Programming" |
|
6.5 |
"Service Oriented Architecture" |
پی نوشت: قصد نوشتن این پست مقایسه بین این مفاهیم نبوده و این مفاهیم اصلا در یک سطح نیستند. همچنین قصد نداشتم مشخصات و مزایای معماری سرویس گرا را بیان کنم( در پست های قبلی و مقالاتی که در وبلاگ است این موضوع مطرح شده است) - هدف این پست نشان دادن سرعت رشد و همه گیر شدن معماری سرویس گرا بوده و برای اینکه این سرعت نشان داده شود از چند مفهوم پرکاربرد و رایج(ونه الزاما یکسان) برای مقایسه استفاده شده است.
مقدمه:
معماری سرویس گرا(SOA) به عنوان رهیافت برتر در حوزه معماری سیستم های اطلاعاتی به سرعت در حال رشد و فراگیر شدن است، ابزارهای مبتنی بر این معماری امکانات قابل قبولی ارائه داده اند و شرکت ها و سازمانها نیز طرح های خود را بر مبنای گذار به این رهیافت تنظیم نموده اند. در میان همه نقاط امیدوار کننده تنها موضوعی که نیاز به توجه بیشتر دارد مبحث "متدولوژی" است، دلیل این امر نیز روشن است: برای داشتن یک متدولوژی کارامد و خوش تعریف نیاز به انجام تعداد زیادی تجارب موفق است تا نتایج حاصل از این تجارب در قالب روش ها و گامهائی شکل گرفته و نهایتا متدولوژی انجام کار که شامل گامها، محصولات، راهنمائیها، فرایندها، استانداردها و .. است تهیه شود و از انجاکه استانداردهای معماری سرویس گرا و ابزارهای پیاده سازی ان از حدود سالهای 2001و 2002 ارائه شده اند لذا هنوز متدولوژی های این رهیافت به بلوغ و تکامل نهائی (در حدی مانند RUP) نرسیده اند. در این نوشته متدولوژی ها و روش های ارائه شده موجود برای معماری سرویس گرا را مورد بررسی و ارزیابی قرار داده سپس یک مثال از طراحی سرویس های بانکداری الکترونیکی انجام داده و پیشنهاداتی برای سازمانهائی که قصد انجام پروژه هائی با چنین متدولوژی هائی دارند ارائه می دهیم.
متدولوژی های موجود:
با نگاهی به مقالات و کتابهای منتشر شده در حوزه معماری سرویس گرا متوجه می شویم که در بحث متدولوژی، بیشترین فعالیت و مطالب مربوط به IBM است. دو دلیل عمده این موضوع یکی سابقه این شرکت در ارائه و پشتیبانی متدولوژی معروف و بی رقیب RUP است و دلیل دوم آن پیشگامی و کیفیت برتر این شرکت در حوزه معماری سیستم های اطلاعاتی است. ازانجا که معماری سرویس گرا یک "سبک" معماری است و لذا در سازمانهای مختلف و بر حسب نیازمندیهای متفاوت می تواند به شیوه های گوناگونی طراحی و پیاده سازی شود، در نتیجه نباید انتظار داشت که تنها "یک نوع" متدولوژی مشخص برای پشتیبانی از این رهیافت ارائه شود. شرکت IBM تا کنون سه متد(روش) مختلف برای معماری سرویس گرا ارائه نموده که هر کدام قابلیت ها و شرایط خاص خود را دارند و برای نیازمندیهای مخصوص خود تهیه شده اند. این سه روش عبارتند از:
اهمیت این سه متد در انجاست که کاملترین مجموعه ارائه شده در حوزه معماری سرویس گرا می باشند و دیگر متدهای ارائه شده (MSOMA, OASIS Adoption Blueprint, Agile SOA) زیرمجموعه و مشتق شده از متدهای IBM هستند. درادامه سه متد ارائه شده توسط IBM بررسی می شوند و کاربرد هر یک به تفصیل تشریح می گردد....
اولين كنفرانس بين المللي شهر الكترونيك در تاريخ 1 و 2 اسفند در مركز همايشهاي برج ميلاد برگزار شد كه هدف آن معرفی دستاوردهای سازمانها، نهادها و شرکتهای خصوصی در حوزه های مختلف شهر الکترونیک (دولت الکترونیکی ، بانکداری الکترونیکی ، آموزش الکترونیکی ، شهرداری الکترونیکی ، کارآفرینی الکترونیکی و... ) در سطح ملی و فراملی بود. در اين كنفرانس مجموعه اي از مقالات و كارگاههاي اموزشي برگزار شد كه اشخاص و شركت هاي زيادي نيز شركت كرده بودند و از جهت كيفيت و تنوع بسيار جالب بود. در جلسه اختتامیه كنفرانس كه در روز آخر با حضور معاونان و شهردار تهران - قاليباف- برگزار شد جمع بندي دستاوردهاي اين كنفرانس ارائه شد و يكي از اصلي ترين اين دستاوردها هم ضرورت استفاده و كاربرد معماري سرويس گرا در شهر الكترونيك اعلام شد! تو این کنفرانس من با کمک دکتر شمس تلاش های زیادی کردیم که SOA را به عنوان سبك برتر معماري سيستم هاي اطلاعاتي تثبيت كنيم و خلاصه موفق شديم.
چند نكته:
راه حل معماری سرویس گرا برای یکپارچه سازی سیستم های اطلاعاتی(EAI), ارتباط بین سیستم های اطلاعاتی به کمک وب سرویس است. از اواخر دهه 90 برای چالش تعامل پذیری سیستم های اطلاعاتی رهیافتهائی ارائه شده که معروفترین انها اتصال نقطه به نقطه (Peer-to-Peer) و یکپارچگی مبتنی بر یک مترجم مرکزی بوده است. در حالت نقطه به نقطه برای هر تعامل بین دو سیستم اطلاعاتی در سازمان لازم است که استاندارد و مسیر ارتباطی مربوطه تعریف و فراهم گردد. طبیعی است که چنین رهیافتی بسیار هزینه بر و دست و پا گیر خواهد بود. در حالت مترجم مرکزی نیز میان افزاری (Middle-Ware) به عنوان مترجم بین همه سیستم های اطلاعاتی عمل می کرد به گونه ای که مانند یک هاب مرکزی تمامی پیامهای ارسالی به این واسط ارجاع می شد و پس از ترجمه به پروتکل و فناوری سامانه مقصد, ارسال می گشت. این گزینه نیز با دشواریهائی همراه بود که مهمترین انها وجود انواع پروتکل های ناهمجور و عدم جامعیت بود. اما در معماری سرویس گرا اصل بر این است که همه سیستم های اطلاعاتی با یک واسط استاندارد و مورد توافق جهانی تعامل داشته باشند. این واسط وب سرویس(Web Service) نام دارد و پروتکل های مورد استفاده ان نیز شامل SOAP,WSDL,UDDI می شود, همه این پروتکل ها بسطی از XML هستند که استانداردی جهانی و مورد توافق همه سکوها, فناوری ها و سازندگان است.
در حقیقت معماری سرویس گرا اجازه می دهد تا سیستم های اطلاعاتی سازمان دارای فناوری و پیاده سازی مختص به خود باشند به شرطی که برای ارائه و دریافت سرویس با دیگر سیستم ها از یک استاندارد پذیرفته شده تبعیت کنند، مفهوم "سرویس " نیز بیانگیر همین موضوع است. سرویس مانند یک جعبه سیاه است که از داخل آن اطلاعی در دسترس نیست اما درگاه هائی برای ارائه تعدادی Function ارائه نموده است.
معماری سرویس گرا به سرعت در حال فراگیر شدن و به عبارتی "همه گیر" شدن است . شرکت های توسعه دهنده سیستم های اطلاعاتی از این راه حل در جهت یکپارچه سازی سیستم ها و سکوهای اطلاعاتی متنوع سازمانی بهره می جویند، مدیران فناوری اطلاعات سازمانها همراستائی فوق العاده بین فناوری اطلاعات و کسب و کار را که از نتایج این رهیافت است مورد توجه قرار داده اند و صاحبان (مدیران) سازمانها قدرت انعطاف پذیری و چابکی این معماری در رقابت تجاری مبتنی برفناوری اطلاعات را حیاتی یافته اند.
نتیجه این دستاوردها باعث شده سازمانها به این رهیافت نگاهی ویژه داشته باشند و حتی در ایران نیز اکثر کارفرماها در درخواست پروپوزال پروژه های طراحی سیستم های کلان سازمانی از معماری سرویس گرا به عنوان یکی از الزامات مهم یاد می کنند و لذا پیمانکاران نیز پیشنهادی مطابق خواست این کارفرمایان تهیه می کنند، اما مشکل انجاست که از یک طرف کارفرمایان بیشتر از مزایا و تبلیغات معماری سرویس گرا شنیده اند و هنوز تجارب متعدد موفق در ایران برای الگو برداری وجود ندارد. از طرف دیگر پیمانکاران نیز که قصد دارند به این سمت بروند با مشکل کمبود تجربه و دانش مواجه هستند.
در این راستا کمیته فنی معماری اطلاعات ایران امادگی خود را برای ارائه خدمات مشاوره, راهبری, آموزش و نظارت بر کلان پروژه های مبتنی بر معماری سرویس گرا (BPMS, SOA, Total Solution) اعلام می دارد.
شرکت ها و موسسات علاقمند می توانند از طریق پست الکترونیکی برای دریافت اطلاعات بیشتر اقدام نمایند
در این نوشته ابزارهای ارکستریشن در معماری سرویس گرا معرفی و ارزیابی می شوند:
برای پیاده سازی سرویس های مرکب یا فرایندها در معماری سرویس گرا از ارکستریشن(Orchestration) و زبان استاندارد آن (BPEL) استفاده می شود. هر سیستم مدیریت فرایندهای کسب و کار(BPMS) که مبتنی بر معماری سرویس گرا باشد دارای موتور فرایندی بوده که وظیفه اجرای فرایندها را بعهده دارد, همچنین سرویس های مرکب که خود از فراخوانی سرویس های اتمیک تشکیل شده اند بصورت ارکستریشن فراخوانی و اجرا می شوند. هر دوی فرایندها و سرویس های مرکب در معماری سرویس گرا توسط موتورهای مبتنی بر BPEL اجرا و مدیریت می شوند. در جدول زیر مشخصات معروفترین این محصولات آورده شده است.
|
سادگی یادگیری, نصب و طراحی |
داشتن محیط های جامع تحلیل, طراحی و پیاده سازی |
کد باز (Open Source) |
پشتیبانی از پروژه های کلان سازمانی |
پلتفرم (Platform) |
موتورهای ارکستریشن/فرایندی مبتنی بر BPEL در معماری سرویس گرا |
|
|
√ |
|
√ |
J2EE |
Oracle BPEL Process Manager |
|
|
√ |
|
√ |
.Net |
Microsoft BizTalk Server |
|
|
√ |
|
√ |
J2EE |
IBM WebSphere Business Integration Server Foundation |
|
|
|
|
|
J2EE |
IBM alphaWorks BPWS4J |
|
|
|
|
√ |
J2EE |
BEA WebLogic Integration and AquaLogic |
|
√ |
|
√ |
|
J2EE |
Intalio|BPMS Server |
|
√ |
|
√ |
|
J2EE |
ActiveBPEL engine |
|
|
|
|
|
J2EE/ .Net |
Open Storm Service Orchestrator |
|
|
|
|
|
J2EE |
Active Endpoints ActiveWebflow Server |
|
|
|
|
|
J2EE |
Fivesight Process eXecution Engine |
در جمع بندی از جدول فوق می توان گفت:
ابزارهای طراحی فرایند در معماری سرویس گرا:
در قسمت قبل موتورهای فرایندی را که وظیفه اجرا و مدیریت فرایندها را بعهده دارند, معرفی کردیم. اما قبل از آن باید این فرایندها را طراحی نمود تا سپس به صورت فایل BPEL, در موتور فرایندی قابل اجرا باشند. برای طراحی این فرایندها, نیاز به محیط های طراحی BPEL است, در ادامه معروفترین این محیط ها معرفی شده اند:
- Oracle JDeveloper BPEL Designer
- Oracle BPEL Designer for Eclipse
- Microsoft BizTalk Orchestration Designer
- IBM WebSphere Studio Application Developer Integration Edition
- itp Process Modeler for Microsoft Visio
- Active Endpoints ActiveWebflow Designer
- iGrafx BPEL
پایان نامه کارشناسی ارشدم را با عنوان "تدوين متدولوژي برنامه ريزي معماري سازماني سرويس گرا " برای استفاده کارشناسان و پژوهشگران برای دانلود گذاشتم. امیدوارم مورد استفاده قرار بگیرد و اگر استفاده کردید با ذکر منبع و ماخذ باشد !!
- برداشت پایان نامه "متدولوژي برنامه ريزي معماري سازماني سرويس گرا "
همچنین از تمامی دانشجویان کارشناسی ارشد و دکترا که پایان نامه خود را در حوزه معماری فناوری اطلاعات سازمانی / معماری سرویس گرا / معماری نرم افزار / مهندسی نرم افزار یا سایر موارد مشابه به اتمام رسانده اند تقاضا دارم پایان نامه هایشان را در فرمت PDF برای من میل کنند تا با نام خودشان برای استفاده سایر پژوهشگران در سایت کمیته فنی معماری سازمانی ایران قرار دهم.