Coconote
AI notes
AI voice & video notes
Try for free
💻
مقدمة في هندسة البرمجيات وأهميتها
Aug 14, 2024
ملاحظات عن محاضرة هندسة البرمجيات
مقدمة
الهدف من الدورة هو دراسة هندسة البرمجيات.
المرجع الرئيسي هو كتاب "سمر فيل" الإصدار العاشر.
أهمية هندسة البرمجيات
البرمجيات أصبحت جزءًا أساسيًا من جميع جوانب الحياة.
تكلفة البرمجيات تتجاوز تكلفة الأجهزة في كثير من الحالات.
الفشل في مشاريع البرمجيات يعود إلى:
التعقيد الكبير للبرمجيات.
عدم استخدام أساليب هندسة البرمجيات.
تعريف البرمجيات
البرمجيات تتكون من:
برنامج حاسوبي مكتوب بلغة برمجة.
الوثائق المرتبطة به.
يجب أن تكون البرمجيات:
ذات وظائف محددة.
عالية الأداء.
قابلة للصيانة.
موثوقة (Dependable).
سهلة الاستخدام (Usable).
هندسة البرمجيات
هندسة البرمجيات هي مجال يهتم بجميع جوانب تطوير البرمجيات.
الأنشطة الأساسية في هندسة البرمجيات تشمل:
تحديد المواصفات (Software Specification).
تطوير البرمجيات (Software Development).
التحقق من البرمجيات (Software Validation).
تطوير البرمجيات بعد الاستخدام (Software Evolution).
الفرق بين هندسة البرمجيات وعلوم الحاسوب
علوم الحاسوب تركز على النظريات والأساسيات.
هندسة البرمجيات تركز على التطبيق العملي للنظريات.
تحديات هندسة البرمجيات
تنوع الأجهزة والأنظمة.
التغيرات الاجتماعية والبيusiness.
الحاجة إلى تطوير برمجيات موثوقة.
تكاليف الصيانة والتطوير.
أنواع البرمجيات
البرمجيات المستقلة (Standalone Applications):
تعمل على جهاز واحد.
تطبيقات المعاملات التفاعلية (Interactive Transaction Based Applications):
تعمل على خادم ويمكن الوصول إليها من عدة أجهزة.
الأنظمة المضمنة (Embedded Systems):
أنظمة صغيرة تعمل على أجهزة محددة.
أنظمة معالجة البيانات الكبيرة (Batch Processing Systems):
تتعامل مع كميات كبيرة من البيانات.
أنظمة الترفيه (Entertainment Systems):
مثل مشغلات الفيديو والألعاب.
أنظمة المحاكاة (Modeling and Simulation Systems):
تحاكي أنظمة حقيقية.
أنظمة جمع البيانات (Data Collection Systems):
تجمع المعلومات من البيئة.
أنظمة الأنظمة (Systems of Systems):
تتكون من عدة أنظمة مترابطة.
الخصائص الأساسية للبرمجيات الجيدة
قابلية الصيانة:
يجب أن تكون سهلة التعديل.
الاعتمادية والأمان:
يجب أن تكون موثوقة ولا تحتوي على مشاكل أمنية.
الكفاءة:
يجب أن تستخدم الموارد بكفاءة.
القبول:
يجب أن تكون مقبولة من قبل المستخدمين.
أهمية الأخلاقيات في هندسة البرمجيات
احترام الخصوصية والسرية.
الالتزام بالمستوى المناسب من الكفاءة.
احترام الملكية الفكرية.
استخدام المهارات بشكل أخلاقي.
خلاصة
هندسة البرمجيات أصبحت مجالًا حيويًا في عصرنا الحالي بسبب الاعتماد المتزايد على البرمجيات في جميع مجالات الحياة.
ستتم مناقشة المزيد من التفاصيل في المحاضرات القادمة.
📄
Full transcript