رویکردی در ارتباط با معماری خط تولید سرویسگرا Towards an Approach for Service-Oriented Product Line Architectures
Abstract
Service-Oriented Architecture (SOA) has appeared as an emergent approach for developing distributed applications as a set of self-contained and business-aligned services. SOA aids solving integration and interoperability problems and provides a better Information Technology (IT) and business alignment, giving more flexibility for the enterprises. However, SOA does not provide support for high customization and systematic planned reuse to develop applications that fit customer individual needs. In this paper, we propose an approach in which SOA applications are developed as Software Product Lines (SPLs). Thus, the term Service-Oriented Product Line is used for serviceoriented applications that share common parts and vary in a regular and identifiable manner. In this context, high customization and systematic planned reuse are achieved through managed variability and the use of a two life-cycle model as in SPL engineering: core assets and product development. We conclude the paper with an initial case study in the conference management domain explaining the steps of our approach.
چکیده فارسی
معماری سرویسگرا (SOA) به عنوان روش نو ظهوری به منظور توسعه کاربردهای توزیع به عنوان یک مجموعه ای از خدمات مستقل و اقتصاد محور می باشد. معماری سرویسگرا (SOA) کمکی به حل مشکلات ادغام و قابلیت همکاری کرده و فناوری اطلاعات بهتر و مسیرهای تجاری را ایجاد کرده و انعطاف پذیری بیشتری به شرکت ها می دهد. به هر حال معماری سرویسگرا (SOA) حمایتی از ساخت براساس سفارش و کاربرد مجدد برنامه ریزی شده نظامند برای توسعه بموارد کاربردی که متناسب با نیاز فردی مشتریان باشد، نمی کند. در این مقاله ما روش هایی را مطرح می کنیم که در آن کاربردهای معماری سرویسگرا (SOA)، به عنوان یک خط تولید نرم افزاری، ایجاد می گردند. از این رو عبارت خط تولید سرویسگرا برای کاربردهای مورد استفاده قرار می گیرد که دارای بخش های مشترک بوده و از نظر روش های قابل تعریف و منظم، مورد استفاده قرار می گیرند. در چنین شرایطی، ساخت بر مبنای سفارش و کاربرد طرح های نظامند از طریق تغییرات مدیریتی و استفاده از 2 مدل چرخه عمر همان طور که در مهندسی خطوط تولید نرم افزار وجود دارد، حاصل می گردند : که شامل سرمایه اصلی و توسعه تولیدات می باشند. در پایان ما با توجه به بررسی موردی اولیه در حیطه کنفرانس مدیریتی، که به توصیف مراحل روش ما می پردازد، نتیجه گیری را انجام می دهیم.
مشخصات
توسط: Fl´avio Mota Medeiros and Eduardo Santana de Almeida سال انتشار: 2008 میلادی تعداد صفحات متن اصلی: 7 تعداد صفحات متن ترجمه: 13 تاریخ درج: ۱۳۹۵/۱۰/۱۱ منبع: دیتاسرا
خرید آنلاین فایل ترجمه
عنوان: رویکردی در ارتباط با معماری خط تولید سرویسگرا حجم: 165.51 کیلوبایت فرمت فایل: pdf قیمت: 119500 تومان رمز فایل (در صورت نیاز): www.datasara.com نرم افزارهای مورد نیاز: winrar - adobe acrobat - office
تنها با ارسال یک ایمیل وجه خود را دریافت نمایید
دانلود فایل اصلی
عنوان: Towards an Approach for Service-Oriented Product Line Architectures
مقدمه
در ایجاد یک نرم افزار، نیازی مبرمی در ارتباط با کاهش هزینه، کار و زمان در بازار تولید نرم افزار وجود دارد. این امر حائز اهمیت می باشد تا سیستم های انعطاف پذیری را ایجاد کنیم تا با تغییرات بازاری به سرعت وفق یابند. علاوه بر این، فناوری های مختلف زیادی در حال ظهور می باشند و شرکت ها نیاز دارند تا سرمایه گذاری ها در بخش نرم افزاری خود را با این فناوری های جدید ادغام کنند. به هر حال پیچیدگی ها و اندازه سیستم ها در حال افزایش بوده و تولیدات می بایست متناسب با نیاز مشتریان و بخش های بازار باشند.
در چنین شرایطی SOA ( معماری سرویس گرا) به عنوان یک رویکرد نوظهور برای حل مسئله ادغام و قابلیت همکاری با بخش های دیگر، تطبیق فناوری اطلاعات و اهداف تجاری، و افزایش انعطاف پذیری تجاری می باشد.
به هر حال SOA فاقد حمایت در زمینه ساخت بر اساس سفارش و کاربرد طرح های نظامند می باشد. به عبارت دیگر، با وجود روش های طبیعی دسترسی ه سفارشات در کاربردهای سرویس گرا، تغییر سفارش سرویس یا حتی متقاضیان ترکیب سرویس ها، اسن سرویس ها به همراه تغییراتی طراحی نخواهند شد تا در شرایط خاص قابل انطباق و قابل استفاده باشند.
علاوه بر این، ابزارهای این سرویس همانند، موارد خاص و مدل ها به همراه تغییراتی طراحی نمی شوند. از این رو چنین ابزارهایی به آسانی توسط خانواده کاربردهای سرویس گرا مورد استفاده مجدد قرار نمی گیرند.
به این ترتیب مهندسی SPL، که دارای ویژگی های تغییر پذیری، سفارشی کردن و کاربرد طرح های نظامند در قلب خود دارد، کمکی به SOA برای کسب این مزایا می کند. در چنین مسیری، کاربردهای سرویسگرا که به حمایت از یک مجموعه از فرایندهای تجاری خاص می پردازد، همانند SPL ایجاد می گردد. انگیزه های مربوط به آن دستیابی به مزایای مورد نظر همانند مزایای بازدهی، کاهش هزینه و کار، بهبود زمان در بازار، کاربردهای سفارشی برای مشتریان خاص، یا نیازهای بازاری و مزایای رقابتی می باشد.
در این مقاله، ما رویکردی را در ارتباط با معماری خطوط تولید سرویسگرا مطرح می کنیم که به ترکیب مفهوم SPL، SOA و تکنیک هایی برای دستیابی به سفارشات، کاربردهای طراحی شده نظامند و مزایای مورد نظری که قبلا بیان شد می پردازد.
از این رو، مفهوم تغییرات مدیریتی و کاربردهای طراحی شده نظامند در توسعه فعالیت های سرویسگرا معرفی می گردند. برای سازگار شدن با چنین مفاهیمی، فرایند توسعه در مهندسی SPL به دو چرخه تقسیم می گردد. اول، ایجاد سرمایه مرکزی، که به تولید ابزارهای کلی با توجه به متغیرهایی برای ایجاد قابلیت تولید برای کاربردهای می پردازد. دوم، تولید این محصولات به تعیین نقاط متغیر ابزارهای کلی ایجاد شده در ایجاد سرمایه مرکزی و ایجاد کاربردهای سفارشی برای مشتریان خاص می پردازد. مدیریت در سطوح فنی و سازمانی در طی ایجاد تولیدات و سرمایه به طور جدی در ارتباط با موفقیت خط تولید می باشد.
مابقی بخش های مقاله به صورت زیر بخش بندی می گردد. بخش 2 مروری از این رویکردها را در ارتباط با معماری خطوط تولید سرویسگرا نشان داده و بخش 3 به توصیف ورودی ها، خروجی ها و فعالیت ها با جزییات کامل می پردازد. بررسی موردی بر روی حیطه مدیریت کنفرانس در بخش 4 نشان داده می شود. فعالیت های مربوطه در بخش 5 توصیف خواهند شد. و بخش 6 نکات پایانی و رهنمودهایی را برای کارهای آینده نشان می دهد.
2. مروری در ارتباط با این رویکرد
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.
این رویکرد بر مبنای سبک های معماری نشان داده شده در شکل 1 می باشد. این سبک های معماری در شکل (13-14) نشان داده شده است که لیست کاملی از لایه های معمول مورد استفاده در یجاد SOA را نشان می دهد. همان طور که بیان شد، سبک های معماری به لایه هایی تقسیم می شود که هر یک از آن ها همان طور که بعدا توصیف می شود.
ترجمه شکل :
شکل 1- سبک های معماری – واسط گرافیکی کاربر (GUI) – هماهنگی سرویس- سرویس ها- بخش ها
شرح : (نیاز به دانلود ترجمه) اختیاری – (نیاز به دانلود ترجمه) نقاط تغییر – وابستگی
لایه واسط متشکل از بخش های واسط گرافیکی کاربر (GUI) می باشد.این لایه تنها توسط خطوط تولید سرویسگرا که نیازکند واسط بصری برای تعامل با سرویس ها و هماهنگی سرویس دارد مورد استفاده قرار می گیرد.لایه های سرویس هماهنگ شامل سرویس های ترکیبی می باشند که به اجرای فعالیت های تجاری مختلف پرداخته و یا حتی کل فرایند تجاری که نیازمند مشارکت و تعامل سرویس مشخصی می باشد. این لایه از سرویس متشکل از سرویس های مستقل و تجاری می باشد که نیازمند فعالیت های تجاری است. سرانجام اینکه لایه های این اجزا شامل مجموعه ای از بخش هایی می باشد که عملکردی را برای سرویس های مورد نظر ایجاد کرده و کیفیت سرویس را حفظ می کند.
توجه داشته باشید که عناصر معماری ( بخش ها، سرویس ها، هماهنگی سرویس ها و اجزای رابط کاربران) مربوط به این لایه توسط چنین متغیرهایی ایجاد شده و به صورت اجباری، اختیاری یا گزینه ای می باشند.
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.
در این مقاله، ما تمرکزمان را بر روی ایجاد سرمایه قرار می دهیم.این تمرکز به طور خاص بیر روی طراحی معماری خاص یک بخش برای خطوط تولید سرویسگرا می باشد.از این رو ما دستورالعمل ها و مراحلی را برای تعیین و مستند سازی بخش ها سرویس، هماهنگی سرویس و جریانات مربوط به آن با استفاده از رویکردهای از بالا به پایین ایجاد می کنیم. به عبارت دیگر، تعیین عوامل معماری با استفاده از سیستم های قدیمی، رویکرد پایین به بالا در این فعالیت ها مد نظر قرار نمی گیرد. بخش زیر ورودی ها، خروجی ها و فعالیت های مربوط به این رویکردها را در ارتباط با معماری خطوط تولید سرویسگرا با جزییات کامل نشان می دهد.
36- رویکرد:
رویکرد مربوط به معماری خطوط تولید سرویسگرابا توجه به یک فاز مشخصی آغاز می گردد.آن از مدل های خاص و فرایندهای تجاری به عنوان یک ورودی اجباری استفاده کرده و به ایجاد لیستی از بخش های موجود، سرویس ها و هماهنگی سرویس ها برای معماری خطوط تولید می پردازد. بنابراین چنین بخش های معماری می تواند در تمام خطوط تولید مورد استفاده مجدد قرار گیرد. این فاز در تعیین بخش ها و فعالیت های تعیین سرویس مجزا می گردد.
متعاقبا، فعالیت های تجزیه و تحلیل متغیری نیز وجود دارد.آن به دریافت لیستی از اجزا و سرویسی می پردازد که قبلا مشخص شده و و به تعریف و مستند سازی تصمیمات معماری کلیدی با توجه به متغیرها می پردازد. در چنین فعالیت هایی مشخص می شود که چگونه این تغییرپذیری درون سرویس ها و بخش ها به مرحله اجرا در می آید.
فعالیت های خاص معماری شامل این رویکردها می باشد. در چنین فعالیت هایی، معماری با استفاده از نظرات مختلف به منظور ارائه نگرانی سهامداران مختلف که در این پروژه قرار دارند مد نظر قرار می گیرد.
شکل 2 ورودی ها، خروجی ها و فعالیت های مربوط به این رویکردها را در ارتباط با معماری خطوطو تولید سرویسگرا نشان می دهد.
ترجمه شکل .
شکل 2- فعالیت های مربوط به این رویکرد.
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.
مدل های پردازش شده تجاری – تعیین سرویس- لیست سرویس – راهنما : خروجی ورودی.
بخش بعدی فعالیت های مربوط به این رویکرد ها را با جزییات کامل نشان می دهد.بررسی موردی اولیه که به تعیین و توصیف این فعالیت ها می پردازد در بخش 4 نشان داده شده است.
3.1 شناسایی بخش ها.
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.
این فعالیت ها با توجه به تحلیل های مدل های خاص برای تعیین بخش های معماری آغاز می گردد.هدف چنین فعالیتی این می باشد تا این خصوصیات را درون مدل هایی قرار دهیم تا به طراحی سبکی بپردازیم که در آن اجزا حذف و اضافه شده تا محصولات سفارشی را ایجاد کنند.هر یک از مدل های مشخص شده در این فعالیت به عنوان یک بخش معماری برای معماری خطوط تولید سرویسگرا می باشند.
به منظور تعیین چنین فعالیت هایی، ما از ویژگی های خاصی با توجه به دو متغیر به عنوان مثال می پردازیم.در چنین مواردی، هر یک از متغیرها در بخش های متفاوتی قرار می گیرند. بنابراین عملکرد هر یک از متغیرها در تولیدات با حذف و اضافه یکی از بخش ها مد ظر قرار می گیرند. از آن جایی که این ویژگی ها به صورت متناوب می باشند، تنها یکی از این بخش ها در تولیدات نمایش داده می شوند.به هر حال در بعضی از موارد، در ارتباط با مجزا بودن متغیرها، هر دو ویژگی را می بایست در بخش های خاصی قرار داد و تغییرات داخلی را به آن افزود. این موضوع در فعالیت های تحلیل مختلف در بخش 3.3 مد نظر قرار می گیرد.
بخش های مشخص شده در چنین فعالیتی به حفظ کیفیت سرویس در خطوط تولید می پردازد.بنابراین بخش های مشخص در ارتباط با مد نظر قرار دادن ویژگی های کیفی همانند تغییرپذیری و کاربرد مجدد قابل قبول می باشد. به هر حال بعضی از ویژگی های مربوط به کیفیت همانند امنیت و عملکرد در ارتباط با انتخاب سرویس های مورد نظر می باشد.
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.
3.2 شناسایی سرویس .
شناسایی این سرویس ها به عنوان یک فعالیت محاسباتی سرویسگرا می باشد.در شرایط مربوط به خطوط تولید سروسگرا، فعالیت های مربوط به تعیین سرویس با توجه به نگرانی های مربوط به مشترکات و متغیرها حتی سخت تر نیز می باشد.
در فعالیت های مربوط به شناسایی سرویس، مجموعه ای از سرویس ها و هماهنگی سرویس ها مشخص می باشد. بنابراین چون این سرویس از فرایندهای تجاری حمایت می کنند، این روند معقول می باشد تا آن ها را از مدل های مربوط به فرایندهای تجاری تعیین کنیم.
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.
ما از رویکردهای از بالا به پایین برای شناسایی سرویس ها استفاده می کنیم، اما آن شامل سرویس های موجود که در طی چنین فعالیت هایی برای ادغام مد نظر قرار می گیرند، نمی باشد. فعالیت های مشخص شده سرویس ها سرویس های دیگری را با توجه به تمام موارد مشخص شده ایجاد می کند. بخش بعدی فعالیت های تحلیلی متغیری را نشان می دهد.
3.3 تجزیه و تحلیل متغیرها.
بر طبق به (21)، تغییرپذیری توانایی برای تغییر یا سفارشی کردن سیستم های نرم افزاری می باشد. ایجاد تغییرپذیری در سیستم ها انجام نوع خاصی از انطباق را آسان تر می سازد. علاوه بر این، این مورد امکان پذیر می باشد تا به پیش بینی انواعی از تغییرات پرداخته و سیستم ها را به گونه ای ایجاد کنیم که برای وارد کردن تغییرات از پیش تعیین شده آماده گردد.
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.
فعالیت مربوط به تجزیه و تحلیل متغیربا توجه به تجزیه و تحلیل بخش ها و سرویس های مشخص شده آغاز می گردد. تفاوت ها و اختلافات میان سرویس ها به هدف کاهش تعداد سرویس ها مورد تجزیه و تحلیل قرار می گیرد. تجزیه و تحلیل شباهت ها شامل مقایسه عملکرد سیستم ها به منظور متصل کردن سرویس های مشابهی می باشد که به اجرای تغییرات مجزا می پردازد برای نمونه تغییراتی که توسط تغییر ویژگی های طبقاتی و یا روش ها قابل اجرا می باشد. در این مورد، سرویس ها به صورت سرویس مجزا با توجه به تغییرات داخلی به هم مرتبط می گردند. تجزیه و تحلیل های مشابهی نیز در میان بخش های مربوطه انجام می گیرد.در چنین مواردی سرویس ها و بخش ها دیگر به صورت مشخص نمی باشند.
متعاقبا، این مورد نیز تجزیه و تحلیل می گردد که چگونه نقاط متغیر در بخش ها به مرحله اجرا در می آیند.توسعه بر مبنای بخش ها (CBD) به عنوان یک تکنیک عملکردی مورد استفاده قرار می گیرد. یعنی هر یک از متغیرها در بخش های متفاوتی اجرا می گردد. به این ترتیب، تکنیک های اجرای متغیرهای شناخته شده برای اجرای متغیرهای داخلی می تواند مورد استفاده قرار گیرد. برای نمونه، برای نمونه برنامه نویسی های جهت محور، گرداوری شرایط، فایل های پیکره بندی شده و الگوهای طراحی شده از این دست می باشند. موارد مشابهی نیز توسط چنین سرویس هایی رخ می دهد. در چنین موردی، تعیین شرایط سرویس ها به عنوان یک تکنیکی برای اجرای تغییرات مورد استفاده قرار می گیرد یعنی هر متغیر در یک سرویس مورد استفاده قرار می گیرد.
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.
به منظور اجرای تغییرات داخلی سرویس ها، یعنی سرویس منحصر به فردی که بتواند با توجه به اهداف مختلف سفارشی گردد، رابط سرویس ها در بعضی از موارد به بازتاب متغیرهای مورد نظری که این سرویس ها شامل بخش ها و طبقات مورد نظر می گردند، می پردازد. از این رو جمع آوری شرایط و پارامتربندی به هدف تغییر رابط های سرویس و یا اصلاح عملکرد سرویس ها بر طبق به نیازهای خاص مشتری مورد استفاده قرار می گیرد. استفاده از ابزارهای انتقال کد در بخش 17 برای اجرای تغییرات رابط سرویس به مرحله اجرا در می آید.
فعالیت های تحلیلی مربوط به متغیرها مجموعه ای از تصمیمات معماری با توجه به تغییراتی که در طی فعالیت های مورد نظر مشخص می گردند ایجاد می کند، که در بخش بعد نشان داده خواهد شد.
3.4 خصوصیات معماری.
در فعالیت های مربوط به خصوصیات معماری، بخش ها، سرویس ها و هماهنگی مربوط به سرویس ها و جریانات مربوطه مشخص می گردند یعنی فعالیت های معماری مشخص می گردد. در چنین فعالیت هایی، مدل ها و خصوصیات با توجه به تغییرات به عنوان ابزارهای ایجاد سرمایه مد نظر قرار می گیرند. تعیین خصوصیات معماری نیازمند علائمی با توجه به حمایت هایی با توجه به ارائه متغیرها می باشند.
سبک معماری نرم افزار به عنوان یک بخش پیچیده ای می باشد که نمی تواند به صورت یک بعدی نشان داده شود. از آن جایی که سهامداران متفاوتی در یک پروژه با توجه به موارد خاص در ارتباط با سیستمها وجود دارد، این مسئله حائز اهمیت می باشد تا این هنر معماری را با توجه به نظریات متفاوتی مطرح کنیم.
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.
نظریات ساختاری، ساختارهای معماری ثابتی را نشان می دهد، این نظریه بخش ها، سرویس ها و هماهنگی سرویس های معماری را نشان می دهد. نظریه لایه، سرویس هایی را که در بخش ها سازماندهی می گردند نشان می دهد.نظریه تعاملی نشان می دهد که چگونه سرویس ها و بخش ها برای ایجاد وظایف خاص با هم در ارتباط می باشند. نظریه استقلال، اطلاعات مرتبطی را در میان سرویس ها و بخش ها ایجاد می کند. نظریه همزمانی ارتباطات مشابهی را در میان سرویس ها و بخش ها ایجاد می کند اما آن همچنین می تواند همچنین در نظریات تعاملی نیز نشان داده شود. سرانجام اینکه نظریات فیزیکی نشان می دهد که چگونه سرویس ها و بخش ها و پروتکل های ارتباطی توزیع می شود.
بعضی از نمودارهای مربوط به UML با توجه به مدل های نمونه و گسترش تغییرات همانند (23، 24) می توئاند برای ایجاد این نظریات مورد استفاده قرار گیرد. به عنوان نمونه، نمودارهای این بخش ها برای نشان دادن نظریات ساختاری و نظریات مستقل مربوط به بخش ها مورد استفاده قرار گرفته، نظریات همزمانی و تعاملی با توجه به نمودارهای متوالی نشان داده شده است و نظریات مستقل مربوط به این سرویس ها با توجه به رابط ها، مدل های الگو و موارد مستقل در طبقه بندی این نمودار ایجاد می گردد.
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.
4- بررسی موردی.
در این بخش، ما به معرفی بررسی موردی اولیه در حوزه مدیریت کنفرانس برای تعیین و توصیف روش مان می پردازیم. بررسی موردی شامل خط تولید سرویسگرا می باشد که به منظور ایجاد کاربردهای سفارشی سرویسگرا برای مدیریت کنفرانس های مختلف فعالیت دارد.
بخشی از مدل های الگوی خطوط تولید رویسگرا در شکل 3 نشان داده شده است.و خصوصیات آن در مرحله بعد نشان داده می شود.
جهت مشاهده متن کامل، فایل ترجمه را دانلود نمایید.