ما هي عملية تطوير البرمجيات؟

يشير البرنامج إلى كل من أنظمة تشغيل الكمبيوتر نفسها ، بالإضافة إلى البرامج والتطبيقات المصممة للتشغيل على أجهزة الكمبيوتر. تطوير البرمجيات هو تصميم وكتابة البرامج ، بما في ذلك تطوير بنية البرنامج وواجهة المستخدم وبرمجة الكود المصدري. عملية تطوير البرمجيات هي النهج المتبع في تطوير البرمجيات ، وهناك العديد من النماذج المطورة جيدًا لهذه العملية. بشكل عام ، تحتوي على اختلافات في مراحل إجراء تحليل المتطلبات ، وتحديد المنتج ، وإنشاء بنية البرنامج ، وتنفيذ الكود ، واختبار المنتج وتوثيقه ، وتوفير التدريب والدعم ، والحفاظ على الإصدار وتحسينه. أيًا كان النموذج المستخدم ، قد تهدف عملية تطوير البرامج أحيانًا إلى تطوير منتج جديد ، بينما تركز في أوقات أخرى على المراجعة – على سبيل المثال ، عند إنشاء إصدار نقطي لإصلاح الأخطاء – وفي أوقات أخرى ، قد يحدث ذلك. الاستعداد لإصدار جديد من البرنامج الحالي ، مع إضافة ميزات مهمة بالإضافة إلى تقديم إصلاحات للأخطاء.

يعد نموذج الشلال لعملية تطوير البرامج نموذجًا مبكرًا وأيضًا مع قيود متأصلة. وهي تنص على نهج أحادي الاتجاه بشكل صارم للتطوير ، والتحرك في اتجاه واحد من خلال تسلسل مراحل تطوير البرامج ، دون العودة إلى المرحلة السابقة أو تغيير المواصفات ، بمجرد بدء التطوير. على النقيض من ذلك ، يستخدم النموذج الحلزوني عملية تكرارية ، حيث يتم اتباع سلسلة من المتطلبات ، متبوعة بالتصميم والتنفيذ وأخيراً الاختبار ، بدورة ثانية يتم فيها إضافة المزيد من الميزات والمكونات. في النماذج الرشيقة لعملية تطوير البرمجيات – التي يوجد منها عدد – تنقسم مشاريع التطوير إلى مجموعات فرعية من أسبوع إلى شهر تسمى مربعات الوقت ، كل منها يمر بنسخة مصغرة من عملية تطوير برمجية كاملة ، بما في ذلك إصدار في النهاية. تشمل الميزات الأخرى لتطوير Agile قرب الفريق المتعاون واستخدام العملاء للاستجابة للمنتج طوال العملية.

قد تختلف عملية تطوير البرمجيات اختلافًا جذريًا بالنسبة لشركة كبيرة وللمبرمج الفردي. على سبيل المثال ، قد يقضي ناشر برامج تجاري ، مثل Sibelius Software® ، وهو جزء من Avid Technology® ، عدة سنوات في عملية تطوير البرامج لكل إصدار ويصدر تطبيقًا برمجيًا يبلغ حجمه مئات الميجابايت ويستخدمه آلاف الأشخاص . من ناحية أخرى ، قد يقوم شخص مثل Roman Molino Dunn ، The Music Transcriber® ، ببرمجة مكون إضافي استجابة لرغبة شخص ما في القيام بشيء مختلف باستخدام برنامج تجاري ، بإنشاء جزء من برنامج بحجم 4 كيلوبايت في غضون ساعة من الحصول على الفكرة ، في الحالات القصوى.