دانلود مقاله معماری سرویس گرا

Word 242 KB 18434 31
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۲۴,۰۰۰ تومان
قیمت: ۱۹,۸۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • معماری سرویس گرا به عنوان یکی از آخرین دستاوردها در تولید نرم افزار، به نظر می رسد، در سالهای آتی معماری غالب صنعت فناوری اطلاعات و ارتباطات باشد.

    علت بوجود آمدن این معماری، ایده ای بود که در ذهن تعدادی از معماران آن وجود داشت و آن نرم افزار به عنوان سرویس بود.

    در مدل نرم افزار به عنوان سرویس، شما نرم افزار خود را بگونه ای طراحی می کنید که قابل استفاده توسط سیستم های دیگر باشد یعنی دیگران می توانند برای استفاده از سرویس شما ثبت نام کنند و هر موقع که لازم داشتند از خدمات آن بهره ببرند، همانند حالتی که در مورد شبکه های تلویزیون کابلی وجود دارد.

    تا زمانی که شما به سرویس متصل هستید، می توانید هر لحظه که خواستید از سرویس استفاده کنید.


    برای مدت های طولانی برنامه نویسان سعی می کردند تا، کدهای خود را بصورت modular( یک سیستم از بالا به پایین به زیر سیستم های کوچک و نسبتا مستقل تفکیک می شود ) بنویسند، تا بتوان از آن در تولید نرم افزارهای دیگر استفاده کرد.

    تفاوت نوشتن کد بصورت modular و بر اساس معماری سرویس گرا در حجم مخاطبان آن است.

    دوباره به همان مثال اول برمی گریم، وقتی شما کد خود را به منظور قابل استفاده بودن توسط نرم افزارهای دیگر، به شکل modularمی نویسید مانند این است که، یک شبکه تلویزیون کابلی درون یک ساختمان خاص دارید و بنابراین فقط ساکنین آن ساختمان می توانند از آن بهره برداری کنند.

    در جهان امروز طیف مخاطبانی که بالقوه می توانند از سرویس شما استفاده کنند، کل کاربران روی شبکه اینترنت است.

    بنابراین باید مکانیزمی بوجود می آمد، که می توانست پاسخگوی این محیط جدید (اینترنت) و کاربران آن باشد و بنابراین معماری سرویس گرا بوجود آمد.
    این معماری توسط دو شرکت IBM , Microsoft بوجود آمد، که هر دو شرکت طی سالهای اخیر از حامیان اصلی سرویس های وب و عامل بسیاری از ابداعات جدید در حیطه ی سرویس های وب، مانند UDDI ,WSE بوده اند.
    قابل ذکر است، که در آخرین معماری در حال توسعه، در تولید نرم افزار که هنوز هم در مرحله تحقیقاتی است MDA، تدابیری جهت هماهنگی با معماری سرویس گرا در نظر گرفته شده است.

    از نمونه های استفاده از این معماری در کشور خودمان، سازمان ثبت احوال کشور است که موظف شده تا پایگاه های اطلاعاتی خود را بصورت سرویس وب و مبتنی بر این معماری به سایر نهادها مانند نیروی انتظامی و سایر دستگاه ها ارائه دهد.

    سرویس ها چه هستند؟


    بسیاری از ما آنقدر با تکنولوژی های سرویس های وب آشنا هستیم که اغلب درباره این که خود سرویس ها واقعا چه هستند، فکر نمی کنیم.

    هر کس که از سایت های تجارت الکترونیکی به صورت آنلاین خرید کرده باشد، با مفهوم سرویس ها آشنا است.

    وقتی که سفارش تا ن را دادید، باید اطلاعات کارت اعتباری تان را ارایه کنید که به طور معمول توسط یک فراهم کننده سرویس ثانویه، تایید و شارژ می شود.

    وقتی که سفارش پذیرفته شد، شرکت سفارش گیرنده با یک شرکت فراهم کننده سرویس حمل ونقل سرویستان را فراهم می کند و در نهایت کالای شما تحویلتان می شود.
    در ادامه سه تعریف می آوریم که در کنار یکدیگر ماهیت یک سرویس راشرح می دهند:
    ۱- سرویس ها اجزاء مستقلی هستند که پیغام های XML با ساختار مشخص و خوش تعریف را پردازش می‏کنند.
    • XML ساده ترین ورژن SGML استاندارد برای ایجاد و طراحی سند های HTML است(مناسب برای استفاده در سایت های اینتر نتی).
    • SGML یک استاندارد مدیریت اطلاعات است که در سال 1986 به وسیله سازمان بین المللى استاندارد سازى (ISO) معرفى گردید و وسیله اى است براى ارائه اسناد مستقل از یک سیستم یا برنامه کاربردى خاص ضمن به کارگیرى اطلاعاتى چون قالب بندى، شاخص دهى و حفظ اطلاعات پیوندى در اسناد.


    ۲- سرویس ها دارای رابط های خوش تعریف هستند که به وسیله یک سند مبتنی بر XML که سند
    WSDLخوانده می شود، به این سند گاهی قرارداد WSDL نیز گفته می شود، پردازش می شوند.

    محتویات این سند،‌ عملیاتی (متدهایی) که توسط سرویس ارائه می شود را شرح می دهد.

    از جمله اطلاعات مربوط به انواع داده، اطلاعات نحوه اتصال به سرویس، جهت یافتن و ارتباط با عملیات سرویس وب.
    ۳- سرویس ها دارای نقاط انتهایی (Endpoint)هستند که استفاده کنندگان از سایر سرویس ها می‏توانند بر اساس آدرس سرویس (URL)معمولاً به آن ها متصل شوند.

    این همان چیزی است که ارتباط(جفت شدن) آزادانه خوانده می شود.
    سرویس ها می توانند به دو شکل ساده و ترکیبی ارائه شوند.

    سرویس های ترکیبی، سرویس هایی هستند که بر اساس بکارگیری چند سرویس ساده ( یا ترکیبی) ایجاد می شوند.

    برای مثال، ممکن است سیستم توزیع شده ای بر اساس چند سرویس ساده صدور صورتحساب، ثبت سفارش، مدیریت روابط مشتری و...

    سرویس های ترکیبی گسترده تری در ارتباط با حرفه ای خاص ایجاد نماید.
    پس می توان گفت: سرویس ها اجزای توزیع شده با رابط های تعریف شده و مشخص هستند که پیغام های XML را پردازش و تبادل می کنند.

    معماری سرویس
    چندین مصرف‌کننده سرویس می‌توانند با ارسال پیام اقدام به فراخوانی سرویس‌ها نمایند.

    این پیام‌ها معمولا توسط یک گذرگاه سرویس تغییر شکل داده شده و به سوی سرویس مناسب هدایت می‌گردند.

    معماری سرویس می‌تواند یک موتور قواعد تجاری را فراهم سازد که امکان تلفیق قواعد تجاری در یک سرویس یا چندین سرویس را عملی سازد.

    معماری سرویس مزبور همچنین یک زیربنای مدیریت سرویس فراهم می‌آورد که سرویس‌ها و اعمالی از قبیل بازرسی، پرداخت صورتحساب، و واقعه‌نگاری (logging) را مدیریت می‌نماید.

    به علاوه، این معماری انعطاف‌پذیری ناشی از دارا بودن فرایندهای تجاری تغییر پذیر را به سازمان‌ها ارزانی می‌دارد، فرایندهایی که نیازمندی‌های تنظیمی همانند Sarbanes Oxley (SOX) را مد نظر قرار می‌دهند، و سرویس‌های اختصاصی را بدون تحت تاثیر قرار دادن سایر سرویس‌ها تغییر می‌دهند.

    معرفی SOA و چند کار برد آن:
    معماری سرویس‌گرا (SOA) شکل تکامل یافته محاسبه‌گری توزیع شده مبتنی بر فرضیه طراحی تقاضا/پاسخ برای برنامه‌های کاربردی همگام و ناهمگام است.

    منطق تجاری یا توابع اختصاصی یک برنامه کاربردی به صورت ماژولار در آمده‌اند و به عنوان سرویس‌هایی برای برنامه‌های کاربردی مصرف‌کننده/کلاینت ارائه گردیده‌اند.

    مهم‌ترین نکته‌ در مورد این سرویس ‌ها طبیعت اتصال آزادانه آنهاست؛ بدین معنی که رابط سرویس، مستقل از پیاده‌سازی است.


    تعاریف گوناگونی از معماری سرویس گرا ارائه شده است که از جمله آنها می توان به تعاریف زیر اشاره کرد:
    1.

    مجموعه قوانین، سیاست ها و چارچوب هایی که نرم افزارها را قادر می سازد تا عملکرد خود را از طریق مجموعه سرویس های مجزا و در عین حال مربوط به هم در اختیار سایر درخواست کنندگان قرار دهند تا بتوانند بدون اطلاع از نحوه پیاده سازی و تنها از طریق رابط های استاندارد و تعریف شده، این سرویس ها را پیدا کرده و فراخوانی نمایند.
    2.

    روشی برای ساخت سیستم های توزیع شده ای است که در آنها عملکرد سیستم بصورت سرویس در اختیار کاربران و یا سایر سرویس ها قرار می گیرد.
    3.

    از دیگرتعاریف ارائه شده می توان به واحدهای نرم افزاری آماده در شبکه (Network-available Software Unit) یا سرویس های سطح کسب و کار (Business-level services) اشاره کرد.
    معماری‌های سرویس‌گرا دارای خصوصیات اصلی زیر هستند:
    - سرویس ‌های SOA دارای رابط ‌های خود توصیف‌گر در اسناد XML مستقل از پلتفرم هستند.

    زبان توصیف سرویس‌های وب (WSDL) استاندارد به کار برده شده برای توصیف این سرویس‌ها می‌باشد.
    - سرویس‌های SOA با پیام‌هایی که رسماً توسط مدل XML (که XSD نیز نامیده می‌شود) تعریف شده‌اند ارتباط برقرار می‌نمایند.

    ارتباط میان مصرف‌کنندگان و فراهم‌کنندگان یا سرویس‌ها معمولا در محیط‌های ناهمگن رخ می‌دهد، با دانش کم یا بدون هیچ دانشی در مورد فراهم‌کننده.

    پیام‌های مبادله شده میان سرویس‌ها را می‌توان به عنوان اسناد تجاری مهم پردازش شده در یک سازمان نگریست.
    - سرویس‌های SOA با پیام‌هایی که رسماً توسط مدل XML (که XSD نیز نامیده می‌شود) تعریف شده‌اند ارتباط برقرار می‌نمایند.

    پیام‌های مبادله شده میان سرویس‌ها را می‌توان به عنوان اسناد تجاری مهم پردازش شده در یک سازمان نگریست.

    - سرویس‌های SOA توسط یک رجیستری که به عنوان یک فهرست دایرکتوری عمل می‌کند نگهداری می‌گردند.

    برنامه‌های کاربردی می‌توانند سرویس‌ها را درون رجیستری جستجو نمایند و سرویس را فراخوانی کنند.

    توصیف، تعریف، و یکپارچگی جهانی (UDDI) استانداردی است که برای رجیستری سرویس مورد استفاده قرار گرفته است.

    هر سرویس SOA دارای یک کیفیت سرویس (QoS) مرتبط با خود است.

    برخی از عناصر اساسی QoS شامل نیازمندی‌های امنیتی، از قبیل احراز هویت و صدور مجوز، پیام‌رسانی قابل اطمینان، و خط‌مشی‌هایی در این زمینه که چه افرادی می‌توانند سرویس‌ها را فراخوانی نمایند، می‌باشد.

    می توان گفت: معاری سرویس گرا (SOA) روشی جدید و در حال تکامل برای ساخت برنامه های توزیع شده با Distributed Application است.

    با رویکرد سرویس گرا می توان راه حل هایی را ارائه داد که به مرز دامنه های سازمان، شرکت یا دپارتمان محدود نیستند.

    با استفاده از SOA می توان در شرکتی که دارای سیستم ها و برنامه های کاربردی مختلف روی پلتفرم های متفاوت است، یک راه حل یک پارچه سازی با استقلال زیاد(loosly coupled) ساخت که جریان یکنواخت و هماهنگ کار را تضمین کند.

    نیاز به معماری سرویس گرا از جنبه ای دیگر نیز به نحوه بارزی در برنامه های کاربردی E-Commerce مشهود است.

    اگر مثلا جزء (componet) مربوط به پرداخت با کارت اعتباری offline و یا غیر فعال باشد،‌ قرار نیست که فرایند فروش متوقف شود.

    بلکه سفارش ها بایستی پذیرفته شوند وعملیات پرداخت به وقت دیگری موکول شود.

    مثل سایر معماری های توزیع شده،‌ SOA ساخت برنامه های کاربردی با استفاده اجزایی که در domainهای جدا از هم را قرار دارند را ممکن می سازد.

    SOA از سرویس های وب به عنوان نقاط ورود برنامه کاربردی استفاده می کند که از لحاظ مفهومی معادل همان اجزای proxy و stub در سیستم های توزیع شده سنتی مبتنی بر اجزاء هستند.

    با این تفاوت که در این جا ارتباط بین سرویس وب و استفاده کننده خیلی آزاداترانه ومستقل تر (loosely coupled) است.

    بعلاوه SOA به خاطر در بر داشتن فاکتورهایی که اهمیت حیاتی در تجارت دارند، نیز منحصر به فرد است.

    فاکتورهایی نظیر: قابلیت اطمینان سرویس،‌ جامعیت پیام، یکسانی تراکنش و امنیت پیام.

    در امور تجاری واقعی نمی توان روی سرویس هایی که یک درخواست را فقط به خاطر این که بتوانند بفهمند،‌ پردازش می کنند حساب کرد.

    در امور تجاری به قطعیت و اطمینان بیشتری نیاز است.

    واضح است که سیستم های مختلف ممکن است بعضی اوقات غیر فعال باشند و یا پاسخگویی آن ها در دفعات مختلف متفاوت باشد.

    با وجود این هیچکدام از این موارد نباید برای کنار گذاشتن یاعدم پاسخ به یک درخواست باشند.

    علاوه بر آن نباید دلیلی برای کنار گذاشتن یا عدم پاسخ به یک درخواست باشند واضح است که سیستم های مختلف ممکن است بعضی اوقات غیر فعال باشند و یا پاسخگویی آن ها در دفعات مختلف، متفاوت باشد.

    با وجود این،‌ هیچ کدام ازاین موارد نباید دلیلی برای کنار گذاشتن یا عدم پاسخ به یک درخواست باشند.

    علاوه بر آن نباید هیچ ابهامی در نحوه فراخوانی یک سرویس وجود داشه باشد.

    اگر سیستمی توانایی های خود را در قالب سرویسی روی وب ارائه کند، در آن صورت نحوه فراخوانی آن سرویس باید به طور واضح مستند سازی و اعلام شود.

    بسیاری از مسائل دسترس پذیری و مقیاس پذیری برنامه های کاربردی امروزی در SOA حل شده است که احتمال نقض آن در هر مر حله ای از جریان کار بسیار زیاد است.

    در SOA فرض بر این است که خطا وجود دارد و می تواند بیفتد، برای مثال اگر یک سرویس نتواند یک پیغام را در مرحله اول بپذیرد، این معماری طوری طراحی شده است که مجدداً پیام را بفرستد.

    و اگر یک سرویس به طور کامل قابل دسترس نباشد، (که هرگز نباید در یک سیستم SOA پایدار انفاق بیفتد) آن وقت معماری طوری طراحی شده است که روی دادن خطاهایی که منجر به قطع کامل در خواست سرویس می شود، ‌امکان پذیر نباشد.

    SOAقابلیت اطمینان را افزایش می دهد، چون خطاهای موقت در بخشی از جریان کار نمی توانند کل فرایند تجاری را از کار بیاندازند.

    در حال حاضر، تکنولوژی سرویس های وب(Web Services)و پیاده سازی نمونه های موفق از آن، نشان داده است که SOA می تواند به عنوان راه حلی عملی و دست یافتنی در طراحی سیستم های جدید و یکپارچه سازی سیستم های بزرگ موجود، مطرح گردد.

    البته ذکر تفاوت سرویس های وب و SOA در اینجا لازم به نظر می رسد: سرویس های وب مجموعه ای از تکنولوژی هایی همچون XML,SOAP,WSDL و UDDI می باشد که امکان ارائه راه حل و برنامه نویسی جهت رفع مشکلی خاص را فراهم می نماید.

    در حالی که SOA یک معماری است و از مجموعه مشخصی از تکنولوژی ها فراتر می باشد.

    اگرچه SOA بر اساس این تکنولوژی ها راه حل ارائه می نماید، اما در عین


