تخط إلى المحتوى
faceela

إعداد أم تخصيص: قرار أودو الذي يحدد سنواتك الخمس القادمة

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

· 6 دقائق قراءة · بقلم فريق البحث والتحرير في Faceela

راجعه أحمد حسن الجمال — مستشار أنظمة المؤسسات

في كل مشروع أودو قرار يعيش أطول من كل ما فيه. ليس النسخة ولا الشريك ولا تاريخ التشغيل، بل ما يتكرر في ورش الأسابيع من الثالث إلى العاشر: حين لا يطابق المتطلب ما يفعله المنتج، هل تغير المنتج أم تغير المتطلب؟

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

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

ليست إجابتين، بل خمس

«إعداد أم تخصيص» تأطير خشن. كل متطلب يقع في واحدة من خمس خانات، لكل منها كلفة وخطر وسلوك مختلف عند الترقية.

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

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

أين يقع الخط فعلًا

القاعدة النافعة ليست عن الصعوبة، بل عن من يملك السلوك بعد ذلك.

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

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

وخانة ثالثة ينساها الناس، وهي الأسوأ: بايثون مكتوبة داخل قواعد الأتمتة وإجراءات الخادم المخزنة في قاعدة البيانات. تبدو إعدادًا لأنها في شاشة إعدادات، وتسلك سلوك الكود لأنها كود. تنكسر عند الترقية كما تنكسر الوحدة، ولا أحد يملك قائمة بها.

لماذا يكلفك الكود عند كل إصدار

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

مثال محدد: بين أودو 18 و19 أعيدت تسمية الحقل الذي يحمل عضوية المستخدم في المجموعات، وانتقلت آلية تجميع الصلاحيات إلى نموذج آخر. الصلاحيات المكتوبة بالطريقة القديمة لا تنتج تحذيرًا، بل تمنع الوحدة من التثبيت.

اضرب ذلك في كل حقل مخصص وشاشة معدلة وتقرير إضافي ودالة أعيد تعريفها. كل واحدة تقرأ وتنقل وتختبر، ولا يعدها أحد حتى الترقية الأولى. والكود لا يشيخ كله بالوتيرة نفسها:

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

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

كيف تميز فجوة حقيقية من رفض للتغيير

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

  1. من أين جاء المتطلب. المصادر الصادقة أربعة: قانون أو جهة تنظيمية، أو عقد عميل، أو قيد تشغيلي حقيقي كآلة أو صيغة ملف بنك، أو ميزة تنافسية تستطيع وصفها. ما عدا ذلك تفضيل لا متطلب.
  2. من المستفيد. إن كان شخصًا واحدًا والكلفة وحدة دائمة، فهذه أقدمية لا حالة عمل.
  3. هل العملية التفاف على قيد أزيل للتو. كثير من «المتطلبات» ندبة من النظام القديم: اعتماد من ثلاث خطوات لأنه عجز عن تقييد حقل، وملف إكسل لأن وحدتين لم تتكلما. على نموذج بيانات واحد يذوب بعضها.
  4. كم يكلفك المسار القياسي فعلًا. ليس «هل هو مختلف»، بل ما الكلفة المقيسة: نقرات زائدة، أو مطابقة يجريها أحد، أو عميل يلاحظ؟ الجواب الصادق كثيرًا بضع دقائق أسبوعيًا، تحل بوحدة يعاد اختبارها كل سنة. حاسبة كلفة الفوضى تحول ذلك إلى ساعات ومال لسنة، توضع مقابل كلفة امتلاك وحدة.
  5. اختبار التسعين يومًا. شغل قياسيًا، وعش معه ربع سنة، وابنه بعدها إن بقي مؤلمًا بدليل. الاعتراض واحد دائمًا — «لا نستطيع التشغيل بدونه» — والسؤال: هل هذه حقيقة أم توقع؟

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

كيف تكتب المتطلب حتى لا يختار غيرك الجواب

يوم إعداد ويوم تطوير يفوتران متقاربين، لكن التطوير ينشئ تيار صيانة والإعداد لا ينشئه.

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

اطلب تصنيفًا مكتوبًا لكل متطلب قبل العقد. صف واحد لكل متطلب، وقيمة واحدة من خمس:

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

هذا المستند أثمن من السعر على غلاف العرض.

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

اسأل السؤال المعكوس في العرض. ليس «هل يستطيع أودو هذا»، فبكود كاف الجواب نعم دائمًا، بل: «أرني هذا يعمل في نظام قياسي اليوم، وإن كان يحتاج بناء فقل ذلك الآن». سرعة الجواب أوضح قراءة عن شريك أودو.

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

اشترط أن يعيش الكود في مستودع تقرؤه اليوم، مع نقل الملكية الفكرية في العقد. الكود على خادم مورد ليس أصلًا تملكه، بل علاقة لا تستطيع الخروج منها.

الترتيب الذي يعمل به

ترتيب كلفة لا تفضيل، وكل خطوة تتخطاها تضاعف ما بعدها.

  1. القياسي. المسار كما يشحن، على بياناتك، بمعاملة حقيقية لا بعرض.
  2. تغيير العملية. إن كان القياسي صالحًا للعمل وإن اختلف، غير العملية. مجاني وبلا صيانة.
  3. الإعداد. إعدادات وبيانات رئيسية ومسارات وقواعد اعتماد ومجموعات وتسلسلات، قابلة للتراجع.
  4. ستوديو، بقصد ومع سجل. حقل، أو ترتيب شاشة، أو أتمتة بسيطة، تكتب وقت إنشائها.
  5. تطبيق جاهز من متجر التطبيقات. اسأل من يصونه، وهل صدر للإصدار الحالي، وماذا يحدث إن لم يصدر للتالي.
  6. وحدة مخصصة مكتوبة كما يجب. تضيف ولا تستبدل، مختبرة، في مستودعك، مسعرة بذيل الترقية.

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

باختصار

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

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

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

الخطوة التالية

هل يحدث هذا في شركتك؟

إذا كان المقال يصف وضعكم، فالخطوة المفيدة تشخيص وليست مقالًا آخر. أخبرنا بالشيء الواحد الذي لا يعمل.

من الاثنين إلى الجمعة، 9:00 صباحًا – 6:00 مساءً

تفضل أن نتصل بك؟

اترك رقم واتساب وسنتواصل معك.

نرد على واتساب أولًا. اكتب رمز الدولة مع الرقم.

لا نشرة بريدية ولا بيع لرقمك. نستخدمه للرد عليك فقط — اطلع على سياسة الخصوصية.

راسلنا واتساب