مهندسی نیازمندیها
Requirements Engineering
مقطع: تحصیلات تکمیلی | گرایش: نرمافزار |
نوع درس: نظری | تعداد واحد: ۳ |
پیشنیاز: – | همنیاز: – |
هدف کلی
پیادهسازی یک سیستم کامپیوتری با شکست مواجه خواهد شد اگر به نیازمندیهای آن سیستم به درستی پاسخ داده نشود. همراه با گسترش و افزایش پیچیدگی سیستمهای کامپیوتری، شناسایی دقیق نیازمندیهای آنها نیز به فرآیندی پیچیده تبدیل گردیده است. بنابراین، لازم است تا از روشها و فنونی برای شناسایی، توصیف و مستندسازی، مدلسازی، و اعتبارسنجی نیازمندیهای سیستمهای کامپیوتری استفاده شود. هدف از این درس، آشناسازی دانشجویان مقاطع تحصیلات تکمیلی با این روشها و فنون است. به طور خاص، مباحثی که در این درس مطرح خواهند شد عبارتند از: (۱) استخراج و شناسایی نیازمندیهای کارکردی و غیرکارکردی، (۲) سازماندهی و اولویتبندی نیازمندیها، (۳) فنون توصیف و مستندسازی نیازمندیها، (۴) فنون مدلسازی نیازمندیها، (۵) فنون تحلیل، وارسی، و اعتبارسنجی نیازمندیها.
سرفصلها
- مبانی مهندسی نیازمندیها
- درک دامنه مسئله و استخراج نیازمندیها
- ارزیابی نیازمندیها
- توصیف و مستندسازی نیازمندیها
- تضمین کیفی نیازمندیها
- تکامل نیازمندیها و ردیابی
- مقصودگرایی در مهندسی نیازمندیها
- مدلسازی نیازمندیها
- وارسی و اعتبارسنجی نیازمندیها
- مدیریت نیازمندیها
ارزیابی پیشنهادی
- آزمونهای میانترم و پایانترم: ۶۰ درصد نمره
- تکلیفهای پژوهشی: ۴۰ درصد نمره
منابع پیشنهادی
- P. A. Laplante and M. H. Kassab. Requirements Engineering for Software and Systems. 4th Edition, CRC Press, 2022.
- A. Lamsweerde. Requirements Engineering: From System Goals to UML Models to Software Specifications. Wiley, 2018.
- J. Dick, E. Hull, and K. Jackson. Requirements Engineering. 4th Edition, Springer International Publishing, 2017.