بررسي معماري سرويس گرا و معماري سازماني سرويس گرا Service Oriented Enterprise Architecture (SOEA)—ب

بررسي معماري سرويس گرا و معماري سازماني سرويس گرا Service Oriented Enterprise Architecture (SOEA)—ب|30014326|بررسي معماري سرويس گرا و معماري سازماني سرويس گرا Service Oriented Enterprise Architecture (SOEA)—بسیار جامع
با سلام و درود خدمت خدمت شما پژوهشگر عزیز در این مطلب از سایت فایل با عنوان بررسي معماري سرويس گرا و معماري سازماني سرويس گرا Service Oriented Enterprise Architecture (SOEA)—ب هم اکنون آماده دریافت می باشد برای مشاهده جزئیات فایل به ادامه مطلب مراجعه نمایید .

بررسي معماري سرويس گرا و معماري سازماني سرويس گرا Service Oriented Enterprise Architecture (SOEA)—بسیار جامع 166





فهرست مطالب



عنوان





فصل اول – مقدمه 5



1 1 معماري نرم افزار ۶



1 2 معماري سازماني ٨



1 3 فوايد معماري سازماني 10



1 4 معماري سرويس گرا 10



1 5 مزاياي معماري سرويس گرا 13



1 6 مزاياي اعمال سرويسگرايي در معماري سازماني 14



1 7 هدف اين گزارش 16



1 8 ساختار گزارش 17



فصل دوم نقش چارچوب و سبك در تدوين معماري سازماني ١٨



2 1 چارچوب معماري سازماني ١٩



2 1 1 ويژگيهاي چارچوب معماري سازماني 20



2 1 2 نقش چارچوب در معماري سازماني 21



2 1 3 چارچوب زكمن 23



2 2 سبك معماري سازماني ٣٠



2 2 1 تعريف سبك معماري ٣٠



2 2 2 نقش سبك در تدوين معماري ٣٣



2 2 3 نقش سبك در معماري سازماني ۵٣



فصل سوم معماري سرويس گرا ٣٨



3 1 تاريخچه و هدف از معرفي 40



3 2 تعريف معماري سرويس گرا 42



3 2 1 معماري سرويس گرا به عنوان سبك معماري ۴۶



3 3 مفاهيم مهم سرويسگرايي ٩۴



3 4 اصول و مشخصه هاي معماري سرويس گرا ۵۴



3 5 فوايد SOA ٧٠



3 6 پشته معماري سرويسگرا ٧٣



3 7 سرويس گرايي در مقايسه با شيء گرايي ۶٧



فصل چهارم معماري سازماني سرويس گرا ٨٣



4 1 هدف از استفاده از مفهوم سرويسگرايي در معماري سازماني 85



4 2 ايدهها، موانع و راه حل براي اعمال سرويس گرايي بر چارچوب معماري سازماني 86



4 3 چارچوب گسترش يافته زكمن 90



4 4 چارچوب گسترش يافته و قواعد هفت گانه 94



4 5 ويژگيهاي راه حل ارائه شده 97



فصل پنجم زمينه هاي تحقيق در اين ارتباط ١٠٠



فصل ششم خلاصه و نتيجه گيري 103



منابع و مراجع 107









فهرست شكلها



عنوان



شكل 2 1 چارچوب معماري سازماني 25 شكل 3 1 به سوي معماري سرويس گرا 42 شكل3 2 كپسوله سازي اندازه هاي مختلفي از منطق توسط سرويس 50



شكل3 3 مكانيزم برقراري ارتباط در SOA ٩۵



شكل3 4 پشته معماري سرويس گرا 73 شكل4 1 شمايي از چارچوب زكمن گسترش يافته 91













فصل اول



مقدمه

























هر مجموعه، سازمان و ارگان براي حفظ موجوديت و پيشبرد اهداف خود در فضاي رقابتي امروز، نيازمند انطباقبا شرايط موجود و بنابراين ناگزير از ايجاد تغييرات مداوم در خود است. اين تغييرات باعث ميشود تا سازمان يامجموعه بطور مداوم پيچيدهتر شود. در اين جا است كه نقش فن آوري اطلاعات پررنگتر ميشود زيرا بدوناستفاده از آن هزينه و زمان بسيار زيادي مورد نياز خواهد بود كه صرف آن غير ممكن مينمايد و در صورتممكن بودن نيز مشكلات بسياري در راستاي انجام كارها و دستيابي به اهداف سازمان ايجاد ميكند.



