امروزه سازمانها به شدت متکی به تکنولوژیهایی هستند که هر کدام از آنها دارای ویژگیها و کاربردهای متفاوت و منحصربهفرد هستند، همچنین نرمافزارهای کاربردی مورد استفاده این سازمانها نیز از این قاعده مستثنی نبوده و هر کدام از آنها مبتنی بر تکنولوژی خاصی هستند. این نرمافزارها غالباً به صورت مستقل (مستقل از سایر نرمافزارهای موجود در سازمان) و به منظور تأمین نیازهای بخش خاصی از سازمان تولید و توسعه مییابند که این امر باعث میشود تا هر کدام از این نرمافزارها، حیطهی کاربرد محدود به همان بخش از سازمان را داشته باشند و در نتیجه توانایی تعامل با سایر نرمافزارهای سازمان را نداشته باشند؛ بنابراین یکپارچهسازی نرمافزارهایی از این دست در قالب یک مجموعه واحد از فرایندهای کسبوکار، به عنوان یک نیاز و اولویت نمود پیدا میکند.
شکل 1- ساختار سیستمهای کاربردی سازمان، قبل از یکپارچهسازی (ساختار جزیرهای)
یکپارچهسازی سیستمهای کاربردی سازمان (Enterprise Application Integration-EAI) مکانیزمی را به منظور اشتراکگذاری دادهها و فرایندها فراهم میسازد. سیستمهای کاربردی سازمانی بر اساس تکنولوژیهای جدید و قدیمی بوده و از طیف وسیعی از پلتفرمها، پایگاههای داده و نرمافزارهای کاربردی مبتنی بر زبانهای برنامهنویسی مختلف استفاده میکنند. از این رو بهترین راهکار به منظور برقراری تعامل میان این نرمافزارها استفاده از EAI میباشد. با استفاده از EAI، نرمافزارها قادر خواهند بود به شکلی ثمربخش و بدون نیاز به ایجاد تغییر در ساختار دادهها و زیرساختهایشان با یکدیگر تعامل داشته و دادهها و فرایندهایشان را با سایر نرمافزارها به اشتراک بگذارند.
شکل 2- ساختار سیستمهای کاربردی سازمان، بعد از یکپارچهسازی
با توجه به توضیحات فوق این مفهوم را میتوان در یک جمله تعریف کرد:
“EAI مجموعهای است از فرایندها، استانداردها، نرمافزارها و سختافزارها که در راستای یکپارچهسازی دو یا چند سیستم کاربردی سازمان (نرمافزار کاربردی) عمل نموده و برای این سیستمها شرایطی را فراهم میسازد تا بتوانند در قالب یک سیستم واحد عمل کنند“
از فواید EAI میتوان به موارد ذیل اشاره کرد:
1- انواع EAI
یکپارچهسازی سیستمهای کاربردی سازمان میتواند در سطوح مختلفی اجرا شود:
1-1-EAI در سطح داده
این سطح از یکپارچهسازی شامل مجموعهای از تکنیکها، فرایندها و تکنولوژیهاست که انتقال داده میان منابع داده را امکانپذیر میسازند. مزیت اصلی این روش در عدم نیاز آن به ایجاد تغییرات در سطح کد (Source Code) میباشد که این امر، کاهش هزینههای توسعهی مجدد نرمافزارها را به همراه دارد.
1-2-EAI در سطح رابط برنامه کاربردی
در این سطح، دادهها و فرایندهای کسبوکار از طریق رابطهای نرمافزاری (مختص توسعهدهندگان) دسترسپذیر هستند. هر کدام از این رابطها دارای خصوصیات و توابع معینی هستند. با استفاده از این رابطها، توسعهدهندگان قادر خواهند بود تا بسیاری از نرمافزارهای کاربردی را کنار هم آورده و امکان اشتراکگذاری منطق تجاری (Business Logic) و اطلاعات را برای این نرمافزارها فراهم سازند.
1-3-EAI در سطح متد
در این سطح ازEAI، منطق تجاری نرمافزارها به اشتراک گذاشته میشود. یک متد (مفهوم برنامهنویسی method ) میتواند توسط تعداد زیادی از نرمافزارهای کاربردی قابلدسترس باشد و همچنین نرمافزارها میتوانند به متدهای یکدیگر دسترسی داشته باشند.
1-4-EAI در سطح رابط کاربری
در این روش، معماران و توسعهدهندگان میتوانند از رابطهای کاربری به عنوان یک نقطه اشتراک جهت یکپارچهسازی استفاده نمایند (استفاده از رابط کاربری مشترک برای نرمافزارها).
2- معماری EAI
همچنینEAI میتواند بر اساس طراحی ساختار دستهبندی شود:
2-1- توپولوژی Point To Point
Point To Point به عنوان یک روش قدیمی یکپارچهسازی شناخته میشود؛ این توپولوژی به نرمافزارها این امکان را میدهد تا با استفاده از یک “لوله” (Pipe) به یکدیگر متصل شوند. هر نرمافزار کاربردی با استفاده از یک “پیام” یا یک “رویهی فراخوانی” (Call Procedure) با نرمافزار مقابل خود ارتباط برقرار میکند. به ازای هر جفت از نرمافزارهای مرتبط، یک اتصال دهنده (Connector) به منظور برقراری ارتباط، ساخته و پیادهسازی میشود. این اتصالدهنده وظیفهی تبدیل و یکپارچهسازی داده برای هر جفت معین از نرمافزارها را بر عهده دارد. البته امکان اتصال بیش از دو نرمافزار کاربردی هم وجود دارد، اما این کار پیچیدگیهای بسیاری را به همراه خواهد داشت (در صورت زیاد بودن تعداد نرمافزارها).
شکل 3 – یکپارچهسازی با معماری Point To Point
2-2- توپولوژی Hub-Spoke یا Broker
توپولوژی یکپارچهسازی Hub-Spoke از یک “واسط متمرکز” (Hub) و تعدادی تطبیقدهنده یا آداپتور (Spoke) تشکیل شده است. در واقع Spoke اتصالدهندهایست که نرمافزار کاربردی را به Hub متصل میکند. این تطبیقدهنده، دادهها را به منظور برقراری ارتباط میان نرمافزار کاربردی و Hub ترجمه مینماید، به این صورت که پیامها تبدیل گشته، ترجمهشده و به سمت مقصد (نرمافزار به Hub یا بالعکس) هدایت میگردند.
2-3- توپولوژی Bus
طبیعت متمرکز مدلBroker، تنها نقطهی ضعف این مدل بود، چرا که اگر یک مؤلفه (Component) دچار مشکل شود، باعث ایجاد نقص در تمام شبکه میگردد. مدل Bus به عنوان راهحلی برای مشکلات مدل Broker، پدید آمد. این مدل هم از یک مؤلفه مسیریابی متمرکز استفاده میکند با این تفاوت که مابقی وظایف را میان سایر مؤلفهها تقسیم و توزیع میکند. این مؤلفهها میتوانند در نقاط مختلفی از شبکه، گروهبندی و میزبانی شوند. از قابلیتهای دیگر این مدل میتوان به “پردازش تراکنشهای امنیتی” (Security Transaction Processing) و قابلیت رفع خطا (Error Handling) اشاره کرد؛ این قابلیتها جزو مشخصههای مدل Bus میباشند. در مدل Bus، هر کدام از این قابلیتها در مؤلفههای مجزا گنجاندهشدهاند. مدل Bus یک راهکار مختصر با الگویی مستحکم است که میتواند با کمترین حجم کد نویسی و بدون اعمال تغییر بر نرمافزار کاربردی، طراحی و مورد استفاده قرار گیرد. امروزه این مدل با نام ESB (Enterprise Service Bus) شناخته میشود.
ترجمه و گردآوری: تیم مدیریت محتوای رایورز
سوالی دارید از ما بپرسید
تلفن: 89326444-021
آنچه در این مقاله میخوانید