forumفتح موضوع جديد
فتح موضوع جديد

هل من الطبيعي استلام المشروع بدون اختبار تكامل API، أم كان ينبغي أن نشترط ذلك في العقد؟

AAleyna E***مشاركعضو المجتمع
تاريخ الانضمام
أغسطس 2024
رسالة
80
#1

نحن شركة في باريس لتنظيم الفنادق البوتيكية والجولات السياحية الإرشادية في المدينة. وقعنا عقدًا مع وكالة برمجيات محلية بميزانية قدرها 14.000 EUR وجدول تسليم مدته 3 أشهر لتجديد موقعنا والبنية التحتية للحجز المباشر. اكتملت عملية التطوير وقدموا لنا المشروع للاعتماد قائلين إنه تم ربط بوابة الدفع ومحرك الحجز بالنظام.

ولكن عندما سألناهم عما إذا كان قد تم اختبار واجهة برمجة تطبيقات الدفع مع مزامنة التقويم ورسائل البريد الإلكتروني للتأكيد التلقائي بشكل شامل من البداية إلى النهاية، تلقينا رداً مفاجئاً: "لقد قمنا بربط نقاط النهاية المطلوبة، والنظام يرجع الكود 200. باقي السيناريوهات يمكنكم تجربتها على النظام الحي أو باستخدام بطاقات الاختبار الخاصة بكم." يعني لم يجروا أي محاكاة، أو تجارب للعمليات الفاشلة، أو اختبارات تحميل.

وبما أننا لم ندر مثل هذه العملية التقنية من قبل، فلا نعرف ماذا نفعل. هل من المعتاد أن تسلم وكالة برمجيات المشروع بهذه الطريقة دون إجراء اختبار تكامل الـ API؟ وكيف ينبغي أن نطلب هذه الاختبارات قانونياً وتقنياً قبل دفع آخر مستحق متبقي وقدره 4.000 EUR؟

KKemal G***مشارك
المسمى الوظيفي
موظف متجر
قطاع
خدمات تقنية المعلومات
نوع المنظمة
مؤسسة متوسطة الحجم
تاريخ الانضمام
أبريل 2023
رسالة
7

Doki · دعم الاستجابة للحوادث · 2024

الأكثر إفادة#2

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

اختبار التكامل هو عملية التحقق من السيناريوهات التي قد تنشأ أثناء تبادل البيانات بين نظامين مختلفين. وفيما يخص الدفع والحجز، لا يتم اختبار العمليات الناجحة فقط، بل تتم محاكاة الحالات القصوى مثل: عدم كفاية الرصيد، والبطاقة غير الصالحة، وانتهاء المهلة (timeout)، ومنع السحب المزدوج، ومعالجة إشعارات الـ webhook بالكامل. قول الوكالة "جربوا على الحي" يعني تحميلكم أنتم مباشرة مخاطرة سحب أموال العميل دون تسجيل حجزه في حال حدوث أي خلل.

أوقفوا فوراً دفع المبلغ المتبقي وقدره 4.000 EUR، ورسموا العملية بالخطوات التالية: 1) أرسلوا إشعاراً خطياً للوكالة يفيد بأنه لا يمكن اعتبار مرحلة اختبار قبول المستخدم (UAT) مكتملة دون تقارير الاختبار. 2) اطلبوا كمعيار للقبول مصفوفة سيناريوهات منفذة على الأقل في بيئة sandbox تشمل: الدفع الناجح، والدفع الفاشل، وعمليات الاسترداد، وانتهاء المهلة، وتشغيل الـ webhooks. 3) اشترطوا إرفاق سجلات تشغيل الاختبارات الآلية أو اليدوية وتقارير سجلات الأخطاء (logs) كملحق رسمي لمحضر الاستلام.

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

MMehmet I***مشاركعضو المجتمع
تاريخ الانضمام
مايو 2024
رسالة
3
#3

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

SSelinمشارك
المسمى الوظيفي
مطور واجهات أمامية
نوع المنظمة
شركة من 20 شخصاً
تاريخ الانضمام
فبراير 2024
رسالة
164
#4

النقطة الحرجة في أنظمة الدفع هي إدارة الـ webhook. إذا أغلق المستخدم المتصفح أو انقطع الاتصال، هل يستطيعون معالجة الإشعار غير المتزامن القادم في الخلفية؟ كيف يتصرف الـ API في حالة الاسترداد أو الإلغاء الجزئي؟ هم ملزمون بإجراء هذه الاختبارات في بيئة الـ sandbox بطلبات وهمية وتقديم سجلات الـ logs لكم.

VVeli Y***مشاركعضو المجتمع
تاريخ الانضمام
فبراير 2024
رسالة
8
#5

جمدوا الدفعة الأخيرة على الفور. أرسلوا إيميل للوكالة وقولوا لهم: "بناءً على معايير القبول لدينا، لن يتم توقيع محضر الاستلام حتى يتم توثيق 5 سيناريوهات أساسية في بيئة اختبار مزود الدفع (السحب الناجح، عدم كفاية الرصيد، إلغاء 3D secure، انتهاء المهلة، والاسترداد التلقائي)." وسترون كيف سيتغير موقفهم فوراً.

VVolkan U***مشاركعضو المجتمع
تاريخ الانضمام
فبراير 2024
رسالة
56
#6

ارتكبنا نفس هذا الخطأ قبل عامين في مشروع جولات بميزانية 18.000 EUR. وثقنا في الوكالة ورفعنا الموقع للخدمة مباشرة؛ وفي أول أسبوع تم سحب الأموال في 22 معاملة دون أن يتم تسجيل الحجز في التقويم. اضطررنا لإرجاع 3.100 EUR للعملاء وإغلاق النظام لمدة 10 أيام. الأيام الثلاثة التي وفرناها من وقت الاختبار كلفتنا أسبوعين من المشاكل.