تحقیق دانش آموزی در مورد دانلود مقاله معماری سرویس گرا, مقاله دانشجویی با موضوع دانلود مقاله معماری سرویس گرا, پروژه دانشجویی درباره دانلود مقاله معماری سرویس گرا

پیچیدگی در نرم افزار بدلیل تفاوت ذاتی بین نرم افزار و سخت افزار پیچیدگی خاصی در ابعاد مختلف از جمله تعریف نرم افزار، طراحی و پیاده‌سازی، تست و نگهداری آن وجود دارد که: با پیچیدگی سیستم‌های طبیعی و محصولات فیزیکی ساخت است بشر متفاوت است. یک خاصیت ذاتی سیستمهای نرم افزاری بزرگ بنابراین نمی‌توان این پیچیدگی را از بین برد بلکه باید آنرا کنترل نمود. انواع پیچیدگی: intelleictually ...

اینجانب واحد کارآموزی خود را در دانشگاه امام حسین(ع) واقع در تهران- کیلومتر 13 بزرگراه شهید بابایی- دانشکده فنی و مهندسی- معاونت پژوهش گذراندم. این دانشگاه در سال 1365 تاسیس گردیده است. که در ایتدا کار خود را در هفت رشته فنی و علوم انسانی آغاز نمود. که در حال حاضر این دانشگاه در رشته های فنی و مهندسی به رشته های صنایع، کامپیوتر، عمران(معماری- نقشه کشی- عمران عمران)، برق(مخابرات ...

نرم افزار ویروس یاب چگونه کار می‌کند ؟‌ نرم افزار ویروس یاب بیشترین صنعت آنتی ویروس که موتور قابل اسکن با در نظر گرفتن افزایش شکاف بالا، دستیابی کامل را برای برق موتور‌ها به ما می‌دهد ،‌ترکیب می‌کند .رابط گرافیکی کاربر ویروس یاب بخش‌های برنامه تخصصی داده شده را بدون از بین بردن انعطاف پذیری که شما برای مجهز کردن نرم افزار داخل محیط‌های محاسباتی به آن نیاز دارید ، یکنواخت می‌کند ...

به نام خدا شرکت رهنمون فناوری اطلاعات در سال 1381 با مالکیت خصوصی به شماره ثبت 196417 در تهران با هدف ارایه راهکارهای جامع اتوماسیون مالی و اداری تاسیس گردید.  این هدف با پوشش جنبه‌های مختلف فناوری اطلاعات شامل بررسی و امکان سنجی پیاده سازی سیستم‌های اتوماسیون ،‌مشاوره در زمینه تهیه تجهیزات و نرم افزار ، پیاده سازی پروتکلهای بهینه گردش کاری ، ارایه سخت افزار رایانه ،‌تولید ...

چکیده: این رساله که پایان نامه تحصیلی می باشد، مشتمل بر بخشهایی است که توصیفهایی از واحد درسی پروژه عملی، تحت عنوان (مکانیزاسیون تولید مجله تحت وب) را به دست می‌دهد و شامل فصول اصلی: ابزار و روش ها، تحلیل و طراحی، پیاده سازی می باشد. در هر فصل قسمت خاصی از این پروژه مورد بحث قرار گرفته است. موضوع انتخاب شده برای پروژه پایان نامه ای که شرح آن را پیش رو دارید،‌مکانیزاسیون تولید ...

چه چیز می‌تواند یک پروسه تولید نرم‌افزار را توصیف کند؟ آیا منظور از پروسه، آماده‌سازی نرم‌افزار صرفاً برای ارائه در بازار است؟ مسلماً در هر کاری وجود یک سامانه و فرایند کاری ضروری است؛ ولی چه چیزی می‌تواند موجب ایجاد سرعت و کیفیت در فرایند تولید یک نرم‌افزارشود؟ لزوماً طراحی و پیاده‌سازی یک فرایند یکپارچه و منطقی می‌تواند چنین نتیجه‌ای در بر داشته باشد. بدین منظور امروزه از روشی ...

: مفاهیم شیء گرایی مقدمه شئ گرایی برای توسعه نرم افزار اولین بار در سال 1960 پیشنهاد شد، این روش پس از 20 سال به طور گسترده مورد استفاده جامعه نرم افزاری قرار گرفت. توسعه دهندگان نرم افزار در دهه 1980 توجه جدی خو د را روی شئ گرایی معطوف کردند. تکنولوژی شئ، قابلیت استفاده مجدد را برای مؤلفه های نرم افزاری به ارمغان آورد و این نیز به نوبه خود در تسریع توسعه نرم افزار و تولید محصول ...

چکیده با گسترش روز افزون استفاده از مدل­های فرایند مبتنی بر معماری، طراحی معماری نرم افزار اهمیت ویژه­ای یافته است. یک طراحی معماری خوب، طراحی است که نیاز­های کیفی مورد انتظار مشتری را برآورده نماید. در این گزارش روش ­های گوناگون طراحی معماری نرم افزار مورد بررسی قرار خواهد گرفت. سپس ویژگی کیفی قابلیت تغییر به طور دقیق و جزئیات معرفی خواهد شد و سپس معماری یک سیستم مطالعه موردی ...

اینک به جرات می توان گفت که اینترنت به عنوان شگفت انگیز ترین پدیده ارتباطی – اطلاعاتی دهه اخیر بصورت جزء لاینفکی از زندگی تک تک ما درآمده است. تا آنجا که برخی معتقدند , برای نسل آینده زندگی بدون اینترنت پوچ , بی معنی و غیر ممکن خواهد بود. اینترنت دارای پتانسیلی قوی جهت ایجاد تحولات اساسی و حتی جایگزینی با وسایل ارتباطی و اطلاع رسانی مانند : رادیو , تلویزیون , تلفن , فکس, ماهواره ...

رشته مهندسی کامپیوتر که به طراحی و ساخت اجزای مختلف کامپیوتر می پردازد، لذا اهمیت بسیار زیادی در دنیای امروز برخوردار است. هدف از طی این دوره تربیت کارشناسانی است که در زمینه تحلیل، طراحی، ساخت و راه اندازی دستگاهها و مجموعه های سخت افزاری جدید، بررسی و شناخت مجموعه های سخت افزاری و نرم افزاری موجود، نگه داری، عیب یابی و تعمیر و اصلاح و توسعه فعالیت کنند. طراحی، شبیه سازی، ...

ثبت سفارش