
يتكون المصطلح هندسة البرمجيات من كلمتين، البرمجيات والهندسة ، البرمجيات أكثر من مجرد كود برنامج. البرنامج هو كود قابل للتنفيذ، يخدم غرضًا حسابيًا. يُعتبر البرنامج مجموعة من أكواد البرمجة القابلة للتنفيذ والمكتبات والوثائق المرتبطة بها. عندما يتم إنشاء البرمجيات لمتطلب معين، تسمى منتجًا برمجيًا. من ناحية أخرى، تتعلق الهندسة بتطوير المنتجات باستخدام مبادئ وطرق علمية محددة جيدًا.
دورة حياة تطوير البرمجيات SDLC) System Development Life Cycle) باختصار، هي عبارة عن تسلسل محدد جيدًا ومنظمة من المراحل في هندسة البرمجيات لتطوير المنتج البرمجي المقصود.
يعد تقديم منتج عالي الجودة، والحفاظ على التكلفة ضمن قيود ميزانية العميل وتسليم المشروع وفقًا للجدول الزمني، جزءًا أساسيًا من تنظيم البرمجيات. هناك العديد من العوامل، سواء الداخلية أو الخارجية، والتي قد تؤثر على مثلث القيود الثلاثي هذا. يمكن لأي من العوامل الثلاثة أن يؤثر بشدة على العاملين الآخرين.
متطلبات البرنامج هي وصف لخصائص ووظائف النظام المستهدف. تنقل المتطلبات توقعات المستخدمين من منتج البرنامج. يمكن أن تكون المتطلبات واضحة أو مخفية، معروفة أو غير معروفة، متوقعة أو غير متوقعة من وجهة نظر العميل.
تصميم البرمجيات هو عملية تحويل متطلبات المستخدم إلى شكل مناسب، مما يساعد المبرمج في تكويد البرمجيات وتنفيذها.
يتضمن تحليل وتصميم البرمجيات جميع الأنشطة التي تساعد في تحويل مواصفات المتطلبات إلى التنفيذ. تحدد مواصفات المتطلبات جميع التوقعات الوظيفية وغير الوظيفية من البرمجيات. تأتي مواصفات المتطلبات هذه في شكل مستندات يمكن للإنسان قراءتها وفهمها، ولا علاقة للكمبيوتر بها.
تصميم البرمجيات هو عملية تصور متطلبات البرمجيات في عملية التنفيذ. يأخذ تصميم البرمجيات متطلبات المستخدم كتحديات ويحاول إيجاد الحل الأمثل، يتم وضع خطة لإيجاد أفضل تصميم ممكن لتنفيذ الحل المقصود.
واجهة المستخدم هي واجهة التطبيق الأمامية التي يتفاعل معها المستخدم من أجل استخدام البرنامج. يمكن للمستخدم التلاعب بالبرنامج والتحكم فيه وكذلك الأجهزة من خلال واجهة المستخدم. اليوم، توجد واجهة المستخدم في كل مكان تقريبًا حيث توجد التكنولوجيا الرقمية، بدءًا من أجهزة الكمبيوتر والهواتف المحمولة والسيارات ومشغلات الموسيقى والطائرات والسفن وما إلى ذلك.
يشير مصطلح التعقيد إلى حالة الأحداث أو الأشياء التي لها روابط مترابطة متعددة وهياكل معقدة للغاية. في برمجة البرمجيات، مع تحقيق تصميم البرمجيات، يصبح عدد العناصر وترابطاتها ضخمًا تدريجيًا، مما يجعل من الصعب جدًا فهمه دفعة واحدة.
في عملية الترميز، تتضاعف أسطر التعليمات البرمجية، وبالتالي يزداد حجم البرنامج. تدريجيًا، يصبح من المستحيل تقريبًا تذكر تدفق البرنامج. إذا نسي المرء كيف يتم إنشاء البرنامج والبرامج والملفات والإجراءات الأساسية الخاصة به، يصبح من الصعب جدًا مشاركة البرنامج وتصحيح أخطائه وتعديله. الحل لهذه المشكلة هو البرمجة المنظمة.
اختبار البرمجيات هو تقييم البرمجيات وفقًا للمتطلبات التي تم جمعها من المستخدمين ومواصفات النظام. يتم إجراء الاختبار على مستوى المرحلة في دورة حياة تطوير البرمجيات أو على مستوى الوحدة في كود البرنامج. يتكون اختبار البرمجيات من التحقق والتحقق.
تعتبر صيانة البرامج جزءًا مقبولًا على نطاق واسع من SDLC في الوقت الحاضر. وهي تعني جميع التعديلات والتحديثات التي تتم بعد تسليم منتج البرنامج. هناك عدد من الأسباب التي تجعل التعديلات مطلوبة
CASE تعني هندسة البرمجيات بمساعدة الحاسوب Computer Aided Software Engineering. وتعني تطوير وصيانة مشاريع البرمجيات بمساعدة أدوات برمجية آلية مختلفة.
هندسة البرمجيات هي فرع من فروع الهندسة يرتبط بتطوير منتجات البرمجيات باستخدام مبادئ وأساليب وإجراءات علمية محددة جيدًا. وتكون نتيجة هندسة البرمجيات منتجًا برمجيًا فعالًا وموثوقًا به. كماأإن إدارة مشاريع البرمجيات لها نطاق أوسع من عملية هندسة البرمجيات لأنها تتضمن الاتصالات والدعم قبل وبعد التسليم وما إلى ذلك. وتوفر لك هذه الدورة التعليمية فهمًا أساسيًا لمنتج البرمجيات وتصميم البرمجيات وعملية التطوير وإدارة مشاريع البرمجيات وتعقيدات التصميم وما إلى ذلك. في نهاية الدورة يجب أن تكون مجهزًا بفهم جيد لمفاهيم هندسة البرمجيات. ومن خلال هذه الدورة سوف نتعلم (دورة حياة تطوير البرمجيات ، إدارة المشاريع البرمجية ، متطلبات تصميم البرمجيات ، أساسيات تصميم البرمجيات ، أدوات تحليل وتصميم البرمجيات ، استراتيجيات تصميم البرمجيات ، تصميم واجهة مستخدم البرنامج ، تعقيد تصميم البرمجيات ، تنفيذ البرمجيات ، نظرة عامة على اختبار البرمجيات ، نظرة عامة على صيانة البرمجيات ، نظرة عامة على أدوات CASE البرنامج). ما تعنيه كلمة هندسة البرمجيات. فهي تتكون المصطلح من كلمتين، البرمجيات والهندسة. البرمجيات أكثر من مجرد كود برنامج. البرنامج هو كود قابل للتنفيذ، يخدم غرضًا حسابيًا. يُعتبر البرنامج مجموعة من أكواد البرمجة القابلة للتنفيذ والمكتبات والوثائق المرتبطة بها. عندما يتم إنشاء البرمجيات لمتطلب معين، تسمى منتجًا برمجيًا. من ناحية أخرى، تتعلق الهندسة بتطوير المنتجات باستخدام مبادئ وطرق علمية محددة جيدًا. وتسمى عملية تطوير منتج برمجي باستخدام مبادئ وأساليب هندسة البرمجيات بتطور البرمجيات. ويشمل ذلك التطوير الأولي للبرمجيات وصيانتها وتحديثها، حتى يتم تطوير منتج برمجي مرغوب فيه، والذي يلبي المتطلبات المتوقعة.