الأخبار التقنية

تعرّف على آلية “أجايل” في تطوير المشاريع

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

“Agile” هي واحدة من أحدث وأفضل الطرق الناجعة لتطوير البرمجيات وإدارتها خلافا للطرق التقليدية والكلاسيكية في إدارة المشاريع أو ما يعرف بـ waterfall.

يحكم آلية “أجايل” مجموعة من القوانين والممارسات التي تمكن المطورين وأصحاب المشاريع من الحصول على المنتج النهائي “كموقع إنترنت أو تطبيق معين لآيفون مثلا” بأقل التكاليف و في زمن قياسي.

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

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

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

يتكون فريق العمل الذي يتبع آلية “أجايل” للتطوير من ثلاثة عناصر أساسية :

Product Owner أو مالك المنتج

صاحب المنتج يمثل أصحاب المصلحة وصوت العميل. وهو مسؤول عن ضمان أن الفريق يسلم تقدم وتطور في المنتج بشكل دوري. صاحب المنتج يكتب (أو لديه فريق) يقوم بكتابة متطلبات المنتج أو المشروع بشكل تراكمي دون تحديد وقت زمني لها على أن يتم اعطاء الأولوية لهذه المهام ليتم طرحها على فريق التطوير في كل دورة تطويرية “الدورة التطويرية قد تكون اسبوع او اسبوعين”.

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

Development Team أو فريق التطوير

فريق التطوير هو المسؤول عن تخطيط، انجاز وتنفيذ المهام خلال كل دورة تطويرية. انه العنصر الأهم و عمود الأساس لفريق العمل.يتكون فريق التطوير من 3-9 أشخاص ذوي مهارات متعددة الوظائف (تحليل، تصميم، تطوير، اختبار، توثيق.. الخ) ما يميز فريق التطوير هو التنظيم الذاتي. لا يوجد مسؤول تقني، الفريق يدير نفسه بنفسه بكفاءة ومهارة عالية.

Scrum Master

وهو الشخص المسؤول عن إزالة العقبات التي تحول دون قدرة الفريق على تقديم أو طرح الدورة التطويرية بنجاح “Sprint”

scrum master ليس قائدا للفريق . انه يعمل كحاجز بين الفريق وأي تأثيرات سلبية تشتت الفريق عن انجاز مهامه. مهمته ايضا التأكد من عدم كسر آلية العمل وقواعد “أجايل” التي يعمل بها الفريق. كما انه مسؤول عن حماية فريق التطوير وابقاء تركيزه على المهام التي بين يديه. يختلف scrum master عن مدير المشاريع بأن الأخير قد يتم إيكال مسؤوليات له تتعلق بإدارة الأفراد وهي مسؤولية لا يتم اسنادها ل scrum master لتجنب التشويش على ادارة المشروع نفسه.

بالاضافة الى ذلك هناك ايضا أدوار ثانوية في فريق “أجايل” وهي أدوار ليست ذات طابع رسمي وتكون غالبا بشكل نادر، ولكن يجب أن تؤخذ بعين الاعتبار.

Stakeholders أو أصحاب المصلحة

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

Managers أو المدراء

وهم الأشخاص الذين يسيطرون على بيئة العمل و الأمور الإدارية.

زر الذهاب إلى الأعلى