EEbru O***مشارك
المسمى الوظيفي
فني مراقبة الجودة
قطاع
خدمات تقنية المعلومات
نوع المنظمة
فريق من 8 أشخاص
تاريخ الانضمام
يناير 2022
رسالة
139
#7

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

YYiğit Ç***مشاركعضو المجتمع
تاريخ الانضمام
مارس 2025
رسالة
107
#8

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

PPerihan K***مشاركعضو المجتمع
تاريخ الانضمام
يناير 2023
رسالة
152
#9

عند الاستلام، يجب أن تطلبوا هذه المستندات الثلاثة: 1) جدول نتائج السيناريوهات التي تم تشغيلها في بيئة sandbox، 2) لقطات شاشة لرسائل الخطأ التي تظهر للعميل في العمليات الفاشلة، 3) تقرير مطابقة العمليات التي تمت ببطاقات الاختبار بين لوحة تحكم الدفع وقاعدة بيانات الموقع. بدون هذه الوثائق، لا يعتبر النظام قد تم تسليمه.

ÖÖzgür Y***مشارك
المسمى الوظيفي
مسؤول تقنية المعلومات
قطاع
كيمياء
نوع المنظمة
وكالة بوتيك
تاريخ الانضمام
نوفمبر 2023
رسالة
5

Doki · تطبيق الجوال · 2025

#10

لا تقلقوا ولكن لا تتراجعوا أيضاً. المبرمجون يكرهون إجراء الاختبارات لأن اكتشاف الـ bugs فيها يؤخر موعد التسليم... بصراحة تمسكوا بموقفكم وحقكم، ولا تخرج الـ 4.000 EUR من الخزينة قبل وصول تقرير الاختبار.

LLale K***مشاركعضو المجتمع
تاريخ الانضمام
أكتوبر 2025
رسالة
323
#11

ارتحت لقراءة هذه الإجابة، يبدو أن المشكلة ليست عندي وحدي. إذا لم تُكتب معايير القبول، فإن وقت انتهاء العمل يبقى مفتوحاً للنقاش.

إذا لم تقم بصياغة هذا كتابيًا من البداية، فستنشأ خلافات لاحقًا.

TTülay K***خبيرعضو المجتمع
تاريخ الانضمام
يوليو 2022
رسالة
276
#12

دعوني ألخص ما قيل حتى الآن. النظام يستمر بعد التسليم؛ الصيانة بند منفصل.

يجب ربط جدول المدفوعات بمراحل العمل، وليس بالتقويم. مثبت بالتجربة.

MMustafa M***مشارك
المسمى الوظيفي
فني مراقبة الجودة
قطاع
تجارة الجملة للأغذية
نوع المنظمة
وكيل إقليمي
تاريخ الانضمام
فبراير 2024
رسالة
106
#13

أنت محق، لقد مررت بنفس المسار. النظام يستمر بعد التسليم؛ الصيانة بند منفصل.

وضع عملية لطلبات التغيير لا يبطئ العمل، بل يسرّعه. هذا كل شيء، أرجو المعذرة إذا أطالت.

IIrmak B***مشاركعضو المجتمع
تاريخ الانضمام
يناير 2025
رسالة
304
#14

بالضبط، بل إن هذا الجانب غير معروف بشكل كافٍ. النظام يستمر بعد التسليم؛ الصيانة بند منفصل.

إذا كان هناك من يفعلها بطريقة أخرى، فأنا فضولي لمعرفة ذلك.

MMeryem S***مشارك
المسمى الوظيفي
مدير الأنظمة
قطاع
كهرباء وإلكترونيات
نوع المنظمة
نشاط تجاري بفرعين
تاريخ الانضمام
مارس 2026
رسالة
398
#15

لم أكن أعلم بهذا. انظروا أولاً إلى البيانات المتاحة لديكم عند اتخاذ القرار.

بالطبع يختلف الأمر إذا كانت حالتك مختلفة.

OOkan I***مشارك
المسمى الوظيفي
محاسبة أولية
قطاع
مستحضرات تجميل
نوع المنظمة
نشاط فردي
تاريخ الانضمام
نوفمبر 2023
رسالة
260
#16

أحسنت في فتح هذا العنوان.

FFatma G***مشاركعضو المجتمع
تاريخ الانضمام
مارس 2023
رسالة
24
#17

هل يمكنك توضيح هذا أكثر؟ النظام يستمر بعد التسليم؛ الصيانة بند منفصل.

دعني أتركها كملاحظة، قد تكون مفيدة.

MMurat T***مشارك
المسمى الوظيفي
مدير الشبكة
قطاع
التأمين
نوع المنظمة
وكالة بوتيك
تاريخ الانضمام
يناير 2025
رسالة
80
#18

هناك نقطة لم أفهمها. أكثر ما أهدر وقتنا كان عدم وضوح من يتخذ القرار.

CCeren K***مشاركعضو المجتمع
تاريخ الانضمام
يناير 2023
رسالة
377
#19

مررت بهذا الطريق، دعني أشرح. على كل حال الخطأ المرتكب من جانب اختبار تكامل api قابل للإصلاح عادةً، لكنه مكلف.

دعني أتركها كملاحظة، قد تكون مفيدة.

SSinan B***محارب قديمعضو المجتمع
تاريخ الانضمام
أبريل 2022
رسالة
48
#20

أتابع الموضوع.

اكتب رداً