پایان نامه معماری نرم افزار
پایان نامه معماری نرم افزار
با گسترش روز افزون استفاده از مدلهای فرایند مبتنی بر معماری، طراحی معماری نرم افزار اهمیت ویژهای یافته است. یک طراحی معماری خوب، طراحی است که نیازهای کیفی مورد انتظار مشتری را برآورده نماید. در این گزارش روش های گوناگون طراحی معماری نرم افزار مورد بررسی قرار خواهد گرفت. سپس ویژگی کیفی قابلیت تغییر به طور دقیق و جزئیات معرفی خواهد شد و سپس معماری یک سیستم مطالعه موردی با دیدگاه دستیابی به قابلیت تغییر طراحی خواهد شد.
امروزه يكي از مهمترين ويژگيهاي هر سيستم نرمافزاري، كيفيت ميباشد. با پيشرفتهاي انجام شده و گسترش ابزارهاي گوناگون براي توسعه نرمافزار، توسعه نرمافزارهايي كه كاركردهاي مورد نظر مشتريان را برآورده سازند، امري آسان و سريع گشته است. در حال حاضر، تفاوت بين دو نرمافزار را توانايي نرمافزارها در برآورده ساختن ويژگيهاي كيفي مورد انتظار تعيين ميكند.
معماری نرم افزارِ يك برنامه يا سيستم كامپيوتري، ساختار يا ساختارهايي از سيستم مي باشد، كه در برگيرنده اجزاء، صفات قابل مشاهده آن اجزا و ارتباط بين آنها باشد[Bass 03] . معماري نرمافزار شامل اولين تصميمات طراحي سيستم ميباشد و اين تصميمات زيربناي فعاليتهاي طراحي، پيادهسازي، استقرار و نگهداري سيستم ميباشد. همچنين معماري نرمافزار، اولين عنصر قابل ارزيابي در فرايند توسعه نرمافزار ميباشد[Bass 03] . بنابراين براي طراحي سيستمي كه نيازهاي كيفي مورد نظر را برآورده سازد، توليد معماري نرمافزار اولين گام در دستیابی به كيفيت در نرمافزار و همچنين ارزيابي ويژگيهاي كيفي است.
۱ مقدمه
۲ معماری نرم افزار چیست ؟
۲-۱ تعاریف پایه در معماری نرم افزار
الگوهای معماری یا سبکهای معماری ۶
مدل مراجع
معماري مرجع
۲-۲ دیدگاه های معماری
ديدگاه Bass ۷
ديدگاه ۴+۱
ديدگاههاي دیگر
۳ طراحی معماری نرم افزار
۳-۱ كاركردهاي سيستم و معماري نرمافزار
۳-۲ ويژگيهاي كيفي
۳-۳ ويژگيهاي كيفي سيستم
۳-۴ سناريوهاي ويژگيكيفي
۳-۵ ويژگيهاي كيفي كسب و كار
۳-۶ ويژگيهاي كيفي معماري
۳-۷ يك طراحی معماری خوب بايد داراي چه ويژگيهايي باشد؟
۳-۸ دستیابی به ویژگیهای کیفی ۱۲
تاکتیکهای معماری ۱۲
الگوهای معماری ۱۴
ارتباط تاکتیکها و الگوهای معماری ۱۵
۴ روشهای طراحی معماری نرم افزار ۱۶
۴-۱ طراحی مبتنی بر ویژگی
۴-۲ طراحی به کمک سبک های معماری مبتنی بر ویژگی ۱۷
۴-۳ طراحی با ملاحظات اقتصادی با استفاده از روش آنالیز سود هزینه ۱۹
۵ ويژگي كيفي قابليت تغيير ۲۳
۵-۱ تعريف قابليت تغيير ۲۳
۵-۲ مشخص نمودن نيازهاي قابليت تغيير با استفاده از سناريوهاي كيفي ۲۳
۵-۳ مدل سازي قابليت تغيير در سطح معماري نرم افزار ۲۴
۵-۴ تاكتيكهاي قابليت تغيير ۲۴
۵-۵ تاكتيكهايي كه تغييرات را محلي ميكنند. ۲۵
۵-۶ تاكتيكهايي كه ميدان ديد وظايف را كاهش مي دهند. ۲۶
۵-۷ تاكتيكهايي كه از پخش شدن تغييرات جلوگيري ميكنند. ۲۶
۵-۸ ارزيابي قابليت تغيير
ارزيابي نحوه اختصاص وظايف
ارزيابي وابستگي بين ماژولها
انواع وابستگي
نحوه بازنمايي وابستگيها
روش Brute-force ۲۹
استفاده از بستار انتقالی
استفاده از روشهاي بهينه سازي
استفاده از جدول وابستگيها
۵-۹ تصميم گيري نهايي در مورد طراحي ويژگي كيفي قابليت تغيير
۶ مطالعه موردي
۶-۱ مرحله ۱ – انتخاب يك سناريو حقيقي
۶-۲ مرحله ۲ – بررسي نوع سناريو حقيقي
۶-۳ مرحله ۳ – انتخاب چهارچوب استدلال مناسب
۶-۴ مرحله ۴ – مشخص نمودن پارامترهاي محدود و آزاد
۶-۵ مرحله ۵ – مشخص كردن تاكتيكهاي وابسته به پارامترهاي آزاد
۶-۶ مرحله ۶ – اختصاص مقادير اوليه به پارامترهاي آزاد
۶-۷ مرحله ۷ – انتخاب تاكتيكها و به كاربردن آنها براي دستيابي به پاسخ مناسب
استفاده از كامپايلر به عنوان واسط
استفاده از سيستمعامل به عنوان واسط
۶-۸ مرحله ۸ : اختصاص مسئوليتها به عناصر معماري
۷ خلاصه و نتیجه گیری
۸ مراجع
دیدگاه ها