Codevista Innovations

تطوير البرمجيات

كيف تختار وكالة لتطوير مواقع الويب أو البرمجيات في الدار البيضاء

بقلم Codevista Innovationsنُشر في 8 دقائق قراءة

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

باختصار

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

ما معايير اختيار وكالة لتطوير الويب في الدار البيضاء؟

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

مراجع ذات صلة وقابلة للتحقق

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

المقاربة التقنية والحزمة التقنية (stack)

اسأل الوكالة لماذا تقترح هذه التقنية لحالتك، لا عن اسمها فقط. فالحزمة التقنية الشائعة والموثّقة والمُتعهَّدة بانتظام (Java أو PHP أو Python أو Go أو TypeScript من جهة الخادم، وإطار ويب واسع الانتشار من جهة الواجهة) تتيح لك لاحقًا التوظيف أو تغيير مقدّم الخدمة. أما إطار العمل الداخلي أو الأداة الاحتكارية التي لا تتقنها إلا الوكالة فيجعلانك رهينة لها. واسأل أيضًا عن طريقة اختبار الشيفرة ونشرها: اختبارات مؤتمتة، وتكامل مستمر، وبيئات منفصلة للاختبار والقبول وللإنتاج.

منهجية العمل وإيقاع التواصل

مقدّم الخدمة الجيد يشرح لك كيف سترى المنتج يتقدّم: إصدارات منتظمة على بيئة اختبار، وعروض توضيحية مبرمجة، ومخاطَب وحيد، وأداة تتبّع مشتركة. ولا تكفي المصطلحات الرشيقة؛ اطلب أن يصف لك كيف تبدو الدورة الواحدة في الواقع. ويقدّم مقالنا Scrum أم Kanban المعالم المفيدة في هذا الباب.

لمن تعود ملكية الشيفرة؟ الملكية والأمن واستضافة المعطيات

تُحسم هذه النقاط الثلاث في العقد، قبل أول دورة Sprint. فإعادة التفاوض عليها في منتصف المشروع أصعب دائمًا.

  • ملكية الشيفرة والحقوق: يجب أن ينصّ العقد على أن الشيفرة المصدرية والتوثيق والمخرجات تُنقل إليك، وعلى توقيت ذلك (عند أداء كل دفعة بدل نهاية المشروع). واعرض البند على مستشارك القانوني.
  • الولوج إلى المستودع: اشترط ولوجًا للاطلاع على مستودع الشيفرة (GitHub أو GitLab أو ما يعادلهما) منذ الانطلاق، ويُفضَّل أن يكون ضمن حساب مؤسسي باسمك.
  • ممارسات الأمن: تدبير صلاحيات الولوج، ومراجعة الشيفرة، والنسخ الاحتياطية، ومعالجة الثغرات المبلَّغ عنها. وشهادة ISO/IEC 27001 تثبت وجود نظام لإدارة أمن المعلومات خضع لتدقيق جهة مستقلة؛ تحقّق من النطاق الذي تغطيه الشهادة ومن تاريخ صلاحيتها، لا من الشعار وحده. ويشرح دليلنا ISO 27001 وأمن المعطيات لدى مقدّم الخدمة كيفية التحقق منها وما لا تشمله.
  • الاستضافة وموقع المعطيات: أين ستُخزَّن المعطيات، ولدى أي مستضيف، وفي أي بلد، ومن سيكون له حق الولوج إليها. وإذا كان التطبيق يعالج معطيات شخصية، فإن القانون 09-08 المتعلق بحماية الأشخاص الذاتيين تجاه معالجة المعطيات ذات الطابع الشخصي والإجراءات لدى اللجنة الوطنية لمراقبة حماية المعطيات ذات الطابع الشخصي (CNDP) يسريان عليه، كما أن الاستضافة خارج المغرب تُعدّ نقلًا للمعطيات إلى الخارج يؤطّره القانون. وأنت، بصفتك المسؤول عن المعالجة، من يتولّى هذه الإجراءات، لكن على الوكالة أن تكون قادرة على الحديث عنها دون تردّد.

الصيانة واتفاقية مستوى الخدمة واستمرارية الفريق: التفكير فيما بعد التسليم

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

اطلب عرضًا مكتوبًا للصيانة، منفصلًا عن التطوير: نطاقها (التصحيحات، وتحديث المكتبات التابعة، والمراقبة)، وآجال التكفّل بحسب درجة الخطورة، وساعات التغطية، وطريقة فوترة التطويرات. فاتفاقية مستوى الخدمة (SLA) التي لا تعرّف بوضوح الحادث «الحرج» لا تحميك.

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

عقد جزافي أم بالوقت المستهلك أم صيغة مختلطة: أي عقد تختار؟

تحدّد صيغة العقد من يتحمّل المخاطرة. ولا توجد صيغة جيدة في حد ذاتها؛ بل ينبغي أن تلائم مدى نضج حاجتك.

العقد الجزافي (سعر ثابت)

  • المزايا: ميزانية ونطاق معروفان مسبقًا، ومقارنة سهلة بين العروض، وهو مناسب لحاجة مستقرة وموثّقة جيدًا.
  • الحدود: كل تغيير يمرّ عبر ملحق للعقد؛ ويُدرج مقدّم الخدمة هامشًا للمخاطرة في سعره؛ وقد يُغريه الاكتفاء بالحد الأدنى التعاقدي.

