إدارة برمجيات

من التقليدية إلى الرشاقة (Agile)

By حسام الكرد

October 02, 2015

مازالت الكتب التعليمية تخاطب القطاع الأكاديمي دون النظر لواقع العمل الحقيقي في بناء أنظمة البرمجيات, حيث أن الأنمطة والطرق التي تتداولها الكتب التعليمية في طريقة بناء البرمجيات تثبت عدم جدواها على أرض الواقع.

فمثلا طريقة الشلال (Waterfall) والتي تشير إليها الكثير من الكتب التعليمية كنمط أساسي لبناء البرمجيات وكطريقة فعالة في كثير من الأحيان, على النقيض من الواقع. حيث تثبت أغلب الأنظمة التي تبنا بهذه الطريقة فشلها من ناحية تحقيق غاية العمل المطلوب.

مايحدث في حال حدوث خلل في أي مرحلة في طريقة الشلال

فرغم ترتيب نظام الشلال ووضوحه ووجود ميزات مختلفة, مثل سهولة تنظيم المشروع وسهولة إدارته وكذلك معرفة مخطط سير المشروع بوضوح, إلا أن المسألة مختلفة جدا فأي خلل في أي مرحلة سيترتب عليه خلل أخر في المرحلة القادمة وبالتالي فإن المشروع كله معرض للخطر حيث أن العميل لا يكون مدخل في عملية التطوير وإنما ينتظر المنتج الأخير والذي يمكن أنه لا يوافق ما يريده العميل.

هناك بالتأكيد تعديلات مختلفة حدثت على هذه الطريقة إلا أنها تعديلات الهدف منها حل مشاكل جزئية, والمشكلة بالأساس هي مشكلة في طريقة التفكير, ولا يمكن حلها إلا بتغيير طريقة التفكير.

بعض تعديلات الشلال لحل المشاكل لا أنصح بمعرفة التفاصيل !

فعلى فرض أن العميل يعرف تماما ما يريد (هذا نادر الحدوث), والمطور يعرف تماما ما يريد أن يفعل, فإن العمل بطريقة الشلال يجعل من الأمر وكأنه مسلم دون حدوث أي تغييرات في المنتصف التي يمكن أن تعمل على عدم بلوغ حاجة العميل, حيث أنه يمكن تشبيه الأمر بكرة المدفع التي يتم ضربها لمرة واحده فإما أن تبلغ الهدف وإما لا.

رياح التغيير اثناء المشروع قد تغير كل شي ولا تصل إلى الهدف المرجو

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

الفريق التقليدي و فريق الأجايل

ومن هنا كان لابد من تغيير التفكير بشكل كلي حي, وهذا ما اجتمع لأجله كبار مهندسي البرمجيات في ال 2001 حيث قامو بإصدار مباديء وفكر جديد لتأسيس فكر الأجايل.

إجتماع كبار مهندسي البرمجيات لصياغة مباديء الأجايل

حيث نصت اللائحة على التالي:

يمكنكم مراجعة رابط مباديء الأجايل المنتشر بعدة لغات من  هنا

إذا فالأجايل هو طريقة تفكير وليس آلية أو طريقة مثل الشلال, لذلك تم بناء مجموعة من الطرق التي تقوم على هذا المبدأ.

منها ما هو متعلق بإدارة الفريق لنفسه وطريقة تسليم المنتج والتعامل مع العميل مثل ال Scrum يمكنكم العودة إلى تدوينة

إطار سكروم ماهو وكيف ؟

و منها ما هو تقني هندسي ويتعلق بالممارسات والعمليات لتحقيق عامل الجودة مثل XP يمكنكم العودة إلى تدوينات

البرمجة القصوى (XP) – الجزء الأول

البرمجة القصوى (XP) – الجزء الثاني

ولذلك لتطبيق الأجايل يتم الأمر بأخذ قرار إداري يشمل الإدارة والفريق وممارسة الأجايل بشكل تدريجي حيث أن الغايات واضحه ولكن القصة في الممارسة والتعود على آلية الفكر الجديد.

طريقة التغير للأجايل

حيث يمكن الإستعانة ب مبدأ Shu HA RI  اليابني في رياضة الأيكودو والذي يقوم على أساس أن تتبع القواعد ثم تكسر القواعد ثم تصبح لك قواعدك الخاصة, مثل الطبخ يمكن أن تتعلم كيف تعمل طبخة معينة من خلال وضع الأصناف المطلوبة, وبعد التعود يمكنك إضافة أصناف مختلفة, ومن ثم يمكنك عمل طبخة خاصة بك, وكذلك الحال بالنسبة للأجايل تماما !

أتمنى أن تكون تدوينة مفيدة, دمتم بود

إلى تدوينة أخرى.