هي نوع من الهندسة يهتم بتطوير و بناء البرامج و تحسينها بطرق هندسية على عدة مراحل محددة هي:
1-تحليل متطلبات و مواصفات البرنامج
2-تصميم البرنامج
3-برمجة البرنامج
4-اختبار البرنامج
5-صيانة البرنامج
تُطبق أساساً هندسة البرمجيات بهذه المراحل في بناء البرامج كبيرة الحجم بالذات،
كبرامج الشركات و البرامج التقنية أو أنظمة الإدارة أو التشغيل, ذلك لأنها
تحتاج إلى تحليل وتفصيل أكثر في مواصفاتها، و إلى تصميم بنيتها بطريقة
مناسبة و منظمة ليسهّل ذلك عملية الإضافة عليها لاحقاً و في اختبارها و
صيانتها.
الهدف الأساسي من ذلك هو بناء برامج ذات مواصفات و جودة عالية High Quality Softwares.
بصورة مختصرة، تعريف لكل مرحلة من التطوير و ما ينتج عنها:
تحليل متطلبات و مواصفات البرنامج:
وفيها يتم جمع مواصفات البرنامج من الزبون، ثم دراستها و تحليلها و بيان
الغامض و المتعارض منها، الناتج من هذه المرحلة: سرد المواصفات بتحليلاتها
في مستند خاص يسمى (SRS (Software Requirements Specification -
مستند مواصفات متطلبات البرنامج.
تصميم البرنامج:
ولا يقصد فيها تصميم الشكل المظهري للبرنامج فقط، بل تصميم البرنامج كبنية
و كلاسات و كائنات و تحليله من هذه النواحي. وتعتبر هذه المرحلة من أهم
المراحل حيث تحدد فيها جودة البرنامج و تركيبه، و تستخدم اللغة الرسومية
UML لهذا الغرض. توفر الـ UML العديد من التصاميم و الرسوم البيانية،
كتصميم حالة الاستخدام Use Case Diagram
و تصميم تسلسل الأحداث Sequence Diagram.
الناتج من هذه المرحلة عرض التصاميم و تحليلاتها مع مواصفات البرنامج في
مستند باسم (SDD (Software Design Description - مستند وصف تصميم
البرنامج.
برمجة البرنامج:
وفيها يتم كتابة كود البرنامج. يعتمد المبرمج على مستند الـ SDD “فقط”،
لذا، يجب كتابة مستند الـ SDD بتفصيل و عرض التصاميم بوضوح لمساعدة
المبرمج على البرمجة.
النتيجة: الكود المصدري أو Source Code للبرنامج.
اختبار البرنامج:
أولاًً تُحدد الأساليب المناسب لاختبار البرنامج و تدرس بعناية، ثم تحدد
مجموعة من حالات الاختبار أو Test Cases لتطبيقها على البرنامج و دراسة
القيم الناتجة منها. في حالة وجود أخطاء و عيوب، يُعاد البرنامج إلى
المختصصين في المراحل السابقة لفهم المشكلة و إصلاحها.
النتيجة: إصلاح عيوب البرنامج.
صيانة البرنامج:
وهذه المرحلة تطبق بعد تسليم البرنامج إلى الزبون، حيث تهتم بصاينة
المشاكل التي لم تكتشف في مرحلة الاختبار و تحديث البرنامج باستمرار
لمواكبة التغييرات التقنية. و يوجد العديد من المراحل الأخرى كمرحلة توثيق
معلومات التطوير في مستندات ، تسويق البرنامج ، التدريب، و غيرها.
اتمنى تفاعلكم معنا بكل ماتعرفون عن هذا التخصص لإفادة اعضاءنا
تحياتي حسن محمد البحر مدير المنتدى
_________________