رشد روز افزون تغييرات در سازمان ها از يك سو و نياز مبرم به بهره گيري از فناوري اطلاعات و ارتباطات درآنها از سوي ديگر، ايجاب مي كند كه تا حد ممكن اين دو يعني اعمال تغييرات در سازمان و تغيير متناسب باآنها در عملكرد و ساختارهاي فناوري اطلاعات و زيرساختهاي سخت افزاري ، نرم افزاري و اطلاعاتي سازمان باهم هماهنگ باشند. اين امر به معناي آن است كه بتوانيم در انتقال تغييرات از فرايندها ، داده ها و ساير مواردسازمان به برنامه ها و ساير مقولات مربوط بهIT انعطاف ايجاد كنيم.



دو مورد از مهمترين رويكردهايي كه اين هدف را دنبال ميكنند، رويكرد معماري سازماني و معماري سرويسگرااست. در اين تحقيق هدف از اعمال مفهوم سرويسگرايي و معماري سرويسگرا بر معماري سازماني و مشكلاتپيش رو در اين راستا و راه حل پيشنهادي درجهت تسهيل نيل به هدف فوق مورد بررسي قرار ميگيرد.





1 1 معماري نرم افزار



معماري نرم افزار به عنوان يك مفهوم جديد اولين بار توسطEdsger Dijkstra در سال 1968 و DavidParnas در اوايل دهه 1970 مطرح شد. اين مفهوم و توجه به اهميت صحت ساختار يك سيستم در اوايل



1990 با مطرح شدن سبكها و الگوهاي معماري، زبانهاي توصيف معماري و مستند سازي آن و نيز متدهايرسمي مورد توجه و تمركز بيشتر قرار گرفت.



بعنوان يك معرفي كلي ميتوان گفت معماري نرم افزار شامل مؤلفه هاي نرم افزار، ويژگيهاي خارجي آنها ورابطه آنها با يكديگر است. از سوي ديگر اين عبارت اشاره به مستند سازي معماري نرم افزاري يك سيستم دارد كه به ارتباط ميان ذي نفعان كمك مي كند و تصميمات مربوط به طراحي سطح بالا را مستند و امكان استفادهمجدد از مؤلفه هاي طراحي و نيز الگوها را ميان پروژه هاي مختلف فراهم ميكند.



اما معماري نرم افزار به اين علت مطرح شد كه همواره در صنعت نرم افزار نياز به آن بوده كه بتوان برپيچيدگيهاي موجود فائق آمد. در ابتدا مشكلات مربوط به پيچيدگي توسط توسعه دهندگان و با انتخابساختارهاي داده اي صحيح ، توسعه الگوريتمهاي مناسب و به كارگيري مفاهيم جداسازي مسائل نسبتا مجزارفع مي شد.در دهه 1990 تلاش متمركزي براي تعريف اصول مبناي نظام1 انجام شد. اولين الگوهاي طراحي،زبانهاي توصيف و منطق رسمي در آن زمان توسعه يافتند. نظام معماري نرم افزار حول محور ايده كاهشپيچيدگي از طريق تجريد و جداسازي مسائل2 متمركز است. و تا امروز هنوز توافقي بر تعريف دقيق عبارتمعماري نرم افزار وجود ندارد. با اين وجود تعاريف متعددي براي آن ارائه شده است كه برخي از آنها در [1] آمده است و به برخي نيز در اين قسمت اشاره خواهيم كرد.



تعريف جان زكمن از معماري: معماري مجموعه اي از محصولات طراحي يا نمودارهاي توصيفي است كه برايتشريح يك موجوديت ايجاد و در طول حيات آن موجوديت نگهداري مي شود. [2]



تعريف معماري نرم افزار در استاندارد 2000 1471 IEEE : معماري نرم افزار مي تواند به شكل سازماندهي اوليهيك سيستم تعريف شود. اين سازماندهي مي بايست در مؤلفهها (ي نرم افزاري)، روابط بين آنها ، روابط بينمؤلفه ها و محيط، طراحي، و تكامل تدريجي صورت گيرد. از طرف ديگر ، يك سيستم مجموعه اي از مؤلفهها(ي نرم افزاري ) است كه براي انجام يك وظيفه خاص يا مجموعه اي از وظايف سازماندهي شده اند.



