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

تعداد صفحات: 204 فرمت فایل: word کد فایل: 10001928
سال: 1387 مقطع: مشخص نشده دسته بندی: پایان نامه مهندسی کامپیوتر
قیمت قدیم:۲۷,۰۰۰ تومان
قیمت: ۲۴,۹۰۰ تومان
دانلود فایل
  • خلاصه
  • فهرست و منابع
  • خلاصه پایان نامه یک روش برای طراحی معماری نرم افزار مبتنی بر سبک

    پایان نامه کارشناسی ارشد رشته مهندسی نرم افزار

    چکیده

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

    "جعبه سیاه " متمرکز می شود. معماری نرم افزار, اولین مرحله از طراحی یک سیستم است که مجموعه ای از ویژگی های مطلوب را دارد.

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

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

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

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

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

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

    آنها تشکیل شده است و برروی ویژگی های کیفی خاصی تاکید نموده و تامین آنها را در معماری تضمین می نماید. همچنین وظیفه مندی با استفاده از نمونه سازی مولفه های سبک بدست می آید.

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

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

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

     

    واژه های کلیدی

    معماری نرم افزار، سبک های معماری نرم افزار, فرآیند طراحی معماری نرم افزار پایه , طراحی  معماری نرم افزار مبتنی بر سبک,عدم تطابق سبک های معماری نرم افزار

    فصل ۱

    مقدمه

    ٢

    ۱-۱- مقدمه

    تحلیل وطراحی سیستمهای نرم افزاری بزرگ و پیچیده دارای تاثیر مستقیم در موفقیت و یا شکست تولید آنها دارد. برای مدتهای زیاد, طراحان نرم افزار, سیستم ها را فقط بر اساس نیازهای فنی ١ ایجاد می کردند.

    نیازها مستند شده و طراحان با ارائه یک طراحی , آنها را تامین می نمودند. نیازها سبب تولید طراحی می شدند و طراحی , سیستم را بوجود می آورد. به منظور کنترل پیچیدگی , لازم بود که از جنبه های فنی و

    مدیریتی ١ به طراحی نگاه شود. پیچیدگی یک خاصیت ذاتی سیستم های نرم افزاری است که در ابعاد مختلفی مانند تعریف نرم افزار ، طراحی ، پیاده سازی ، تست و نگهداری نرم افزار وجود دارد . لذا پیچیدگی را نمی توان از بین برد بلکه باید آن را کنترل نمود. با افزایش اندازه و پیچیدگی سیستمهای نرم افزاری ، مساله طراحی ، الگوریتمها و ساختمان داده محاسبات را بیشتر مورد بررسی قرارمی دهد. طراحی و مشخص نمودن ساختار سیستم جامع ، مساله جدیدی را بوجود آورده است که تحت عنوان معماری نرم افزار٢در سطح طراحی شناخته می شود .لذا پیچیدگی یک مفهوم کلیدی است که معماری نرم افزار باید به آن بپردازد. معماری , قسمت تعیین کننده فرآیندطراحی است که شامل ساختارهای سیستمهای نرم افزاری بزرگ است . دید معماری سیستم تجریدی ٣ است و به جزئیات پیاده سازی , الگوریتم و نمایش داده نمی پردازد و برروی رفتار و تعامل عناصر "جعبه سیاه ٤" متمرکز می شود. معماری نرم افزار, اولین مرحله طراحی یک سیستم است که مجموعه ای از      ویژگی های مطلوب را دارد. سیستم ها به منظور تامین نیازهای سازمانی ایجادمی شوند. این نیازهاکارایی , قابلیت در دسترس بودن , امنیت سیستم , میزان سازگاری با سایر سیستمها, و توانایی تطبیق با تغییرات سیستم را تحمیل می نمایند. تضمین این اهداف توسط نرم افزار, گزینه های طراحی انتخاب شده توسط معمار نرم افزار را متاثر می نماید. لذا نرم افزار دو نوع نیاز را

    ٦

    تامین می نماید. نیازهای وظیفه مندی ٥ که توانایی سیستم برای انجام کار است و نیازهای غیروظیفه مندی مانند امنیت , کارایی و غیره است . مولفه ٧ ها, رابطها٨, واسطها٩ اجزای معماری نرم افزار را تشکیل می دهندکه پیکربندی ١٠ آنها را به شکل معماری مرتب می نماید. تصمیم های معمار نرم افزار با توجه به نیازهای تعریف شده سیستم , منجر به انتخاب نوع خاصی از اجزای معماری می شود. این تصمیم ها بسیار اساسی هستند و معمار با استفاده از آنها نیازها را کنترل و تضمین می نماید. مجموعه ای از این تصمیم ها تاکتیک ١١ نامیده می شوند که طراحی معماری نرم افزار شامل مجموعه ای از این تاکتیکها است . وقتی یک تاکتیک در طراحی معماری استفاده می شود, ویژگی های اثبات شده آن تاکتیک در معماری ماندگار است .

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

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

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

    فرآیند طراحی معماری نرم افزار شامل سه مرحله عمده است : (۱) شناسایی عناصر طراحی و ارتباط بین آنها (۲) ارزیابی طراحی معماری و (۳) تغییر طراحی معماری . این مراحل به صورت خطی تکرار می شوند تا تمامی اطلاعات پنهان آشکار شوند.

    انتخاب نوع عناصر طراحی و تعریف ارتباط بین آنها از تصمیم های اساسی معماری است که مبنای تجزیه سیستم - به زیر سیستم ها, پیمانه ها- است .

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

    از نقطه نظر طراحی معماری نرم افزار, سبک معماری مجموعه ای از قواعدطراحی است که انواع  مولفه ها و رابطهایی را که می توانند برای ایجاد سیستم (یا زیر سیستم ) استفاده شوند, همراه با محدودیتهای داخلی و خارجی در مورد نحوه ترکیب بندی آنها, نشان می دهد. در حقیقت هر سبک معماری مجموعه ای از تاکتیکهای معماری را پوشش می دهد, لذا استفاده از یک سبک معماری در طراحی معماری نرم افزار ,

    وجود ویژگی های کیفی اثبات شده آن سبک را تضمین می نماید. با توجه به این دیدگاه , سبک های استفاده شده در یک معماری , تا اندازه ای روش ساخت سیستم را تحت تاثیر قرار می دهند.

    هدف ما ارائه یک فرآیند طراحی معماری و یک روش طراحی معماری نرم افزار است که در آن عناصر طراحی از بین سبک های معماری انتخاب می شوند. لذا با اتمام فرآیند طراحی , معماری حاصل از مجموعه ای  سبک تشکیل خواهد شد. طراحی معماری نرم افزار مبتنی بر سبک ١  , به این معنا است که سبک ها به عنوان سازه بلوک ٢ در فرآیند طراحی معماری استفاده می شوند, لذا یک قابلیت استفاده مجدد در سطح طراحی معماری بوجود می آید.

    تمرکز ما برروی سیستمهای سلسله مراتبی است , لذا یک سبک در یک سطح از سیستم ممکن است در سطح پایین تر توسط چندین سبک دیگر طراحی شود.

    در مراحل ارزیابی طراحی معماری و تغییر طراحی معماری نیز مبنای ما سبک های معماری است . در ارزیابی معماری , هدف پیدا نمودن سبک یا سبک هایی است که نیازهای مورد نظر را تامین ننموده اند. در تغییر معماری  ممکن است معمار سبک یا سبک هایی را جایگزین نماید.

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

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

    طراحی ویژگی گرا٣ یک فرآیند طراحی معماری است که مجموعه ای از سناریوهای ویژگی کیفی را به عنوان ورودی دریافت نموده و دانش موجود درباره ارتباط بین دستیابی ویژگی های کیفی و معماری را به منظور طراحی به کار می گیرد. مبنای ADD, فرآیند تجزیه ویژگی های کیفیی است که نرم افزار باید آنها را تامین کند. این کار یک فرآیند بازگشتی است که در هر مرحله تاکتیکها و الگوهای معماری به منظور تضمین سناریوهای کیفی انتخاب می شوند و سپس وظیفه مندی به انواع پیمانه های معرفی شده به وسیله الگو تخصیص داده می شود. در چرخه حرفه معماری , این روش بعد از تحلیل نیازها و بعد از شناخته

     

    شدن پیشران های معماری شروع می شود. خروجی ADD اولین سطح دید تجزیه چند سطحی پیمانه معماری و سایر دیدهای مرتبط است [٥].

    عمده تفاوت روش طراحی معماری نرم افزار مبتنی بر سبک با طراحی ویژگی گرا در نوع عناصر طراحی است . در طراحی ویژگی گرا سیستم به چندین زیر سیستم و پیمانه تجزیه می شود. در روش پیشنهادی ما , یک سیستم به چندین سطح تجزیه می شود که هر سطح شامل یک یا بیشتر سبک معماری است . در طراحی ویژگی گرا سبک های معماری صرفا برای تضمین سناریوهای کیفی انتخاب می شوند در حالی که در روش طراحی مبتنی بر سبک , سبک ها علاوه بر ایجاد معماری , مبنای تجزیه سیستم نیز هستند, لذا تا اندازه ای روش ساخت را نیز مشخص می نمایند. همچنین راه حلهای ارزیابی معماری و تغییر معماری مبتنی بر سبک هستند.

    روش دیگر طراحی معماری , طراحی معماری مبتنی بر وظیفه مندی است که توسط Jan Bosch [٨]

    مطرح شده است . در این روش , نیازهای وظیفه مندی مبنای طراحی هستند. در این روش معماری به زیر سیستم ها ومولفه های معماری تجزیه می شود. وظیفه مندی به مولفه های معماری انتساب داده  می شود.

    تفاوت عمده روش ما با روش طراحی مبتنی بر وظیفه مندی نوع نگاه ما به نیازهای      وظیفه مندی است .

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

      

  • فهرست و منابع پایان نامه یک روش برای طراحی معماری نرم افزار مبتنی بر سبک

    فهرست:

    چکیده ......................................................................................................................................................................۱  فصل اول – مقدمه

    ۱-۱-  مقدمه .......................................................................................................................................................۴

    ۱-۲-  تعریف مساله ...........................................................................................................................................۵

    ۱-۳-  سابقه تحقیق ...........................................................................................................................................۷

    ۱-۴-  دامنه مساله .............................................................................................................................................۸

    ۱-۵-  معماری نرم افزار و طراحی معماری نرم افزار مبتنی بر سبک....................................................۹

    ۱-۶-  ساختار پایان نامه ...................................................................................................................................۱۱ فصل دوم – آشنایی با ادبیات موضوع

    ۲-۱-  علل نیاز به معماری نرم افزار................................................................................................................۱۳

    ۲-۲-  نیازهای سیستم نرم افزاری ..................................................................................................................۱۴

    ۲-۳-  سبک های معماری نرم افزار................................................................................................................۱۶

    ۲-۴-  معماری , طراحی معماری و سبک معماری ......................................................................................۱۶

    ۲-۵-  معماری نرم افزار.....................................................................................................................................۱۷

    ۲-۵-۱- تعاریف معماری نرم افزار ..............................................................................................................۱۸

    ۲-۶-  اهمیت معماری نرم افزار.......................................................................................................................۱۹

    ۲-۷-  اجزا معماری نرم افزار............................................................................................................................۱۹

    ۲-۷-۱- مولفه ها...........................................................................................................................................۲۰

    ۲-۷-۲- رابطها...............................................................................................................................................۲۰

    ۲-۷-۳- واسطها ............................................................................................................................................۲۰

    ۲-۷-۴- پیکربندی ها..................................................................................................................................۲۱

    ۲-۸-  تصمیم های معماری .............................................................................................................................۲۱

    ۲-۹-  وظیفه مندی و ویژگی های کیفی و ارتباط آنها با معماری ..........................................................۲۲

    ۲-۹-۱- معماری و وظیفه مندی ..............................................................................................................۲۲

    ۲-۹-۲- معماری و ویژگی های کیفی .....................................................................................................۲۳

    ۲-۹-۳- سناریوهای ویژگی کیفی .............................................................................................................۲۵

     

    الف

    ۲-۱۰-  تاکتیک....................................................................................................................................................۲۷

    ۲-۱۱- پیشرانهای معماری ................................................................................................................................۲۹

     

     

    ۲-۱۲- سبکهای معماری ...................................................................................................................................۳۰

    ۲-۱۲-۱-  ساختار سبک..........................................................................................................................۳۰

    ۲-۱۲-۲-  طبقه بندی سبکهای معماری ..............................................................................................۳۱

    ۲-۱۲-۳-  ابعاد تشکیل دهنده سبک....................................................................................................۳۲

    ۲-۱۳- طراحی معماری نرم افزار......................................................................................................................۳۳

    ۲-۱۴- ارتباط بین مفاهیم در روش طراحی معماری نرم افزار مبتنی بر  سبک................................۳۴

    ۲-۱۵- خلاصه .......................................................................................................................................................۳۵

     

    فصل سوم –بررسی روشهای طراحی معماری نرم افزار

    ۳-۱-  مقدمه ........................................................................................................................................................۳۷

    ۳-۲-  روش طراحی ویژگی گرا........................................................................................................................۳۸

    ۳-۲-۱-    ورودی های روش طراحی ویژگی گرا................................................................................۳۹

    ۳-۲-۲-    خروجی های روش طراحی ویژگی گرا..............................................................................۴۰

    ۳-۲-۳-    اطمینان از اینکه اطلاعات نیازها کافی است ....................................................................۴۱

    ۳-۲-۴-    انتخاب یک عنصر از سیستم برای تجزیه ..........................................................................۴۱

    ۳-۲-۵-    تعیین پیشرانهای معماری کاندید.......................................................................................۴۱

    ۳-۲-۶-    انتخاب یک مفهوم طراحی برای تضمین  پیشرانهای معماری .....................................۴۲

    ۳-۲-۷-    نمونه سازی عناصر معماری و تخصیص مسئولیت ..........................................................۴۲

    ۳-۲-۸-    تعریف واسطهایی برای عناصر نمونه سازی شده .............................................................۴۳

    ۳-۲-۹-    بازبینی نیازها و اعمال آنها به عنوان محدودیتهایی برای عناصر معماری نمونه سازی

    شده ...........................................................................................................................................۴۳

    ۳-۲-۱۰-  تکرار مراحل ۲ تا ۷ برای عنصر بعدی سیستم ................................................................۴۳

    ۳-۳-  طراحی مبتنی بر وظیفه مندی ...........................................................................................................۴۴

    ۳-۳-۱-    مرحله ۱ : طراحی معماری مبتنی بر وظیفه مندی ........................................................۴۵

    ۳-۳-۲-    مرحله ۲ :  ارزیابی معماری ..................................................................................................۴۶

    ۳-۳-۳-    مرحله ۳ :  تغییر معماری .....................................................................................................۴۷

    ب

     

    ۳-۴-  معیارهای موردانتظار از یک راه حل ...................................................................................................۴۸

     

     

    ۳-۵-  بررسی روشهای طراحی معماری نرم افزار........................................................................................۵۰

    ۳-۵-۱-    قابلیت یکپارچگی ...................................................................................................................۵۰

    ۳-۵-۲-    رعایت تجرید مناسب در طراحی معماری .........................................................................۵۱

    ۳-۵-۳-    هزینه پایین اعمال تغییرات .................................................................................................۵۱

    ۳-۵-۴-    قابلیت فهم و درک آسان معماری ......................................................................................۵۲

    ۳-۶-  علل نیاز به به یک روش طراحی جدید ..........................................................................................۵۳

    ۳-۷-  خلاصه .....................................................................................................................................................۵۴

     

    فصل چهارم – طراحی معماری نرم افزار مبتنی بر سبک

    ۴-۱-  مقدمه ........................................................................................................................................................۵۶

    ۴-۲-  دامنه روش طراحی معماری نرم افزار مبتنی بر سبک.................................................................۵۷

    ۴-۲-۱-    چارچوب تصمیم های معماری در SBSAD  ..............................................................۵۸

    ۴-۲-۱-۱-       تصمیم های فرامعماری SBSAD ..........................................................۵۹

    ۴-۲-۱-۲-       تصمیم های معماری SBSAD ...............................................................۶۰

    ۴-۲-۱-۳-       سیاست ها و راهنماییها...............................................................................۶۱

    ۴-۲-۲-    ساختار سلسله مراتبی .........................................................................................................۶۱

    ۴-۳-  اصطلاحات و مفاهیم ..............................................................................................................................۶۲

    ۴-۳-۱       سبک معماری ........................................................................................................................۶۲

    ۴-۳-۲       نیازهای تجریدی و عینی ....................................................................................................۶۳

    ۴-۳-۳       پیشرانهای  معماری .............................................................................................................۶۴

    ۴-۳-۴       نوع مولفه ها در SBSAD ................................................................................................۶۶

    ۴-۳-۵       نوع رابطها در SBSAD ....................................................................................................۶۷

    ۴-۳-۶       رفتار بازگشتی در تجزیه سیستم با روش SBSAD ..................................................۶۹

    ج

    ۴-۴  فرآیند طراحی معماری نرم افزار مبتنی بر سبک.........................................................................۷۰

    ۴-۴-۱-    ورودی های روش SBSAD ............................................................................................۷۲

     

     

    ۴-۴-۱-۱-       نیازهای وظیفه مندی تجریدی و عینی ...................................................۷۲

    ۴-۴-۱-۲-       نیازهای ویژگی های کیفی تجرید و عینی ..............................................۷۴

    ۴-۴-۱-۳-       نیازهای حرفه .................................................................................................۷۵

    ۴-۴-۱-۴-       محدودیتهای معماری ...................................................................................۷۵

    ۴-۴-۱-۵-       محدودیتهای طراحی ....................................................................................۷۵

    ۴-۴-۱-۶-       انتخاب های معماری ....................................................................................۷۶

    ۴-۴-۲-    خروجی های روش SBSAD ..........................................................................................۷۷

    ۴-۴-۳-    مراحل فرآیند SBSAD   ................................................................................................۷۸

    ۴-۴-۳-۱-       انتخاب یک عنصر از سیستم برای تجزیه ...............................................۷۹

    روش پیمایش درخت تجزیه .....................................................۷۹

    نیازها و مسئولیتها  ....................................................................۸۱

    ۴-۴-۳-۲-       انتخاب پیشرانهای معماری .........................................................................۸۳

    ۴-۴-۳-۳-       اجرای تجزیه براساس پیشرانهای معماری ...............................................۸۲

     تجزیه مبتنی بر سبک.................................................................۸۹

     بازبینی محدودیت ها..................................................................۹۶

     تغییر سبکهای انتخاب شده ......................................................۹۶

    ۴-۴-۳-۴-       تجزیه وظیفه مندی ......................................................................................۹۸

    ۴-۴-۳-۵-       تخصیص وظیفه مندی به سبک معماری .............................................۱۰۰

    ارزیابی وظیفه مندی .................................................................................۱۰۰

    مستندسازی طراحی معماری .................................................................۱۰۱

    تکرارهای بعدی ........................................................................................۱۰۱

    ۴-۵  خلاصه ....................................................................................................................................................۱۰۲ فصل پنجم – مطالعه موردی

    ۵-۱    مقدمه .....................................................................................................................................................۱۰۴

    ۵-۲   مطالعه موردی ۱: سیستم آلبوم عکس در اینترنت ........................................................................۱۰۴

    ۵-۲-۱-وظیفه مندی کلیدی سیستم .......................................................................................................۱۰۴

    د

    ۵-۲-۲- ویژگی های  کیفی کلیدی سیستم ..........................................................................................۱۰۵

    ۵-۲-۳-نیازهای وظیفه مندی تجرید........................................................................................................۱۰۶

    ۵-۲-۴-نیازهای ویژگی کیفی تجرید........................................................................................................۱۰۷

    ۵-۲-۵-محدودیت های معماری ................................................................................................................۱۰۸

    ۵-۲-۶- محدودیت های طراحی .................................................................................................................۱۰۸

    ۵-۲-۷-انتخاب های معماری .....................................................................................................................۱۰۹

    ۵-۲-۸-پیشران های معماری ...................................................................................................................۱۱۰

    ۵-۲-۹-تبدیل نیازها به مسئولیت ها......................................................................................................۱۱۲

    ۵-۲-۱۰-    اولویت بندی نیازهای ویژگی کیفی .................................................................................۱۱۳

    ۵-۲-۱۱-    تجزیه سیستم .......................................................................................................................۱۱۴

    ۵-۲-۱۲-    ارزیابی شاخص ها.................................................................................................................۱۲۵

    ۵-۲-۱۲-۱- هزینه اعمال تغییرات ..........................................................................................۱۲۵

    ۵-۲-۱۲-۲- طراحی معماری به اندازه کافی دقیق ............................................................۱۲۷

    ۵-۲-۱۲-۳- یکپارچگی عناصر معماری ................................................................................۱۲۸

    ۵-۲-۱۲-۴- پیچیدگی ...............................................................................................................۱۲۹

    ۵-۳-  مطالعه موردی ۲: خانه الکترونیکی ....................................................................................................۱۳۰

    ۵-۳-۱- اعمال روش SBSAD................................................................................................................۱۳۰

    ۵-۳-۲-  ارزیابی شاخص ها......................................................................................................................۱۴۲

    ۵-۳-۲-۱-   هزینه اعمال تغییرات .....................................................................................۱۴۲

    ۵-۳-۲-۲-   طراحی معماری به اندازه کافی دقیق .........................................................۱۴۳

    ۵-۳-۲-۳-   یکپارچگی عناصر معماری ............................................................................۱۴۳

    ۵-۳-۲-۴-   پیچیدگی ...........................................................................................................۱۴۳

    ۵-۴-  خلاصه ...................................................................................................................................................۱۴۴

     

    فصل ششم – نتیجه گیری

    ۶-۱-  مقدمه ......................................................................................................................................................۱۴۶

    ۶-۲-  مروری بر پایان نامه .............................................................................................................................۱۴۶

    ۶-۳-  دستاورد تحقیق ....................................................................................................................................۱۴۷

    ۶-۴-  ارزیابی راه حل ......................................................................................................................................۱۴۷

    ۶-۵-  رتبه روش پیشنهادی در بین سایر روشها......................................................................................۱۴۹

    ۶-۶-  فرصتهای آتی ........................................................................................................................................۱۵۱

    ۶-۷-  خلاصه ...................................................... .............................................................................................۱۵۲

    مراجع و منابع .......................................................................................................................................................۱۵۳

    منبع:

    [1] Albin, Stephen T., The Art of Software Architecture: Design Methods and

     Techniques, John Wiley & Sons, 2003.

     

    ١٤٥                            

     

     

    [2] Bachmann, Felix, Bass, Len, Chastek, Gary, Donohoe, Patrick, Peruzzi, Fabio,

     The Architecture Based Design Method, Technical Report, CMU.SEI-2000-

     TR-001ESC-TR-2000-001, 2000.

     

    [3] Bachmann, Felix, Bass, Len, Klein, Mark, Preliminary Design of ArchE: A

     Software Architecture Design Assistant, Technical Report, CMU.SEI-2003-TR-

     021ESC-TR-2003-021, 2003.

     [4] Bass, Len, Bergey, John, Clements, Paul, Merson, Paulo, Ozkaya, Ipek, Sangwan,

     Taghvinder, A Comparison of Requirements Specification Methods from a

     Software Architecture Perspective, Technical Report,CMU.SEI-2006-TR-013

     ESC-TR-2006-013, 2006.

     

    nd

    [5] Bass, Len, Clements, Paul, Kazman, Rick, Software Architecture in Practice, 2

     Edition, SEI Series in Software Architecture, Addison-Wesley Professional, 2004.

     

    [6] Booch, Grady, Maksimchuk, Robert A., Engle, Michael W., Young, Bobbi J.,

     Conallen, Jim, Houston, Kelli A.,Object Oriented Analysis and Design with

     Applications, 3nd Edition, The Benjamin.Cummings Publishing Company, 2007.

     

    [7] Bosch, Jan, Design and Use of Industrial Software Architectures,

     University of Karlskrona.Ronneby, 1999.

     

    [8] Bosch, Jan, Molin, Peter, Software Architecture Design: Evaluation and

     Transformation, Research Report, Department of Computer Science and Business

     Administration University of Karlskrona.Ronneby, Sweden, 1997.

     

    [9] Chastek, Gary, Ferguson, Robert, Toward Measures for Software Architectures,

     Technical Note, CMU.SEI-2006-TN-013, 2006.

     

     [10] Clements, Paul, et al., Documenting Software Architectures: Views and

     Beyond, SEI Series in Software Architecture, Addison-Wesley Professional,

     2003.

     

    [11] Crnkovic, Ivica, Larsson , Magnus, BuildingReliableComponent-

     BasedSoftwareSystems, Artech House, 2002.

     

    [12] Fielding, Roy Thomas, Architectural Styles and the Design of Network-based

     Software Architectures, 2000.

     

     [13] Garlan, David, Shaw, Mary, An Introduction to Software Architecture, Advances in

     Software Engineering and Knowledge Engineering, Series on Software Engineering

     and Knowledge Engineering, Vol. 2, World Scientific Publishing Company.

     

     [14] Garlan, David, Shaw, Mary, Software Architecture: Perspectives on an

     Emerging Discipline, Prentice Hall, 1996.

    ١٤٦                            

     

    [15] Garlan, David, Kim, Jung Soo, Analyzing Architectural Styles, Carnegie

     Mellon University, USA, 2006.

     

     

    [16]  Hawthorne, Matthew J., Perry, Dewayne E., Architectural Styles for

     Adaptable Self-Healing Dependable Systems, 2005.

     

     [17] IEEE Standard Classification for Software Anomalies. Technical Report IEEE

     P1044-1993 R2002, IEEE Standards Department, Software Engineering

     Standards Committee, September 2002.

     

    [18] Institute of Electrical and Electronics Engineers Standards board, Recommended

     Practice for Architectural Description of Software-Intensive Systems, IEEE- Std-1471-

     2000, September 2000.

     

    [19] Kaisler ,Stephen H., Software Paradigms, John Wiley & Sons, 2005.

     

    [20] Kruchten, Philippe, The 4+1 View Model of Architecture, IEEE Software

     12,6 , 42-50, 1995.

    [21] Malan, Ruth, Bredemeyer, Dana, Software Architecture:Central Concerns,Key

     Decisions , http:..www.bredemeyer.com.

    [22] McGovern, James, Ambler, Scott W., Stevens, Michael E., Linn, James,

     Sharan, Vikas,  Jo, Elias K., A Practical Guide to Enterprise Architecture,

     Prentice Hall  PTR , October 28, 2003.

     

    [23] Mehta, Nikunj R., Composing Style-based Software Architectures from

    Architectural Primitives, 2004.

     

    [24] Mehta Nikunj R., Medvidovic, Nenad, Phadke, Sandeep, Towards a Taxonomy

     of Software Connectors, http:..www.usc.edu .

     

    [25] Monroe, Robert T., Kompanek, Drew, Melton, Ralph, Garlan, David, Stylized

    Architecture, Design Patterns, andObjects, 1996.

     

    [26] Morisawa, Yoshitomai, Inoue, Katsoru, Torii, Koji, Architectural Styles for

    Distributed Processing Systems and Practical Selection Method, 2002.

     

     [27] Mustapic, Goran, Architecting software for complex Embedded Systems,

    2004.

     

    [28] Nord, Robert L., Wood, William G., Clements,  Paul, Integrating the Quality

     Attribute Workshop (QAW) and the Attribute-Driven Design (ADD)

    ١٤٧                            

     

     

     Method, Technical Note CMU.SEI-2004-TN-017, Carnegie Mellon University,

     2004.

     

    [29] Perry Dewayne E., Wolf, Alexander L.,Foundations for the study of software

     architecture, ACM SIGSOFT Software Engineering Notes, 1992.

     

     [30] Pressman, Roger S., Software Engineering A Practitioners Approach, Fifth Edition,

     Mc Graw Hill, 2001.

     

     [31] Recommended Practice for Architectural Description of Software Intensive

     Systems. Technical Report IEEE P1471-2000, IEEE Standards Department, The

     Architecture Working Group of the Software Engineering Committee,

     2000.

     [32] Shaw, Mary, Clements, Paul, Toward Boxology: Preliminary Classification of

     Architectural Styles, Carnegie Mellon University, Pittsburgh, PA 15213, 1996.

     [33] Schmidt, Douglas, Stal, Michael,  Rohnert, Hans, Buschmann, Frank, Pattern-

     Oriented Software Architecture: Patterns for Concurrent and Network

     objects, Volume 2, John Wiley & Sons, 2000.

     [34]  Software Engineering Institute (SEI), Carnegie Mellon University, How Do You

     Define Software Architecture, from

     www.sei.cmu.edu.architecture.definitions.html

    [35] Wojcik, Rob, Bachmann, Felix, Bass, Len, Clements, Paul, Merson, Paulo, Nord, Robert,

     Wood, Bill, Attribute-Driven Design(ADD) ,Version  2.0 ,Technical Report ,

     CMU.SEI-2006-TR-023 ,ESC-TR-2006-         023 , SEI , November, 2006.

     [36] Wood, William G., A Practical Example of Applying Attribute-Driven

     Design (ADD), Version 2.0, Technical Report, CMU.SEI-2007-TR-005ESC-

     TR-2007-005, February 2007. 

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