العقد بالوقت المستهلك (الأداء حسب الوقت المنجَز)

  • المزايا: مرونة كبيرة في إعادة ترتيب الأولويات، وهو مناسب لمنتج SaaS يُبنى بالتفاعل مع مستخدميه.
  • الحدود: الميزانية النهائية غير مضمونة؛ والقيادة تقع على عاتقك (ترتيب الأولويات، والمصادقة، وتتبّع الوقت المستهلك).

الصيغة المختلطة

من الصيغ الشائعة الجمع بين مرحلة تأطير بعقد جزافي (ورشات، ونماذج أولية للواجهات، وهندسة، وتقدير) ثم دورات Sprint بالوقت المستهلك مع سقف للميزانية في كل فترة. وتُنتج مرحلة التأطير مُخرَجًا يعود إليك ويظل مفيدًا حتى لو غيّرت مقدّم الخدمة بعد ذلك؛ كما تشكّل اختبارًا حقيقيًا للعلاقة قبل التزام أثقل. وبالنسبة إلى منتج قائم على الاشتراك، يفصّل مقالنا عن تطوير حلول SaaS حسب الطلب في المغرب هذا التقسيم.

علامات الإنذار قبل التوقيع مع مقدّم خدمة

بعض السلوكيات، التي يمكن رصدها منذ مرحلة طلب العروض، تنذر بصعوبات أثناء المشروع.

  • غياب أي سؤال عن حاجتك: عرض أسعار يُرسَل دون ورشة أو نقاش حول مستخدميك ومساطرك وقيودك يقوم على فرضيات ستكتشفها لاحقًا.
  • سعر أو أجل أدنى بكثير من باقي العروض: إما أن النطاق لم يُفهم جيدًا، وإما أن عناصر أساسية (الاختبارات، والأمن، والتوثيق) قد حُذفت.
  • لا ولوج إلى مستودع الشيفرة: إذا رفضت الوكالة فتح المستودع لك أثناء المشروع، فلن تستطيع التحقق من التقدّم الفعلي ولا استرجاع الشيفرة في حال فسخ العلاقة.
  • «كل شيء ممكن»: مقدّم الخدمة الجادّ يقول لك أيضًا ما هو مكلف، وما هو محفوف بالمخاطر، وما لا ينصح به.
  • عقد غامض: لا مُخرَجات محدّدة، ولا معايير للقبول، ولا بند لقابلية الاسترجاع (réversibilité) يضمن انتقال المشروع إلى جهة أخرى.

ما الأسئلة التي تُطرح في اللقاء الأول مع شركة تطوير؟

اطرح الأسئلة نفسها على كل مرشح ودوّن الأجوبة: فهي أبسط طريقة لمقارنة عروض غير متجانسة.

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

وإذا كان مشروعك يتضمّن الأداء الإلكتروني في المغرب (عبر المركز المغربي للنقديات CMI مثلًا) أو واجهة باللغة العربية، فاطلب خبرة محدّدة للفريق في هذه النقطة.

كيف تقارن عروض الأسعار وتختار مقدّم الخدمة؟

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

وقبل التوقيع، تحقّق كذلك من الأساسيات: الوجود القانوني للشركة (السجل التجاري، والمعرّف الموحّد للمقاولة ICE)، وأهلية الموقّع، وأسماء المخاطَبين في العقد. هذه المراقبة لا تستغرق وقتًا طويلًا وتجنّبك المفاجآت غير السارة.

Codevista Innovations شركة للهندسة البرمجية مقرّها الدار البيضاء، حاصلة على شهادتي ISO 27001:2022 وISO 9001:2015. نعمل بمنهجية Scrum: مرحلة استكشاف وتصميم لتجربة المستخدم وواجهته (UX/UI)، ثم دورات Sprint مدتها أسبوعان مع إصدارات منتظمة على بيئة staging، وذلك أساسًا بـNext.js وGo وPython وTypeScript. وإذا كنت تُعدّ طلب عروض، فاطرح علينا أسئلة هذه القائمة كما تطرحها على باقي المرشحين: تواصل معنا.

أسئلة شائعة

كيف أتحقق من مراجع وكالة لتطوير الويب في المغرب؟

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

عقد جزافي أم بالوقت المستهلك: أي عقد أختار لتطوير تطبيق؟

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

لمن تعود ملكية الشيفرة المصدرية التي تطوّرها وكالة؟

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

هل ينبغي اختيار وكالة تطوير في الدار البيضاء بدل وكالة في الخارج؟

القرب يسهّل الورشات الحضورية، وفهم السياق المحلي (اللغات، والأداء الإلكتروني المغربي، والقانون 09-08 المتعلق بالمعطيات الشخصية)، والعمل في المنطقة الزمنية نفسها. وقد تكون الوكالة الأجنبية مناسبة لخبرة نادرة؛ وفي هذه الحالة تحقّق من مكان استضافة المعطيات، لأن نقلها خارج المغرب يؤطّره القانون 09-08. وفي الحالتين، طبّق المعايير نفسها: مراجع قابلة للتحقق، وملكية الشيفرة، والأمن، واستضافة المعطيات، والصيانة.

اقرأ أيضًا