معماری نرم‌افزار

Software Architecture

شماره درس: ۴۰۶۴۶ تعداد واحد: ۳
مقطع: کارشناسی ارشد نوع درس: نظری
پیش‌نیاز: – هم‌نیاز: –

اهداف درس

هدف اصلی از این درس آشنایی با مفاهیم معماری نرم‌افزار، جایگاه آن، فرایند تدوین معماری، مستند‌سازی و ارزیابی معماری است که شامل اهداف جزئی زیر می‌باشد:

ریز مواد

  1. تعاریف معماری نرم‌افزار، پیشران‌های معماری (۲ جلسه)
  2. چرخه حیات معماری (۱ جلسه)
  3. نیازمندی‌های وظیفه‌مندی و غیر وظیفه‌مندی (۳ جلسه)
  4. نقش معماری نرم‌افزار در دستیابی به ویژگی‌های کیفی نرم‌افزار (۱ جلسه)
  5. جایگاه معماری نرم‌افزار در فرایند توسعه محصولات نرم‌افزاری (۱ جلسه)
  6. ساختارها و منظر‌های معماری (۲ جلسه)
  7. تکنیک‌ها و متدهای طراحی معماری (۱ جلسه)
  8. تاکتیک‌ها، الگوها و سبک‌های معماری (۲ جلسه)
  9. طراحی معماری و روش‌های دستیابی به خصوصیات کیفی (۵ جلسه)
  10. مستند‌سازی معماری و زبان‌های توصیف معماری (۱ جلسه)
  11. روش‌های ارزیابی معماری نرم‌افزار (۳ جلسه)
  12. بازیابی معماری نرم‌افزار (۱ جلسه)
  13. معماری نرم‌افزار خاص دامنه (۱ جلسه)
  14. معماری خط تولید نرم‌افزار (۲ جلسه)
  15. معماری سرویس‌گرا (۱ جلسه)
  16. توسعه بر پایه معماری مولفه محور (۱ جلسه)
  17. معماری محاسبات ابری (۱ جلسه)
  18. مباحث نوین در معماری نرم‌افزار (۳ جلسه)
  19. آینده معماری نرم‌افزار (۱ جلسه)

ارزیابی

مراجع

  1. L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. 3rd edition, Addison-Wesley, 2013.
  2. L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. 2nd edition, Addison-Wesley, 2003.
  3. P. Clements, et al. Documenting Software Architectures: Views and Beyond. Addison-Wesley, 2003.
  4. A.J. Lattanze. Architecting Software Intensive Systems: A Practitioner’s Guide. Taylor and Francis/Auerbach, 2008.
  5. M. Shaw and D. Garlan. Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, 1996.