مقياس برمجي

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

 المقاييس الشائعة للبرمجيات 
تضمن المقاييس الشائعة للبرمجيّات:

 وثيقة التقييم المتوازنة
 الآفات في كل سطر من الرمز
 طريقة كوكومى
 تغطية الكود
 التماسك
 كثافة التعليق 
 مكونات برمجيات كوناسينت
 الازدواج
 تركيب سيكلوماتيكى(تركيب ماكابى)
 تحليل مستوى الدالة
 تركيب هولستيد
 طول مسار التعليمات
 عدد ألأنواع والواجهات
 عدد سطور الكود
 عدد سطور متطلبات العميل
 زمن تنفيذ البرنامج
 زمن تحميل البرنامج
 حجم البرنامج (مزدوج)
 مقاييس حزمة البرمجيات لـ روبرت سيسل مارتين
 مستويات الدالة الدقيقة الترجيحيّة

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

 الجدول الزمني
 الحجم/التركيب
 التكلفة
 الجودة

قد يستهدف الغرض العام للمقياس أحد هذه المجالات بأعلى أو أكثر، أو يستهدف التوازن بينها كمؤشّر لدوافع فريق العمل أو أداء المشروع.

 القبول والرأي العام 
يشير بعض الممارسين لتطوير البرمجيات إلى أن المقاييس التبسيطيّة قد تضرّ أكثر من أن تنفع. ويلاحظ البعض الآخر أن المقاييس أصبحت جزٌء لا يتجزأ في عمليّة تطوير البرمجيّات.
أثارت هذه المقاييس في نفسيّة المبرمجين المخاوف من الآثار السلبيّة على الأداء بسبب الإجهاد وتوتر الأداء ومحاولات الغش في المقاييس، بينما برى الآخرون أنها تحمل تأثير إيجابي على تقييّم المبرمجين لأعمالهم أنفسهم، وتحول دون الاستهانة بهم.ProjectCodeMeter (2010) "ProjectCodeMeter Users Manual" page 65 
ويجادل البعض بأن تعريفات العديد من منهجيّات المقاييس ليست دقيقة، ومن ثمّ لا تتضح أحيانًا طريقة الأدوات في الحساب وتوصّلها لنتائجها المحددة, بينما يجادل البعض الآخر بأن وجود قياس غير دقيق أفضل من لا شيء ("لا يمكنك التحكم في ما لا يمكنك قياسه.”).
ويُظهر الدليل أن الهيئات الحكوميّة والجيش ألأمريكي و وكالة ناساNASA Metrics Planning and Reporting Working Group (MPARWG)  ومستشارين تكنولوجيا المعلومات والمؤسسات ألأكاديميةUSC Center for Systems and Software Engineering  وبرمجيات تقييم التنمية الأكاديمية والتجاريّة تستخدم جميعها مقاييس البرمجيّات على نطاق واسع.

 انظر أيضا 
 علم الحاسوب
 جي كيو إم
 أوبن هب: quantitative analysis of hundreds of open source projects
 أزمة البرمجيات
 هندسة البرمجيات
 جودة البرمجيات

 المراجع 

 وصلات خارجية 

Covers a minimal set of essential metrics for a successful product delivery.
 Definitions of software metrics in .NET
 International Function Point Users Group
 What is FPA at Nesma website
 Further defines the term Software Metrics with examples.
 Software Engineering Metrics: What do they measure and how do we know - An intellectually rigorous treatment of software engineering metrics

ويكيبيديا:وصلات خارجية

*
تصنيف:هندسة البرمجيات