اسم المقرر
|
الرمز/الرقم
|
code/no
|
عدد الوحدات
|
نظري
|
عملي
|
تدريب
|
معتمد
|
هندسة برمجيات 1
|
حاسب 351
|
CPCS 351
|
3
|
1
|
0
|
3
|
Software Engineering 1
|
المتطلبات السابقة
|
حاسب 204
|
أهداف المقرر:
يهدف هذا المقرر إلى تعليم الطالب المفاهيم الأساسية والمهارات اللازمة لهندسة البرمجيات. و يغطي المفاهيم والمهارات اللازمة لبناء التطبيقات. و يعرض المقرر احدث الأساليب والمهارات والتقنيات المستخدمة في هندسة البرمجيات والمستمدة من الواقع التطبيقي. يركز المقرر بصفة خاصة على العمل الجماعي في بناء البرمجيات ومهارات العمل كجزء من فريق.
محتوى المقرر:
- 1. مقدمة لهندسة البرمجيات والتمييز بين التطبيقات الضخمة والصغيرة والتحديات المتعلقة بالأخيرة.
- 2. الحلقة التسلسلية لبناء وهندسة البرمجيات.
- 3. المفاهيم الأساسية لإدارة مشاريع بناء البرمجيات وبناء فرق العمل وإدارتها.
- 4. مفاهيم تحليل البرمجيات: جمع وتصنيف وتحديد المتطلبات وبناء حالات الاستعمال، بناء: مخططات تدفق البيانات، قواميس البيانات، مخططات وجداول القرار، نماذج البرمجة الشيئية .
- 5. مفاهيم تصميم البرمجيات: بناء الوحدات البرمجية، الاحتواء البرمجي، التجريد البرمجي، التصميم الهيكلي، مخططات التفاعل التسلسلي.
- 6. كتابة البرمجيات واختبارها و صيانة البرمجيات وتحسينها.
- 7. حساب التكاليف الزمنية والموارد اللازمة لبناء البرمجيات.
المهارات المتوقعة من هذه المادة:
- 1. الإلمام التام بالفروق بين البرمجيات الكبيرة والصغيرة من حيث طرق البناء والتصميم.
2. المعرفة التامة بالمراحل التسلسلية لبناء البرمجيات وحدود متطلبات كل مرحلة والعلاقات فيما بينها من حيث المدخلات والمخرجات لكل مرحلة.
3. القدرة على جمع وتحليل متطلبات البرمجيات وإنشاء وفهم المخططات التحليلية.
4. القدرة على بناء وفهم مخططات التصميم البرمجية واستعمال مفاهيم البرمجة الشيئية في تصميم البرمجيات.
5. المعرفة بطرق بناء وكتابة البرمجيات واختبارها.
6. المهارة الفنية والشخصية اللازمة للمشاركة في فرق عمل تطوير البرمجيات.
الكتاب المقرر:
C. Ghezzi, M. Jazayeri, and D. Mandrioli, "Fundamentals of Software Engineering," 2nd Edition 2002, Prentice Hall, ISBN 010133056996