كيف يمكن قياس إلانتاجية البرمجية ؟يعنى المفروض كام برنامج نكتبه فى الشهر او السنة ؟


التعليقات

تقاس بالساعة

فمثلا هناك مبرمج فى ساعة واحدة من العمل ينتج إنتاج 10 ساعات بناءاً على خبرته وأدواته التى تساعدة فى توليد الأكواد التى يحتاجها

وأخر يعمل ساعة واحدة ينتج إنتاج سالب عشر ساعات بناءاً على تخريبة لأجزاء أخرى من البرنامج مما يلزم مراجعة أو صيانة تكون عبء على إنتاجه فيخرج بالسالب

وهكذا

شكرا لردك صديقي.

تمام يعنى اقسم البرنامج مهام واحسب عدد الساعات

المهم الجودة و ليست الكمية

شخص يبرمج برنامج متقن واحد افضل من شخص يبرمك 1000 برنامج متوسط بالسنة

شكرا لردك صديقي .

انا لا اقصد قله الجودة اطلاقا . اقصد بالانتاجية ( كود سليم و برامج محترفه )

برنامج ( مفيد ) ولو كان بعد 10 سنين افضل من الف برنامج ( غير مفيد ) ولو كنت تنزل كل شهر برنامج

شكرا لردك صديقي .

انا بتكلم عن برامج محترفة يعنى طبقا لمقاييس الجودة

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

بينما أري أن القياس الصحيح للإنتاجية يكون عن طريق القواعد التالية:

  • عدد الميزات التي تم بناؤها في البرنامج، و كفاءة الخوارزمات algorithms التي تم استخدامها في بناء تلك الميزات.

  • عدد الاختبارات التي تم إجراؤها للميزات المبنية لضمان خلوها من العلل bugs، و مدي تغطية تلك الاختبارات للاحتمالات المختلفة.

  • مدي التوثيقات التي تم عملها للبرنامج، و مدي تغطيتها للنقاط المختلفة فيه، و أنا أقصد هنا علي الأقل توثيقات الأكواد code's documentaions و يدخل فيها التعليقات comments علي الأكواد التي تحتاج لها. كما قد يقع علي كاهل المبرمج كتابة شرح لكيفية استخدام المنتج البرمجي النهائي للمستخدمين العاديين، و هذا بالطبع في أغلبية الحالات يكون حينما يعمل المبرمج بمفرده بالقطعة freelancer، أما حينما يكون يعمل في فريق برمجي فإن المسئوليات تتوزع بحيث لا يكون عليه كمبرمج إلا التكويد و توثيق أكواده فقط.


برمجة

مجتمع للمبرمجين من جميع المستويات لتبادل المعرفة والخبرات. ناقش لغات البرمجة المختلفة، الحلول البرمجية، والمشاريع.

24.9 ألف متابع