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

Software Architecture

مقطع: تحصیلات تکمیلی گرایش: نرم‌افزار
نوع درس: نظری تعداد واحد: ۳
پیش‌نیاز: – هم‌نیاز: –

هدف کلی

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

سرفصل‌ها

  1. تعریف معماری نرم‌افزار
  2. زمینه معماری نرم‌افزار
  3. توصیف ویژگی‌های کیفیت
  4. سبک‌های معماری
  5. الگوهای معماری و معماری تمیز
  6. تاکتیک‌های معماری
  7. طراحی مبتنی بر ویژگی
  8. مستندسازی معماری نرم‌افزار
  9. زبان‌های توصیف معماری
  10. ارزیابی معماری نرم‌افزار
  11. نگهداشت و بازسازی معماری نرم‌افزار
  12. معماری خط محصول نرم‌افزار

ارزیابی پیشنهادی

  • فعالیت‌های کلاسی در طول نیم‌سال: ۴۰ درصد نمره
  • آزمون پایان نیم‌سال: ۶۰ درصد نمره

منابع پیشنهادی

  1. L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. 4th Edition, Addison-Wesley Professional, 2021.
  2. M. Richards and N. Ford. Fundamentals of Software Architecture: An Engineering Approach. O’Reilly Media, 2020.
  3. P. Pelliccione, R. Kazman, I. Weber, and A. Liu. Software Architecture: Research Roadmaps from the Community. Springer Nature, 2023.
  4. M. Robert and C. Clean. architecture: a craftsman‘s guide to software structure and design. Prentice Hall, 2018.