پایان نامه توسعه نرم افزار جنبه گرا

پایان نامه توسعه نرم افزار جنبه گرا پایان نامه توسعه نرم افزار جنبه گرا

دسته : سمینار کامپیوتر

فرمت فایل : word

حجم فایل : 2062 KB

تعداد صفحات : 139

بازدیدها : 625

برچسبها : دانلود پایان نامه پژوهش پروژه

مبلغ : 9000 تومان

خرید این فایل

پایان نامه توسعه نرم افزار جنبه گرا

پایان نامه توسعه نرم افزار جنبه گرا

چکیده

      جنبه گرائی به عنوان یك روش میان رشته ای برای توسعه سیستم ها از سال ۱۹۶۱ معرفی شد و توسط افراد و دانشمندان مختلف توسعه یافت. با توجه به اهمیت و ارزش پیمانه بندی در توسعه نرم افزار و قابلیتی كه جنب هگرائی در تامین پیمانه بندی داشت جنبه گرائی در زمینه مهندسی نرم افزار، منجر به تولید زبان "برنامه نویسی جنبه گرا" در سال ۱۹۹۷ و "توسعه نرم افزاری جنبه گرا" در حال حاضر گردید. "زبان برنامه نویسی جنبه گرا" شامل ابزارها و تكنیك هایی است كه از پیمان هبندی دغدغه های مداخله ای Crosscutting Concern (CC) در سطح كد پشتیبانی می كند و "توسعه نرم افزاری جنبه گرا" نیز از پیمانه بندی دغدغه های مداخله ای دركلیه فازهای توسعه سیستم نر مافزاری حمایت می كند.

مقدمه    

با وجود انواع متدولوژیها و تكنیك ها در زمینه مهندسی نرم افزار، باز هم نیازمند روش ها، سبك ها، پارادایم ها و زبان های پیاده سازی به همراه محیط های توسعه هستیم تا بتوان مشكلات پیش روی این حوزه

را سهل تر كرده یا آنها را از بین برد.        

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

دغدغه هسته٢ و منطق حرفه٣        

در هر برنام های یك سری از دغدغه ها وجود دارد كه جز دغدغ ههای اصلی برنامه قرار  میگیرند و برای عملكرد درست و صحیح سیستم لازم و ضروری هستند. هر یك از این دغدغ هها، یك "دغدغه هسته"

نامیده می شود و مجموعه دغدغه های هسته "منطق حرفه" را تشكیل  میدهند در حالی كه دیگر جنبه های برنامه(دغدغه ها) برای اجرای مناسب برنامه مورد نیاز بوده و جزئی از "منطق حرفه" واقعی برنامه نیستند.

به عنوان مثال اگر در حال نوشتن یك برنامه كاربردی برای مدیریت ركوردهای داروئی باشید سازماندهی و شاخص گذاری چنین ركوردهایی یك "دغدغه هسته" محسوب می شود در حالی كه ثبت یك تاریخچه از تغییرات(واقعه نگاری٤) در ركوردهای پایگاه داده، یا یك سیستم تصدیق یك دغدغه عادی به شمار می رود كه آن را Crosscutting concern  مینامند (چون چندین بخش از سیستم را درگیر كار خود می كند).

فهرست مطالب 

عنوان ............................................................................................................................................... صفحه 

چكیده .....................................................................................................................................................۱ 

1-    فصل اول . مقدمه .............................................................................................................................٢

1-1  - مقدمه ..................................................................................................................................٢

1-2  - تعریف مسئله ......................................................................................................................٣

1-3  - مشكلات روش های مرسوم .................................................................................................٤

1-4 - حركت به سمت راه حل .......................................................................................................٤

1-5 - نتایج تحقیقاتی مورد انتظار ..................................................................................................٥

1-6  -  ساختار سمینار ....................................................................................................................٥

2-  فصل دوم . تعاریف و مفاهیم ............................................................................................................٨

2-1  حوزه مسئله ..........................................................................................................................٨

2-2 نیازمندی ...............................................................................................................................٨

٢-٢ -١ - نیازمندیهای وظیفه مندی .........................................................................................٩ 

٢-٢ -٢ - نیازمندیهای غیروظیفه مندی ....................................................................................٩ 

2-2 -٣ - خصوصیات نیازمندیهای خوب ..............................................................................٩

2-3 دغدغه ..................................................................................................................................١١

2-3 -١ - تعریف دغدغه .......................................................................................................١٢ 

2-3 -٢ - دغدغه هسته و منطق حرفه ...................................................................................۱۲ 

2-4  دغدغه مداخله ای .................................................................................................................١٣

2-4  -١ - تقسیم بندی دغدغه های مداخله ای .........................................................................۱۴

2-5  جداسازی دغدغه ها ..............................................................................................................١٤

2-6 خاصیت پیمانه ای ..................................................................................................................١٥

2-7  مدل ......................................................................................................................................١٦

