منابع پایان نامه ارشد با موضوع فناوری اطلاعات، تعامل پذیری، سیستمهای توزیع شده

دانلود پایان نامه ارشد

مجدد5 تاکيد دارند. معماري سرويسگرا يکي از روشهايي است که در رابطه با مباحث محاسبات توزيعشده با ويژگيهاي اتصال سست و بر اساس استانداردها و پروتکلهاي مشخص مطرح شد. معماري سرويسگرا با توجه به جايگاه معماري در مهندسي نرمافزار در سالهاي اخير با استقبال زيادي در دنياي فناوري اطلاعات و کسبوکار و در توليد سيستمهاي نرمافزاري روبرو شده است. آنچه باعث افزايش روند گسترش استفاده از اين معماري شدهاست ظهور وب سرویس‌ها است که در آن امکان عملياتي کردن اکثر اصول و مشخصات معماري سرويسگرا فراهم است. استفاده و سازماندهی منابع گسترده، اعم از برنامه و داده در این معماری به نحوی صورت میگیرد که بهکارگیری این قابلیتها به شکل یکسان و با تعاریف مشخص صرفنظر از سکو، مشخصه شیء و دامنه امکانپذیر باشد[14].
معماري سرويسگرا واژهاي است براي نمايش مدلي که در آن منطق توالي و هدايت به بخشهاي منطقي کوچک‌تر تقسيم ميشوند. اين بخشها خود شامل بخشهاي منطقي کوچک‌تری هستند که ميتوانند به صورت توزيعپذير باشند. معماري سرويس گرا اين بخشها را به خودمختار بودن و دوري از انزوا سوق ميدهد و از آنها ميخواهد از مجموعه اصولي استاندارد و مشترک براي رشد و نمو به صورت مستقل پيروي کنند. در معماري سرويسگرا به اين بخشها سرويس ميگويند[15]. این سرویسها هم توسط دیگر نرمافزارها قابل فراخوانی هستند و هم برای ساخت سرویسهای جدید مورد استفاده قرار میگیرند. این راهکار برای یکپارچهسازی فناوریها در محیطهایی که انواع مختلفی از سکوهای نرمافزاری و سختافزاری در آن وجود دارد، ایدهآل است.
معماری سرویسگرا از جنبههای مختلفی قابل بررسی میباشد، هر ذینفعی بر اساس جایگاه خود برداشتی از این معماری دارد که در ادامه به بررسی آن‌ها میپردازیم:
متخصصان کسبوکار: معماری سرویسگرا مجموعهای از سرویسها است که سازمان مایل به ارائه آن‌ها به مشتریان یا شرکای کاری خود میباشد [6].
معماران: معماری سرویسگرا یک سبک از معماری است که حاوی قوانین، الگوها و ضوابطی است که باعث ایجاد خصوصیاتی مانند پیمانهای بودن، بستهبندی، اتصال سست، استفاده مجدد و ترکیب پذیری شده و از نظر ساختار از یک ارائهدهنده سرویس و یک درخواست‌کننده سرویس تشکیل شده است[16].
طراحان و پیادهسازان: معماری سرویسگرا یک سبک و مدل برنامهنویسی است که از استانداردهایی مانند (WSDL,UDDI,SOAP,…) و فناوریهایی نظیر سرویسهای وب استفاده میکند و قابلیت تعامل پذیری بین مؤلفه‌های نرمافزاری را بدون توجه به سکو و فناوری پیادهسازی آن‌ها پشتیبانی میکند[15].

