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