بطور كلي در تعاريف مختلف معماري ويژگيهاي زير مورد تأكيد هستند[3]:





21 Discipline Separation of concerns



الف – معماري، يك طراحي سطح بالا از كليه عناصر يك سيستم است.



ب‌ معماري، نشان دهنده مجموعه عناصر سيستم و رابطه آنها با هم است.



پ رفتار هر عنصر بخشي از معماري است .



ت‌ رفتار عناصر مي تواند از ديد ساير عناصر كنار گذاشته شود.



ث‌ معماري مجموعه اي از مدلها و توصيفات است.



ويژگيهايي كه براي يك معماري خوب پيشنهاد شده است عبارتند از[4]:



الف قابل فهم بودن



ب‌ در نظر گرفتن موارد اصلي كاربري سيستم پ قابليت استفاده مجدد



ت‌ در نظر گرفتن موارد اصلي كاربري سيستم



ث‌ تعريف واسطها بطوري كه كمترين وابستگي ممكن ميان زير سيستمها وجود داشته باشد.



ج‌ انعطاف پذيري نسبت به تغييرات



حال مختصرا به مفهوم معماري سازماني مي پردازيم.





1 2 معماري سازماني



منظور ازEnterprise ، سازماني است كه داراي يك حوزه و مأموريت كاري تعريف شده است و شامل منابع بهموابسته (مردم، سازمانها و فناوري) است كه بايد وظايفشان را راهبري نمايد و اطلاعات مورد نياز آنها را بين آنهابه اشتراك بگذارد [5] و اين تعريفي است كه در معماري سازماني از آن بهره مي گيريم.



تعاريف متعددي براي معماري سازماني ارائه شده است. از اين ميان مي توان به موارد زير اشاره كرد:



1 تعريفOpenGroup : معماري سازماني در مورد درك همه عناصر متفاوتي است كه سازمان را ميسازندو درك چگونگي ارتباط ميان اين عناصر. [6]



2 تعريف سا زمان جهاني معماري سازماني (GEAO): معماري سازماني به روش بيان چشم انداز سازمان درساختار و پويايي سازمان گفته مي شود. معماري سازماني در سطوح تجريد مختلف، مجموعه اي پيوسته ازمدلها، مفاهيم ، خطوط راهنما و سياستهاي مورد استفاده براي تبديل ، تنظيم و تكامل سيستمي كه درحيطه و متن موجود سازمان وجود دارد، فراهم مي كند. [ 7]



3 تعريف شوراي مديران ارشد فناوري اطلاعات امريكا(CIO): دارايي پايه اطلاعات راهبردي كه مأموريتها،اطلاعات لازم و فناوريهاي لازم براي انجام آنها و فرايندهاي گذار براي بكارگيري فناوريها در پاسخ بهتغييرات مورد نياز مأموريتها را تعريف مي كند.[5]



4 تعريف زكمن: مجموعه اي از فراورده ها و توصيفات پايه كه دانشي راجع به زير ساختهاي سازمان ارائه ميدهند.[8]



نكات مشترك ميان تعاريف موجود عبارت است از:



الف – ارتباط با سازمان و تصوير كلي از تمام عناصر تأثير گذار بر سازمان ب متشكل از مدلها ، مفاهيم و قوانين منسجم پ ارائه تعريف دقيقي از وضعيت فعلي سازمان ت ارائه تعريف دقيقي از وضعيت آينده سازمان



ث داراي يك طرح انتقال از وضعيت فعلي به وضعيت آينده [9]





1 3 فوايد معماري سازماني



فايده اصلي معماري سازماني ارائه آگاهي در مورد سازمان و نيز مسائل مربوط به فناوري اطلاعات است. از فوايدجانبي ديگر مي توان به موارد زير اشاره كرد:



الف – بهبود تصميم گيري به علت وجود اطلاعات و درك بهتر و بيشتر از سازمان



ب‌ تغيير سريعتر و انطباق بهتر با شرايط و انعكاس سريعتر آن در فناوري اطلاعات سازمان



پ شناسايي دارايي هاي موجود سازمان كه ممكن است بطور كامل و مفيد به كار گرفته نشده باشند و يا حتيديده نشده باشند.



ت‌ شناسايي و حذف افزونگي ها و بنا بر اين كاهش هزينه هاي سازمان.



