التي قد يبدو بعضها ليس له علاقة بالبرمجة وهناك الكثير من التصورات والنماذج في هندسة
البرمجيات تصف عملية إنتاج برنامج والخطوات اللازمة لذلك كما أن هذه الدورة خاضعة
للتطوير دائما؛ حيث بالإضافة للدورات الكلاسيكية؛ ظهر مفهوم المنظومة المرنة ( ع1زع/
085) والتي تتخلي عن النموذج الثابت للمنظومة الكلاسيكية في سبيل المزيد من حرية
الحركة للمشروع
و فيما يلي عرض لإحدى أشهر دورات حياة النظام البرمجي الكلاسيكية وهي دورة الشلال
كتابة وثيقة الشروط الخارجية والداخلية
وثيقة الشروط الخارجية يتم أخذها من الزبون تحتوي الوثيقة على متطلبات الزبون في ما يخص
مواصفات البرنامج الذي يجب إنشاؤه ثم يتم تحليل المتطلبات بشكل أولي ثم كتابة وثيقة شروط
داخلية د تحتوي على تفسير المواصفات التي يريدها الزبون بدقة أكبر؛ وبطريقة تتماشى مع
مصطلحات المبرمجين قد تكون طلبات الزبون متعارضة وفي هذه الحالة يتم الرجوع إليه لتنقيح
وثيقة الشروط ثم يتم تحديد عدد الساعات اللازمة للعمل وحساب التكلفة
التحليل
وتوصف هذه المهام بدقة تامة؛ كما تدرس الجدوى المرجوة من البرنامج؛ فالمستخدم مثلا يضع
تصوراً للبرنامج ليقوم بعمليات معينة؛ ومهمة مهندس البرمجيات في هذه المرحلة هي استخاتصض
هذه الأفكار وتحديدها؛ لذلك فهي تتطلب مهارة عالية في التعامل مع الزبائن؛ وقدرة على التحليل
الصحيح ينتج في نهاية هذه المرحلة وثيقة تدعى جدول الشروط والمواصفات دينامكاميد
في هذه المرحلة؛ تَقَ تقسم البرمجية إلى كتل وتعرف العلاقات بين هذه الكتل ثم توضع
الخوارزميات الملائمة لكل كتلة في نهاية هذه العملية تكون البرمجية جاهزة لعملية الترميز؛ كما
يتم اختيار لغة أو لغات البرمجة الملائمة لهذا البرنامج
ثم تحول إلى لغة الآلة التي يتعامل بها جهاز الحاسب فقط
الاختبار والتكاملية
تجمع الكتل مع بعضها ويختبر النظام للتأكد من موافقته لجدول الشروط والمواصفات؛ وخاصة
إذا كانت لكتل قد كتبت من قبل عدة أعضاء في الفريق
التوثيق
بغرض الصيانة والتطوير يفضل عادة أن يترافق التوثيق مع كل مرحلة من المراحل السابقة
واللاحقة؛ وأن يكون هناك فريق خاصض يهتم بعملية التوثيق لجميع المشاكل والحلول التي يمكن
أن تظهر أثناء بناء البرمجية وبدون التوثيق قد يصل مصنع البرمجية ٍ يه إلى مرحلة لا يعود بعدها
قادراً على متابعة صيائتها وتطويرها؛ مما يزيد الكلفة المادية والزمنية الخاصة بهذه البرمجية
إلى حدود غير متوقعة؛ أو بمعنى آخر الفشل في بناء برمجية ذات جودة عالية ودورة حياة
طويلة وهناك أكثر من طريقة للتوثيق -توثيق المبرمج وهو ممكن أن يكون بأضافة تعليقات
داخل الشفرة البرمجية -توثيق المحلل بكتابة مستندات شرح لدورة البرنامج المستندية وخلافة -
توثيق مختبر النظام وفيها يتم تسجيل نقاط الخال في البرنامج 2 لس
الصيانة والتطوير
إن هذه المرحلة هي المرحلة الأطول في حياة النظام البرمجي لبقاء النظام قادراً على مواكبة
التطورات والمعدات الحديثة؛ جزء من هذه المرحلة يكون في تصحيح الأخطاء؛ والجزء الآخر
يكون في التطوير وإضافة تقنيات جديدة إن هذه الخطوات كما نلاحظ مشابهة لخطوات الإنتاج
في الهندسيات الأخرى
الفرق بين البرمجة وهندسة البرمجيات
البرمجة هي كتابة الكود؛ يعتبرها البعض أهم عملية في بناء البرامج لا د تهتم البرمجة بأمور
كالجدوى من البرنامج؛ أو إمكائية قبول المستخدم له؛ أو حل قللية طويو" في حين أن هندسة
البرمجيات تعمل على بناء النظام البرمجي كمشروع متكامل؛ وتدرسه من كافة الجوانب: البناء
البرمجيء الدعم الفني والصيانة؛ التسويق والمبيعات؛ التطوير والتدريب على استخدامه؛ وبذلك
يمكنها بناء الأنظمة الكبيرة لاستخدامها نظام فريق العمل في حين أن البرمجة الفردية تعجز عن
الرياضيات: يحتوى أغلب البرنامج على عناصر رياضيات مثل (2180110(015) لذلك
فإن مطوري هذا النوع من البرامج يكونون على اطلاع بالعديد من النواحي الرياضية
العلوم: البرنامج له مواصفات علمية قياسية عديدة؛ متل: الأداء وحجم البرنامج وتنوع
الهندسة
التصنيع: البرامج عبارة عن مجموعة من الخطوات كل خطوة يتم تحديدها وتنفذ بدقة
مثل الكثير من الصناعات؛ لتحسين وتطوير خطوط الآنتاج والوصول إلى مستوى
الجودة المطلوب
زمني وتكلفة تخصص له عوامل بشرية للإدارة ومصادر متل مكتب وأجهزة كمبيوتر
للأمانة الموضوع منقول