:::info المؤلفون:
:::
ملخص
1 مقدمة
2 الدراسة الأصلية: أسئلة البحث والمنهجية
3 الدراسة الأصلية: تهديدات الصلاحية
4 الدراسة الأصلية: النتائج
5 الدراسة المكررة: أسئلة البحث والمنهجية
6 الدراسة المكررة: تهديدات الصلاحية
7 الدراسة المكررة: النتائج
8 مناقشة
9 الأعمال ذات الصلة
10 الاستنتاجات والمراجع
مشكلة متكررة في تطوير البرمجيات هي اتخاذ قرارات غير صحيحة بشأن التقنيات والأساليب والأدوات التي يجب استخدامها. في الغالب، تستند هذه القرارات إلى تصورات المطورين عنها. أحد العوامل التي تؤثر على تصورات الناس هي الخبرة السابقة، ولكنها ليست العامل الوحيد. في هذا البحث، نهدف إلى اكتشاف مدى تطابق تصورات فعالية اكتشاف العيوب لتقنيات مختلفة مع فعاليتها الحقيقية في غياب الخبرة السابقة.
\ للقيام بذلك، نجري دراسة تجريبية بالإضافة إلى تكرارها. خلال الدراسة الأصلية، نجري تجربة مضبوطة مع الطلاب يطبقون فيها تقنيتين للاختبار وتقنية مراجعة الكود. في نهاية التجربة، يقومون بإجراء استطلاع لمعرفة أي تقنية يعتقدون أنها الأكثر فعالية. تظهر النتائج أن تصورات المشاركين خاطئة وأن هذا التناقض مكلف من حيث الجودة.
\ من أجل اكتساب مزيد من الفهم للنتائج، نكرر التجربة المضبوطة ونوسع الاستطلاع ليشمل أسئلة حول آراء المشاركين في التقنيات والبرامج. تؤكد نتائج الدراسة المكررة نتائج الدراسة الأصلية وتشير إلى أن تصورات المشاركين قد تستند ليس إلى آرائهم حول التعقيد أو تفضيلاتهم للتقنيات ولكن على مدى اعتقادهم بأنهم طبقوا التقنيات بشكل جيد.
ممارسة أكثر شيوعًا في الوقت الحاضر هي أن تسمح شركات تطوير البرمجيات للمطورين باختيار بيئتهم التكنولوجية الخاصة. هذا يعني أن المطورين المختلفين قد يستخدمون أدوات إنتاجية مختلفة (لغة البرمجة، بيئة التطوير المتكاملة، إلخ). ومع ذلك، فإن هندسة البرمجيات (SE) هي تخصص كثيف بشريًا حيث يمكن للقرارات الخاطئة أن تعرض جودة البرمجيات الناتجة للخطر. في هندسة البرمجيات، تستند القرارات المتعلقة بالأساليب والتقنيات والأدوات التي يجب استخدامها في تطوير البرمجيات عادةً إلى تصورات المطورين و/أو آرائهم بدلاً من الأدلة، كما اقترح ديبا وآخرون. [19] وزيلكويتز وآخرون. [55].
\ ومع ذلك، قد لا تكون الأدلة التجريبية متاحة، حيث أن بعض الأساليب أو التقنيات أو الأدوات قد لا تكون قد تمت دراستها ضمن إطار معين أو على الإطلاق. بدلاً من ذلك، قد لا يكون المطورون ببساطة على دراية بمثل هذه الدراسات، وفقًا لفيغاس وباسيلي [49]. على هذا الأساس، من المهم اكتشاف مدى تطابق تصورات المطورين (المعتقدات) مع الواقع، وإذا لم تكن كذلك، معرفة ما وراء هذا التناقض، كما لاحظ ديفانبو وآخرون [14]. وفقًا لعلم النفس، تلعب الخبرة دورًا في تصورات الناس. وقد لوحظ ذلك أيضًا من قبل ديفانبو وآخرون. [14] في هندسة البرمجيات.
\ ومع ذلك، يهدف هذا البحث إلى اكتشاف مدى تطابق التصورات مع الواقع في غياب الخبرة السابقة في التكنولوجيا المستخدمة. هذا منطقي لعدة أسباب: 1) الخبرة ليست العامل الوحيد الذي يؤثر على تصورات المطورين؛ 2) تتكون فرق التطوير عادة من مزيج من الأشخاص ذوي الخبرة وبدونها؛ و 3) ليس من الواضح أي نوع من الخبرة يؤثر على التصورات. على سبيل المثال، يستنتج دييستي وآخرون. [17] أن الخبرة الأكاديمية بدلاً من الخبرة المهنية يمكن أن تؤثر على الجودة الخارجية للكود الذي ينتجه المطورون عند تطبيق التطوير المدفوع بالاختبار.
\ نهدف إلى دراسة ما إذا كانت التصورات حول فعالية ثلاث تقنيات لاكتشاف العيوب تتطابق مع الواقع، وإذا لم تكن كذلك، ما هو وراء هذه التصورات. على حد علمنا، هذه هي أول ورقة تقيم هذه المسألة تجريبياً. لهذه الغاية، أجرينا دراسة تجريبية بالإضافة إلى تكرارها مع الطلاب. خلال الدراسة الأصلية قمنا بقياس (كجزء من تجربة مضبوطة) فعالية تقنيتي اختبار وتقنية مراجعة الكود عند تطبيقها من قبل المشاركين. ثم تحققنا من التقنية الأكثر فعالية المتصورة (التي تم جمعها عن طريق استطلاع) مقابل التقنية الحقيقية.
\ بالإضافة إلى ذلك، قمنا بتحليل تكلفة عدم التطابق بين التصورات والواقع من حيث فقدان الفعالية. تشمل النتائج الرئيسية:
– يتصور أشخاص مختلفون تقنيات مختلفة على أنها أكثر فعالية. لا توجد تقنية واحدة يُنظر إليها على أنها أكثر فعالية من غيرها. – تصورات 50٪ من المشاركين (11 من أصل 23) خاطئة.
– يمكن أن يقلل التصور الخاطئ للتقنيات من الفعالية بنسبة 31 نقطة مئوية في المتوسط.
\ أدت هذه النتائج إلى توسيع هدف الدراسة في تكرار للتحقيق فيما يمكن أن يكون وراء تصورات المشاركين. للقيام بذلك، درسنا آراءهم حول التقنيات التي طبقوها والبرامج التي اختبروها في تكرار للتجربة المضبوطة. تشمل النتائج الرئيسية:
– تؤكد نتائج التكرار نتائج الدراسة الأصلية.
– يعتقد المشاركون أن فعالية التقنية تعتمد حصريًا على أدائهم وليس على نقاط الضعف المحتملة في التقنية نفسها. – لا يبدو أن الآراء حول تعقيد التقنية والتفضيلات للتقنيات تلعب دورًا في الفعالية المتصورة. هذه النتائج مفيدة للمطورين والباحثين. وهي تقترح:
– يجب أن يصبح المطورون على دراية بحدود حكمهم.
– يجب تصميم أدوات توفر تغذية راجعة للمطورين حول مدى فعالية التقنيات.
– يجب تحديد أفضل مجموعة من التقنيات للتطبيق والتي تكون في نفس الوقت سهلة التطبيق وفعالة. – يجب تطوير أدوات لجعل النتائج التجريبية متاحة للمطورين.
\ المواد المرتبطة بالدراسات المقدمة هنا يمكن العثور عليها في https://github.com/GRISE-UPM/Misperceptions. تم تنظيم المقالة على النحو التالي. يصف القسم 2 الدراسة الأصلية. يقدم القسم 3 تهديدات صلاحيتها. يناقش القسم 4 النتائج. يصف القسم 5 الدراسة المكررة بناءً على التعديلات التي أجريت على الدراسة الأصلية. يقدم القسم 6 تهديدات صلاحيتها. يقدم القسم 7 نتائج هذه الدراسة المكررة. يناقش القسم 8 نتائجنا وآثارها. يعرض القسم 9 الأعمال ذات الصلة. وأخيرًا، يوضح القسم 10 استنتاجات هذا العمل.
\ \
:::info هذه الورقة متاحة على arxiv تحت ترخيص CC BY-NC-ND 4.0.
:::
\


