پایان نامه یک روش برای مهندسی نیازمندی های جنب هگرا An Approach for Aspect-Oriented Requirements Engineering

تعداد صفحات: 199 فرمت فایل: word کد فایل: 10001929
سال: 1389 مقطع: مشخص نشده دسته بندی: پایان نامه مهندسی کامپیوتر
قیمت قدیم:۲۶,۵۰۰ تومان
قیمت: ۲۴,۴۰۰ تومان
دانلود فایل
  • خلاصه
  • فهرست و منابع
  • خلاصه پایان نامه یک روش برای مهندسی نیازمندی های جنب هگرا An Approach for Aspect-Oriented Requirements Engineering

    پایان نامه کارشناسی ارشد رشته مهندسی کامپیوتر- نرم افزار(M.Sc)  

    چکیده

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

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

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

    کلمات کلیدی 

    شناسائی جنبه ها، مهندسی نیازمندی های جنبه گرا، شبکه پتری، شبکه دغدغه، شبکه نیازمندی، دغدغه های مداخله ای، برنامه نویسی جنب هگرا، جداسازی دغدغه ها 

                                                                 

    1 Trade-off

     

    فصل اول 

    معرفی 

    فصل اول. معرفی 

    در این فصل ابتدا یک مقدمه پیرامون موضوع این تحقیق ارائه می شود سپس بخش تعریف مسأله را خواهیم داشت که در آن بیان می شود چه عاملی حاکی از ضرورت این کار تحقیقاتی است یا به بیان بهتر، در این تحقیق چه کاری باید صورت بپذیرد. با مشخص شدن صورت مسأله، سابقه کار تحقیقاتی پیرامون موضوع تحقیق ذکر می شود و عنوان می گردد که چه کارهایی از زمان پیدایش مفهوم مهندسی نیازمندیهای جنبه گرا صورت پذیرفته است. در بخش نتایج تحقیقاتی مورد انتظار، آنچه که امید می رود بعد از این تحقیق به آنها دست پیدا شود ذکر شده و نهایتا نیز ساختار این مستند تحقیقاتی (پایان نامه) ذکر می شود.   

    ۱-۱- مقدمه 

    از سال ١٩٦٨ (کنفرانس  NATO) که توسعه سیستمهای نرم افزار به عنوان یک مشکل مهندسی مطرح شد کارهای فراوانی در جهت حل مشکلات پیش روی آن صورت پذیرفته و هم اکنون نیز در حال انجام است. این فعالیت ها بیشتر در جهت جداسازی بهتر مسأله (سیستم نرم افزاری) و پیمانه بندی بخشهای مختلف آن درون ماژول منسجم و مستقل هستند به طوری که این ماژولها کمتر هم پوشانی را با یکدیگر داشته باشند. این فعالیت های منسجم و طولانی مدت منجر به پیدایش شیو های برای توسعه سیستمهای نرم افزار شد که به آن شیءگرائی گفته می شود. این شیوه با در نظر گرفتن بخشهای مختلف یک سیستم نرم افزاری در قالب یک شیء توانست به اهداف مربوطه که همان جداسازی بهتر سیستم های نرم افزاری است دست پیدا کند. در این روش، دغدغه های١ سیستم (نیازمندیها، خواسته ها) در قالب شیء تعریف  میشوند و از طریق واس طهای خوش تعریف با دیگر اشیاء ارتباط برقرار می کنند و نهایتا مجموع های از اشیاء که به صورت ساخت یافته در کنار هم قرار گرفته اند سیستم نهایی را پیاد هسازی می کنند. 

    با به کارگیری توسعه نر مافزاری شیءگرا در کارهای تحقیقاتی و کاربردی مشخص شد که این شیوه در پیمانه بندی بعضی از دغدغه ها ناتوان است. این دغدغه ها، دغدغه های مداخله ای٢ نامیده می شوند. دغدغه های مداخله ای دغدغه هایی هستند که نمی توانند در داخل یک ماژول (شیء) قرار بگیرند بنابراین مشکلاتی را برای طراحی، مدلسازی، پیاده سازی و نگهداری سیستم فراهم می کنند (مشکل درهم تنیدگی٣ و پراکندگی٤). با گسترش تحقیقات در جهت حل این مشکل در شیءگرائی و همچنین تکامل سایر شیوه های مناسب برای توسعه سیستمهای نرم افزاری، در سال ۱۹۹۷ زبان برنامه نویسی تحت عنوان برنام هنویسی جنبه گرا معرفی شد. زبان برنامه نویسی جنب هگرا که نتیجه کار تحقیقاتی آقای کی کزالز٥ و دوستانش در موسسه تحقیقاتی PARC٦ بود بود مفهومی به نام جنبه٧ را برای پیمانه بندی دغدغه های مداخله ای معرفی کرد. این مفهوم می توانست دغدغ ههای مداخله ای را در سطح پیاده سازی به بهترین شکل پیمانه بندی کند (از منظر پیاده سازی، جنبه ساختار برنامه نویسی است که دغدغه های مداخله ای را پیمانه بندی کرده و از بروز مشکلات درهم تنیدگی و پراکندگی کد جلوگیری می کند).                                                            

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

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

    ۱-۲- تعریف مسأله 

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

    جنبه در فاز نیازمندی ها دغدغه ای است که فرآورده های نیازمندیهای دیگر را میان بر١ می کند. شناسائی و مدیریت جنبه های اولیه٢ به بهبود پیمانه بندی در سطح نیازمندیها کمک می کند و باعث شناسائی زود هنگام تداخل های ما بین دغدغ هها می شود. شناخت جنب ههای نیازمندی به معمار کمک  میکند که یک سیستم خوب طراحی کند. به عبارت دیگر شناسائی و مدیریت جنبه های اولیه باعث [۲]: 

    افزایش سازگاری نیازمندیها با طراحی معماری و مخصوصا با پیاده سازی  میشود.

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

    کمک کردن به تضمین اینکه دغدغه های مداخله ای موجود و مشهود در فضای مسأله یا در فضای راه حل به عنوان یک جنبه در فاز پیاد هسازی در نظر گرفته شد هاند.

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

    این اهداف عبارتند از [۳] : 

    ۱. فراهم کردن پشتیبانی بهبود یافته برای جداسازی خصوصیات وظیف همندی و غیروظیف همندی مداخله ای در روند مهندسی نیازمندیها و لذا ارائه قابلیت بهتر برای شناسائی و مدیریت تداخل های ناشی از نمایش های درهم تنیده.

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

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

    ۱-۳- سابقه کار تحقیقاتی 

    بعد از معرفی شدن مهندسی نیازمندیهای جنبه گرا در سال ۱۹۹۹ در مقاله آقای گراندی٢ [۴]، کارهای زیادی در این حوزه انجام شده است که نقطه شروع آنها مقاله ای بود که در کنفرانس مهندسی نیازمندیهای سال ۲۰۰۲ ارائه شد [۳]. این مقاله یک مدل عمومی برای مهندسی نیازمندیهای جنب هگرا پیشنهاد داد و باعث پدیدار شدن یک دید اولیه برای مهندسی نیازمندیهای جنب هگرا شد. با مشخص شدن اهداف و مزایای مهندسی نیازمندیهای جنبه گرا کارهای مختلفی در این زمینه صورت پذیرفت که مهمترین آنها به شرح زیر هستند:                                                              

    روش ١cosmos، که در آن یک طرح مدلسازی چند منظوره برای دغدغه ها ارائه شده است [۵]. در اینروش یک تقسی مبندی از انواع دغدغ هها صورت پذیرفته است که جنب هها در یکی از این دست هبندی ها قرار داده شد هاند.

    روش ٢ARCaDe، که در آن نویسندگان، مدل مطرح شده در [۳] را کاملتر کرده و روشهایی برای مشخص کردن شیوه ترکیب و حل تداخل های ما بین جنبه ها پیشنهاد داده اند. همچنین همراه این روش ابزاری نیز بدین منظور طراحی و پیاده سازی شده است.

    روش Theme/Doc، که در آن از Theme و تحلیل لغوی برای مشخص کردن جنبه ها استفاده شده است [۶]. این روش پیشنهادی علاوه بر ابزار، دارای نماد ها و مفاهیمی است که به شناسائی جنب ههای پنهان در سیستم کمک می کند. روش Theme همچنین شیو های برای تحلیل و طراحی ارائه می کند.  

    روش جداسازی چند بعدی٣ [٧]، که در آن روش چند بعدی برای مشخص کردن دغدغه ها و جنب هها پیشنهاد داده شده است. این روش علاوه بر پوشش اهداف مهندسی نیازمندیهای جنبه گرا، مکانیزمی برای مشخص کردن نقاط مصالحه برای فاز بعدی (معماری) ارائه کرده است.

    روش توسعه نر مافزاری جنبه گرا با موارد کاربری [۸] که در آن از قابل یتهای موارد کاربری برای مشخص کردن جنبه ها استفاده شده است. در این روش، دو مفهوم تحت عنوان برش موارد کاربری٤ و ماژول موارد کاربری٥ معرفی شده اند که کلیه فرآین دهای مهندسی نیازمندیها و معماری جنبه گرا پیرامون این دو مفهوم حرکت می کنند.

    علاوه بر روشهای ذکر شده که از اهمیت بیشتری برخوردار هستند روشهای دیگری در [۹، ۲، ۱۰، ۱۱، ۱۲،

    ۱۳، ۱۴، ۱۵، ۱۶، ۱۷، ۱۸] برای مهندسی نیازمندی های جنبه گرا ارائه شده اند. 

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

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

    ۱-۴- نتایج تحقیقاتی مورد انتظار

    از آنجائی که این تحقیق به نوعی یک کار جدید در زمینه شناسائی جنبه ها با استفاده از یک روش رسمی است می تواند دست یافته ها و نتایج تحقیقاتی متعددی را به همراه بیاورد. با این حال نتیجه اصلی این تحقیق فراهم کردن یک روش رسمی مبتنی بر شبکه پتری برای شناسائی جنبه ها است. 

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

    ارائه کردن روشی برای شناسائی جنبه ها آن هم به صورت رسمی با استفاده از شبکه های پتری

    دست یابی به یک تعریف جامع از دغدغه

    دست یابی به یک تعریف رسمی مبتنی بر شبکه پتری برای دغدغه و نیازمندی

    افزایش میزان اطمینان به جنبه های شناسائی شده

    با وجود یافته های مطرح شده، در این تحقیق به موضوعاتی چون نحوه ترکیب جنبه های شناسائی شده در سیستم نهائی، حل تداخل های حاصل از ترکیب جنبه ها و سایر اهداف جزئی که اخیرا (در سال ۲۰۰۹) مطرح شده اند پرداخته نشده است. زیرا هدف اصلی این تحقیق شناسائی دغدغه ها است ولی با توجه به قابلیت شبکه های پتری و همچنین نحوه چیدمان عناصر پای های برای روش پیشنهادی می توان به راحتی موضوعاتی چون ترکیب جنب هها را نیز در روش پیشنهادی اعمال کرد. ولی با کلیه توضیحات ذکر شده راجع به روش                                                        

    1 First-class

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

    ۱-۵- ساختار پایان نامه 

    این تحقیق شامل هفت فصل است که ترتیب فصول و موضوعات مطرح شده به صورت کلی در زیر بیان شده است: 

    فصل اول: معرفی (همین فصل).

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

    فصل دوم: ادبیات تحقیق.

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

    فصل سوم: جایگاه مهندسی نیازمندیها.

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

    فصل چهارم: بررسی روشهای مهندسی نیازمندیهای جنبه گرا.

    در این فصل به بررسی روشهای موجود در زمینه مهندسی نیازمندیهای جنبه گرا پرداخته شده و نهایتا یک مقایسه اجمالی بر روی این روشها ارائه می شود.

    فصل پنجم: روش پیشنهادی برای شناسائی جنبه ها.

    در این فصل روش پیشنهادی برای شناسائی جنب هها به صورت کامل و جامع تشریح  میشود.  

    فصل ششم: مطالعه موردی.

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

    فصل هفتم: نتیجه گیری.

    در این فصل ابتدا یک خلا صهای از کل فص لهای این تحقیق ارائه  میشود. سپس محدودی تهای روش پیشنهادی و فرصت های تحقیقاتی آتی که ناشی از این کار تحقیقاتی است بیان  میشود.  

    Abstract

    Aspect-Oriented Programming (AOP) improves modularity of concerns, particular crosscutting concerns in implementation level. However modularity of concerns in implementation level does not emerge important performance, because this operation (modularity) must be done in early phase of software system development. This phase of system development is known AspectOriented Requirements Engineering (AORE). The goal of AORE is separation of concerns as well as possible and identification of aspects from documentation of system. Therefore, we must identify aspects in the first stage of developing. If we do not identify aspects in the early phases of software development (requirements engineering), we can only use the conception of aspectorientation in the code level.

    Until now, various and informal methods are proposed for identification of aspects in AORE. Each method presented their means, structures and tools for supporting aspects identification. Moreover these methods have solved the problem of aspects identification and also have achieved the goals such as aspects composition, conflict resolution and trade-off points for aspect-oriented architecture. In context of aspects formalization, some methods are proposed in order to utilize the concept of aspects in Petri Nets for security problems and aspects conflicts in the same join point. However, not any method presents a formal method for identification of aspects.

    In order to formalization, a method based on Petri Nets for identification of aspects is proposed in this research. The proposed method starts with two definitions is called requirement nets and concern nets, finally aspects are identified by executing the final model of system. This method only identifies aspects but its definitions and structures may support other characteristics of AORE that this requires more researches.

    Keywords

    Identification of aspects, Aspect-Oriented Requirements Engineering (AORE), Petri Nets, concern nets, requirement nets, crosscutting concerns, Aspect-Oriented Programming (AOP), separation of concerns.

  • فهرست و منابع پایان نامه یک روش برای مهندسی نیازمندی های جنب هگرا An Approach for Aspect-Oriented Requirements Engineering

    فهرست:

    چکیده  ..................................................................................................................................................... ١

    کلمات کلیدی  .........................................................................................................................................

    فصل اول. معرفی ....................................................................................................................................١-١ - مقدمه.......................................................................................................................................................  ٣ 

    - تعریف مسأله  ...........................................................................................................................................  ٤ 

    - سابقه کار تحقیقاتی  ..................................................................................................................................  ٥ 

    - نتایج تحقیقاتی مورد انتظار  ......................................................................................................................  ٧ 

    - ساختار پایان نامه  .....................................................................................................................................  ٨ 

    فصل دوم. ادبیات تحقیق  .......................................................................................................................  ١٠  ٢-١ - نیازمندیها  ..............................................................................................................................................  ١١ 

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

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

    ٢-١ -٣ - خصوصیت یک فهرست نیازمندی خوب  ...................................................................................  ١٢ 

    ٢-٢ - دغدغه  ..................................................................................................................................................  ١٢ 

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

    ٢-٢ -٢ - دغدغه هسته و منطق حرفه  .........................................................................................................  ١٤ 

    ٢-٣ - دغدغه مداخله ای  ..................................................................................................................................  ١٥ 

    ٢-٣ -١ - تقسیم بندی دغدغ ههای مداخله ای  .............................................................................................  ١٥ 

    ٢-٤ - جداسازی دغدغه ها  ..............................................................................................................................  ١٦ 

    ٢-٥ - خاصیت پیمانه ای  ..................................................................................................................................  ١٧ 

    ج

    ٢-٦ - موارد کاربری  ........................................................................................................................................  ١٧

    ٢-٧ - دیدگاه ها  ...............................................................................................................................................  ١٨

    ٢-٨ - قابلیت نگهداری  ...................................................................................................................................  ١٩

    ٢-٩ - قابلیت ردیابی  .......................................................................................................................................  ١٩

    ٢-١٠- مشکل درهم تنیدگی  ..........................................................................................................................  ٢٠ 

    ٢-١١- مشکل پراکندگی  ................................................................................................................................  ٢٠ 

    ٢-١٢- برنامه نویسی جنبه گرا  ..........................................................................................................................  ٢١ 

    ٢-١٢-١ - مفاهیم پایه و تعاریف  ...............................................................................................................  ٢١ 

    22   ۲-۱۲- ۱- ۱-  جنبه  ..........................................................................................................

    23   ۲-۱۲- ۱- ۲-  نقطه اتصال  ...............................................................................................

    24   ۲-۱۲- ۱- ۳ محل برش  ...................................................................................................

    25   ۲-۱۲- ۱- ۴-  کد توصیه  ..................................................................................................

    ٢-١٢-٢ - مزایای برنامهنویسی جنبهگرا  .....................................................................................................  ٢٦ 

    ٢-١٢-٣ - معایب برنامهنویسی جنبهگرا  .....................................................................................................  ٢٦ 

    ٢-١٣- توسعه نرم افزاری جنبه گرا...................................................................................................................  ٢٧ 

    مهندسی نیازمندی جنبه گرا  .......................................................................................................  ٢٨ 

    معماری سیستم جنبه گرا  ...........................................................................................................  ٢٨ 

    طراحی و مدلسازی جنب هگرا  .....................................................................................................  ٢٨ 

    برنامه نویسی جنب هگرا  ................................................................................................................  ٢٩ 

    آزمایش برنامه های جنب هگرا  .......................................................................................................  ٢٩ 

    ٢-١٤- شبکه های پتری  ..................................................................................................................................  ٢٩ 

    تعریف شبکه های پتری  .............................................................................................................  ٢٩ 

    شبکه پتری علامت گذاری شده  ................................................................................................  ٣١

    ح

    تعریف رسمی شبکه پتری  ........................................................................................................  ٣١

    شبکه های پتری رنگی  ...............................................................................................................  ٣٢

    شبیه سازی و تحلیل شبک ههای پتری  .........................................................................................  ٣٣

    جنبهگرائی و شبکهپتری  ............................................................................................................  ٣٤

    ٢-١٥- خلاصه  ...............................................................................................................................................  ٣٤ 

    فصل سوم. جایگاه مهندسی نیازمندیها  ...................................................................................................  ٣٥  ٣-١ - مقدمه....................................................................................................................................................  ٣٦ 

    ٣-٢ - فرآیند مهندسی نیازمندیها  .....................................................................................................................  ٣٦ 

    ٣-٣ - استخراج نیازمندیها  ...............................................................................................................................  ٣٩ 

    ٣-٣ -١ - مصاحبه ها  ....................................................................................................................................  ٣٩ 

    ٣-٣ -٢ - موارد کاربری و سناریو  ...............................................................................................................  ٤٠ 

    ٣-٣ -٣ - طوفان ذهنی  ................................................................................................................................  ٤٠ 

    ٣-٣ -٤ - مشاهده و تحلیل معاشرتی  ..........................................................................................................  ٤٠ 

    ٣-٣ -٥ - گروههای متمرکز  .........................................................................................................................  ٤١ 

    ٣-٣ -٦ - متدولوژی سیستم نرم  ..................................................................................................................  ٤٢ 

    ٣-٣ -٧ - استفاده مجدد نیازمندیها  ..............................................................................................................  ٤٣ 

    ٣-٣ -٨ - نمونه سازی یا نمونه اولیه  ............................................................................................................  ٤٤ 

    ٣-٤ - مذاکره و تحلیل نیازمندیها  ....................................................................................................................  ٤٤ 

    ٣-٤ -١ - توسعه کاربردی مشترک (JAD)  .................................................................................................  ٤٥ 

    ٣-٤ -٢ - اولویت دهی نیازمندیها  .................................................................................................................  ٤٥ 

    ٣-٤ -٣ - مدلسازی  .....................................................................................................................................  ٤٦ 

    46   ۳-۴-۳-۱- مدلسازی جریان داده :  .................................................................................

    47   ۳-۴-۳-۲- مدل داده مفهومی  ........................................................................................

    خ

    ۳-۴-۳-۳- روشهای شیءگرا.........................................................................................  ٤٧

    ٣-٤ -٤ - استقرار تابع کیفیت (QFD)  ........................................................................................................  ٤٨

    ٣-٥ - مستند(سازی) نیازمندیها  .......................................................................................................................  ٤٩

    ٣-٦ - اعتبارسنجی نیازمندیها  ..........................................................................................................................  ٥٠

    ٣-٦ -١ - مرور نیازمندیها  ............................................................................................................................  ٥٠ 

    ٣-٦ -٢ - آزمایش نیازمندیها  .......................................................................................................................  ٥٠ 

    ٣-٦ -٣ - نمونه سازی  ..................................................................................................................................  ٥١ 

    ٣-٧ - مدیریت نیازمندیها  ................................................................................................................................  ٥١ 

    ٣-٨ - خلاصه و نتیجهگیری  ............................................................................................................................  ٥٣ 

    فصل چهارم. بررسی روشهای مهندسی نیازمندیهای جنب هگرا  ..................................................................  ٥٤ 

    ٤-١ - مقدمه....................................................................................................................................................  ٥٥ 

    ٤-٢ - مدل عمومی مهندسی نیازمندیهای جنبه گرا  ...........................................................................................  ٥٥ 

    ٤-٣ - مدل بهبود یافته "مدل عمومی مهندسی نیازمندیهای جنبه گرا"  ..............................................................  ٥٧ 

    62   .................................................................................................................................   COSMOS مدل - ٤-٤

    ٤-٤ -١ - دغدغه ها  ......................................................................................................................................  ٦٣ 

    63   ۴-۴-۱-۱- دغدغه های منطقی  .......................................................................................

    64   ۴-۴-۱-۲- دغدغه های فیزیکی  ......................................................................................

    ٤-٤ -٢ - ارتباطات......................................................................................................................................  ٦٥ 

    ۴-۴-۲-۱- قطعی  ..........................................................................................................  ٦٦ 

    66   ۴-۴-۲-۲- تفسیری  .......................................................................................................

    67   ۴-۴-۲-۳- فیزیکی  ........................................................................................................

    68   ۴-۴-۲-۴- نگاشت  ........................................................................................................

    د

     

             ٤-٤ -٣ مسندها و سازگاری  .....................................................................................................................  ٦٨

    ٧١  ............................................................................................................................  THEME/DOC روش - ٥-٤

    ٤-٥ -١ - شناسائی جنبه ها با استفاده از دیدهای کنش................................................................................  ٧٣

    ٤-٥ -٢ - طرح ریزی برای طراحی با استفاده از دید Theme  .....................................................................  ٧٦

    ٤-٥ -٣ - بررسی مجدد theme ها با استفاده از دید theme تقویت شده  ..................................................  ٨٠ 

    ٤-٦ - روش جداسازی چند بعدی دغدغه ها در مهندسی نیازمندیهای جنبه گرا  ...............................................  ٨٣ 

    ٤-٦ -١ - جداسازی چند بعدی دغدغ هها  ...................................................................................................  ٨٤ 

    ۴-۶-۱-۱- مثال اجرائی  .................................................................................................  ٨٥ 

    ٤-٦ -٢ - فضای سیستم و فضای فوق دغدغه  ............................................................................................  ٨٥ 

    ٤-٦ -٣ - ترکیب و تحلیل مصالحه  .............................................................................................................  ٨٩ 

    ۴-۶-۳-۱- مشخصات ترکیب  .......................................................................................  ٨٩ 

    ۴-۶-۳-۲- ترکیب اشتراکی  ...........................................................................................  ٩٣ 

    ۴-۶-۳-۳- تحلیل مصالحه  ............................................................................................  ٩٥ 

    ٤-٦ -٤ - انتخاب های معماری  ....................................................................................................................  ٩٧ 

    ٤-٧ - مقایسه روشها  .......................................................................................................................................  ٩٩ 

    ٤-٧ -١ - معیارهای مقایسه  .......................................................................................................................  ١٠٠ 

    ٤-٧ -٢ - مقایسه اجمالی  ..........................................................................................................................  ١٠١ 

    ٤-٨ - خلاصه و نتیجهگیری  ..........................................................................................................................  ١٠٣ 

    فصل پنجم. روش پیشنهادی برای شناسائی جنبه ها  ...............................................................................  ١٠٤  ٥-١ - دید کلی  ..............................................................................................................................................  ١٠٥ 

    ٥-٢ - تعاریف پایه روش  ..............................................................................................................................  ١٠٦ 

    ٥-٢ -١ - شبکه پتری  ................................................................................................................................  ١٠٧ 

    ٥-٢ -٢ - شبکه نیازمندی  ..........................................................................................................................  ١٠٧ 

    ذ

             ٥-٢ -٣ ترتیب اجرا  ................................................................................................................................  ١٠٨

    ٥-٢ -٤ - شبکه دغدغه  .............................................................................................................................  ١١٠

    ٥-٣ - تشریح روش شناسائی  ........................................................................................................................  ١١١

    ٥-٣ -١ - مرحله اول. شناسائی دغدغه ها  ..................................................................................................  ١١٢

    ٥-٣ -٢ - مرحله دوم. شناسائی و مشخص کردن نیازمندیها  .....................................................................  ١١٢ 

    ٥-٣ -٣ - مرحله سوم. ایجاد شبکه نیازمندیها  ...........................................................................................  ١١٣ 

    ٥-٣ -٤ - مرحله چهارم. مشخص کردن ترتیب اجراها  ............................................................................  ١١٤ 

    ٥-٣ -٥ - مرحله پنجم. ایجاد شبکه دغدغ هها  ...........................................................................................  ١١٥ 

    ٥-٣ -٦ - شناسائی وابستگی ها، محدودیت ها و ارتباطات  ........................................................................  ١١٧ 

    ٥-٣ -٧ - مشخص کردن دغدغه های نامزد جنبه شدن  .............................................................................  ١١٩ 

    ٥-٣ -٨ - مشخص کردن موجودیت های منطقی  .......................................................................................  ١٢٠ 

    ٥-٤ - خلاصه فصل  ......................................................................................................................................  ١٢١ 

    فصل ششم. مطالعه موردی  ..................................................................................................................  ١٢٢  ٦-١ - مقدمه..................................................................................................................................................  ١٢٣ 

    ٦-٢ - معیارها و شاخصها  ...........................................................................................................................  ١٢٤ 

    ٦-٣ - سیستم مدیریت هتل  ...........................................................................................................................  ١٢٥ 

    ٦-٤ - شناسائی جنبه ها  ..................................................................................................................................  ١٢٦ 

    ٦-٤ -١ - مرحله اول  .................................................................................................................................  ١٢٦ 

    ٦-٤ -٢ - مرحله دوم.................................................................................................................................  ١٢٧ 

    ٦-٤ -٣ - مرحله سوم  ................................................................................................................................  ١٢٨ 

    ٦-٤ -٤ - مرحله چهارم.............................................................................................................................  ١٣٠ 

    ٦-٤ -٥ - مرحله پنجم...............................................................................................................................  ١٣٢ 

    ٦-٤ -٦ - مرحله ششم  ..............................................................................................................................  ١٣٣ 

    ر

             ٦-٤ -٧ مرحله هفتم  ...............................................................................................................................  ١٣٨

    ٦-٤ -٨ - مرحله هشتم  ..............................................................................................................................  ١٤٠

    ٦-٥ - خلاصه و نتیجهگیری  ..........................................................................................................................  ١٤٣

    فصل هفتم. نتیجه گیری.........................................................................................................................  ١٤٥  ٧-١ - مروری بر تحقیق  ................................................................................................................................  ١٤٦ 

    ٧-٢ - مزایا و معایب  .....................................................................................................................................  ١٤٨ 

    ٧-٢ -١ - مزایا  ...........................................................................................................................................  ١٤٨ 

    ٧-٢ -١ - معایب  .......................................................................................................................................  ١٤٨ 

    ٧-٣ - مقایسه روش پیشنهادی با روشهای موجود  .........................................................................................  ١٤٩ 

    ٧-٥ - میزان تحقق اهداف اولیه  .....................................................................................................................  ١٥٠ 

    ٧-٤ - فرصت های آتی  ..................................................................................................................................  ١٥١ 

    مراجع  .................................................................................................................................................  ١٥٢  

     

    منبع:

    [۱] وحدت عبدل زاد، توسعه نرم افزاری جنبه گرا، سمینار کارشناسی ارشد، دانشگاه آزاد اسلامی واحد علوم و تحقیقات تهران، ۱۳۸۷.

    E. Baniassad, P. Clements, J. Araujo, A. Moreira, A. Rashid, B. Teki-nerdogan, “Discovering Early Aspects” , 2006, IEEE Software, 23(1), pp. 61-69.

    Awais Rashid, Peter Sawyer, Ana Moreira, Joao Araujo, “Early Aspects: A Model for Aspect-Oriented Requirements Engineering”, IEEE Joint Int'l Conf. on Requirements Engineering, 2002, IEEE CS, pp. 199-202.

    Awais Rashid, Ruzanna Chitchyan, "Aspect-Oriented Requirements Engineering: A Roadmap", ACM 978-1-60558-032, 2008.

    Stanley M. Sutton and Isabelle Rouvellou, “Modeling of Software Concerns in Cosmos”, International Conference on Aspect-Oriented Software Development, 2002, ACM, pp. 127-133.

    Elisa Baniassad, Siobhan Clarke, "Theme: An Approach for Aspect-Oriented Analysis and Design", Int'l Conf. Software Engg.(ICSE), 2004, IEEE CS, pp. 158-167.

    Ana Moreira, Awais Rashid, Joao Araujo, "Multi-Dimensional Separation of Concerns in Requirements Engineering", Int'l Conf. on Requirements Engg. (RE), 2005, IEEE CS, pp. 285-296.

    Ivar Jacobson, Pan-Wei Ng, Aspect-Oriented Software Development with Use cases, Addison-Wesley, ISBN: 0-321-26888-1, 2004.

    J. Araujo, J. Whittle, D.-K. Kim, “Modeling and Composing Scenario-Based Requirements with Aspects”, Int'l Conf. Requirements Engg. (RE), 2004, IEEE CS, pp. 58-67.

    R. Chitchyan, A. Rashid, P. Rayson, R. W. Waters, “Semantics-based Composition for Aspect-Oriented Requirements Engineering”, Int'l Conf. AspectOriented Software Development (AOSD), 2007, ACM, pp 36-48.

    Siobhán Clarke, Elisa Baniassad, Aspect-Oriented Analysis and Design: The Theme Approach, Addison Wesley Professional, ISBN: 0-321-24674-8, 2005.

    C. Haley, R. Laney, B. Nuseibeh, “Deriving Security Requirements from Crosscutting Threat Descriptions”, 2004, Int'l Conf. Aspect-Oriented Software Development (AOSD), ACM.

    S. Katz, A. Rashid, “From Aspectual Requirements to Proof Obliga-tions for Aspect-Oriented Systems”, Int'l Conf. Requirements Engg., 2004, IEEE CS, pp. 48-57.

    L. K. Kit, K. C. Man, E. Baniassad, “Isolating and Relating Concerns in Requirements using Latent Semantic Analysis”, 2006, ACM Conf. on Object-Oriented Programming, Languages, Systems and Applica-tions (OOPSLA), ACM.

    A. Moreira, J. Araujo, “Handling Unanticipated Requirements Change with Aspects”, Int'l Conf. Software Engg. and Knowledge Engg. (SEKE), 2004, pp. 411-415.

    A. Moreira, J. Araujo, J. Whittle, “Modeling Volatile Concerns as Aspects”, Conference on Advanced Information Systems Engineer-ing (CAiSE), 2006.

    J. Whittle and J. Araujo, “Scenario Modelling with Aspects”, 2004, IEE

    Proceedings - Software Special Issue, 151(4), pp. 157-172.

    Y. Yu, J. Leite, and J. Mylopoulos, “From Goals to Aspects: Discov-ering Aspects from Requirements Goal Models”, 2004, Int'l Conf. on Re-quirements Engg. (RE), IEEE CS, pp. 38-47.

    Young, Ralph R. Effective Requirements Practices. Boston: Addison-Wesley, 2001.

    Boehm, B.W. and Papaccio, P.N., 1988, Understanding and controlling software costs, IEEE Trans of Software Engineering, 14(10), pp. 1462-1477.

    Bridges, W., 1995, Managing Transitions, Making the most of change, Nicholas Brealey Publishing, UK.

    Brinkkemper, S., 1996, Method engineering: engineering of information systems development methods and tools, Inf. Software Technol., 38(4), pp. 275-280.

    Davis, A.M., 1993, Software Requirements: Analysis and Specification, Prentice Hall, second Edition.

    http://www.research.ibm.com/hyperspace/ConcernSpaces.htm, 2004.

    Klein, M. and Kazman, R. 1999. Attribute-based architectural styles. Tech. Rep.

    CMU/SEI-99-TR-022, Software Engineering Institute, Carnegie Mellon University. Oct.

    P. Tarr, H. Ossher, W. H. Harrison, and S. S. Jr. N degrees of separation: Multidimensional separation of concerns. In Proceedings of the International Conference on Software Engineering, pages 107–119. IEEE Computer Society Press, 1999.

    Merriam-Webster.     Merriam-Webster        collegiate         dictionary        online. http://www.merriam-webster.com.

    IEEE. 2000. IEEE recommended practice for architectural description of software-intensive systems. IEEE Std.14712000.

    Nuseibeh, B., Kramer, J., and Finkelstein, A. 1993. Expressing the relationships between multiple views in requirements specification. In 15th Int'l Conf. Software Engineering (ICSE), (Baltimore, Maryland). IEEE, 187196.

    Sutton Jr.,S. M. 1999. Multiple dimensions of concern in software testing. In Workshop on Multi-Dimensional Separation of Concerns (OOPSLA), (Denver).

    http://www.cs.ubc.ca/~murphy/multid-workshop-oopsla99/positionpapers/ws13sutton.pdf.

    http://en.wikipedia.org/wiki/Cross-cutting_concern, 2009.

    Dijkstra, Edsger W. (1982), “On the role of scientific thought”, in Dijkstra, Edsger W., Selected writings on Computing: A Personal Perspective, New York, NY, USA: Springer-Verlag New York, Inc., pp. 60–66, ISBN 0-387-90652-5.

    Reade, Chris (1989). Elements of Functional Programming. Boston, MA, USA: Addison-Wesley Longman Publishing Co., Inc., 600 pages. ISBN 0201129159.

    Roger S.Pressman, Software Engineering: a practitioner’s approach, Fifth edition, McGraw-Hill, page 541, 2001.

    Grady Booch, Ivar Jacobson, and James Rumbaugh, Object Oriented Analysis and Design with Applications 3rd Edition, Addison.Wesley, 2007.

    Anthony Finkelstein and Ian Sommerville, “The Viewpoints FAQ”, 1996, BCS/IEE Software Engineering Journal, 11(1).

    I. Sommerville, P. Sawyer, Requirements Engineering- A Good Practice Guide:

    John Wiley and Sons, 1997.

    Mehdi Khosrow-Pour, Encyclopedia of Information Science and Technology; Prolonging the Aging of Software System, Second edition, 2009, pp. 3152.

    http://en.wikipedia.org/wiki/Maintainability/, 2009.

    Renaud Pawlak, Lionel Seinturier, and Jean-Philippe Retaillé, Foundations of AOP for J2EE Development, Springer-Verlag New York, ISBN: 1-59059-507-6, 2005.

    G. Kiczales, et al., “Aspect-Oriented Programming", European Conf. on ObjectOriented Programming (ECOOP), 1997, Springer, LNCS 1241, pp. 220-242.

    Doug Rosenberg, Matt Stephens, Use Case Driven Object Modeling with UML, Springer-Verlag, ISBN: 1-59059-774-5, 2007.

    http://trese.cs.utwente.nl/taosad/aosd.htm, 2009.

    R.T. Alexander, J.M. Bieman, and A.A. Andrews,”Towards the Systematic Testing of Aspect- Oriented Programs”, 2004, Technical Report CS-4-105, ColoradoState University.

    Reza Meimandi Parizi, Abdul Azim Ghani, “A Survey on Aspect-Oriented Testing sApproaches”, 2007, IEEE DOI 10.1109/ICCSA.

    Fukuzawa, K. AND Saeki, M. 2002. Evaluating Software Architectures by Coloured Petri Nets. ACM SEKE ’2002, July 15-19.

    CPN Tools. 2008. webpage, URL http://www.daimi.au.dk/CPNTools/, 2009.

    Alan M. Davis, Software Requirements Revision Objects: Functions & States, Prentice Hall PTR, 1994.

    Gerald Kotonya and Ian Sommerville, Requirements Engineering, John Wiley & Sons, 1997.

    Jakob Nielsen, The Use and Misuse of Focus Groups, http://www.useit.com/papers/focusgroups.html, 1997.

    Linda A. Macaulay, Requirements Engineering, Springer Verlag, 1996.

    Peter Checkland and Jim Scholes, Soft Systems Methodology in Action, John Wiley & Sons., 1999.

    Christopher McPhee, “Requirements engineering for projects with critical timeto-market”, 2001, Master’s thesis, University of Calgary.

    O. L´opez and M.A. Laguna, “Requirements reuse for software development”, August 2001, In Fifth IEEE International Symposium on Requirements Engineering, Toronto, Canada.

    Karl E. Wiegers. Software Requirements. Microsoft Press, 1999.

    Jennifer Tapke, Allyson Muller, Greg Johnson, Josh Sieck, House of Quality. Steps in Understanding the House of Quality, IE 361.

    Colin Potts. Requirements Reviews: Understanding Customer Requirements. http://www.cc.gatech.edu/ computing/classes/cs3302 98 summer/7-21-reqts/sld001.htm, 1998.

    Suzanne Robertson, “Requirements testing: Creating an effective feedback loop”, July 2000, In FEAST 2000, London.

    H. Klaeren, E. Pulvermueller, A. Rashid, and A. Speck, “Aspect Composition Applying the Design by Contract Principle”, 2nd International Symposium on Generative and Component-based Software Engineering (GCSE), 2000, Springer-Verlag, LNCS 2177, pp. 57-69.

    Awais Rashid, Ana Moreira, Joao Araujo, “Modularisation and Composition of Aspectual Requirements”, 2nd Int'l Conf.Aspect-Oriented Soft-ware Development, 2003, ACM, pp.11-20.

    Ivar Jacobson, Object-Oriented Software Engineering- a Use Case Driven Approach: Addison-Wesley, 1992.

    A. Lamsweerde, “Goal-Oriented Requirements Engineering: A Guided Tour”, 5th Int'l Symp. on RE, 2001, IEEE CS Press, pp. 249-261.

    M. Jackson, Problem Frames: Analyzing and Structuring Software Development Problems: Addison Wesley, 2000.

    Sutton Jr., S. M. and Rouvellou, I. Advanced Separation of Concerns for Component Evolution. Workshop on Engineering Complex Object Oriented Systems for Evolution. Conf. on Object-Oriented Programming. Systems, Languages, and Appfications, Tampa, Florida, Oct. 2001.

    lyengar, A. Design and Performance of a General Purpose Software Cache. In ]hoe. of the IBth IEEE Int. Performance, Computing, and Communications Conf. (IPCCC'99), Phoenix/Scottsdale, Arizona, Feb. 1999.

    Memmert, J. Personal commtmication. September, 2001.

    IBM. Hyper/J, http://www.research.ibm.com/hyperspace/HyperJ/, 2006.

    S. Clarke. “Extending standard uml with model composition semantics”, July 2002, Science of Computer Programming, 44(1): pp. 71–100.

    S. Clarke and R. J. Walker. Composition patterns: An approach to designing reusable aspects. In International Conference on Software Engineering, pages 5–14, 2001.

    L. Chung, et al., Non-Functional Requirements in Software Engineering: Kluwer, 2000.

    T. Murata, Petri nets: Properties, analysis and applications, 1989, Proceedings of the IEEE, 77(4):541–580.

    Binder, R. V, “Testing Object-Oriented Systems: Models, Patterns and Tools”, Addison-Wesley, 2000.

    I. Sommerville, Software Engineering, Seventh edition, Addison-Wesley, 2005. 

ثبت سفارش
عنوان محصول
قیمت