مهمترین و اصلی ترین نقش مهندسی نیازمندی در معماری سرویس گرا

مهمترین و اصلی ترین نقش مهندسی نیازمندی در معماری سرویس گرا را چگونه ارزیابی می کنید

می دانیم انتخاب معماری مناسب ، اولین گام در مسیر طراحی تولید موفق نرم افزار می باشد . معماری سرویس گرا    Services Oriented Architect ( SOA ) یکی از قالب های نوین معماری تولید نرم افزار می باشد . با پدید آمدن رایانش ابری این معماری به درجه بالایی از محبوبیت و مقبولیت رسیده است . در این معماری 2 گروه اصلی ( مصرف کننده سرویس و فراهم کنندگان سرویس ) مطرح هستند و مصرف کننده می بایست نرم افزار خود را براساس سرویس های « فراهم کننده  » توسعه دهد . نکته هم اینست که «   فراهم کننده  »  می بایست سرویس ها را با دید باز و کلان طراحی و تولید نماید تا ضمن داشتن قابلیت استفاده مجدد سرعت تولید را افزایش دهد و هزینه تولید را کاهش دهد. پس آنچه حیاتی و ضروری است همانا شناخت دقیق و درست نیازمندی « مصرف کننده » یا مهندسی نیازمندی در این حوزه است .  نیاز مندی یک سیستم ، شرح و توصیف خدماتی است که انتظار می رود آن سیستم ارائه دهد و عملا بازتاب اهداف سازمانی مشتریان است که می بایست توسط سیستم برآورده شود. نیازمندیها را می بایست به 2 دسته نیازمندی کاربر و نیازمندی سیستم تقسیم نمود . نیازمندی سیستم به 2 دسته عملیاتی و غیر عملیاتی تقسیم می شود . نیاز مندی کاربر نقطه آغاز طراحی سیستم می باشد . اجزای مهندسی نیازمندی به شیوه کلاسیک 4 فاز دارد : امکان سنجی ، استخراج ، مشخصه سازی و اعتبار سنجی  . ایده اصلی   SOA بر گرفته از OOA  و میتنی بر اجزاست . در این معماری توسعه دهندگان سرویس سه دسته مستقل ولی مرتبط با هم تقسیم می شود . تولید کننده سرویس ، دلال سرویس ، مصرف کننده سرویس .  مصرف کننده سرویس می بایست براساس نیاز مشتری خود نسبت به انتخاب سرویس و توسعه برنامه کاربردی اقذام نماید. سپس شناخت تحقیق نیازمندی مشتری نهایی توسط مصرف کننده سرویس منجر به تولید سرویس های مستقل با قابلیت استفاده مجدد توسط تولید کننده سرویس می شود . مهندسی نیازمندی در SOA  در واقع واسطی بین مهندسی سرویس ها و مهندسی برنامه کاربردی است . مهندسی نیازمنذی سرویس گرا با مهندسی نیازمندی کلاسیک تفاوت دارد و بجای مشخص کردن اشیاء و کلاسها به شناسایی سرویس ها و جریان های کاری می پردازد و برنامه کاربردی را طبق این سرویس ها  مدل می نماید.  آنچه منجر به افزایش نقش مهندسی نیازمندی ها در SOA می شود کنترل و مدیریت تغییرات در پروسه های کسب و کار با حداقل هزینه است . چنانچه سرویس ها طبق مهندسی نیازمندی ها و به صورت ایده آل طراحی شوند ، با توجه به اینکه ساختار برنامه کاربردی مبتنی بر سرویس است تغییرات اندک در سرویس های مرتبط با پروسه کسب و کار موجب اعمال تغییر در سیستم نهایی می شود . راهکار پیشنهاده به منظور بهبود تاثیر مهندسی نیازمندی در SOA  به شرح ذیل است .

1-     مشخص کردن هدف

2-     تعیین دقیق نیازمندی مشتری

3-     مشخص کردن پروسه های کسب و کار

4-     مشخص کردن دامنه پروسه کسب و کار

5-     تقسیم کردن دامنه ها به زیر سیستم مختلف

6-      مشخص کردن زیرسیستم مناسب برای سرویس

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

 

http://www.civilica.com/Paper-CBCONF01-CBCONF01_0925.html

 

نویسنده : وب مک
تاریخ : 1396/03/17
0.0
تعداد بازدید : 112
تعداد کامنت : 0