| 1 |
آشنایی با کلیت مهندسی نرم افزار |
|
1-1 مهندسی نرم افزار چیست؟ |
|
2-1 چرا مهندسی نرم افزار؟ |
| 2 |
آشنایی با کلیت چرخه عمر نرم افزار |
|
1-2 تدوین خواستهها |
|
2-2 طراحی |
|
3-2 پیاده سازی و آزمایش |
|
4-2 تحویل، و عملیاتی کردن نرم افزار |
|
5-2 راهبری |
|
6-2 نگهداری |
| 3 |
افراد درگیر در فرایند نرم افزار (قسمت های 1.1 تا 1.3) |
|
1-3 صاحبکاران که تصمیم گیری می کنند و هزینه می کنند |
|
2-3 کاربران نرم افزار، که از نزم افزار، مستقیم یا غیر مستقیم، استفاده می کنند. |
|
3-3 توزیع کنندگان و فروشندگان نرم افزار، که پل واسط تولید کنندگان و صاحبکاران هستند |
|
4-3 مهندسان نرم افزار در سطوح مختلف و همکاران آنها |
|
|
1-4-3 معماران نرم افزار |
|
|
2-4-3 مهندسان خواسته ها |
|
|
3-4-3 تحلیل گران |
|
|
4-4-3 طراحان نرم افزار |
|
|
5-4-3 پیاده سازان و آزمانیش کنندگان نرم افزار |
|
|
6-4-3 راهبران نرم افزار |
|
|
7-4-3 نگهداران نرم افزار (کشف و رفع خطا، تغییر و بهبود نرم افزار) |
| 4 |
جایگاه شغلی کاردانان در فرایند نرم افزار |
|
1-4 نقشهای مستقل: راهبری نرم افزار، برنامه نویسی |
|
2-4 فهرست مهارتهای ضروری (خواندن متون و نقشه ها، راهبری نرم افزار، برنامه نویسی، آزمایش، طراحی واسط کاربر، ارتباطات انسانی). بخش اصلی درس تلاش برای معرفی و ایجاد این مهارتها در دانشجویان است. |
|
3-4 نقشهای همکار برای مهندسین ارشدتر؛ و حتی نقش مهندسین ارشدتر |
| 5 |
خواندن مستندات و نقشه های مرتبط (پیش نیاز مهم) |
|
1-5 متون کمک |
|
2-5 متون خواسته های |
|
3-5 کمک های موجود |
|
4-5 دیکشنری داده ها |
|
5-5 خواندن شبه کد |
|
6-5 فلوچارت |
|
7-5 نمودار زمینه (context diagram) |
|
8-5 نمودار ساختار (block diagram) |
|
9-5 نمودارهای مختلف مدل شیء (مثل نمودار کلاس و فعالیت) |
|
10-5 نمودارهای مدیریت نرم افرار، مثل نمودار گانت و نمودار فعالیت ها و منابع |
| 6 |
راهبری نرم افرار (نقش مستقل) |
|
1-6 قدرت استفاده از امکانات آموزشی و کمکی نرم افزار |
|
2-6 نصب نرم افزار در محیط های مختلف |
|
|
1-2-6 رعایت حقوق |
|
|
2-2-6 رعایت ایمنی |
|
|
3-2-6 رعایت حریم شخصی |
|
3-6 تنظیم نرم افزار مطابق شرایط و خواست هر مخاطب |
|
4-6 کمک به کاربران |
|
5-6 برقراری ارتباط احتمالی با دیگر همکاران؛ شبکه کردن برنامه ها |
| 7 |
برنامه سازی (نقش مستقل) |
|
1-7 تسلط به محیط برنامه سازی انتخاب شده |
|
2-7 تسلط به زبان برنامه سازی |
|
3-7 تبدیل مستندات طرح ها به برنامه |
|
4-7 کد نویس، نوشتن برنامه |
|
5-7 رعایت عملی ملاحظات خوانائی کد |
|
6-7 برنامه نویسی خوب |
| 8 |
آزمایش کد نوشته شده (نقش مستقل) |
|
1-8 منظور از آزمایش |
|
2-8 مبنای سنجس |
|
3-8 چرا انواع آزمایش |
|
4-8 آزمایش جعبه سیاه |
|
5-8 آزمایش جعبه سفید |
|
6-8 آزمایش رگرسیون (اطمینان از درستی تغییرات) |
|
7-8 مستندسازی |
| 9 |
مجتمع سازی مؤلفه های ساخته شده و آزمایش حاصل اجتماع |
|
1-9 منظور از مجتمع سازی |
|
2-9 چرا داشتن نظم و سیاست مشخص در مجتمع سازی |
|
3-9 مجتمع سازی تدریجی |
|
4-9 آزمایش در مقیاس بزرک |
|
5-9 باز هم آزمایشهای مختلف |
| 10 |
مهارتهای ارتباطی |
|
10-1 برای ارتباط با کاربران |
|
10-2 برای ارتباط با همکاران سطوح بالاتر و هم سطح |
| 11 |
پایاندهی: اینکه هر فعالیتی در هر مرحله ای مطابق خواست مخاطب همان مرحله به مخاطب تحویل گردد (مطابق) |
|
1-11 منظور از پایاندهی |
|
2-11 پایاندهی از دید تخصصی |
|
3-11 پایاندهی از دید مدیریتی |
|
4-11 پایان دهی خوب برای مشتری جدید |
|
5-11 پایاندهی به عنوان یک نوع کار |
| 12 |
طراحی واسط کاربر |
|
1-12 قابلیت استفاده |
|
2-12 شکل های مختلف واسط کاربر |
|
3-12 نکات مشترک |
|
4-12 در مورد فهرست ها |
|
5-12 در مورد فرم ها |
|
6-12 در مورد پیام ها |
|
7-12 در مورد راهنمای کاربر |
| 13 |
معیارهای کیفیت در کار کاردانان |
|
1-13 مشخصات فردی |
|
2-13 مشخصات کار تخصصی |
|
3-13 در ارتباط با افراد |
|
4-13 رفتارهای خوب در برنامه سازی |
|
5-13 رعایت استانداردهای حرفه ای و محیط کاری |
|
6-13 مستند سازی |
|
7-13 پایاندهی |