ایده معماری سرویس گرا، مجزا سازی جنبه های کسب و کاری یک مسئله است و این تجرد به شکل سرویس ظهور مییابد. [۱۵]
هدف معماری سرویس گرا، ساختار دهی سیستمهای توزیع شده بزرگ بر مبنای تجرید و خلاصه سازی قواعد و توابع کسب و کاری است. تعاریف متعددی از سرویس ارائه شده است که تعدادی از آن ها در زیر آورده شده است:
یک سرویس نمایشگر یک وظیفه کسب و کار تکرار پذیر است. سرویسها برای مخفی سازی توابع عملیاتی با فراهم کردن یک واسط خوش تعریف و مستقل در یک برنامه استفاده میشوند. سرویسها میتوانند به وسیله سایر سرویسها با برنامه های مشتری مورد استفاده قرار گیرند. [۱۶]
– سرویس یک مؤلفه نرم افزاری با وظیفه و عملکرد مشخص است. که در بر گیرنده مفهوم سطح بالای کسب و کار است. [۲۲]
– سرویس به معنای نیاز یک مصرف کننده به قابلیتها و امکاناتی است که توسط یک تأمین کننده سرویس فراهم میشود. [۲۳]
– سرویس کاری است که به وسیله یک سرویس دهنده انجام میشود که ممکن است انجام یک درخواست کوچک روی داده مانند دریافت یا ذخیره اطلاعات باشد یا مربوط به انجام کاری پیچیده تر مانند چاپ یک تصویر باشد. [۷۴]
– سرویس به معنای پیاده سازی یک کارکرد کسب و کار خوش تعریف است که میتواند در فرایندها با نرم افزار های مختلف مورد استفاده و فراخوانی قرار بگیرد. [۷۳]
بر اساس این تعاریف هر سرویس مأمور انجام وظیفه یا کارکردی خاص است. بسته به دانه بندی سرویس , عملیات و توابع قابل انجام توسط سرویس متفاوت است. به عنوان مثالی از سرویس میتوان به سرویس محاسبه عوارض سالیانه اشاره کرد که شامل توابعی است که محاسبه عوارض نو سازی را برای یک ملک انجام میدهد. این سرویس خود از چند سرویس دیگر استفاده میکند. یکی از آن ها سرویس محاسبه ارزش ملک است که اولین تابع از محاسبه عوارض نو سازی است.
۲-۳-۵ اجزا اصلی یک معماری سرویس گرا :
در نمای کلی، معماری سرویس گرا شامل مؤلفه های زیر است :
۱- تأمین کننده
۲- مصرف کننده
۳- مخزن سرویس[۱۴]
هر جز میتواند به عنوان یکی از دو مؤلفه دیگر نیز عمل کند. برای مثال اگر یک تأمین کننده سرویس نیاز به در یافت اطلاعاتی داشته باشد که از سرویس دیگری فراهم شود، بنابراین تأمین کننده به عنوان مصرف کننده سرویس عمل خواهد کرد. تأمین کننده سرویس یک سرویس را ایجاد کرده و آنرا برای استفاده و دسترسی به اطلاعات در رجیستری سرویس منتشر میسازد. هر تأمین کننده بایستی تصمیم بگیرد چه سرویسهایی نمایش داده شود، توازن و تعادل بین امنیت و دسترس پذیری را فراهم کند و چگونگی قیمت دهی و ارزش دهی سرویس را تعیین نماید. تأمین کننده همچنین لازم است طبقه بندی سرویسها را تعیین کند و توافقات لازم برای استفاده سرویس توسط مصرف کننده سرویس را مشخص کند.[۱۶]
مخزن سرویس مسئول ایجاد یک واسط سرویس و دسترس پذیری به اطلاعات برای مصرف کننده سرویس است. در پیاده سازی یک رجیستری سرویس، باید محدوده سرویس مورد نظر برای پیاده سازی رجیستری مد نظر قرار گیرد. برای مثال، رجیستریهایی به صورت عمومی بر روی اینترنت قرار دارند که به صورت نامحدود در دسترس همگان قرار دارند. در حالی که رجیستریهای خصوصی نیز وجود دارند که تنها قابل استفاده به وسیله کاربران داخلی اینترانت سازمان هستند.
۲-۳-۶ علت استفاده از معماری سرویس گرا:
سازمانها باید بتوانند به سرعت به تغییرات بازار واکنش نشان دهند و از سرمایه های موجود (زیر ساخت فناوری اطلاعات و فرایند های کسب و کار و غیره) برای پوشش نیازمندیهای جدید مشتریان استفاده نمایند. معماری سرویس گرا با طبیعت اتصال سست خود به سازمانها امکان بهره گیری از سرویسهای جدید یا ارتقای سرویسهای موجود را فراهم میکند. ]۲[
نتیجه تصویری درباره فناوری اطلاعات
بنابراین میتوان گفت سرویس گرایی راه حل مناسبی برای جوان سازی سیستمهای قدیمی سازمان، یکپارچه سازی برنامه های کاربردی و بسته های نرم افزاری مختلف و متصل سازی سیستمها و کسب و کار های گوناگون به منظور همکاری و تعامل میباشد. معماری سرویس گرا در پاسخگویی به تغیرات بسیار منعطف است زیرا جدا بودن واسطها از پیاده سازی سرویسها و اعمال جابجایی و تغییرات در مؤلفه های تکنیکی سرویسها بسیار میسر است. همچنین:
جهت دانلود متن کامل پایان نامه به سایت azarim.ir مراجعه نمایید.
انعطاف پذیری در کسب و کار و فناوری اطلاعات
وجود استانداردها و چارچوبهای باز
نرم افزارها و ابزار های موجود برای معماری سرویس گرا
هدایت کسب و کار در حرکت به سمت فناوری اطلاعات
و تجارب بسیار زیادی که در زمینه به کار گیری و پیاده سازی این معماری بدست آمدهاند، بیانگر دلایل استفاده از این معماری هستند. از طرفی سازمان با بهکارگیری این معماری از مزایای زیادی بهرمند میشود. برای مثال، سازمانها با بهره گرفتن از SOA میتوانند فرایند های تجاری را به صورت افقی بسازند تا سیستمها، افراد و فرایندها را یکپارچه کنند و سازمان بتواند به سرعت و آسان به تغییرات و نیاز های کسب و کار پاسخ دهد. همچنین معماری سرویس گرا فرصت مناسبی را برای سازمان به وجود میآورد تا از تکنولوژی اطلاعات به طور مطلوب استفاده نماید که این شامل مزایایی برای سازمان IT و کسب و کار است.[۲۴]
۲-۴ مدیریت فرایند کسب و کار و معماری سرویس گرا :
سرویسها بخشهایی از فرایند های کسب و کار هستند. مدیریت فرایند کسب و کار یک موضوع وسیع است که بعداً بیشتر به آن پرداخته خواهد شد. مدیریت فرایند کسب و کار با جنبههایی نظیر آنالیز کسب و کار (شامل نیازها و فرصتها) , پیاده سازی و یکپارچگی استراتژیهای کسب و کار، نظارت[۱۵] و بهینه سازی فرایند های کسب و کار، تشخیص ابزار های مناسب و فرهنگ سازی و هم سویی کسب و کار و فناوری اطلاعات سرو کار دارد. [۱۵]
ارتباط مدیریت فرایند کسب و کار و معماری سرویس گرا از آنجا مشخص است که فعالیتها در پایینترین سطح، سرویسها هستند. یک سیستم یا تابع در رویکرد بالا به پایین (نگاه از کل به جز از بالا به پایین) به قسمتهای کوچکتر شکسته میشود که تا اینکه به سطح سرویسهای پایه میرسد. در رویکرد پایین به بالا سرویسها با هم ترکیب میشوند و فرایندها یا سیستم را میسازند. هیچ برتری نسبت به روشهای بالا به پایین و پایین به بالا وجود ندارد. ولی در رویکرد بالا به پایین در ابتدا به درک کسب و کار و سپس به جزئیات پرداخته میشود ولی در پایین به بالا امکان پرداختن زیاد به جزئیات وجود دارد که احتمال ایجاد فرایند های سلب وجود دارد. اصولاً پیشنهاد میشود ترکیبی از دو روش استفاده شود. [۲۵][۱۵]
۲-۵ سازمان سرویس گرا :
شکل ۲-۷- حاکمیت معماری سرویس گرا در سازمان و تبدیل سازمان به یک سازمان سرویس گرا
امروزه اولویتهای اصلی سازمانها برای رقابتی شدن، افزایش کارایی عملیاتی، رشد درآمد و تولید بیشتر است. [۲۶]
کارایی سازمان، ارتباط مستقیمی با چابکی و قدرت پاسخگویی سریع دارد. انعطاف پذیری عامل اصلی برای کاهش زمان بازار و واکنش سریع به تغییرات است. قابلیت انعطاف بایستی در همه زمینه های سازمانی، نقشها و فرایندها و غیره به طور شفاف انجام شود. سرویس گرایی ایده ایست که کمک میکند تا سازمان بتواند در برابر تغییرات سریعاً واکنش نشان دهد.
در ابتدا سازمانها برای یکپارچه کردن سیستمها و نرم افزارهایشان از تکنولوژی وب سرویسها شروع کردند. این مرحله بیشتر کسب تجربه بود. [۲۶]
آن ها شروع به تلاش کرده و سعی داشتند تا این تکنولوژی را بشناسند و خاصیت اتصال سست را با یکپارچگی برنامهها و سیستمهایشان به کار گیرند. در این مرحله تعداد نسبتاً کمی وب سرویس در داخل سازمانها یا بر روی وب تهیه و را اندازی شد. مشتریان شروع به استفاده از چارچوبهای توسعه وب سرویس نمودند تا این تکنولوژی نوظهور را بشناسند.
چیزی نگذشت که شرکتهایی نظیر آمازون، ebay ,google از واسطهای مبتنی بر سرویس برای وب سایتهایشان استفاده کردند. در این مرحله میلیونها وب سرویس تهیه شد که روزانه از طریق اینترنت مورد دسترسی و استفاده قرار میگرفت. با گسترش سرویس گرایی در مرحله دوم، سازمانهای بزرگ فناوری اطلاعات از تکنولوژی وب سرویس به عنوان یک تکنولوژی قابل اعتماد برای یکپارچه سازی برنامه های پشت صحنه و سیستم پردازنده مرکزی استفاده کردند. همچنین تلاشهای زیادی در زمینه تعیین ارتباطات کسب و کار مبتنی بر تکنولوژی وب سرویس صورت گرفت. در مرحله دوم تاکید بر روی ترکیب سرویسها، استاندارد های مناسب برای کیفیت سرویس و مدیریت سرویس بود. در این مرحله همچنین مدیریت فرایند کسب و کار شکل گرفت که امکان خودکار سازی فرایندها و قواعد کسب و کاری را فراهم میساخت. گذرگاه های سرویس، اسکلت معماری سازمان شدند دو زیر ساختی برای هماهنگی سرویسها به وجود آمد و جنبه های اصلی یکپارچگی، نظیر انتقال پیغام، پروتکل انتقال، امنیت و پذیرش تعدادی از استاندارد های سرویس برای پشتیبانی از هماهنگ سازی نظیر ws-security , BPEL صورت گرفت. سازماندهی ثبت سرویسها و به خصوص استاندارد های مربوط به مخازن و رجیستری نیز انجام شد.
در مرحله سوم که هم اکنون نیز در حال بهبود و شکل گیری است، دیدگاه نرم افزار به عنوان یک سرویس مطرح خواهد شد. این رویکرد یک روش دشوار را در فرایند های کسب و کار، برنامه های داخلی سازمان، سیستم مدیریت فرایند کسب و کار و گذرگاه های سرویس را به همراه دارد. از منظر تکنولوژی، سرویسها در همه جا قابل استفادهاند. از منظر تقاضا، مشتریان فرایند های پویایی را خواهند ساخت. ترکیب وب سرویسها در فرایند های هوشمندانه در انتخاب و به کار گیری روش وب سرویسها ضروری است. مرحله سوم موج جدیدی در توسعه نرم افزار به عنوان سرویس به وجود خواهد آورد. [۲۶]
(توسعه مشاب ها نیز در امتداد این مسیر قرار دارد) همچنین این دیدگاه معتقد است که سرویس گرایی همان طور که در لایه های نرم افزارهای کاربردی منجر به سبک معماری سرویس گرا میشود، در کسب و کار سازمان نیز میتواند اثر بخش بوده و سازمان سرویس گرا را تعریف کند.
شکل ۲-۸- فازهای سیستم سرویس گرا
در سرویس گرایی علاوه بر تکنولوژی، نیاز به تغییر فرهنگ سازمان نیز هست. سرویس گرایی بیشتر یک فرهنگ است. فرهنگ سرویس گرایی بدین معناست که هدف اصلی، ارائه خدمات به دیگران باشد آن هم به بهترین روش ممکن.
در سازمانهای سرویس گرا دو هرم در مورد سرویس دهی وجود دارد. اولین هرم سازمان شامل ۳ مؤلفه کلیدی سازمان است. که سیستم مدیریت فرایند کسب و کار و زیر ساخت فناوری اطلاعات سرویس گرا را شامل میشود. هرم دوم مربوط به مجریان و ارائه دهندگان سرویس است. [۲۶] سازمان سرویس گرا با بهره گرفتن از مؤلفه های سهگانه و رهبری و مدیریت خدمت گذار میتواند در برابر گروه های مختلف ذینفعان موفق عمل کند. شکل زیر مؤلفه های فنی و رهبری خدمت گذار در سازمان سرویس گرا را نشان میدهد.
شکل ۲-۹- هرمهای مؤلفه های فنی و رهبری خدمت گذار در سازمان سرویس گرا [۲۶]
در هرم اول برای سرویس گرایی سازمان سه لایه اساسی مورد نیاز است. مدیریت کارایی سازمان، مدیریت فرایند کسب و کار و معماری فناوری اطلاعات … شکل زیر سه لایه بنیادی سازمان سرویس گرا را نشان میدهد.
شکل ۲-۱۰- لایه های بنیادی سازمان سرویس گرا
همان طور که مشاهده میشود مدیریت کارایی سازمان در سازمان مربوط به کارایی سرویسها در سازمان است در لایه بعدی یکپارچگی سرویسها در فرایند های کسب و کار و زیر ساختها و تجهیزات و فناوریهای اطلاعاتی در لایه آخر متناسب با معماری سرویس گرا است. [۲۷]
۲-۶ فرایند های کسب و کار سازمان :
از آنجا که هدف اصلی این پروژه یکپارچه سازی سازمان سرویس گرا است و عملاً سازمان هم بر اساس فرایند های کسب و کار خود ساخته میشود، این نیاز وجود دارد که به تشریح فرایند های کسب و کار و تا حدودی به مدل سازی آن ها پرداخته شود.
یک فرایند کسب و کار، مجموعه ای از فعالیتها است که به منظور تولید یک خروجی خاص برای یک مشتری یا بازار مشخص طراحی میشود. تاکید فرایند روی چگونگی کارها درون سازمان میباشد. بنابراین یک فرایند، ترتیب مشخصی از فعالیتها در گذر زمان و مکان است که دارای یک شروع، پایان، ورودیها و خروجیها است که به روشنی تعریف شدهاند. [۲۸]
یک فرایند دارای قسمتهای مختلفی میباشد که شکل زیر نشان میدهد.
رویداد
خروجی
منبع
اطلاعات
هدف
فرایند کسب و کار
شکل ۲-۱۱- فرایند کسب و کار
هر فرایند کسب و کار دارای تعدادی هدف خوش تعریف است. هدف بیان میکند که سازمان چرا این فرایند را انجام میدهد و باید بر حسب مزایایی که این فرایند برای سازمان دارد تعریف شود. فرایند های کسب و کار از اطلاعات برای تنظیم یا تکمیل فعالیتهایشان استفاده میکنند. اطلاعات بر خلاف منابع، در فرایند مصرف نمیشوند، بلکه به عنوان بخشی از فرایند انتقالی استفاده میشوند. اطلاعات ممکن است از منابع خارجی، از مشتریان و از واحد های سازمانی داخلی تأمین شوند یا حتی به وسیله دیگر فرایندها تولید شوند. یک فرایند کسب و کار، یک یا چندین خروجی با ارزش را برای کسب و کار تولید خواهد کرد. که این خروجیها، مجموعه ای از نیازمندیهای داخلی و خارجی را بر آورده خواهند ساخت. خروجی ممکن است یک شی فیزیکی (مانند گزارش یا فاکتور) , یک تبدیل از منابع خام اطلاعاتی به یک تنظیم جدید (مانند تنظیم زمان بندی روزانه) یا نتیجه کلی فرایند، مانند تکمیل سفارش مشتری باشد. یک منبع به عنوان ورودی به یک فرایند کسب و کار وارد شده و در طول فرایند مصرف میشود. رویداد، نقطه شروع یک فرایند را نشان میدهد. به عنوان مثال رسیدن یک درخواست جدید ممکن است رویداد آغاز یک فرایند باشد.
اصولاً فعالیتهای درون سازمان به دو دسته تقسیم میشوند.[۲۸]
فعالیت خودکار شده یک گام در فرایند است که به طور مستقیم توسط موتور اجرایی انجام میشود. فعالیت دستی، گامی در فرایند است که توسط یک فرد مشارکت کننده در فرایند اجرا میشود.
مدیریت فرایند کسب و کار، BPM[16] باعث میشود که تحلیلگر کسب و کار بتواند با ساخت فرایند های کسب و کار خوش تعریف , سیستمهای فن آوری اطلاعات را با اهداف کسب و کار هم راستا سازد . سیستمهای BPM یک مجموعه از ابزار را در اختیار تحلیلگر کسب و کار قرار میدهند که مدلهای کسب و کار را با بهره گرفتن از زبانهای مدل سازی نظیرBPMN تعریف کنند و سپس با فراخوانی سرویسها , این مدلها را اجرا نمایند. [۲۹]
شکل ۲-۱۲- ایجاد فرایند کسب و کار از عملکرد سیستم سازمانی در سیستم BPM
روش مدل سازی فرایند کسب و کار، BPMN تکنیکی است که مراحل یک فرایند کسب و کار , افراد , سازمانها یا مسئولیتهای سیستم برای آن مراحل و داده های وابسته به هر مرحله را فرموله بندی میکند. BPMN به ویژه در معماری سرویس گرا بسیار جالب است , از آنجا که یک زبان برای استفاده از سرویسهای کسب و کار قابل استفاده مجدد فراهم میکند. این زبان که BPEL4WS[17] یا به اختصار BPEL نامیده میشود , یک مشخصه سازی BPM با زیر ساخت بسیار قوی (BEA, Oracle, Microsoft , IBM )است .[۳۰]
این زبان برای تعریف و اجرای فرایندهای کسب و کار استفاده میشود. به طور کلی دو راه برای نمایش دادن یک فرایند وجود دارد : XML و علامت گذاری یا روشهای ترسیمی. روشهای ترسیمی نمودار های فرایندی مانند UML را فراهم میکنند.
در این پروژه، جهت تحلیل فرایندها از روش ترسیمی موجود در نرم افزارها استفاده شده است. دیدگاه های مختلفی جهت شناسایی و بهبود فرایندها وجود دارد. [۳۱]