إذا سبق لك أن فكرت في استخدام خدمات دار برمجيات، فربما تساءلت عن شكل عملية التعاون بين شركتك (العميل) ودار البرمجيات. تستخدم معظم شركات صناعة التكنولوجيا نموذجاً مماثلاً للتعاون. غالباً ما نتحدث عن المشاريع المخصصة - تطوير فكرة من الصفر - أو outsourcing.
مبادئ التعاون مع دار البرمجيات غالبًا ما تثير بعض الفضول لدى العملاء. إنهم يريدون معرفة خطة مفصلة للتعاون اليومي، وإعداد التقارير عن النتائج، وتقسيم الأدوار، ومشاركتهم الضرورية في المشروع. عندما يحتاج العميل إلى التعاون مع شريك خارجي، بسبب المتطلبات التكنولوجية العالية لـ تطوير المنتجاتفقد يكون لديه مخاوف بشأن العملية برمتها. إذا كان العميل قد عمل فقط على منتجاتهم في المنزل، قد لا يعرف ما إذا كان التعاون مع جهة خارجية الفريق ستكون فعالة.
إذا قررت هذا الخيار لـ المنتج التطوير، ستكتشف بسرعة أن التعاون مع دار برمجيات له العديد من المزايا. وهي في المقام الأول حل فعال من حيث التكلفة، وتوفر عملاً عالي الجودة بفضل تخصصها في بعض المجالات المختارة، وتضمن الدعم الفني المستمر.
في الأساس، هناك طريقتان أكثر شيوعًا لهذا التعاون. هناك مشاريع مخصصة و outsourcing.
مشروع مخصص
ينطبق هذا التعاون على المشاريع التي تم تطويرها من الصفر. عادة ما يأتي العملاء بفكرة لمنتج ما ويقدمونها إلى دار البرمجيات. وفي بعض الأحيان قد لا تكون لديهم فكرة محددة، لكنهم يعرفون أهم الوظائف التي يرغبون في تنفيذها في الحل الذي يريدونه. في المرحلة الأولية، تساعد دار البرمجيات (باستخدام خبرتها) في تطوير مخطط المنتج من الناحية المفاهيمية، مما يساعد العميل على فهم التكنولوجيا المناسبة للمنتج المحدد. يمكن تسمية هذه المرحلة بالاستشارات.
هذه المرحلة الأولية من التعاون ضرورية لتحديد مواصفات وأهداف المشروع. تعود هذه المهمة إلى العميل. وبناءً على ذلك، يمكن لدار البرمجيات وضع تقدير للتكاليف ومدة المشروع والمواعيد النهائية لمهام محددة. يتعرف الطرفان على طريقة عمل بعضهما البعض ويضبطان التفاصيل. وإذا لزم الأمر، يمكن للعميل التشاور مع دار البرمجيات لإيجاد حلول بديلة. إذا كنا نتحدث عن مشاريع مخصصة، فإن الممارسة الأكثر شيوعًا هي تحديد قائمة بالوظائف الضرورية للمنتج لتحقيق MVP (الحد الأدنى من المنتجات القابلة للتطبيق).
في هذه المرحلة، يقرر العميل ما إذا كان يمكن المضي قدماً في التعاون ويتم توقيع العقد. أما المرحلة الثانية فتتضمن قيام دار البرمجيات ببناء فريق عمل لتطوير المشروع. في كثير من الأحيان لا تتكون هذه الفرق من المطورين فقط، ولكن أيضًا من مصممي تجربة المستخدم/واجهة المستخدم - اعتمادًا على نوع المشروع. ثم يتم بعد ذلك اختيار مدير المشروع لتنسيق جميع الأعمال والعمل كحلقة وصل بين العميل والمطورين، من أجل توفير أفضل مستوى من التواصل. ومن الممارسات الجيدة أيضًا إعطاء الفرصة للعميل للتعرف على الفريق بأكمله منذ البداية. وهذا يساعد على خلق الثقة في العميل والمشاركة في الفريق.
حان وقت مرحلة التطوير. تفضل معظم دور البرمجيات العمل باستخدام منهجية Scrum (وهو نهج يمكن أن نوصي به أيضًا)، وبفضله يتم تطوير جميع المهام المتعلقة بالمشروع تدريجيًا في وقت معين. يتم وضع جميع المهام على سبيل المثال في Jira (أو أي إدارة المشاريع أدوات) ويتم تجميعها على النحو التالي:
- المهام المتراكمة - المهام التي سيتم تنفيذها في المستقبل
- للقيام به - المهام التي سيتم تنفيذها خلال العدو السريع
- قيد التنفيذ - المهام التي يعمل عليها الفريق حاليًا.
عادةً ما تكون مدة السباق السريع حوالي أسبوعين. خلال هذا الوقت، يركز الفريق على تنفيذ المهام المختارة ويختبر باستمرار الوظائف التي تم إنشاؤها (الكود المراجعة). وبفضل الاجتماعات اليومية يستطيع الفريق مشاركة المعلومات حول التقدم المحرز في عمله ويتلقى العملاء تقارير أسبوعية توضح تطور المشروع.
اعتمادًا على احتياجات العميل، يمكن أن يحدث التواصل بين الطرفين في كثير من الأحيان، وأحيانًا حتى يوميًا. وعادةً ما تُستخدم أدوات مثل Slack أو Jira لتسهيل التواصل. وبهذه الطريقة، لا يكون لدى العميل رؤية محدثة للتقدم المحرز فحسب، بل يمكنه أيضًا أن يطلب من أحد أعضاء الفريق أي شيء في أي وقت. تساعد هذه العملية في الحفاظ على المنتج في تطور مستمر.
وتجدر الإشارة إلى أنه بعد إرساء أسس التعاون وتأكيد مواصفات المشروع، تنتهي مشاركة العميل. وبعد ذلك تتولى دار البرمجيات العملية برمتها والتي تتمثل مهمتها في تحقيق أهداف وغايات محددة.
الاستعانة بمصادر خارجية
الخيار الثاني هو outsourcing. يتم اختياره عادةً من قبل الشركات التي لديها احتياجات سريعة أو عاجلة تتعلق بتطوير منتجاتها. قد يكون السبب الآخر لاختيار outsourcing هو عدم وجود الكفاءة أو القوى العاملة الكافية داخل الفريق الداخلي. يمكن أن يبدأ هذا التعاون بشكل أسرع بكثير من المشاريع المخصصة، لأن العميل يعرف احتياجاته ومتطلباته بوضوح منذ البداية.
في المرحلة الأولى من التعاون على أساس outsourcing، يحدد العميل احتياجاته ويطلب من بيت البرمجيات تعيين عضو الفريق المناسب الذي يمكن أن يتعاون معه. بعد ذلك، غالباً ما يأتي دور التحقق من مهاراته. ويمكن القيام بذلك من خلال مقابلة واجتماع تعريفي. ولكن في بعض الأحيان قد تنفذ دار البرمجيات فترة تجريبية مجانية (من أسبوع إلى أسبوعين) للعميل لاختبار مهارات الموظف المحتمل.
بمجرد اكتمال مرحلة التحقق بنجاح، يستعين العميل بمطور أو أكثر للانضمام إلى فريقه الداخلي. في هذه الحالة، يلعب مالك المنتج دورًا حاسمًا. فهو يتصل بالمطورين عن بُعد وينسق عملهم. كل هذه العملية أصبحت أسهل بفضل أدوات محددة تساعد على قياس وقت عمل كل مطور. هذه أيضًا معلومات مفيدة للعميل لفهم مقدار الوقت اللازم فعليًا لأداء مهمة معينة.
كما لاحظت على الأرجح، فإن outsourcing هو حل بسيط وسريع نسبيًا لا يتطلب الكثير من الالتزام من العميل. إنها طريقة سهلة للشركة لإضافة مطورين إلى فريقها الداخلي للمشاريع المؤقتة. وتتمثل ميزتها أيضًا في إمكانية إجراء فترة اختبار، حيث يتم التحقق من مهارات المطور، ويمكن للشركة أن تتعرف على طريقة عمله وتقرر في النهاية ما إذا كانت ستقيم مزيدًا من التعاون. وهذا يقلل من مخاطر اختيار المرشح الخطأ.
الملخص
مشاريع مخصصة و outsourcing هي طرق فعالة لتطوير منتجك من الجانب التكنولوجي. المفتاح هو اختيار الشريك المناسب - ويفضل أن يكون شريكاً لديه خبرة في تطوير مشاريع مشابهة لمشروعك. وهذا من شأنه أن يطمئنك بأن دار البرمجيات لديها الكفاءات الكافية لمساعدتك. يجدر بك أيضاً التحقق من آراء العملاء الآخرين ومعرفة كيفية تقييمهم لعمل الفريق بأكمله.
اقرأ المزيد: