صفحه 1:
صفحه 2:
|
رئوس مطالب ل
مقدمه
ابزاررهای استقرار نرم افزار در صنعت
متدهای استقرار نرم افزار در تحقیقات آکادمیک
رهیافت مبتنی بر گراف برای برنامه ریزی استقرار
گام های بعدی و زمانبندی
مزاجع
داشگا صتش شرید: دتشكه مهتدسس كاييوتز
صفحه 3:
۹
6 امروزه برنامه های کاربردی پیچیده ای وجود دارند
که دارای تعداد زیادی مولفه های نرم افزاری
ناهمگن هستند.
* این برنامه ها معمولا در محیط های توزیع شده
استقرار می یابند.
استقرار برنامه های مبتنی بر مولفه در محیط های
توزیع شده به سادگی استقرار برنامه های منفرد بر
روی یک کامپیوتر نمی باشد.
4
شاه صنض شرید SoS ae
صفحه 4:
ْ مقدمه(ادامه)
4
* فرایند استقرار نرم افزار.یک توالی از فعالیت ها می
باشد که یک برنامه توسعه داده شده را در محیط هدف
قرار می دهد و آن را آماده استفاده می گرداند.
0
0 0 © 6
به دست آوردن (2۵۷())
برنامه ریزی (!())
نصب منالهعه) (
(CoePicpurcti) 63s © Se
(Cxerutios) |=!
SoS ae 3 jn
صفحه 5:
برهي استقر ار نرم افز اردر صنعت ۳
۴ ابزارهای استقرار نرم افزاردر صنعت به سه دسته
اصلی نقسیم می شوند:
9 نصب کننده های منفرد (stacd-alour icetultere)
٩ ابزارهای استقرارمبتتی بر وب ( یاو(
خامصا دعصم رصاووك)
Gpetews worageuert) eps Cy pte ابزارهاى ©
(tools
شک نی شرید. Fa ie
صفحه 6:
© نصب کننده های منفرد
٩ فعالیت اصلی نصب کننده های منفرد ءنصب وحذف
سیستم های نرم افزاری منفرد از روی یک کامپیوتر
می باشد.
٩ ابزارها دارای محدودیت هایی نیز هستند از جمله برای
نرم افزارهای توزیع شده غیرقابل استفاده می باشند و
دیگر اینکه خود کاربر باید بروز رسانی آن را به عهده
بگیرد.
9 شاه صنض شرید SoS ae
صفحه 7:
برهي استقر ار نرم افز اردر صنعت (ادامه) [
B نصب کننده های منفرد
0 نمونه هایی از نصب کننده های منفرد
Lica RPO ®
Redhat Pacha Dorer ©
4ustdlGhied ©
dustdlapwhere
٩ شرکت نرم افزاری ظ) مرا"
شاه صنض شرید SoS ae
صفحه 8:
ابزارهای استقر ار نرم افز اردر صنعت (ادامه)
* ابزارهای استقرارمبتنی بر وب
٩ دراین ابزارها نیازی به نصب و به روزرسانی نرم افزار
بر روی هرمیزبان به صورت جداگانه نمی باشد ودر
عوض نرم افزآر بر روی یک خدمتگزار وب استقرار می
٩ یکی از مهمترین محدودیت های این ابزارها اين می باشد
که تنها برای نرم افزارهای منفرد قابل استفاده می باشد و
برای استقرار نرم افزارهای توزیع شده غیر قابل استفاده
می باشد.
صفحه 9:
ابزارهای استقرارمبتنی بر وب
٩ نمونه هایی از ابزارهای استقرارمبتنی بر وب
dvs Deb Gta *
۴ ولج بلج( ام
© وان Dierosvht
۳ شک نی شرید. Fa ie
صفحه 10:
ابزارهای استقر ار نرم افز اردر صنعت (ادامه)
۴ ابزارهای مدیریت سیستم
© در اين ابزارهاً مس0 9).از يك مكان متمركز
عمليات هايى را انجام ميدهد كه به صورت اتوماتيك در
تمامى سيستم ها در شبكه اعمال مى شود.
٩ _ مدع از روی کامپیوتر خود قادر به استقرارء پیکره
بندی »مدیریت و نگهداری تعداد زیادی از سیستمهای سخت
افزاری و نرم افزاری می باشد.
©« شک نی شرید. ie کیت
صفحه 11:
برهي استقر ار نرم افز اردر صنعت (ادامه) [
" ابزارهاى مديريت سيستم
© محدوديت هاى اين ابزارها
معمولا سیستمهایی سنگین و پیچیده هستند
*_نیاز به شبکه مطمئن دارند
* نیاز به کنترل کامل هدك )دارند.
٩ نمونه هایی از ابزارهای مدیریت سیستم
Gystews Ooanewed Gerver © سس(
Tuck Ooanewed Covincaredt © 100
Obits Deployed Gotuticn ©
SoS ae 3 jn
صفحه 12:
۳ استقرار نرم افزاردرتحقیقات sat,
ایجاد چارچوب های استقرار
* استفاده از عاملهای سیار در استقرار نرم افزار
= استقرار بر محور کیفیت سرویس
" استقرار در شبکه های محاسباتی
3 شک نی شرید. ie کیت
صفحه 13:
| استقرار نرم فزردرتتیقترس sat,
(Deploy crest Prxmeworke) Jie! cla چارچوب *
٩ در این رهیافتها محققین سعی می کنند که یک توالی از
فعالیتهاهنتریی) ) را برای فرایند استقرار نرم افزار
بوجود اورند.
٩ هدف ایجاد یک چارچوب عمومی برای انجام فرایند
استقرار نرم افزاز می باشد.
شاه صنض شرید SoS ae
صفحه 14:
| استقرار نرم فزردرتتیقترس sat,
* نمونه هایی ازچارچوبهای استقرار
OvPiware Dork ©
در دانشگاه امد
OOG 680 GpeviFivaiva ©
Obert Oacagewent Croup bus
6000۷7۵
Open ewi(Rouvedt to dep’ @pplicaivas alike ©
0009 در سال @etkkatie 5 bestideau bu si
SoS ae 3 jn
صفحه 15:
| استقرار نرم فزردرتتیقترس sat,
* استفاده از عاملهای سیار در استقرار نرم افزار
٩ _عاملهای سیار به دلایل زیر درفرایند استقرارمفیدند
* امکان عمل در قالب های ناهمگن
0 در نتیجه انجام فرایند استقرار در شبکه های ناهمگن
" امکان یکپارچگی با اینترنت
© در نتیجه یکپارگی فرایند استقرار با اینترنت
امکان نظاره کردن روال نصب
٩ جلوگیری از عملیات غیر قانونی و در نتیجه امنیت بیشتر
شاه صنض شرید SoS ae
صفحه 16:
| استقرار نرم فزردرتتیقترس sat,
* نمونه پروژه هایی که در فرایند استقرار آنها از عامل
های سیار استفاده شده است
© پروژه تحقیقاتی 00۷) عورباه6) ططاهل (ه رخصسن()
۳60000 سیستم 0
COOS Je Sud O.Gucvard tober D توسط 1
SoS ae 3 jn
صفحه 17:
رهیافتهای استقرار نرم فزردرتتیقترس |
استقرار بر محور کیفیت سرويس QvG-Burare)
(Oeployxwest
٩ در این رهیافت وضعیت پارامترهای کیفیت سرویس در فرایند
استقرار مورد توجه قرار می OS
٩ هدف انتخاب پیکره بندی استقراری می باشد که پارامتر کیفیت
سرویس مورد نظر را بهینه نماید.
٩ از جمله پارامترهای کیفیت سرویس می توان به قابلیت اطمینان»
امنيت » هزينه » توازن بار» دردسترس بودن و... اشاره کرد.
صفحه 18:
۳ استقرار نرم افزاردرتحقیقات(ادامه) sat,
* نمونه پروژه هایی که فرایند استقرار آنها بر محور
کیفیت سرویس می باشد
She)? wtRohiD, Jaw gi محیط :60 ؛معرفی شده ٩
60006
تاكيد بر روى يارامتر دردسترس بودن "
MWebrerd پروژه دیگر در سال0006 توسط ٩
Oickeadakul
تاکید بر استقرار بر محور کیفیت سرویس در محیط فراگیر
eo شک نی شرید. ie کیت
صفحه 19:
رهیافتهای استقرار نرم فزردرتتیقترس |
استقرار در شبکه های محاسباتی
© در اين رهيافتها به علت تعداد زياد میزبانان و همچنین
ناهمكنى شبكه ءفاز استقرار بايد در حد امكان بصورت
اتومائیک باشد.
٩ در اين فرایند اتوماتیک باید محدودیت های برنامه و کاربر
ارضاء شوند.
0 از جمله این پروژه ها . چارچوبی است که برای استقرار
مولفه های 0(036069()»در شبکه های محاسباتی توسط
مرا و ار<) در سال 000000۴ ارائه شده است,
شاه صنض شرید SoS ae
صفحه 20:
رهیافت مبتنی بر گراف برای برنامه ریزی
استفرار
© هدف ما :
٩ توسعه الگوریتم های مورد نیاز برای استقراربرنامه های
کاربردی مبتنی بر مولفه در محیط های توزیع شده می
باشد به طوریکه :
" برخی از پارامترهای کیفیت سرویس ماکزیمم شوند.
0 یک فرایند استقرار بر محور کیفیت سرویس می باشد.
* محدودیت های تعریف شده توسط کاربر ارضاء شوند.
رهیافت وابسته به تکنولوژی های توسعه مبتنی بر مولفه
صفحه 21:
| رهيافت مبتنی بر گراف برای برنامه ریزی
اسثقر ار (ادامه) ۳
" تمرکز در این پروژه بر فاز برنامه ریزی می باشد.
فرایند استقرار نرم افزار
0
0
0
0
0
به دست آوردن (2۵())
برنامه ریزی (نس)
نصب محضاهعها) (
ييكره بندى (CoPicurction)
(Gxerutios) |=!
SoS ae 3 jn
صفحه 22:
| رهيافت مبتنی بر گراف برای برنامه ریزی
اسثقر ار (ادامه) ۳
* فاز برنامه ریزی (««ت))
٩ در اين فاز با توجه به مشخصات برنامه مبتنی بر مولفه,
مشخصات محیط هدف» و محدودیت های کاربر مشخص می
شود که کدام مولفه در کدام میزبان اجرا خواهد شد.
٩ به برنامه ای که اين فاز را انجام می دهد» برنامه ریز گفته
می شود.(م«»ت۳۱))
9 نتایج 52 (Deptoycrect Pkt) 2! 8! cob
SoS ae 3 jn ۳
صفحه 23:
اسثقر ار (ادامه)
| رهيافت مبتنی بر گراف برای برنامه ریزی أ
" ورودى هاى برنامه ريز
0 متخصنات یرتاههای که بايذ By gl Sita
0 مشخصات محیطی که برنامه باید در آن استقرار یابد
(محیط هدف).
0 مشخصات محدودیت های تعریف شده توسط کاربر و
نیازمندیها,
2111117
صفحه 24:
رهیافت مبتنی بر گراف برای برنامه ریزی
اسثقر ار (ادامه)
" مدل كردن ورودى هاى برنامه ریز
© از كراف براى مدل كردن ورودى ها استفاده مى شود.
© مزایای استفاده از گراف برای مدل کردن
گراف یک بازنمایی بصری را ارائه می کند.
الگوریتمهای تئوری گراف می توانند به ما در طراحی
الگوریتمهای برنامه ریزی استفرار کمک نمایند.
از سمبلهای تئوری گراف می نوان برای بازنمایی صوری
ورودی های برنامه ریزونیزاثبات درستی الگوریتمهای برنامه
ریزی استقرار استفاده کرد.
شاه صنض شرید SoS ae
صفحه 25:
| رهيافت مبتنی بر گراف برای برنامه ریزی
اسثقر ار (ادامه) ۳
" مدل کردن مشخصات برنامه
0
از ديد برنامه ريزء برنامه متشكل ازتعدادى مولفه مى باشد
که توسط تعدادی کانال با خصوصیات متفاوت با یکدیگر در
ارتباطند.
جزییات داخلی ونحوه عملکرد درونی مولفه ها مهم نمی
باشد.
این مولفه ها می توانند فرایندهسرویس وب» عمج مرول »
مولفه های 00080909 و... باشند.
شاه صنض شرید SoS ae
صفحه 26:
| رهيافت مبتنی بر گراف برای برنامه ریزی
اسثقر ار (ادامه) ۳
" مدل كردن مشخصات برنامه
0
0
ابتدا برنامه مبتنی بر مولفه توسط 7ج©) مدل مى شود.
Rev » يك مدل هماهنكى مبتنى بر كانال مى باشد كه
رفتارهاى مشاركتى دوسويه مولفه ها را در يك سيستم مبتنى
بر مولفه هماهنگ می سازد.
م۲ اين امکان را می دهد تا ارتباطات بین مولفه ها ءکه
هر کدام دارای خصوصیات متفاوت می باشند» به سادگی
مدل شده و بیان شوند.
شاه صنض شرید SoS ae
صفحه 27:
۱ رهیافت مبتنی بر گراف برای برنامه
ریزی استقرار (ادامه)
* مثالی از یک برنامه مدل شده با و۲
صفحه 28:
اسثقر ار (ادامه)
| رهيافت مبتنی بر گراف برای برنامه ریزی أ
& مدل كردن مشخصات برنامه
٩ برنامه مدل شده با م8 را به راحتی می توان تبدیل به
گراف کرد
گره های گراف. نمایانگرمولفه های برنامه می باشند.
" یالهای گراف » نمایانگر کانالهای بین مولفه ها می باشند.
8 هر یال با نام نوع کانال ارتباطی بین دومولفه برچسب می
خورد.
© كراف حاصل » كراف برنامه (Ppphoutioa Brapk) ناميدة
مى شود.
0 شاه صنض شرید SoS ae
صفحه 29:
اسثقر ار (ادامه)
| رهيافت مبتنی بر گراف برای برنامه ریزی أ
" مثالى از یک گراف برنامه
شاه صنض شرید SoS ae
صفحه 30:
یر مه 4 ۳ ۰ 3
رهیافت مبتنی بر کراف برای برنامه ریزی
اسثقر ار (ادامه)
* مدل کردن مشخصات محیط هدف
٩ محیط هدف. متشکل ازتعدادی میزبان با تواناییهای محاسباتی
متفاوت می باشد که توسط یک شبکه در محیط توزیع شده به
© محيط هدف به صورت زیر با یک گراف مدل مى شود
" گره هاء نمایانگرمیزبانان دردسترس در محیط توزیع شده می
باشند.
" یالهاء نمایانگر انواع کانالهای مختلف می باشند که می توانند
بين دو ميزبان وجود داشته باشند.
۵ شاه صنض شرید SoS ae
صفحه 31:
رهیافت مبتنی بر گراف برای برنامه
ریزی استقر ار (ادامه) [
گراف حاصل» گراف محیط هدف سس سس"
(graphs نامیده می شود.
مثالی از یک گراف محیط هدف
صفحه 32:
|
اسثقر ار (ادامه)
رهیافت مبتنی بر گراف برای برنامه ریزی أ
حال می توان برنامه ریزی استقرار را چنین تعریف نمود
ایجاد نگاشتی بین گراف برنامه و گراف محیط هدف
نگاشت باید به شکلی صورت پذیرد که پارامتر کیفیت
سرویس مورد نظر ماکزیمم شود.
همچنین محدودیت های تعریف شده توسط کاربر ارضاء
شوند.
شاه صنض شرید SoS ae
صفحه 33:
| رهيافت مبتنی بر گراف برای برنامه ریزی
اسثقر ار (ادامه) ۳
© عباس حیدرنوری و فرهاد مودت وفرهاد ارباب» اين
مساله را برای پارامترهای کیفیت سرویس هزینه و
اطمینان حل نموده اند.
٩ حل مساله برای پارامترهزینه با استفاده از الگوریتم تقریبی
مساله پوشش مجموعه مینیمم ((جس) 52۱) معح)
٩ حل مساله برای پارامتراطمینان با استفاده از الگوریتم تقریبی
مساله برش چند راهه (می رورمتان()) در تتوری گراف.
36 شاه صنض شرید SoS ae
صفحه 34:
cla 5 بعدی و زمانبندی ۳
" در كام بعدى ما مى خواهيم با استفاده از رهيافت مبتنى
بر گراف مساله برنامه ریزی را برای یکی دیگر از
پارامترهای کیفیت سرویس از جمله کاراییامنیت»
توازن بار و... حل نماییم.
تست الگوریتم ارائه شده مرحله بعدی می باشد.
1 شاه صنض شرید SoS ae
صفحه 35:
۱ گام های بعدی و زمانبندی(ادامه) ۳
فعالیت ماه
حل مساله برنامه ریزی برای یک پارامتر کیفیت الی 6 6
سرویس حل نشده با رهیافت مبتنی بر گراف
ثست الگوریتم ارائه شده e
تدوين يايان نامه 6
شاه صنض شرید SoS ae
صفحه 36:
مراجع
Por O م وات ا ا
Oruckres kt Outer Orta, 9 سل( ون
(knw COOP), pp. 929-909.
Depa bore را ام ای evar
یت لس( بت ادم 09 رصاعم
سس و 0 0
راهطا )#۶ رم سوب مج Dorkokep
(00 60066
ood Oaverddat, ۰ Cente Dera .© سس
Dpphoutcas toto Distrinied Es ی
و و
مسج" جد مسوم( ) of the Third “keer عراسو
Teckwkrp: Dew Bevercie (IPDE DO)
leon Gr G.. Prez, O., acd Prot, ۰ @ )له Por
وا سس 0۵ ۶ مس رواب( هط
ورن سر رس( برس سس( ما۳۷
| Derk cd (Be Orting ers (DECOR ODOE),
Growbe, Proce, Ortber OOO, pp.
BS ee 2 دشک میدس کمیتر
صفحه 37:
مراجع
bac, G., Prez, O., od Prod, T. ی
Butera ( بت GOGO Sexpprarcts stay (Brid
وی ب حص ف 0 سس Co ۳
7
) ولمم(
euro 2OR COOF),
Grewtle, Prone, Ortober O( DE, ۳۳ Hae
Dorn Doble مرو( له ,60 طل له 0۳ ,میج
بل 0 ا ملس( er یه
Derkarred (OD ODDE), Bers, سجن ) مب« سل
و اي ممه نيت
Obent Oonnpeedt Group, Oeptywed ond Ovob urate
وتا تفت سس حم یس
ae R.G., Work, 8. O. O., 3 اصیی۳) ,.ظ) مور
Cherererizatrr @ را ۵ ,09 We
Devkoird Report O- 1 سل( سوب
Dept. Ff Orwputer Griews, 0 oF Ovtorede, ۱9
pri 1990
هه BS 2 دشک میدس کمیتر
صفحه 38:
مراجع
Oikic-Rokic, O., Odek, G., Berkooa, D. ood Oeduidevic, D. B
ep ك7
Or اه ,)۳ یو( Por موه ماه
ka ۱ Gettoce. I Procerchags of the ماه
On ereur oo وس
ATetercraterrd Doorttery C Orrpracdt
(CO CODE), Etbrk OK, Day 900-00, GOOF.
Oickadabul, (D., cod Dukrsted, (CB Pracsatca Gystew Por (Baablery
Pex: ocd @ Brice Oepboweu of QoS-aware م۳( ta
Obrquivus Covrcaveuts. da Proceeds of he موجه تسف
IPNP/DODDovkary O 9 vu O: )سوه( موسوم(
90005 (, Berta, Beroay, CDO2.
Lbesitdeau, O. ond Betbatr, . Providey Wich) Butcozated ocd
Geveric Orccs Por GoPware Deployed Process. ‘ba
OF the Ot; Tatercratord Workshop 7a Gobicare Process Tevkarby
(eect COD9), Webrdi, Pron, Geptewber ۳ ۵, 6006
180-8
eo داشگا صتش شرید: دتشكه مهتدسس كاييوتز
صفحه 39:
استقرار برنامه های کاربردی مبتنی بر
مولفه در محیط های توزیع شده
رئوس مطالب
2
مقدمه
ابزارهای استقرار نرم افزار در صنعت
متدهای استقرار نرم افزار در تحقیقات آکادمیک
رهیافت مبتنی بر گراف برای برنامه ریزی استقرار
گام های بعدی و زمانبندی
مراجع
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
مقدمه
3
امروزه برنامه های کاربردی پيچيده ای وجود دارند
که دارای تعداد زيادی مولفه های نرم افزاری
ناهمگن هستند.
این برنامه ها معموال در محیط های توزیع شده
استقرار می یابند.
استقرار برنامه های مبتنی بر مولفه در محیط های
توزیع شده به سادگی استقرار برنامه های منفرد بر
روی یک کامپیوتر نمی باشد.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
مقدمه(ادامه)
فرایند استقرار نرم افزار،یک توالی از فعالیت ها می
باشد که یک برنامه توسعه داده شده را در محیط هدف
قرار می دهد و آن را آماده استفاده می گرداند.
6
به دست آوردن ()Acquiring
برنامه ریزی ()Planning
نصب ( )Installation
پیکره بندی ()Configuration
اجرا ()Execution
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
ابزارهای استقرار نرم افزاردر صنعت
7
ابزارهای استقرار نرم افزاردر صنعت به سه دسته
اصلی تقسیم می شوند:
نصب کننده های منفرد ()stand-alone installers
ابزارهای استقرارمبتنی بر وب ( Web-based
)deployment tools
ابزارهای مدیریت سیستم (Systems management
)tools
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
ابزارهای استقرار نرم افزاردر
نصب کننده های منفرد
8
صنعت(ادامه)
فعالیت اصلی نصب کننده های منفرد ،نصب وحذف
سیستم های نرم افزاری منفرد از روی یک کامپیوتر
می باشد.
ابزارها دارای محدودیت هایی نیز هستند از جمله برای
نرم افزارهای توزیع شده غیرقابل استفاده می باشند و
دیگر اینکه خود کاربر باید بروز رسانی ان را به عهده
بگیرد.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
ابزارهای استقرار نرم افزاردر
نصب کننده های منفرد
نمونه هایی از نصب کننده های منفرد
Linux RPM
InstallShield
InstallAnywhere
9
Redhat Package Manager
شرکت نرم افزاری Zero G
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
صنعت(ادامه)
ابزارهای استقرار نرم افزاردر
ابزارهای استقرارمبتنی بر وب
10
صنعت(ادامه)
دراین ابزارها نیازی به نصب و به روزرسانی نرم افزار
بر روی هرمیزبان به صورت جداگانه نمی باشد ودر
عوض نرم افزار بر روی یک خدمتگزار وب استقرار می
یابد.
یکی از مهمترین محدودیت های این ابزارها این می باشد
که تنها برای نرم افزارهای منفرد قابل استفاده می باشد و
برای استقرار نرم افزارهای توزیع شده غیر قابل استفاده
می باشد.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
ابزارهای استقرار نرم افزاردر
ابزارهای استقرارمبتنی بر وب
نمونه هایی از ابزارهای استقرارمبتنی بر وب
11
صنعت(ادامه)
Java Web Start
Microsoft Windows Update
Microsoft ClickOnce
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
ابزارهای استقرار نرم افزاردر
12
صنعت(ادامه)
ابزارهای مدیریت سیستم
در این ابزارهَا ،Administratorاز یک مکان متمرکز
عملیات هایی را انجام میدهد که به صورت اتوماتیک در
تمامی سیستم ها در شبکه اعمال می شود.
Administratorاز روی کامپیوتر خود قادر به استقرار ،پیکره
بندی ،مدیریت و نگهداری تعداد زیادی از سیستمهای سخت
افزاری و نرم افزاری می باشد.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
ابزارهای استقرار نرم افزاردر
ابزارهای مدیریت سیستم
محدودیت های این ابزارها
معموال سیستمهایی سنگین و پیچیده هستند
نیاز به شبکه مطمئن دارند
نیاز به کنترل کامل Administratorدارند.
نمونه هایی از ابزارهای مدیریت سیستم
13
صنعت(ادامه)
Microsoft Systems Management Server
IBM Tivoli Management Environment
Altiris Deployment Solution
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافتهای استقرار نرم افزاردرتحقیقات
14
ایجاد چارچوب های استقرار
استفاده از عاملهای سیار در استقرار نرم افزار
استقرار بر محور کیفیت سرویس
استقرار در شبکه های محاسباتی
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافتهای استقرار نرم
15
چارچوب های استقرار
افزاردرتحقیقات(ادامه)
()Deployment Frameworks
در این رهیافتها محققین سعی می کنند که یک توالی از
فعالیتها ) )activitiesرا برای فرایند استقرار نرم افزار
بوجود آورند.
هدف ایجاد یک چارچوب عمومی برای انجام فرایند
استقرار نرم افزاز می باشد.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافتهای استقرار نرم
افزاردرتحقیقات(ادامه)
نمونه هایی ازچارچوبهای استقرار
Software Dock
OMG D&C Specification
در دانشگاه Colorado
توسط Object Management Group
ORYA
مختصر Open enviRonment to deploY Applications
توسط Lestideauو Belkhatirدر سال 2003
16
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافتهای استقرار نرم
استفاده از عاملهای سیار در استقرار نرم افزار
عاملهای سیار به دالیل زیر درفرایند استقرارمفیدند
امکان عمل در قالب های ناهمگن
در نتیجه انجام فرایند استقرار در شبکه های ناهمگن
امکان یکپارچگی با اینترنت
در نتیجه یکپارگی فرایند استقرار با اینترنت
امکان نظاره کردن روال نصب
17
افزاردرتحقیقات(ادامه)
جلوگیری از عملیات غیر قانونی و در نتیجه امنیت بیشتر
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافتهای استقرار نرم
نمونه پروژه هایی که در فرایند استقرار آنها از عامل
های سیار استفاده شده است
پروژه تحقیقاتی University of Colorado Software Dock
سیستم TACOMA
18
افزاردرتحقیقات(ادامه)
توسط .and N.Sudmann Johnson Dدر سال 2002
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافتهای استقرار نرم
استقرار بر محور کیفیت سرویس (QoS-Aware
)Deployment
19
افزاردرتحقیقات(ادامه)
در این رهیافت وضعیت پارامترهای کیفیت سرویس در فرایند
استقرار مورد توجه قرار می گیرد.
هدف انتخاب پیکره بندی استقراری می باشد که پارامتر کیفیت
سرویس مورد نظر را بهینه نماید.
از جمله پارامترهای کیفیت سرویس می توان به قابلیت اطمینان،
امنیت ،هزینه ،توازن بار ،دردسترس بودن و ...اشاره کرد.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافتهای استقرار نرم
نمونه پروژه هایی که فرایند استقرار آنها بر محور
کیفیت سرویس می باشد
محیط ، DeSiمعرفی شده توسط .etcRakicM,درسال
2004
تاکید بر روی پارامتر دردسترس بودن
پروژه دیگر در سال 2002توسط Nahrstedtو
Wichadakul
20
افزاردرتحقیقات(ادامه)
تاکید بر استقرار بر محور کیفیت سرویس در محیط فراگیر
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافتهای استقرار نرم
افزاردرتحقیقات(ادامه)
استقرار در شبکه های محاسباتی
در این رهیافتها به علت تعداد زیاد میزبانان و همچنین
ناهمگنی شبکه ،فاز استقرار باید در حد امکان بصورت
اتوماتیک باشد.
در این فرایند اتوماتیک باید محدودیت های برنامه و کاربر
ارضاء شوند.
از جمله این پروژه ها ،چارچوبی است که برای استقرار
مولفه های ،CORBAدر شبکه های محاسباتی توسط
Lacourو Priolدر سال 2004ارائه شده است.
21
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار
هدف ما :
توسعه الگوریتم های مورد نیاز برای استقراربرنامه های
کاربردی مبتنی بر مولفه در محیط های توزیع شده می
باشد به طوریکه :
برخی از پارامترهای کیفیت سرویس ماکزیمم شوند.
22
یک فرایند استقرار بر محور کیفیت سرویس می باشد.
محدودیت های تعریف شده توسط کاربر ارضاء شوند.
رهیافت وابسته به تکنولوژی های توسعه مبتنی بر مولفه
نباشد.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
تمرکز در این پروژه بر فاز برنامه ریزی می باشد.
فرایند استقرار نرم افزار
23
به دست آوردن ()Acquiring
برنامه ریزی ()Planning
نصب ( )Installation
پیکره بندی ()Configuration
اجرا ()Execution
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
فاز برنامه ریزی ()Planning
24
در این فاز با توجه به مشخصات برنامه مبتنی بر مولفه،
مشخصات محیط هدف ،و محدودیت های کاربر مشخص می
شود که کدام مولفه در کدام میزبان اجرا خواهد شد.
به برنامه ای که این فاز را انجام می دهد ،برنامه ریز گفته
می شود)Planner(.
نتایج در طرح استقرار ()Deployment Plan
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
ورودی های برنامه ریز
25
مشخصات برنامه ای که باید استقرار یابد.
مشخصات محیطی که برنامه باید در آن استقرار یابد
(محیط هدف).
مشخصات محدودیت های تعریف شده توسط کاربر و
نیازمندیها.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
مدل کردن ورودی های برنامه ریز
از گراف برای مدل کردن ورودی ها استفاده می شود.
مزایای استفاده از گراف برای مدل کردن
26
گراف یک بازنمایی بصری را ارائه می کند.
الگوریتمهای تئوری گراف می توانند به ما در طراحی
الگوریتمهای برنامه ریزی استقرار کمک نمایند.
از سمبلهای تئوری گراف می توان برای بازنمایی صوری
ورودی های برنامه ریزونیزاثبات درستی الگوریتمهای برنامه
ریزی استقرار استفاده کرد.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
مدل کردن مشخصات برنامه
27
از دید برنامه ریز ،برنامه متشکل ازتعدادی مولفه می باشد
که توسط تعدادی کانال با خصوصیات متفاوت با یکدیگر در
ارتباطند.
جزییات داخلی ونحوه عملکرد درونی مولفه ها مهم نمی
باشد.
این مولفه ها می توانند فرایند،سرویس وب، Java beans،
مولفه های CORBAو ...باشند.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
مدل کردن مشخصات برنامه
28
ابتدا برنامه مبتنی بر مولفه ،توسط Reoمدل می شود.
، Reoیک مدل هماهنگی مبتنی بر کانال می باشد که
رفتارهای مشارکتی دوسویه مولفه ها را در یک سیستم مبتنی
بر مولفه هماهنگ می سازد.
،Reoاین امکان را می دهد تا ارتباطات بین مولفه ها ،که
هر کدام دارای خصوصیات متفاوت می باشند ،به سادگی
مدل شده و بیان شوند.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه
ریزی استقرار(ادامه)
مثالی از یک برنامه مدل شده با Reo
N1
سرویس رزرو پرواز بین المللی
سرویس
رزرو
پرواز
سرویس رزرو پرواز داخلی
N2
29
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
مدل کردن مشخصات برنامه
30
برنامه مدل شده با Reoرا به راحتی می توان تبدیل به
گراف کرد
گره های گراف ،نمایانگرمولفه های برنامه می باشند.
یالهای گراف ،نمایانگر کانالهای بین مولفه ها می باشند.
هر یال ،با نام نوع کانال ارتباطی بین دومولفه برچسب می
خورد.
گراف حاصل ،گراف برنامه ( )Application Graphنامیده
می شود.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
مثالی از یک گراف برنامه
سرپب
T2
N1
T2
T4
سرپد
31
T1
N2
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
سرپ
T1
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
مدل کردن مشخصات محیط هدف
محیط هدف ،متشکل ازتعدادی میزبان با تواناییهای محاسباتی
متفاوت می باشد که توسط یک شبکه در محیط توزیع شده به
یکدیگر متصلند.
محیط هدف به صورت زیر با یک گراف مدل می شود
32
گره ها ،نمایانگرمیزبانان دردسترس در محیط توزیع شده می
باشند.
یالها ،نمایانگر انواع کانالهای مختلف می باشند که می توانند
بین دو میزبان وجود داشته باشند.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه
ریزی استقرار(ادامه)
گراف حاصل ،گراف محیط هدف (Target environment
)graphنامیده می شود.
33
مثالی از یک گراف محیط هدف
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
حال می توان برنامه ریزی استقرار را چنین تعریف نمود
ایجاد نگاشتی بین گراف برنامه و گراف محیط هدف
نگاشت باید به شکلی صورت پذیرد که پارامتر کیفیت
سرویس مورد نظر ماکزیمم شود.
همچنین محدودیت های تعریف شده توسط کاربر ارضاء
شوند.
34
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
رهیافت مبتنی بر گراف برای برنامه ریزی
استقرار(ادامه)
عباس حیدرنوری و فرهاد مودت وفرهاد ارباب ،این
مساله را برای پارامترهای کیفیت سرویس هزینه و
اطمینان حل نموده اند.
35
حل مساله برای پارامترهزینه با استفاده از الگوریتم تقریبی
مساله پوشش مجموعه مینیمم ((Minimum Set Cover
حل مساله برای پارامتراطمینان با استفاده از الگوریتم تقریبی
مساله برش چند راهه ( )Multiway cutدر تئوری گراف.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
گام های بعدی و زمانبندی
36
در گام بعدی ما می خواهیم با استفاده از رهیافت مبتنی
بر گراف مساله برنامه ریزی را برای یکی دیگر از
پارامترهای کیفیت سرویس از جمله کارایی،امنیت،
توازن بار و ...حل نماییم.
تست الگوریتم ارائه شده مرحله بعدی می باشد.
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
گام های بعدی و
زمانبندی(ادامه)
فعالیت
حل مساله برنامه ریزی برای یک پارامتر کیفیت
سرویس حل نشده با رهیافت مبتنی بر گراف
37
ماه
الی 4 5
تست الگوریتم ارائه شده
2
تدوین پایان نامه
2
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر
مراجع
Arbab, F. Reo: A Channel-based Coordination Model for Component
Composition. Mathematical Structures in Computer Science, 14, 3
(June 2004),pp. 329-366.
Heydarnoori, A. and Mavaddat, F. and Arbab, F. Deploying Loosely
Coupled, Component-based Applications into Distributed Environments.
Proceedings of the 13th Annual IEEE International Symposium and
Workshop on Engineering of Computer Based Systems
(ECBS’06)
Heydarnoori, A. and Mavaddat, F. Reliable Deployment of
Component-based Applications into Distributed Environments.
Proceedings of the Third International Conference on Information
Technology: New Generations (ITNG'06)
Lacour, S., Prez, C., and Priol, T. A Software Architecture for
Automatic Deployment of CORBA Components Using Grid
Technologies. In Proceedings of the First Francophone Conference
On Software Deployment and (Re Configuration (DECOR 2004),
Grenoble, France, October 2004, pp.187-192.
دانشکده مهندسی کامپیوتر،دانشگاه صنعتی شریف
38
مراجع
Lacour, S., Prez, C., and Priol, T. A Software Architecture for
Automatic Deployment of CORBA Components Using Grid
Technologies. In Proceedings of the First Francophone Conference
On Software Deployment and (Re Configuration (DECOR 2004),
Grenoble, France, October 2004, pp.187-192.
Sudmann, N.P. and Johansen, D. Software Deployment Using Mobile
Agents. In Proceedings of First International IFIP/ACM Working
Conference on Component Deployment (CD 2002), Berlin,
Germany, June 20-21,2002.
Object Management Group, Deployment and Configuration of
Component-based Distributed Applications specification, http://www.o
mg.org/docs/ptc/04-05-15.pdf.
Carzaniga, A., Fuggetta, A., Hall, R. S., Hoek, A. V. D.,
Heimbigner,D., Wolf, A. L. A Characterization Framework for
Software Deployment Technologies. Technical Report CUCS-857-98, Dept. of Computer Science,University of Colorado,
April 1998
دانشکده مهندسی کامپیوتر،دانشگاه صنعتی شریف
39
مراجع
Mikic-Rakic, M., Malek, S., Beckman, N. and Medvidovic, N. A
Tailorable. Environment for Assessing the Quality of Deployment
Architectures in Highly Distributed Settings. In Proceedings of the
Second International Working Conference on Component Deployment
(CD 2004), Edinburgh,UK, May 20-21, 2004.
Wichadakul, D., and Nahrstedt, K. A Translation System for Enabling
Flexible and Eficient Deplyoment of QoS-aware Applications in
Ubiquitous Environments. In Proceedings of the First International
IFIP/ACMWorking Conference on Component Deployment (CD
2002), Berlin, Germany, 2002.
Lestideau, V. and Belkhatir, N. Providing Highly Automated and
Generic Means for Software Deployment Process. In Proceedings
of the 9th International Workshop on Software Process Technology
(EWSPT 2003), Helsinki,Finland, September 1-2, 2003, pp.
128-142.
دانشکده مهندسی کامپیوتر،دانشگاه صنعتی شریف
40
؟
41
دانشگاه صنعتی شریف ،دانشکده مهندسی کامپیوتر