نام پژوهشگر: غلامرضا شاه محمدی
غلامرضا شاه محمدی سعید جلیلی
موفقیت درازمدت یک سیستم نرم افزاری، به توانایی آن در برآورده ساختن صفات کیفی بستگی دارد. بین صفات کیفی و معماری سیستم نرم افزاری ارتباط محکمی وجود دارد. معماری نرم افزار، پتانسیل کلی سیستم نرم افزاری برای تامین صفات کیفی را تعریف می کند و اولین مرحله در چرخه حیات نرم افزار است که نیازهای غیر وظیفه ای نرم افزار مورد توجه قرار می گیرد. استفاده از سبک های معماری، یک روش طراحی معماری نرم افزار است که تامین صفات کیفی سیستم را تضمین می کند. انتخاب سبک معماری مناسب، تاثیر قابل توجهی بر صفات کیفی مختلف سیستم دارد. سبک های معماری راه حل های مناسبی را برای مسئله معماری ارائه می دهند، اما از آنجا که تاثیر کمّی آنها بر صفات کیفی مختلف بررسی نشده است، کاربرد آنها در عمل هنوز روش مند نیست و انتخاب سبک معماری اغلب مبتنی بر شهود و تجربه تولید کننده نرم افزار می باشد. طراحی معماری مشکل ترین وظیفه معمار است و تکیه بر راه حل های شناخته شده، ریسک های شکست سیستم به خاطر استفاده از معماری نامناسب را به حداقل می رساند. یک پیش نیاز طراحی معماری، شناخت میزان پشتیبانی سبک های معماری از صفات کیفی می باشد. با وجود نقش سبک های معماری در استفاده مجدد دانش طراحی، کاربرد آنها در طراحی معماری روش مند نیست. طراحی معماری نرم افزار مبتنی بر سبک معماری که توسط shaw و garlan ارائه شده است، نیز تنها رهنمودهای کلی درباره انتخاب سبک معماری ارائه می دهد و یک روش اصولی برای انتخاب سبک معماری و تولید معماری نرم افزار نمی باشد. استفاده از سبک های معماری در روش های طراحی معماری نیز به صورت موردی می باشد. بررسی بهره وری نرم افزارها، نشان داده است از دلائل اصلی پایین بودن بهره وری نرم افزارها، ضعف در تعریف خواسته ها و معماری آنها می باشد. هدف این رساله، ارائه چارچوبی برای: 1) طراحی معماری نرم افزار مبتنی بر سبک های معماری و 2) ارزیابی، رتبه بندی و انتخاب مناسب ترین معماری نرم افزار از میان معماری های کاندید می باشد. در چارچوب پیشنهادی این رساله: 1) موردهای کاربری مهم، در صورت نیاز و با توجه به نوع سیستم نرم افزاری، به روش پیشنهادی با شیوه بررسی مدل، تحلیل رسمی می شوند، تا اطمینان حاصل گردد خواسته های مورد نظر را تامین می کنند، 2) صفات کیفی قابل ارزیابی در سطح سبک های معماری تعیین می شوند، 3) سبک های معماری از دید صفات کیفی به شیوه پیشنهادی ارزیابی می شوند تا تاثیر کمّی آنها بر صفات کیفی مشخص گردد، 4) با توجه به خصوصیات ذاتی نرم افزار در دست ساخت، سبک های معماری فاقد این خصوصیات حذف می شوند، 5) براساس تاثیر کمّی سبک های معماری بر صفات کیفی قابلیت نگهداری، قابلیت اعتماد و کارایی، و با توجه به تقدم صفات کیفی مورد نظر سیستم، و با استفاده از روش پیشنهادی، سبک های معماری رتبه بندی شده و سبک های با رتبه برتر توصیه می شوند، 6) مولفه های نرم افزار در دست ساخت با استفاده از رویکرد خوشه بندی خواسته ها از سیستم، به صورت خودکار، تعیین می شوند، 7) مولفه های نرم افزاری حاصل به مولفه های سبک های معماری با رتبه برتر نگاشت شده و تعدادی معماری کاندید تولید می گردد که به شیوه پیشنهادی ارزیابی شده و مناسب ترین معماری با توجه به نتایج ارزیابی و تقدم و تعامل صفات کیفی سیستم، توصیه می شود. با بررسی های موردی انجام شده، قابلیت کاربری چارچوب پیشنهادی تشریح شده است.
صفیه طهماسبی پور سید مرتضی بابامیر
یک معمار نرم افزار با استفاده از سبک های معماری و ویژگی های کیفی موردنظر، طراحی معماری نرم افزار را انجام می دهد. ویژگی های کیفی نرم افزار نقش حیاتی در توسعه نرم افزار دارند که به عنوان معیار گزینش برای انتخاب پیاده سازی نهایی از بین طراحی های مختلف بکار می روند. برای بکارگیری هر ویژگی کیفی، تاکتیک هایی معرفی شده است. هر تاکتیک، در میزان تحقق ویژگی کیفی خاص تاثیر می گذارد زیرا تاکتیک ها، چگونگی پیاده سازی ویژگی های کیفی را در سبک های معماری تعیین می کنند. بنابراین پیاده سازی تاکتیک ها، برای برآورده کردن ویژگی های کیفی در سبک های معماری نقش مهمی دارند. در این پژوهش چگونگی پیاده سازی و تاثیر تاکتیک های ”فراهم بودن“، ” امنیت“ و ”کارایی“ در سبک های رایج معماری نرم افزار بدست آورده شد. سپس با توجه به نتایج به دست آمده، روشی برای انتخاب بهترین سبک از بین سبک های رایج معماری ارائه شد. با استفاده از این روش می توان بهترین سبک معماری را برای هر کدام یا ترکیبی از ویژگی های کیفی مذکور بدست آورد. در این پژوهش ابتدا سناریوهای مربوط به تاکتیک های مذکور تهیه شد. سپس سبک های رایج معماری با استفاده از روش مبتنی بر سناریوsaam ارزیابی شدند. از دو روش ارزیابی مذکور، نتایج یکسانی برای انتخاب سبک معماری مناسب با توجه به ویژگی کیفی مورد نظر بدست آمد.
هدا بانکی سید مرتضی بابامیر
یک نرم افزار مطلوب باید قادر باشد علاوه بر نیازهای وظیفه مندی، خصیصه های کیفی مورد نیاز سیستم را نیز فراهم نماید. سبک های معماری نرم افزار علاوه بر توصیف نرم افزار و تجزیه آن به مولفه ها، تاثیر عمده ای بر روی خصیصه های کیفی نرم افزار طراحی شده دارند. تحلیل و ارزیابی کمی میزان این تاثیر گذاری سبب می شود مناسب ترین سبک برای طراحی معماری انتخاب گردد. تا کنون خصیصه های کیفی مختلف در سبک های معماری نرم افزار بوسیله روش های گوناگون مورد ارزیابی کیفی قرار گرفته اند. ولی از آنجایی که ارزیابی کیفی خیلی دقیق نیست، در این نوشتار روش های مختلفی که برای ارزیابی کمی سبک ها ارائه شده است، مورد بررسی قرار می گیرند و برای ارزیابی کمی خصیصه های کیفی قابلیت اطمینان، کارایی و امنیت در سبک های معماری داده مشترک، شی گرا، لوله و فیلتر روشی مبتنی بر شبکه های پتری رنگی ارائه می شود. در این روش ابتدا سبک های معماری با استفاده از شبکه پتری رنگی مدل می شوند، سپس با توجه به قواعدی که برای ارزیابی بیان شده است، برای آنالیز شبکه و محاسبه مقدار دقیق خصیصه های مذکور از نرم افزار cpntools استفاده می گردد. در پایان بوسیله رتبه بندی سبک ها از نظر میزان ارضای خصیصه های کیفی مورد نظر، بهترین سبک برای پیاده سازی مشخص می شود.