معماری سرویس گرا

معماری سرویس گرا

با استفاده از BPMS شبکه فردا کسب و کار خود را در قالب سرویس در اختیار دیگران قراردهید و از سرویس های موجود در اجرای فرآیند های خود بهرمند شوید.

تعریف معماری سرویس گرا

عبارت SOA با مبالغه و کلیات احاطه شده است. ما به تعریفی احتیاج داریم که بتوانیم با آن کار کنیم.
قبل از اقدام جهت پاسخ دادن صحیح به انتظارات می بایستی SOA را با اندکی دقت تعریف کنید. حجم زیادی از مبالغات که SOA را در سالهای اخیر احاطه کرده است، تا حدودی مسئله را سخت ساخته. اما این کار قابل انجام است. تعریف های زیادی از SOA وجود دارد. در اینجا تعریف مورد نظر به قرار زیر است:

"SOA نوعی معماری است که سرویس را برای ساده سازی فعالیت های یکپارچه سازی و استفاده از اجزا با قابلیت استفاده مجدد به روش اتصال سست به شکل بلوک ساختمانی به کار می گیرد."

مزایای معماری سرویس گرا

در ادامه به گسترش بحث می پردازیم:
SOA نوعی معماری است.
در حالی که ممکن است این مطلب اغراق آمیز کردن یک امر واضح باشد، اما یک درس کوچک در آن وجود دارد. ایجاد مجموعه ای از سرویس ها به طور خودکار یک معماری را به سادگی ارائه نمی دهند. معماری، درحالی که راهنمای ایجاد سرویس می باشد، یک موضوع مجزا از اجرای خود سرویس می باشد.
در اصطلاح SOA، سرویس گرای را به عنوان صفتی از معماری به کار می برد. یعنی SOA یک روند معماری، که قابل اجرا می باشد را توصیف می کند. این یک حالت توسعه نمی باشد. نمی توان به سادگی یک EJB را طوری تفسیر کرد که نشان دهد یک سرویس تحت شبکه است و حالا یک سرویس تحت شبکه داریم. باید یک آغاز مناسب برای SOA وجود داشته باشد. اگر با دقت به هدف نگاه کنیم، امکان دارد شروعی بسیار پرزحمت و گران قیمت داشته باشیم.
ساخت SOA نیازمند تجزیه تحلیل و یکپارچگی قابل ملاحظه ای است و نمی توان به سادگی خرید یک کالا به آن دست یافت.
SOA با سرویس ها ساخته شده است.
این سرویس بخشی از معماری سرویس گرا می باشد و با تاکید بر تعریف گفته شده پیش می رویم. اگر معماری وجود نداشته باشد یا سرویس بخش اصلی معماری نباشد SOA بی معناست. (مانند یک سیستم شئ گرا که شئ بخش اصلی آن است.)
بدون وجود سرویس ها چیزی برای ساخت، نظارت و چیزی برای اجرا وجود ندارد. از سوی دیگر، کسی که زحمت بسیار بکشد می تواند یک مجموعه ای از نمودارهای معماری تولید کند که با دنیای واقعی ارتباط دارد. اگر شما با دقت بر کار روی مجموعه ای از اجرای سرویس ها تمرکز کنید و معماری را فراموش کنید، نه تنها SOA ندارید بلکه چیزی بدتر از آن دارید. و وقت وهزینه قابل توجهی از شما را برای حل مشکل نامربوط می گیرد. این روند نادرست را دنبال نکردن الگو (anti-pattern) می گویند که باعث ایجاد مجموعه ای از وب سرویس های بی هدف می شوند. همچنین برنامه نویسان ناشی که بدون راهنمایی معماری کار می کنند ناخواسته کسب و کار را از دنبال کردن الگو منحرف می سازند، که حاصل مجموعه ای است از سرویس های بدون حاکمیت که قادر به ساخت SOA نمی باشند.

https://www.netrise.ir/documents/14225/22907310/SOA.jpg/778ea171-4b08-a8c3-7e69-45d2ed492d38?t=1699871531412&download=true
معماری سرویس گرا

SOA یکپارچگی را آسان می سازد.
SOA یک طرز تفکر درباره سیستم های یکپارچه بیان می کند. SOA پیشنهاد کسب و کار جدید یا گسترش یافته یا فرصت هایی با اتصال سیستم های چندگانه با هم را ارائه می دهد. در ساده ترین شکل آن، این بدان معناست که شما می توانید کار B2B را سریعتر انجام دهید.
CORBA، معماری اتصال، EDI، point-to-point EAI بیش از چند دهه تلاش کردند که همه نشان دهند توانایی یکپارچه کردن سیستم های گوناگون را دارند. اما این گونه تلاش ها می تواند پرهزینه و شکننده باشد. آنها می توانند برنامه نویسان و بخشهای IT را از حل مشکلات واقعی کار منحرف سازند. به طور کلی SOA با استفاده از XML به عنوان فرم استاندارد برای پیام ما را به هدف یکپارچه سازی نزدیک می کند.
SOA استفاده مجدد را با به کارگیری اتصال سست آسان می سازد.
این ایده که SOA استفاده مجدد را با به کارگیری اتصال سست آسان می سازد یک مطلب کلیدی در بحث پشتیبانی از تلاش های یکپارچه سازی می باشد. SOA دو ایده مجزا را پیشنهاد می کند: در وهله اول استفاده مجدد را آسان می کند، و این کار را با خلق اجزای اتصال سست انجام می دهد.
در ابتدا اقدام یکپارچه سازی یا تلاش های پیشین جهت ارائه سرویس، کاملاً تمرکز خاص بر روی ایده استفاده مجدد نداشتند. اما در حال حاضر ممکن است، استانداردهای جدید و به کارگیری یک فرمت عمومی مانند XML برای تبادل پیام، برای تحقق بخشیدن سرویس های مهم در یک روش عمومی و کامل برای اینکه سرویس ها بتوانند مجدداً استفاده شوند، ارائه شود.
استفاده مجدد می تواند در فرم یک تعامل پذیری کلی نشان داده شود. اگر دو جز نرم افزار بتوانند با هم تعامل داشته باشند این دیگر معنای اتصال سست ندارد. اما اجزای اتصال سست در نهایت می توانند با یکدیگر تعامل داشته باشند. ویژگی استفاده مجدد در کنار اتصال سست سرویس ها قابل دستیابی است، اما این یک الزام برای اهداف هر سرویس نیست. استفاده مجدد در هر سرویس خیلی ضروری نیست.
"SOA با اجزای غیر قابل استفاده مجدد یک SOA به شمار نمی رود."