من يقدّر تكلفة تطوير واجهات API المخصصة انطلاقاً من عدد نقاط النهاية سيكون مخطئاً، وبمعامل ثلاثة عادةً. نقاط النهاية هي الجزء الأرخص. اثنتا عشرة منها تقرأ وتكتب بيانات تملكها أصلاً هي عمل بعد ظهر واحد لمطوّر خلفي كفء.
ما يكلف المال هو كل ما يحوّل تلك النقاط إلى شيء تبني عليه شركة أخرى أعمالها: مصادقة تنجو من مراجعة أمنية، وإصدارات تتيح لك تغيير رأيك لاحقاً، ووثائق جيدة بما يكفي لئلا يراسلك أحد، والأجهزة التشغيلية التي تخبرك أي عميل يمر بصباح سيئ. الفجوة بين «لدينا واجهة برمجية» و«لدينا واجهة يعتمد عليها آخرون» هي موضع الميزانية الحقيقي.
نطاقات الأسعار باختصار: واجهة داخلية تستهلكها تطبيقاتك وحدها تكلف عادةً من 10,000 إلى 30,000 جنيه إسترليني. وواجهة للشركاء يستخدمها عدد محدود من المتكاملين المعروفين تتراوح عادةً بين 40,000 و100,000. أما الواجهة العامة التي تشكل جزءاً من منتجك، مع تسجيل ذاتي وعقد منشور، فتبدأ عند نحو 100,000 وتستمر في التكلفة بعد الإطلاق.
ما الذي تشتريه فعلاً
الواجهة البرمجية منتج له مستخدمون، وهي تحتاج ما تحتاجه المنتجات. مراجعة هذه القائمة مقابل أي عرض سعر هي أسرع طريقة لرؤية ما جرى إغفاله.
التصميم والعقد. على شخص ما أن يقرر نموذج الموارد واصطلاحات التسمية وصيغة الأخطاء وأسلوب التقسيم وبنية الترشيح، ثم يكتب ذلك مواصفةً قبل بدء التنفيذ. تخطي هذه المرحلة ينتج واجهة تحل ثلاث نقاط فيها المشكلة نفسها بثلاث طرق مختلفة، والمستهلكون يلاحظون ذلك فوراً.
المصادقة والتفويض. المفاتيح البسيطة مناسبة للاستخدام الداخلي. أما واجهات الشركاء والواجهات العامة فتحتاج عادةً تدفقاً قائماً على الرموز مع نطاقات صلاحيات وانتهاء وتدوير، إضافةً إلى صلاحيات لكل مستهلك تُفرض في كل طلب لا تُفترض من المفتاح.
حدود المعدل والحصص. تحمي الحدود لكل مستهلك بنيتك التحتية من مهمة متفلتة لدى متكامل واحد. وهي تحتاج أيضاً إلى إبلاغ عبر ترويسات الاستجابة كي يستطيع العملاء المنضبطون التراجع، وإلى مسار استثناء للعميل الذي يحتاج مزيداً بشكل مشروع.
الأجزاء التي يحكم عليها المستهلكون
الوثائق. المرجع المولَّد آلياً هو الحد الأدنى. ما يحتاجه المستهلكون فعلاً هو دليل بدء سريع، وشرح للمصادقة، وأمثلة عملية بلغتين أو ثلاث، وسجل تغييرات. الوثائق الجيدة مُخرَج حقيقي يُقاس بالأسابيع، وهي الفارق بين واجهة تتبنّى نفسها وأخرى تولّد تذاكر دعم إلى الأبد.
بيئة اختبار. لن يختبر الشركاء على الإنتاج، ولا ينبغي أن ترغب في ذلك. بيئة اختبار ببيانات واقعية وحالة قابلة لإعادة الضبط وقواعد التحقق نفسها هي من أكثر البنود إغفالاً في عروض أسعار الواجهات، ومن أكثر الميزات طلباً بعد الإطلاق.
قابلية المراقبة. تحتاج رؤية أحجام الطلبات ومعدلات الأخطاء وزمن الاستجابة مفصّلة لكل مستهلك، لأن عبارة «الواجهة بطيئة» لا تكون قابلة للتنفيذ إلا إذا عرفت طلبات مَن هي البطيئة. ومعرّفات الربط التي تتيح تتبّع استدعاء عميل واحد عبر سجلاتك ستردّ كلفتها في الشهر الأول من الدعم.
الاختبار. إلى جانب اختبارات الوحدة، تحتاج الواجهة اختبارات عقد تُفشل عملية البناء حين يتغير شكل الاستجابة دون قصد. تلك الشبكة هي ما يتيح لك مواصلة التطوير دون كسر المتكاملين الذين وثقوا بك.
المستويات الثلاثة، ولماذا تتباين هكذا
مجموعة نقاط النهاية نفسها تكلف مبالغ مختلفة جداً بحسب من يستهلكها، لأن الجمهور يحدد هامش التسامح مع النقص.
الواجهات الداخلية تخدم تطبيقاتك أنت. فريقك يتحكم بالطرفين، ويمكن تنسيق التغييرات الكاسرة، والوثائق يمكن أن تكون مقتضبة، والمصادقة يمكن أن تعتمد على حدود الشبكة. التكلفة النموذجية: 10,000 إلى 30,000 لخدمة مبنية جيداً باختبارات ومراقبة معقولة.
واجهات الشركاء تخدم مجموعة معروفة من المؤسسات الخارجية. الآن تحتاج مصادقة حقيقية ورسائل أخطاء ذات معنى وبيئة اختبار ووثائق مكتوبة وسياسة إصدارات، لأنك لا تستطيع نشر تغيير كاسر بعد ظهر الثلاثاء وتتوقع أن يواكب الجميع. التكلفة النموذجية: 40,000 إلى 100,000 بحسب عدد الموارد وصرامة المتطلبات الأمنية.
الواجهات العامة أو المنتَجية تخدم أي شخص يسجّل. يصبح التسجيل الذاتي وإدارة المفاتيح وحدود المعدل المنشورة وصفحة الحالة والقياس بحسب الاستخدام والوثائق الشاملة وعملية الدعم كلها ضرورية. وإذا اعتمدت الفوترة على الاستخدام، تكون قد أضفت نظام قياس ومطابقة أيضاً. التكلفة النموذجية: 100,000 فما فوق، والإطلاق بداية الإنفاق لا نهايته.
تحديد المستوى الذي تبنيه بصدق هو أنفع نصف ساعة في المشروع. فمعظم تجاوزات التكلفة في هذه الفئة تأتي من تحديد نطاق واجهة داخلية ثم اكتشاف، بعد ثلاثة أشهر، أن شريكاً كان سيستخدمها منذ البداية.
أين تذهب تكلفة تطوير واجهات API المخصصة فعلاً
في واجهة بمستوى الشركاء، يتوزع الجهد بشكل متوقع إلى حد ما، ونادراً ما يكون كما يتصور أصحاب القرار.
يذهب نحو الخُمس إلى التصميم والمواصفة، بما في ذلك الجدل حول تسمية الموارد الذي يبدو مضيعة ويمنع أشهراً من عدم الاتساق. ويذهب خُمس آخر تقريباً إلى تنفيذ نقاط النهاية نفسه، وهو الجزء الذي يتخيله الجميع عند اعتماد الميزانية.
وتستهلك المصادقة والتفويض وحدود المعدل معاً خمسة عشر إلى عشرين بالمئة، وأكثر إذا كنت تتكامل مع مزوّد هوية قائم له آراؤه. وتأخذ الوثائق وبيئة الاختبار وأي مكتبات عميل حصة مشابهة، وهو ما يفاجئ الناس حتى يحاولوا كتابة دليل بدء سريع جيد.
ويستهلك الاختبار وقابلية المراقبة والنشر ما تبقى. وذلك الربع الأخير هو الجزء الأرجح للحذف عند اقتراب موعد التسليم، وحذفه هو ما يحوّل تكلفة بناء لمرة واحدة إلى عبء دعم دائم.
ولمعرفة كيف يقع هذا إلى جانب بقية ميزانية التسليم، يغطي دليل تكلفة تطوير البرمجيات المخصصة البنود المحيطة.
القرارات التي تحرّك الرقم
حفنة من الخيارات تفسّر معظم التباين بين عروض الأسعار.
متزامن أم غير متزامن. إذا استغرقت أي عملية أكثر من ثانية أو ثانيتين، فأنت بحاجة إلى نموذج مهام: تقبل الطلب، وتعيد مرجعاً، وتترك المستهلك يستعلم أو يستقبل استدعاءً راجعاً. هذا بناء أكبر بكثير من طلب واستجابة بسيطين، وتقديم webhooks يعني أنك تشغّل الآن نظام تسليم بإعادة محاولة وتحقق من التوقيع ومخزن رسائل ميتة خاص به.
تعدد المستأجرين. فرض ألا يرى عميل بيانات عميل آخر سهل الوصف وسهل الخطأ بدقة. وتنفيذه بشكل صحيح، بفحص التفويض في طبقة الوصول إلى البيانات لا في كل متحكم، يضيف تكلفة وليس اختيارياً.
التزامات الامتثال. التعامل مع بيانات شخصية أو تفاصيل دفع أو معلومات صحية يجلب تسجيل تدقيق وقواعد احتفاظ ومتطلبات تشفير وجمع أدلة. هذه نادراً ما ترد في التقدير الأولي ولا يمكن التفاوض عليها لاحقاً أبداً.
التزامات مستوى الخدمة. الواجهة ذات هدف توافر تعاقدي تحتاج تكراراً وتنبيهات وشخصاً تحت الطلب. تلك تكلفة تشغيل لا تكلفة بناء، وينبغي تسعيرها منفصلةً كي لا يفاجأ أحد.
الأسس القائمة. البناء على شيفرة تملك أصلاً مصادقة ومهام خلفية ومراقبة أرخص بكثير من البدء من الصفر. وإذا كنت تحتاج المنصة الأساسية أيضاً، فإن شرحنا حول بناء واجهة برمجية بلا خوادم عبر Cloudflare Workers يعرض نهجاً يبقي تكلفة البنية التحتية منخفضة.
التكاليف التي تصل بعد الإطلاق
الواجهة البرمجية وعد، وللوعود تكاليف جارية.
الإصدارات هي أكبرها. فبمجرد اعتماد مستهلكين خارجيين على أشكال استجاباتك، لا تستطيع تغييرها بحرية. والحفاظ على إصدارين بالتوازي ريثما ينتقل المتكاملون أمر طبيعي، ويعني أن كل إصلاح خطأ يجب تطبيقه مرتين لفترة. وسياسة إيقاف منشورة بمهلة سخية تجعل ذلك قابلاً للإدارة، وغيابها يجعل كل تحسين مفاوضة.
الدعم هو الثاني. فحتى الوثائق الممتازة تولّد أسئلة، والأسئلة تقنية بما يكفي لتصل إلى مطوّر لا لتتوقف عند مكتب خدمة. خصّص وقت هندسة حقيقياً لذلك، خصوصاً في الأشهر التي تلي انضمام كل شريك جديد.
وصيانة الوثائق هي الثالث والأكثر إهمالاً. فالأمثلة التي لم تعد تعمل أسوأ من غياب الأمثلة، وهي تقوّض الثقة أسرع من أي انقطاع.
وكرقم تخطيطي، توقع خمسة عشر إلى خمسة وعشرين بالمئة من تكلفة البناء الأصلية سنوياً للحفاظ على صحة واجهة شركاء أو واجهة عامة. وإذا كانت الواجهة نفسها بنداً إيرادياً، فإن دليلنا حول نماذج ترخيص البرمجيات يغطي كيفية هيكلة الجانب التجاري.
كيف تمنع المشروع من التضاعف
ثلاث عادات تبقي مشاريع الواجهات داخل تقديرها.
اكتب المواصفة أولاً واجعل مستهلكاً حقيقياً يراجعها قبل بدء التنفيذ. ساعة من ملاحظات الفريق الذي سيتكامل فعلاً توفّر أسابيع من إعادة العمل، وتكشف المتطلب الذي لم يذكره أحد.
ابنِ نقطة نهاية واحدة بالكامل، عبر المصادقة ومعالجة الأخطاء والوثائق والاختبارات والمراقبة، قبل بناء العشرين الأخرى. الأولى تكشف التكلفة الحقيقية لكل نقطة، وتفعل ذلك بينما لا تزال الميزانية قادرة على استيعاب الخبر.
وكن صارماً بشأن قائمة الموارد الأولية. فمعظم الواجهات تُطلق بنقاط نهاية أكثر مما يستخدمه أحد، وكل نقطة غير مستخدمة تحتاج مع ذلك توثيقاً واختباراً وتأميناً وإصداراً ما دامت موجودة. أطلق أصغر سطح مفيد ووسّعه حين يخبرك الاستخدام الحقيقي بما ينقص.
ابنِ واجهة يرغب الناس في التكامل معها
تصمم Mecanik وتبني واجهات برمجية ضمن خدمات تطوير البرمجيات المخصصة ، من الخدمات الداخلية وصولاً إلى واجهات المنتجات العامة بتسجيل ذاتي. نتعامل مع المواصفة والوثائق وبيئة الاختبار بوصفها مُخرجات لا إضافات لاحقة، لأنها ما يحدد نجاح أي شخص في التكامل فعلاً.
وإذا كنت على الجانب الآخر من هذه المسألة تستهلك واجهة شخص آخر بدل نشر واجهتك، فإن دليلنا حول تكامل واجهات الطرف الثالث يغطي ما ينبغي الانتباه إليه. وإلا فأخبرنا من هم المستهلكون وما الذي يحتاجون فعله، وسنحدد النطاق مستوىً بمستوى كي ترى بالضبط ما يكلفه كل مستوى من الطموح.
تدوينات ذات صلة: تطوير البرمجيات المخصصة في المملكة المتحدة - دليل المشترين ، الاستعانة بمصادر خارجية لتطوير البرمجيات في المملكة المتحدة ، تكامل CRM وERP: التكاليف والأساليب والمزالق ، تحديث المينفريم: rewrite أو refactor أو replatform .
الأسئلة الشائعة
كم تكلف واجهة API مخصصة؟ الواجهة الداخلية تكلف عادةً من 10,000 إلى 30,000 جنيه إسترليني، وواجهة الشركاء من 40,000 إلى 100,000، والواجهة العامة المنتَجية أكثر من 100,000. الجمهور يحرّك السعر أكثر بكثير من عدد نقاط النهاية، لأن المستهلكين الخارجيين يتطلبون وثائق وبيئات اختبار وإصدارات ودعماً.
كم يستغرق بناء واجهة API مخصصة؟ الخدمة الداخلية تستغرق عادةً من أربعة إلى ثمانية أسابيع. وواجهة بمستوى الشركاء تستغرق عادةً من ثلاثة إلى خمسة أشهر بما في ذلك الوثائق وبيئة الاختبار. أما الواجهات العامة بتسجيل ذاتي وقياس استخدام فتستغرق عادةً ستة أشهر أو أكثر قبل الإطلاق.
ما الذي يجعل تطوير الواجهات أغلى من المتوقع؟ الوثائق وبيئات الاختبار وحدود المعدل لكل مستهلك ودعم الإصدارات وقابلية المراقبة. هذه نادراً ما ترد في التقديرات المبكرة وتشكل معاً نصف الجهد غالباً في واجهة شركاء أو واجهة عامة.
هل أبني واجهة REST أم GraphQL؟ يبقى REST الخيار الافتراضي الأكثر أماناً لواجهات الشركاء والواجهات العامة لأن الأدوات والتخزين المؤقت وإلمام المطورين أوسع. أما GraphQL فيناسب الاستخدام الداخلي وتطبيقات العميل الغنية التي يحتاج مستهلكوها استعلامات مرنة، رغم أنه ينقل التكلفة إلى حدود تعقيد الاستعلام والتفويض.
ما التكاليف الجارية المتوقعة بعد إطلاق واجهة؟ خصّص خمسة عشر إلى خمسة وعشرين بالمئة من تكلفة البناء سنوياً. يغطي ذلك صيانة إصدارات متوازية أثناء فترات الإيقاف، ووقت الهندسة المصروف على أسئلة التكامل، وصيانة الوثائق، والمراقبة اللازمة لدعم المستهلكين الخارجيين.
التعليقات