ث‌ يكپارچگي اطلاعات و ايجاد استانداردها و قواعد ويژه جهت به اشتراك گذاري داده ها و مؤلفه ها





1 4 معماري سرويس گرا4



حال كه مختصرا به معماري نرم افزار و معماري سازماني پرداختيم، معماري سرويس گرا را به اختصار در اينبخش معرفي كرده و در بخشهاي بعدي مفصلتر آن را بررسي ميكنيم، مفهوم سرويس گرايي از مدتي پيشوجود داشته و در زمينه هاي متفاوت و براي مقاصد مختلفي مورد استفاده قرار گرفته است. اما آنچه در طولحيات اين مفهوم ثابت مانده است، آن است كه اين مفهوم، روشي مبتني بر مفهوم تجزيه را ارائه مي دهد. بنابراين سرويسگرايي يك روش فني محض نيست. براي مثال در صفحات زرد5 كسب و كارهاي سرويسگرايبسياري را ميتوان يافت . شركتها هر يك به تنهايي سرويسگرا هستند زيرا هر يك سرويس مجزايي را فراهممي كنند كه ميتواند توسط مشتريان مختلفي مورد بهره برداري قرار گيرد. در مجموع اين شركتها با هم يكجامعه كاري تشكيل مي دهند و بسيار منطقي است اگر انواع خدمات و سرويس توسط فقط يك شركت دريافت





54 Service Oriented Architecture Yellow Pages



نشود. بلكه با تجزيه جامعه كاري به بخشهاي سرويس دهنده تخصصي منفرد، به محيطي دست يابيم كه در آنسرويس دهندهها توزيع شده باشند. حتي در يك مدل توزيع شده، ايجاد وابستگيهاي عميق موجب ممانعت ازارائه پتانسيل موجود در كسب و كارهاي منفرد خواهد شد. اگرچه مايليم كه سرويس دهنده ها با يكديگر تعاملداشته و از سرويس يكديگر بهره بگيرند، اما از سوي ديگر نيز مايليم از مدلي كه در آن، سرويس دهندههااتصالات تنگاتنگي با هم دارند و اين اتصالات موجب وابستگيهاي شديد و محدود كننده مي شوند اجتناب كنيم. اگر به كسب و كارها اين قدرت را بدهيم كه هر يك بتوانند سرويس هاي خود را كنترل و اداره كنند، به آنها اينقدرت را داده ايم كه نسبتا مستقل از يكديگر رشد و تكامل يابند. اما با اين وجود بايد مراقب بود تا همگي آنهابتوانند بر اساس اصولي به يكديگر متصل شوند (مثل استفاده از ارز يكسان در شركت يا استفاده از يك زبانخاص بعنوان زبان اصلي شركت و ... ). اين هماهنگيها موجب استاندارد شدن جنبه هاي كليدي هر كسب و كارمي شود .



سرويسگرايي در تركيب با "معماري "، معماري سرويس گرا را معرفي مي كند كه عبارتي است كه مدلي را ارائهمي دهد كه در آن منطق كل سيستم به بخشهاي منطقي مجزا و كوچكتر شكسته مي شوند. اين واحدهايكوچكتر جمعا بخش بزرگتري از منطق را ارئه مي كنند و مي توانند توزيع شده باشند. SOA مشوق واحدهايمنفرد منطق است تا بتواند به مجموعه اي از اصول طراحي دست يابد.[ 10]



تعاريف بسياري براي معماري سرويس گرا وجود دارد. اما يك تعريف رسمي واحد براي آن موجود نيست. بههمين دليل بسياري از سازمانها كه سعي در استفاده و بهره برداري از اين مفهوم را دارند براي تعريف آن حركتي كرده اند . بنا براين برايSOA تعاريف متفاوتي مانند آنچه در ادامه آمده ذكر شده است وجود دارد:



الف – تعريف شركتIBM : معماري سرويس گرا چارچوبي براي برنامه هاي كاربردي است كه كاربردهايروزمره كسب و كار را مي گيرد و آنها را به عملكردها و فرايندهاي مختلف كاري – كه به آنها سرويس اطلاق ميشود مي شكند.SOA امكان ساخت ، استقرار و يكپارچه سازي اين سرويسها را بطور مستقل از برنامه هايكاربردي و پلتفرم اجرا فراهم مي كند.