2-8  درهم پیچیدگی .....................................................................................................................١٧

2-9 پراكندگی .............................................................................................................................١٨

2-10  مورد كاربری.........................................................................................................................١٨

2-11  برنامه نویسی جنبه گرا ...........................................................................................................١٩

2-12  توسعه نرم افزاری جنبه گرا .....................................................................................................٢٠

2-13  توسعه نرم افزاری جنبه گرا با موارد كاربری ..........................................................................٢٠

3-  فصل سوم . برنامه نویسی جنبه گرا .....................................................................................................٢٣

3-1 - برنامه نویسی جنبه گرا چیست؟ .............................................................................................٢٣

3-2 - تاریخچه ..............................................................................................................................٢٤

3-3 - مزایا .....................................................................................................................................٢٤

3-4 - معایب ..................................................................................................................................٢٥

3-5 - مفاهیم پایه ...........................................................................................................................٢٦

٣-٥ -١ - جنبه ......................................................................................................................٢٦ 

3-5-٢ - نقطه اتصال یا  Joinpoint ....................................................................................۲۸ 

  ۲۹.............................................................................................................. Pointcut - ۳- ۵-٣

  ۲۹...................................................................................................... Advice Code - ۴- ۵-۳

3-6 - محیط (زبان)های برنامه نویسی .............................................................................................٣٠

3-6 ۳۱.............................................................................................................. AspectJ - ١-

  ۳۱............................................................................... Java Aspect Components - ۲- ۶-۳

  ۳۲........................................................................................................ JBoss AOP - ۳- ۶-۳

  ۳۲....................................................................................................... Spring AOP - ۴- ۶-۳

3-7  - مطالعه موردی ......................................................................................................................٣٢

٣-٧ -١ - سیستم مدیریت هتل .............................................................................................٣٣ 

٣-٧ -٢ - مشكلات سیستم مدیریت هتل .............................................................................٣٤ 

3-7  -٣ - نگرش جنبه گرا به سیستم مدیریت هتل ................................................................٣٧ 

3-8 - نتیجه گیری ...........................................................................................................................٤٢ 

4-    فصل چهارم . توسعه نرم افزاری جنبه گرا ..........................................................................................٤٤

4-1  - توسعه نرم افزاری جنبه گرا چیست؟ .....................................................................................٤٤

4-2  - مهندسی نیازمندیهای جنبه گرا ..............................................................................................٤٥

4-3 - معماری سیستم جنبه گرا ......................................................................................................٤٦

4-4 - طراحی و مدلسازی جنبه گرا ................................................................................................٤٧

4-5 - برنامه نویسی جنبه گرا ...........................................................................................................٤٨

4-6 - حمایت متد رسمی برای جنبه گرائی ....................................................................................٤٨

4-7  - آزمایش برنامه های جنبه گرا .................................................................................................٤٩

5-  فصل پنجم . توسعه نرم افزاری جنبه گرا با موارد كاربری ...................................................................٥١

5-1 - توسعه نرم افزاری جنبه گرا با موارد كاربری چیست؟ ...........................................................٥١

5-2  - جنبه ها و موارد كاربری .......................................................................................................٥٢

5-2 -١ - توسعه مبتنی بر مورد كاربری ...............................................................................٥٣

5-3  - ساخت سیستم با استفاده از "برش مورد كاربری" ...............................................................٥٥

5-3  -١ - مجزا نگاه داشتن "مورد كاربری همتا" .................................................................٥٦ 

٥-٣ -٢ - مجزا نگاه داشتن "مورد كاربری گسترش" ...........................................................٥٨ 

5-3  -٣ - توسعه موازی سیستم با ماژول مورد كاربری .......................................................٥٩

5-4  - مجزا نگاه داشتن تحقق موارد كاربری همتا با جنبه ها .........................................................٦٠

5-4 -١ - تحقق بخشیدن به موارد كاربری همتا ..................................................................٦٠ 

٥-٤ -٢ - مجزا نگاه داشتن مشخصات موارد كاربری ..........................................................٦٥ 

5-4 -٣ - برخورد با روی هم افتادگی .................................................................................٧١

5-5 - مجزا نگاه داشتن گسترشها با Pointcuts ............................................................................٧٧

5-5 -١ - تحقق موارد كاربری گسترش ..............................................................................٧٨ 

5-5 -٢ - حفظ پیمانه بندی تحقق مورد كاری گسترش .......................................................٧٩

5-6 - نتیجه گیری ..........................................................................................................................٨٤

٦ - فصل ششم. نتیجه گیری ....................................................................................................................٨٦

كارهای آتی .............................................................................................................................................۸۷

مراجع ......................................................................................................................................................۸۹  

خرید و دانلود آنی فایل

به اشتراک بگذارید

Alternate Text

آیا سوال یا مشکلی دارید؟

از طریق این فرم با ما در تماس باشید