2-2-1 تعاریف معماری سرویسگرا
برای معماری سرویسگرا تعاریف متنوع و متفاوتی ارائه شده است که به نحوی خصوصیات آن را بیان نموده است. برای درک بهتر این مفهوم در ادامه مروری بر تعدادی از این تعاریف خواهیم داشت.
یک سبک برای ساخت سیستمهای توزیع شده مطمئن است که امکاناتش را به صورت سرویس تحویل میدهد و بیشتر روی سست اتصالی بین تعاملات سرویسها تاکید دارد[17].
مدلی ارائه میدهد که در آن منطق خودکارسازی به واحدهای منطق کوچک‌تر و مجزا تفکیک شدهاست[15].
چارچوب وسیع و استانداردی که سرویسها در آن ساخته شده، استقرار مییابند و مدیریت میشوند. هدف این چارچوب افزایش چابکی زیرساختهای فناوری اطلاعات در جهت واکنش سریع به تغییرات نیازهای کسبوکار میباشد[9].
در جمعبندی از تعاریف معماری سرویسگرا میتوان به ویژگیهای زیر اشاره نمود[15]:
همراستا با کسبوکار سازمان است.
هم موضوعی فنی است و هم نوعی تفکر است.
مبتنی بر اتصال سست است و از پیامرسانی استفاده میکند.
قادر به ساخت سیستمهای ترکیبی است.
مهمترین دستاورد آن انعطافپذیری و چابکی فناوری اطلاعات در برابر تغییرات حرفه است.
منجر به تعامل پذیری سامانه‌ها و سازمانها میگردد.
امکان ارائه یک سرویس با واسطههای متنوع را محقق میسازد.
در مدل پایهای این معماری، تعدادی سرویس وجود دارد که قرار است مشتریان از آنها استفاده کنند. مشتریان ممکن است کاربران، سرویسهای دیگر یا برنامههای کاربردی باشند؛ ابتدا سرویس مورد نظر را بر اساس قراردادهای سرویس شناسایی، سپس درخواست خود را به آن سرویس ارسال میکنند. مکانیزم کلی عملکرد معماري سرويسگرا به وسیله سه مؤلفه اوليه درخواستدهنده سرويس6 يا مشتري، فراهمکننده سرويس7، انباره سرويس8 بيان ميشود (شکل 2-1) [15].

شکل 2-1 مدل پایه سرویسگرایی[15]
هر فراهمکننده سرويس، براي معرفي خود توصيفکننده خود را در انباره سرويس قرار ميدهد. درخواستکننده سرويس با جستجو در انباره سرويس، سرويس مورد نظر خود را انتخاب و بدون واسطه با فراهمکننده آن سرويس ارتباط برقرار ميکند. همان‌طور که گفته شد انباره سرويس شامل توصيفکنندههاي فراهمکنندههاي سرويس است. در ضمن هر سرويس ميتواند هر دو نقش فراهمکننده و درخواستدهنده را داشته باشد. در هنگام فراخوانی یک سرویس، پارامترهای معینی ممکن است برای انجام درخواست مورد نیاز باشد که به آن خصوصیات مدل دادهای مرتبط میگویند و یک سرویس ممکن است پارامترهایی را به کاربران سرویس بازگرداند. W39C , WSD10L یک نمونه از این پیادهسازی میباشد [18].