ب تعريفSOA : Microsoft رويكردي است6 براي سازماندهي فناوري اطلاعات كه در آن داده ها ، منطق، ومنابع زيرساختي با استفاده از مسيريابي پيامها بين واسطهاي شبكه مورد دسترسي قرار مي گيرند.



پ تعريفSOA : W3C مجموعه اي از مؤلفه ها است كه مي توانند فراخواني شوند و توصيف واسط آنها قابلانتشار(publish) و كشف (discover) است.



بنا بر اينSOA يك "سيستم ساخته شده بر اساس سرويسها " نيست. غالب تعاريفSOA بر اين متفق اند ك هSOA وظايف يك برنامه كاربردي را بصورت مجموعه اي از سرويسهاي به اشتراك گذاشته شده و قابل استفادهمجدد تعريف ميكند. ما بر هيچ تكنولوژي ويژه يا پيادهسازي خاصي ازSOA تكيه نمي كنيم .



از آنجا كه تعريف رسمي واحدي برايSOA وجود ندارد، هيچ مجموعه رسمي واحدي از اصول طراحي بر مبنايسرويس گرايي نيز وجود ندارد اگرچه مجموعه اي از اصول طراحي در سطح سرويس توسط افرادي مانندErl وMcGovern معرفي شده اند كه بر سرويسگرايي انطباق مناسبي دارند و عبارتند از :



1 قابليت استفاده مجدد



2 به اشتراك گذاشتن يك قرار داد رسمي7



3 وابستگي ضعيف8



4 تجريد منطق



5 قابليت تركيب





76 Approach Formal Contract



8 Loose Coupling



6 استقلال داخلي 9



7 بي حالتي10



8 قابليت كشف



9 داراي واسط قابل آدرس دهي در شبكه



10 شفافيت مكاني



مفاهيم فوق در فصل 3 بيشتر شرح داده خواهند شد.





1 5 مزاياي معماري سرويس گرا



همانطور كه اشاره شد هر كسب و كار براي رقابت موفق نياز به آن دارد تا بيش از پيش انعطاف پذير باشد. برايايجاد اين انعطاف ، زير ساختهايIT آن مي بايست از تغييرات سريع مورد نياز براي همگام بودن با شرايطپوياي كاري پشتيباني كند. بسياري از شركتها براي رسيدن به اين هدف به فكر انطباق باSOA مي افتند كه امكان تعريف ، ايجاد و اجراي سرويسها را به سازمان داده و قدرت تطبيق و ايجاد سريع سرويسها به واكنشسريعتر كسب و كار در قبال تغييرات كمك مي كند. بعبارت ديگرSOA طرز فكر افراد را درباره معماري ازحالت سنتي، بزرگ، غير قابل تغيير11 ، انعطاف ناپذير و با هزينه هاي بالا تغيير مي دهد.



از مزاياي كليSOA مي توان به موارد زير اشاره كرد:



1 افزايش سرعت و چابكي در كسب و كار.



2 بهينه كردن سرمايه گذاري درIT .



3 هماهنگ نگاه داشتنIT با حرفه.





109 Autonomy Statelessness



11 Monolithic



4 حذف سيستم ها و معماريهاي تكراري و بهبود يكپارچگي.



5 مديريت آسانتر سرويسهايIT با برقراري ارتباط بهتر ميان حرفه و IT ، و افزايش اثر بخشي كلي.



6 پشتيباني از اتوماسيون فرايندهايIT با تأكيد بر استفاده مجدد .



7 بهره گيري از زير ساختهاي فعلي در معماري جديد براي حفظ سرمايه هايIT .





1 6 مزاياي اعمال سرويسگرايي در معماري سازماني



همانطور كه قبلا اشاره شد ، انگيزه اصلي از ايجادSOA نياز به افزايش انعطاف پذيري و سرعت در قبال نياز بهتغيير در سازمان و به تبع آن تغيير در ساختارIT سازمان است. در سازماني كه بتواند به اهداف فوق برسد،فرايندها و سرويس ها كاملا انعطاف پذير بوده و مي توانند بر اساس نياز متخصصان كسب و كار و بدون نياز بهپرسنل فني به سرعت ايجاد، پيكر بندي و بازچيني شوند. اين تصوير از سازمان چابك با نيازهاي رو به رشدمحيطهاي متغير كاري و با توجه به محدوديتهاي زيرساختهاي فني و سازماني وفق دارد.