معايير التقييم الخمسةThe five evaluation criteria
١) آخر تحديث (وحدة لم تُحدَّث منذ سنتين مهجورة عملياً). ٢) توافق النسخة المعلن. ٣) الترخيص ووضوحه. ٤) جودة التوثيق والدعم. ٥) سمعة الناشر وسجلّه. الوحدة التي تفتقد معيارين على الأقل لا تستخدمها في الإنتاج.1) Last update (a module untouched for two years is effectively abandoned). 2) Declared version compatibility. 3) Licence and its clarity. 4) Documentation and support quality. 5) Publisher reputation and track record. A module missing at least two criteria should not go to production.
مخاطر الوحدات المهجورةRisks of abandoned modules
الوحدة المهجورة لا تُرقّى مع Odoo، فتبقى على نسخة قديمة — أو تُكسر عند الترقية القادمة. الأسوأ: قد تحتوي ثغرات أمنية غير مُصلحة لأن لا أحد يصونها. افحص سجل الناشر قبل الاعتماد.An abandoned module is not upgraded with Odoo, so it stays on an old version — or breaks at the next upgrade. Worse: it may contain unfixed vulnerabilities because nobody maintains it. Check the publisher's history before adopting.
الأمان — فحص إلزاميSecurity — a mandatory check
أي وحدة إضافية تنفّذ كوداً على سيرفرك. قبل الاعتماد: راجع الكود إن أمكن، تأكد من عدم وجود طلبات خارجية غير مبرَّرة، تحقق من معالجة الصلاحيات بشكل صحيح، واختبرها في بيئة معزولة أولاً. وحدة مجهولة المصدر على بيئة إنتاج = مخاطرة غير محسوبة.Any add-on executes code on your server. Before adopting: review the code where possible, verify there are no unjustified external calls, confirm permissions are handled correctly, and test it in an isolated environment first. An unknown-source module on production is an uncalculated risk.
البديل الأفضل غالباًThe better alternative, often
قبل البحث عن وحدة خارجية، اسأل: هل يمكن تحقيق الهدف بالتهيئة؟ أو بتعديل بسيط في العملية؟ كثير من الوحدات تُستخدم لسد فجوة يمكن إغلاقها بإعادة تصميم العملية — وهذا أكثر أماناً وأقل تكلفة على المدى الطويل.Before searching for an external module, ask: can the goal be achieved by configuration? Or by a small process change? Many modules are used to fill a gap that could be closed by redesigning the process — safer and cheaper in the long run.
الصيانة الداخلية للوحداتInternal maintenance of modules
احتفظ بمخزون محدّث من الوحدات المعتمدة: قائمة معتمدة (لا يثبّت أحد شيئاً خارجها)، نسخة محفوظة من كود كل وحدة، وتوثيق لغرضها. بهذا تستطيع الاستمرار حتى لو اختفى الناشر الأصلي.Keep an updated inventory of approved modules: an approved list (nobody installs anything outside it), a saved copy of each module's code, and documentation of its purpose. This lets you continue even if the original publisher disappears.
عدد الوحدات — قاعدة عمليةNumber of modules — a practical rule
كل وحدة إضافية تزيد التعقيد وتكلفة الترقية. القاعدة: كلما قلّ عدد الوحدات كان النظام أسهل صيانة. لا تثبّت وحدة «قد نحتاجها لاحقاً» — ثبّت ما تحتاجه اليوم فقط، وأضف عند الحاجة الفعلية.Every add-on increases complexity and upgrade cost. The rule: the fewer modules, the easier the system is to maintain. Do not install a module "we might need later" — install only what you need today, and add when the need is real.