2-2-2 سرویس
سرويسها در واقع همان بخشهاي منطقي، در معماري سرويسگرا میباشند. هر سرويس در برگيرنده وظيفه مشخص، موجوديت و يا مجموعهاي از فعاليتهاي مرتبط است که در ابعاد مختلف تعريف ميشوند. هر سرويس شامل منطق جداگانهاي است. طبق تعریفی ديگر سرويس مكانيزمي براي فعال كردن دسترسي به يك يا چند قابليت است، دسترسي با استفاده از يك واسط مورد تأييد و سازگار با قيود و سياست‌هاي تعيين شده در شرح سرويس فراهم مي‌شود[19]. سرویس رفتار قراردادی تعریف شدهای است که میتواند به وسیله یک جزء برای استفاده جزء دیگر پیادهسازی شده، فراهم شود[20]. مفهوم سرويس بر تمايز بين قابليتی كه مجموعه عملياتي براي رفع نيازها ارائه مي‌دهد و نقطه دسترسي به سرويس را که در متن معماري سرويسگرا آورده مي‌شود تاكيد دارد. يک سرويس را ميتوان تابعي خوشتعريف11 و جامع در نظر گرفت که به زمينه و حالت سرويسهاي ديگر بستگي ندارد[21].
هر سرویس شامل پارامترهای فنی، قیود و سیاستهایی است که قالبهای لازم برای فراخوانی سرویس را تعریف میکند. هر سرویس، شرح سرویسی را در قالب استانداردی تعریف میکند. مزیت شرح سرویس برای کاربران و طراحان سرویس این است که به آن‌ها کمک میکند تا بدانند سرویس چه کاری انجام میدهد و ورودی و خروجی آن چیست [20]. از آنجایی که طبیعت سرویسها دائماً در حال تغییر است، باید واژههایی را به صورت قانونی و استاندارد برای برقراری ارتباط بین سرویسها تعریف نمود. که میتوان به عنوان نمونه زبان توصیفی وب سرویس را نام برد[9] .
شرح سرویس باید به شیوهای قابل دسترس در اختیار کاربران بالقوه قرار گیرد که به این امر اعلان سرویس میگویند. پایش سرویس زمانی صورت میگیرد که یک مشتری بالقوه اطلاعاتی در مورد وجود یک سرویس، پارامترهای قابل اعمال و واژگان آن بیابد[15]. اجزای اعلان و پایش در معماری سرویسگرا به شیوههای مختلفی پیادهسازی میشود که در ادامه به برخی از آن‌ها میپردازیم:
پیادهسازی به روش ثبات/مخزن: در این حالت کاربران امکان ذخیره و مدیریت سرویسهای لازم برای عملکرد سازمانشان را خواهند داشت. این موضوع شامل سرویسهایی است که تسهیم بین بیش از یک کاربر (مانند شرح وب سرویس‌ها) را فراهم میآورد و ثبات در مورد تمامی رویدادهای قابل ارزیابی به نسبت محصولات درون مخزن اطلاع دارد[15].
پیادهسازی به روش کتاب راهنما12 : کتاب راهنما یک واسط است که اطلاعات نسبت داده شده به محصولات را فراهم میآورد. افرادی که مالک هستند یا آن‌ها را کنترل میکنند، میتوانند یک راه به کتاب راهنما باز کنند و به محصولات ارجاع شده و اطلاعات نسبت داده شده توضیح دهند. همچنین ممکن است این اطلاعات توسط دیگران نیز بازیابی شود. مهم‌ترین مشکل کتاب راهنما این است که هیچ کنترلی یا اطلاع رسانی در صورت حذف، تغییر و جایگزینی یک محصول انجام نمیدهد و قادر به اعلام این رویدادها به کاربران نیست[18].
سرويسگرايي در تئوري جداسازي نگرانيها13 ریشه دارد. بر اساس اين تئوري هر مسئله بزرگ را ميتوان با شکستن به بخشهاي کوچک‌تر و مستقل و مرتبط به هم حل کرد. سرويسگرايي براي تحقق اين تئوري اصول زير را براي سرويسها در نظر گرفته است[15]:
سرويسها قابل استفاده مجدد14 هستند: سرويسگرايي تمام سرويسها را به استفاده مجدد بدون در نظر گرفتن نيازهاي فعلي تشويق ميکند. با رعايت استانداردهاي طراحي پتانسيل استفاده مجدد از سرويسها بيشتر ميشود که سبب برطرف کردن سريع نيازهاي آينده ميشود. همچنين به صورت چشمگيري نياز به سرويسهاي پنهانساز15 براي قرار دادن واسطي بر روي سرويسها را کاهش ميدهد. استفاده مجدد يکي از مهمترين اصول سرويسگرايي است.
سرويسها قرارداد رسمي16 را به اشتراک ميگذارند: هر قرارداد شامل تعريفي رسمي از نقطه تماس17 سرويس، عملهاي سرويس، پيغامهاي ورودي و خروجي و قواعد و مشخصات عملهاي سرويس است. به بياني ديگر بخشهاي مختلف در مدل پایه معماري سرويسگرا را تعريف ميکند.
سرويسها به صورت ارتباط سست18 هستند: ارتباط سست شرايطي است که يک سرويس دانش مربوط به سرويس ديگر را بدست ميآورد در حالی که به صورت مستقل از آن سرويس باقي ميماند. ارتباط سست به وسیله استفاده از قرارداد رسمي میان سرويسها محقق ميشود. در معماري سرويسگرا منظور از اتصال سست قابليت تعامل بين سرويس‌ها به صورت مستقل از کد نویسی و مکان سرويس‌ها است، به گونه‌اي که سرويس‌ها در زمان اجرا مي‌توانند تغيير مکان داده، روالهاي داخلي خود را تغيير دهند يا حتي از يک فناوري جديدتر استفاده کنند، بدون اينکه تأثیری منفي بر سرويسگيرندگان گذاشته شود. ارتباط سست يکي ديگر از مهمترين اصول سرويسگرايي است.
سرويسها منطق زيرين خود را به صورت تجرید19 محقق ميسازند:به عبارتی سرویسها منطق محصور شده درون خود را از عالم خارج مخفی می‌کنند. نکته قابل ذکر در اینجا این است که تفاوت میان مجرد سازی و مخفی سازی در چیست؟ مجرد سازی به تعریف موجودیتهای رویه‌ای و یا اطلاعاتی که نرمافزار را می‌سازند کمک میکند، ولی پنهانسازی محدودیتهای دسترسی را برای جزئیات رویهای داخل پیمانه و هر ساختمان داده محلی استفاده شده در پیمانه را تعریف و اجباری مینماید.
سرويسها قابل ترکيب20 هستند: هر سرويس ميتواند مقدار متفاوتي از منطق را از منابع متفاوت که شامل سرويسها نيز ميشود تأمین کند. دليل اصلي از اين اصل براي اطمينان از طراحي سرويسها به صورتی که بتوانند به عنوان عضوي از يک سرويس ترکيبي باشند، است.
سرويسها خودمختار هستند: هر سرويس منطق خويش را به صورت محدوده مشخص بيان ميکند. سرويس به تمام فرآيندهاي خويش خودمختار است. اين اصل تنها ضمانت ميکند که در زمان اجرا سرويس نسبت به منطق خويش کنترل دارد.
سرويسها قابل کشف و شناسايي هستند: اين خاصيت سرويسها سبب ميشود تا سرويسهاي تکراري ايجاد نشوند. خاصيت مهم ديگر آن امکان ارائه مکانيزم کشف و شناسايي است که معمولاً بر اساس انباره سرويس صورت میگیرد
.
2-2-3 مفاهیم مرتبط با معماری سرویسگرا
در این مبحث به تشریح برخی مفاهیم مرتبط با معماری سرویسگرا خواهیم پرداخت. بعضی از این مفاهیم در فصول بعدی، جایی که مفاهیم امنیتی مطرح میشود به کار میآید.
فراهمکننده سرویس: یک موجودیت نرمافزاری است که خصوصیات سرویس را پیادهسازی میکند[15].
درخواست کننده سرویس: یک موجودیت نرمافزاری است که یک فراهمکننده سرویس را فراخوانی میکند. به طور سنتی این مورد به عنوان سرویسگیرنده شناخته میشود. اما یک درخواست کننده سرویس میتواند به عنوان یک برنامه کاربردی و یا به عنوان یک سرویس دیگر قرار گیرد[15].
موقعیت یاب سرویس: یک نوع خاصی از فراهمکننده سرویس است که به عنوان یک ثبات عمل میکند و امکان جستجوی واسطههای فراهمکننده سرویس و همچنین موقعیت سرویس مورد نظر را میدهد[15].
واسط سرویس: یک نوع خاصی از فراهم کننده سرویس است ک

پایان نامه
Previous Entries منابع پایان نامه ارشد با موضوع فرآیند کسبوکار، سیستمهای مدیریت، فناوری اطلاعات Next Entries منابع پایان نامه ارشد با موضوع سیستمهای اطلاعاتی، تعامل پذیری، فرآیند کسبوکار