You are not allowed to perform this action

طراحی شیءگرای سیستم‌ها

Object-Oriented Systems Design

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

اهداف درس

هدف این درس، آشنا کردن دانشجویان کارشناسی نرم‌افزار با مفاهیم، اصول و روش‌های تحلیل و طراحی شیءگرای سیستم‌های نرم‌افزاری است. دانشجویان ضمن آشنایی کامل با یک متدولوژی مطرح تحلیل و طراحی شیءگرا (نسل سوم)، با الگوهای طراحی GoF و چگونگی به‌کارگیری آن‌ها نیز آشنا خواهند شد.

ریز مواد

  • مقدمه - مروری بر شیءگرایی و معرفی تاریخچه تکاملی تحلیل و طراحی شیءگرا (۱ جلسه)
  • مروری بر زبان مدل‌سازی یکپارچه UML)) (۴ جلسه)
  • مراحل و جریان‌های کاری در USDP
    • مراحل چهارگانه (۳ جلسه)
    • جریان کاری خواسته‌ها - شناسایی و مدل‌سازی موارد کاربرد (۳ جلسه)
    • جریان کاری تحلیل
      • شناسایی و مدل‌سازی اشیاء و کلاس‌های تحلیل (۲ جلسه)
      • شناسایی و مدل‌سازی روابط بین اشیاء و کلاس‌های تحلیل (۲ جلسه)
      • بسته‌های تحلیل (۱ جلسه)
      • محقق‌سازی موارد کاربرد در تحلیل (۲ جلسه)
      • مدل‌سازی فعالیت‌ها (۲ جلسه)
    • جریان کاری طراحی
      • شناسایی و مدل‌سازی اشیاء و کلاس‌های طراحی (۱ جلسه)
      • پالایش روابط (۱ جلسه)
      • واسط‌ها و مؤلفه‌ها (۱ جلسه)
      • محقق‌سازی موارد کاربرد در طراحی (۱ جلسه)
    • جریان کاری پیاده‌سازی (۱ جلسه)
  • الگوهای طراحی
    • اصول و قواعد طراحی: اصول ششگانه پایه، الگوهای GRASP، طراحی بر اساس قرارداد (۱ جلسه)
    • الگوهای طراحی GoF
      • الگوهای آفرینشی: Factory Method، Abstract Factory، Builder، Prototype، Singleton (۱ جلسه)
      • الگوهای ساختاری: Adapter، Bridge، Composite، Decorator، Facade، Proxy (۱ جلسه)
      • الگوهای رفتاری: Chain of Responsibility، Iterator، Mediator، Memento، Observer، State، Strategy، Visitor (۲ جلسه)

ارزیابی

  • آزمون: آزمون‌های میان‌ترم و پایان‌ترم (۶۰٪ کل نمره)
  • تمرین و پروژه: تمرینات در قالب یک پروژه درسی تحلیل و طراحی، تعریف شده و بتدریج در طول نیم‌سال انجام و تحویل داده می‌شوند (۴۰٪ کل نمره).

مراجع

  1. J. Arlow and I. Neustadt. UML 2 and the Unified Process. 2nd Edition, Addison-Wesley, 2005.
  2. H. Gomaa. Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures. Cambridge University Press, 2011.
  3. G. Booch, R. A. Maksimchuk, M. W. Engel, B. J. Young, J. Conallen, and K. A. Houston. Object-Oriented Analysis and Design with Applications. 3rd Edition, Addison-Wesley, 2007.
  4. E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
  5. C. Larman. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development. 3rd Edition, Prentice-Hall, 2004.