لاشك أن التخطيط مهم جداً قبل تنفيذ أي عمل، لكن من ناحية عملية هل ينجح اﻹلتزام بتواريخ بداية ونهاية كل جزء من الخطة. لكن دعنا لا نتكلم نظرياً، فالنظري يقول أن الخطط لابد أن تكون مؤرخة ولا بد من التخطيط جيداً قبل أي مشروع، لكن هل كل هذا الكلام النظري صحيح.
من تجربة عملية في تنفيذ مشروعات برمجية لجهات مختلفة دائماً يكون هُناك إنحراف في زمن الخطط، وفي الغالب يكون مقدار اﻹنحراف اﻷكبر من ناحية الزبون، فمثلاً يطلب الزبون تنفيذ نظام معين، وطبعاً يكون دائماً مستعجل - الغريب في آخر مرة ذهبت إلى زبون قال لي في النهاية أنه غير مستعجل، فتعجبت، هذه أول مرة اسمعها- فيكون التخطيط مثلاً أننا سوف نبدأ التطوير في أول هذا الشهر، ثم نقوم بتثبيت النظام بداية الشهر القادم، والزمن الكلي هو شهران، ثم نقوم بحساب التكلفة بناءً على عدد اﻷفراد في فريق العمل بالنسبة للزمن الكلي، وهو شهران. وتكون هُناك متطلبات لابد من اﻹيفاء بها من جانب الزبون المستعجل. لكن يحدث أن ينتهي تطوير البرنامج أحياناً قبل وقته، لكن الزبون يعجز عن تلبية الطلبات في وقتها، فيصبح تنفيذ النظام يحتاج إلى أربعة أشهر بدلاً من شهرين فقط، وفي احد اﻷنظمة إنتهي النظام في شهر واحد وكان المخطط شهران، لكن الزبون عجز عن اﻹيفاء بمتطلباته – بما فيها المالية- حتى بعد خمسة أشهر.
المشكلة تكمن دائماً في اﻹيفاء بالمتطلبات التي ليست من جانبنا، بل من جانب الزبون، وهذا يقود إلى مشكلة أكبر وهي عندما نُخطط مالياً ليكون لنا دخل من المشروع في فترة زمنية معينة، يحدث تأخير لتحصيل هذا الدخل في موعده بسبب تأخر جزئيات معينة من المشروع. وهذا يُمكن أن يؤدي إلى كارثة، مثلاً يمكن أن يؤدي إلى عدم اﻹيفاء بمستحقات الموظفين أو المتعاقد معهم، واحياناً يُمكن أن يؤدي إلى إفلاس الشركة، خصوصاً إذا كانت شركة ناشئة وليس لديها إحتياطي كافي من الميزانية.
كحل لهذه المشاكل التي تعلمنا منها فننصح أولاً بمحاولة تقليل اﻹعتمادية على الزبون في المتطلبات، فإذا كُنت تستطيع أنت عمل المتطلب فاﻷفضل أن تقوم به، مثلاً بدلاً من أن تطلب من الزبون شراء جهاز كمبيوتر ليعمل كمخدم وكان بإستطاعتك أن تقوم أنت بشرائه، فاﻷفضل أن تشتريه أنت، حتى لو لم تكن هُناك فائدة مادية أو ربح جراء عملية الشراء، لكن هذا يرفر لك زمن كبير، حيث أن التأخر في شراء مخدم مثلاً يعطل تجهيزه ويُعطل تثبيت النظام وبالتالي يعطل التدريب، ثم يعطل دفع المستحقات المالية. كذلك عندما تطلب منهم كتابة تحليل كامل لما يحتاجونه، يمكن أن يتطلب ذلك أشهراً من الزبون الذي ربما لا يعرف ما يحتاج بالضبط، بدلاً من ذلك يُمكنك كتابة هذا التحليل والطلبات له ثم عرضها عليه ليزيد أو يغيير فيها.
من الحلول اﻷخرى هو ربط المستحقات بتنفيذ كل جزئية وليس لكل المشروع، مثلاً عند اﻹنتهاء من التطوير يتم دفع ٥٠٪ ولا يُشترط حينها أن يتم تثبيت النظام، فإذا تأخر الزبون في تجهيز المستخدمين أو البيئة التي سوف يعمل فيها النظام لا يضر ذلك بالشركة التي تقوم بتنفيذ هذا المشروع. كذلك يُمكنك تسليم النظام في بيئة التطوير الخاصة بك.
كحل آخر هو عدم اﻹتكال على أن الخطة الزمنية سوف تسري كما هي، مثلاً لا تلتزم مع زبون بأنك سوف تكون متفرغ له تماماً خلال الشهرين القادمين، بدلاً من ذلك يمكنك وضع مشروعات أخرى في نفس الزمن، فإذا فشل الزبون في تلبية المتطلبات أو فشل في أن يكون متفرغاً معك في نفس الوقت، تكون لديك خطة بديلة تُساهم في إنقاذ الوضع المالي بالنسبة للزمن.
هذه حصيلة لبعض ما تعلمناه من العمل الحر خلال العامين الماضيين.

المصدر:
مدونة أبو إياس