تجربیات موفق یکپارچهسازی در سکوی ابری فرآیندهای کسب و کار
رایانش ابری، الگویی برای دسترسی از طریق شبکه به مجموعه اشتراکی، مقایسهپذیری و انعطافپذیر از منابع فیزیکی یا مجازی است.یکی از انواع خدمات ابری که امروز بسیار مورد توجه قرار گرفته است، سکوهای ابری هستند.یک سکوی ابری، مجموعهای از فناوریهاست که امکان اجرای توسعه کاربرد و سرویس بر روی آن، اغلب بدون نیاز به دانلود و نصب نرمافزار فراهم است. امروز شاهد این هستیم که انواع مختلفی از سکوهای ابری برای نیازهای مختلف، توسعه داده شدهاند که از جملة آنها سکوهای ابری مرتبط با توسعه فرآیندهای کسب و کار است.
به گزارش پایگاه خبری بانکداری الکترونیک ، سازمانها در چند دهة گذشته به سمتی حرکت کردند تا فرآیندهای تجاری خود را به صورت خودکار اجرا کنند و با ظهور رایانش ابری و پذیرش مزایای آن، گرایش به سمت رویکردهای سرویسگرا برای دریافت خدمات سوق پیدا کرد.
در چنین شرایطی یک سازمان میتواند خدمات و فرآیندهایی را که بیشتر با سیاستها و اهداف کسب و کار یاش تطبیق دارد، انتخاب سپس از آن در محیطهای کاربردی مختلف استفاده کند. این باعث میشود که سازمان، بدون درگیر شدن در پیچیدگیهای اجرای فرآیند روی اصل کسب و کار خود تمرکز کند.
نظر کارشناسان و مدیران فناوری اطلاعات در مورد اهمیت سناریوهای مختلف یکپارچهسازی در کسب و کار در شکل ۲ نشان داده شده است. سناریوی اتصال برنامههای کاربردی به یکدیگر در حال حاضر بیشترین سهم را دارد؛ اما تا ۲۰۱۸ یکپارچهسازی با سرویسهای ابری از آن پیشی خواهد گرفت. این پیشبینی با روند رو به رشد BPaaSها نیز سازگاری دارد که تقاضای زیادی را در سازمانها برای یکپارچهسازی با خدمات ابری ایجاد خواهد کرد.
ارائه فرآیندهای کسب و کار به صورت سرویس
تاکنون تعاریف مختلفی ازBPaaS در ادبیات موضوع ارائه شده که یکی از آنها استقرار سامانة مدیریت فرآیندهای تجاری (BPM) در ابر است تا سازمانها برای مدیریت و بهینهسازی فرآیندهای تجاری خود به جای خرید راهکارها و بستههای نرمافزاری BPM، بتوانند آن را در ابر تأمین کنند و این کار در هر سه لایةLaaS ،PaaS،SaaS ، امکانپذیر است.
نوع دیگری از تعریف BPaaS ایجاد یک لایة سطح بالا روی دیگر انواع سرویس است که به معنای برونسپاری فرآیندهای تجاری است.
در نمونههای سنتی ارائة سرویس به صورت نرمافزار یا پلتفرم در حقیقت کاربر با یک برنامة کاربردی سر و کار دارد و از این برنامههای کاربردی که به صورت سرویسهای ابری یا غیر ابری ارائه میشوند برای انجام فرآیندهای تجاری خود استفاده میکند؛ اما در یک سرویس فرآیند تجاری، خود فرآیند استفاده از نرمافزار برای هدف مشخصی برونسپاری میشود.
مدل مفهومی ارائة فرآیندهای کسب و کار به صورت سرویس
یک مدل مفهومی ارائة فرآیندهای کسب و کار به صورت سرویس در شکل ۴ نشان داده شده است. همانطور که در تعاریف پایه ارائه شد، به منظور ارائة فرآیندهای کسب و کار به صورت سرویس به یک ساز و کار مدلسازی فرآیندها نیاز است و مدلهای تهیه شده در انبارهای قرار میگیرند تا در صورت نیاز به تعداد مورد نیاز اجرا شوند. برای اجرای یک فرآیند کسب و کار به موتور پردازشی نیاز است که امکان دسترسی به فرآیندهای کسب و کار را در سرویسدهندههای مختلف ابری فراهم کند. موتور پردازشی خود نیز میتواند در درون ابر مستقر شود و متناسب با مقیاس سرویسدهی، منابع پردازشی به آن تخصیص داده شود.
در چنین سیستمی به صورت همزمان سه نوع فرآیند در جریان است. نوع اول فرآیندهای است که در سمت مشتری اجرا میشود، نوع دوم فرآیندهای است که به صورت برونسپاریشده توسط BPaaS مدیریت میشود و نوع سوم فرآیندهای است که در سمت سرویسدهندهها به گردش درمیآید. هماهنگی اجرای فرآیند در درون هر موجودیت به تنهایی Orchestration نامیده میشود. انواع دادههایی که عموماً در هر فرایند کسب و کار به گردش درمیآید به شرح زیر است:
1. دادههای کسب و کار
2. مدلهای فرایند کسب و کار
3. دادههای تاریخچه و وضعیت اجرای هر فرآیند
4. فراداده مربوط به رابطة فرآیندهای کسب و کار و نمونههای اجراشده
5. دادههای مربوط به منابع و وضعیت آنها
الگوهای یکپارچهسازی
یکی از قابلیتهای مورد نیاز در یک پلتفرم ارائة فرآیندهای کسب و کار به صورت سرویس یکپارچهسازی است. یکپارچهسازی به معنای این است که خدمات و برنامههایی که مستقل از هم طراحی شدهاند، میتوانند با یکدیگر کار کنند. سه نوع الگوی رایج برای یکپارچهسازی وجود دارد:
• الگوی Data Consistency: هدفش این است که دادهها میان همة برنامهها سازگار باشد.
• الگوی Multistep process: برای ایجاد هماهنگی میان اجرای فعالیتهای فرآیند کسب و کار ، صرف نظر از اینکه این فعالیتها توسط یک نرمافزار یا یک انسان یا یک وسیلة هوشمند انجام میشود.
• الگوی Composite application: به معنای ایجاد یک برنامة کاربردی واحد با ترکیب دادهها و برنامههای کاربردی موجود است.
فناوریهای یکپارچهسازی
معماری سامانهها و برنامههای کاربردی جدید ذاتاً با هم ناهمگن، توزیعشده و پراکنده است. در نقطة مقابل به دلیل رسیدن به اهداف کسب و کار نظیر افزایش بهرهوری فرآیندها، بهبود تجربة مشتری و افزایش چابکی، نیاز است که سامانهها و کاربردهای مختلف با هم یکپارچه باشند. برای رفع این چالش، بازار یکپارچهسازی با طیف گستردهای از راهکارها و فناوریها شکل گرفته است:
• مدیریت واسطهای توسعه: شامل ابزارهای انتشار، مستندسازی و مدیریت استفاده از APIها میشود که استفاده از آنها در ابر یا محیطهای سازمانی رایج است.
• یکپارچهسازیهای درونسازمانی: شامل محصولات سازمانی (نظیر ESB) میشود که امکان تعامل برنامههای مستقل از هم را فراهم میکنند.
• یکپارچهسازیB2B: شامل محصولاتی از قبیلB2B Gateway های میشود که امکان یکپارچهسازی برنامههای کاربردی را میان شرکتهای مختلف و شرکای تجاری فراهم میکنند.
• یکپارچهسازی داده: شامل ابزارهای ثبت تغییرات داده (CDC)،ETL ، مجازیسازی داده و امثال اینها که امکان استفاده از ساختارهای دادهای را که طراحی آنها مستقل از هم انجام شده است فراهم میکنند.
• چارچوب یکپارچهسازی: چارچوب و کتابخانههای متنباز (نظیر Apachr Camel) برای یکپارچهسازی برنامههای کاربردی و داده هستند که اغلب توسط توسعهدهندگان برای ایجاد استقلال از پلتفرمهای یکپارچهسازی مورد استفاده قرار میگیرد.
• پلتفرم ابری یکپارچهسازی (iPaaS): راهکارهای یکپارچهسازی مبتنی بر رایانش ابری که بسیاری از قابلیتهای ESB و ابزارهای یکپارچهسازی داده را با تأکید بر سناریوهای یکپارچهسازی با سرویسهای ابری تأمین میکنند.
• نرمافزار ابری یکپارچهسازی (iSaaS): یکپارچهسازیهای ساده را با استفاده از واسطهای کاربری آسان، برای اتصال سرویسهای ابری به یکدیگر یا سرویسهای ابری و سازمانی فراهم میکند.
• یکپارچهسازی موبایل: میان افزار میان برنامههای موبایل و پایگاههای داده و برنامههای کاربردی دیگر (همان MbaaS) هستند.
• پلتفرمهای یکپارچهسازی اینترنت اشیا : مجموعه نرمافزاری یا پلتفرم ابری که امکان مانیتور کردن، مدیریت و کنترل انواع مختلف نقاط انتهایی را فراهم میکنند و سبب تسهیل فعالیتهای مجتمع بر اشیا و یکپارچهسازی آنها با منابع سازمانی میشوند.
فناوریهای مدیریت API
مجموعهای از فناوریها و محصولات هستند که به شما امکان توصیف و انتشار APIها را با استفاده از فرمتها و پروتکلهای تحت وب میدهند. این فناوری شامل سه بخش اصلی است؛ بخش اول، APLGateway است که میتواند به چند صورت مستقر شود؛ به صورت یک سرویس ابری، به صورت یک نرمافزار مستقل یا به صورت یک اپل اینس فیزیکی یا مجازی. دو بخش دیگر پرتال مدیریت API و پرتال توسعهدهنده است. قابلیت مدیریتی امکان توصیف، مدیریت و نظارت بر انتشار نقاط انتهایی API و تنظیم سیاستهای دسترسی را فراهم میکند. این فناوری در کنار مزایایی که دارد، نقاط ضعفی نیز به همراه دارد که برای مثال عدم توانایی در ایجاد هماهنگی در یکپارچهسازیهای پیچیده، عدم پشتیبانی از برخی پروتکلهای ارتباطی مبتنی بر پیام یا مبتنی بر رخداد و ناتوانی در سناریوهای شامل Monitoring یا Polling تغییرات اشاره کرد.
یکپارچهسازهای سازمانی (On-Premise)
یکپارچهسازی برنامههای کاربردی به معنای این است که برنامههای مستقل از هم بتوانند با یکدیگر کار کنند. فناوری ESB مدل رایج یکپارچهسازی سازمانی است در این مدل فرض بر این است که نرمافزار ESB در سرورهای درون سازمان نصب است و به صورت متمرکز مدیریت میشود. در این مدل استقرار، ظرفیت پلتفرم میان جریانهای مختلف یکپارچهسازی به اشتراک گذاشته میشود. ابزارهای نظارتی و مدیریتی، امکان بررسی سلامت سامانه و محیط یکپارچهسازی و همچنین سلامت و وضعیت فرآیندهای یکپارچهسازی مربوط به یک فعالیت کسب و کار را تأمین میکنند. فناوریهایی که از این مدل استقرار پشتیبانی میکنند شامل طیف بسیار گستردهای از قابلیتهای یکپارچهسازی هستند که در ادامه برخی از مهمترین آنها شرح داده شده است:
• ارتباطات: پشتیبانی از پروتکلهای مختلف ارتباطی نظیر HTTP, XML?REST, SOAP, MQTT انتقال فایل و پشتیبانی از روشهای مختلف تعاون نظیر درخواست و …
• تبدیل داده: پشتیبانی از امکان تبدیل داده از فرمت، ساختار و معنای خود در برنامة مبدأ به آنچه در مقصد مورد نیاز است.
• هماهنگی (Orchestration): شامل هزینة نگهداری و وضعیت فرآیندها در طول اجرا و نگهداری منطقة اجرا و تعامل میان فرآیندهای شامل چند سرویس یا کاربرد
• اتصال برنامههای کاربردی: شامل آداپتورهایی برای اتصال به پایگاه داده، برنامههای کاربردی و SaaS
• محیط توسعه: برای فراهم آوردن امکان طراحی، توسعه، تست و استقرار واسطهای یکپارچهسازی مورد نیاز
• تعاملات B2B: شامل قابلیت تأمین پروتکلهای ارتباط B2B نظیر ebMS, EDI, AS2 و نیاز پشتیبانی از ارتباطات وب سرویسی با کسب و کار های بیرونی
• حاکمیت: شامل مدیریت چرخة عمر راهکارهای یکپارچهسازی از زمان طراحی تا مدیریت کیفیت سرویس در زمان اجرا
• امنیت: پشتیبانی از قابلیتهای امنیتی نظیر احراز هویت نقاط انتهایی، اعتبارسنجی دسترسی به واسطها یا سرویسها، رمزنگاری مستندات و پیامها، و …
• مدیریت و نظارت: شامل نظارت و مدیریت مؤثر بر راهکارهای یکپارچهسازی برنامهها و سرویسها
یکپارچهساز سازمانی توزیعشده
یک مدل از استقرار ESB است با این تفاوت که امکان استقرار جریانهای کاری روی یک محیط توزیعشده فراهم است. مبنای فنی این روش استقرار با پلتفرمهای ESB متمرکز یکسان است و توزیع بار کاری و جداسازی از یکدیگر انعطافپذیری بیشتری را فراهم میکند.
پلتفرمهای یکپارچهسازی ابری (iPaaS )
• پلتفرمهای یکپارچهسازی ابری، سرویسی است که از یکپارچهسازی فرآیندها، دادهها و برنامههای کاربردی پشتیبانی میکنند و سناریوهای آن معمولاً شامل ترکیبی از یک کاربرد یا سرویس ابری، منابع داده، APIها و سامانههای درونسازمانی هستند. قابلیتهایی که معمولاً توسط این پلتفرمها پشتیبانی میشود به شرح زیر است:
• پشتیبانی از انواع مختلف پروتکلهای ارتباطی و روشهای ارسال پیام و داده
• آداپتورهای برنامههای درونسازمانی و ابری، آداپتورهای منابع داده و آداپتورهای سایر فناوریهای مرتبط نظیرODBC, HTTP, JMS و …
• امکان برقراری ارتباط امن میان سامانه های درون سازمان و محیط iPaaS
• قابلیت نگاشت و تبدیل داده و پیام
• مسیریابی و هماهنگی
• ابزارهای مدیریت چرخة عمر و جریان یکپارچهسازی
• مجموعه ابزارهایی برای توسعهدهندگان آداپتور
• نظارت و مدیریت جریان یکپارچهسازی
• مدیریت API
• مدیریت ارتباطات تجاری
• الگوهای یکپارچهسازی
• یکپارچهسازیهای ابری از پیش آماده شده
• بازار فناوریها و راهکارهای یکپارچهسازی
چارچوبهای یکپارچهسازی
چارچوبهای یکپارچهسازی یک روش ساده و سبک برای توسعه و جاسازی جریانهای یکپارچهسازی در داخل برنامههای کاربردی و سرویسها هستند. این چارچوبها معمولاً بر اساس یک زبان مشخص برنامهنویسی یا قابل پیکربندی هستند که پیادهسازی الگوهای رایج یکپارچهسازی را تسهیل میکنند و آداپتورهایی را برای اتصال به فناوریها و پروتکلهای رایج تأمین میکنند.
انواع الگوهای یکپارچهسازی
به دلیل روندهای مختلف فناوری نظیر رایانش ابری، موبایل، اینترنتاشیا و کلانداده، دادههای سازمانهای دیگر در یک مرکز داده به صورت متمرکز مدیریت نمیشود و در نقاط مختلف پخش شده است؛ همچنین در کاربردهای موبایل لازم است که دادهها در هر جایی و در هر زمانی در دسترس باشند. در اینترنت اشیا هم لازم است که دادهها از نقاط مختلف قابل دریافت و در نقاط دیگر قابل پردازش باشند. حجم، تنوع و سرعت زیاد تولید دادهها نیز چالشهای بیشتری در یکپارچهسازی ایجاد کرده است با اینکه دیگر نمیتوان انتظار داشت همة تخصصهای مربوط به یکپارچهسازی با این طیف وسیع از نیازمندیها در یک سازمان وجود داشته باشند. در اینجا رویکرد سلفسرویسی با پیشنهاد سه نوع معماری مکمل رسیدن به این هدف مورد بررسی قرار گرفته است.
یکپارچهسازی توکار
یکپارچهسازی توکار: جاسازیشده در برنامههای تجاری بسیار رایج است و سعی میشود امکان پشتیبانی از فناوریها و پروتکلهای مختلف در یک نرمافزار تأمین شود. این نوع یکپارچهسازی معمولاً به سه شکل عرضه میشود؛ جاسازیشده در پایگاه داده (شکل ۵)، جاسازیشده در نرمافزارهای عملیاتی و جاسازیشده در نرمافزارهای تحلیلی (شکل ۶).
یکپارچهسازی مستقل
به معنای یکپارچهسازی برنامهها و پایگاههای داده مستقل از هم از طریق یک میانافزار یکپارچهساز جداگانه است و معمولاً در سه حالت ارائه میشود؛ از طریق پلتفرمهای ابری یکپارچهسازی iPaaS)) از طریق نرمافزارهای ابری یکپارچهسازی (iSaaS) و از طریق مجازیسازی داده (Data (Virtualiztion.
یکپارچهسازی داده
در این الگو قابلیتهای دادهمحور نظیر دسترسی، کشف، تمیزسازی، تبدیل، غنیسازی و مشارکت روی داده فراهم میشود. این الگو یا از طریق ابزارهای مستقل یا از طریق ساز و کارهای توکار در ابزارهای تحلیلی ارائه میشود.
نتیجهگیری
بر اساس بررسیهای انجامشده، میتوان به این جمعبندی رسید که هر یک از فناوریهای یکپارچهسازی از برخی سناریوهای کاربردی پشتیبانی میکنند؛ مثلاً ESB نسبت به دیگر فناوریها برای پیادهسازی سناریویهای پیچیده مناسب است؛ چارچوب یکپارچهسازی بیشترین انعطافپذیری را در استقرار، تأمین میکنند و پلتفرمهای ابری بیشترین سازگاری را در اتصال به کاربردهای ابری بیرونی دارند. مجموعه فناوریهای قابل استفاده برای سناریوهای مختلف کاربردی در جدول ۲ ارائه شده است.
هر یک از فناوریها علاوه بر قابلیتهای منحصر به فردی که فراهم میکنند، نقاط مشترکی نیز با یکدیگر دارند. همانطور که در شکل ۹ نشان داده شده است، چارچوبهای یکپارچهسازی تقریباً در اکثر فناوریهای دیگر مورد استفاده قرار میگیرند.