جدول المحتوى
سنركز على مفاهيم دورة حياة تطوير البرمجيات والتي تسمى “Agile”. تساعد منهجية تطوير البرمجيات Agile في بناء برنامج من خلال جلسات تزايدية في تكرارات قصيرة تتراوح من 1 إلى 4 أسابيع بحيث يتماشى التطوير مع متطلبات العمل المتغيرة.
هناك 12 مبدأ تصف منهجية Agile بالتفصيل :
رضا العملاء Satisfaction of customers
يتم إعطاء الأولوية القصوى للعملاء مع التركيز على المتطلبات من خلال التسليم المبكر والمستمر للبرامج القيمة.
الترحيب بالتغييرات الجديدة Welcoming new changes
التغييرات مقبولة أثناء تطوير البرمجيات. تم تصميم عمليات Agile لتتناسب مع الميزة التنافسية للعميل.
التوصيل Delivery
يتم تسليم برنامج العمل للعملاء في غضون أسبوع إلى أربعة أسابيع.
التعاون Collaboration
يجب أن يعمل محللو الأعمال ومحللو الجودة والمطورون معًا خلال دورة حياة المشروع بأكملها.
التحفيز Motivation
ينبغي تصميم المشاريع مع مجموعة من الأفراد المتحمسين. يوفر بيئة لدعم أعضاء الفريق الفرديين.
المحادثة المباشرة Personal conversation
تعد المحادثة وجهًا لوجه هي الطريقة الأكثر كفاءة وفعالية لإرسال المعلومات إلى فريق التطوير وداخله.
قياس التقدم Measuring progress
يعد قياس التقدم هو المفتاح الذي يساعد في تحديد التقدم المحرز في تطوير المشروع والبرمجيات.
الحفاظ على وتيرة ثابتة Maintaining constant pace
تركز عملية Agile على التنمية المستدامة. يجب أن يكون رجال الأعمال والمطورون والمستخدمون قادرين على الحفاظ على وتيرة ثابتة للمشروع.
الرقابة Monitoring
من الضروري الحفاظ على الاهتمام المنتظم بالتميز التقني والتصميم الجيد لتعزيز الأداء الوظيفي السريع.
الرقابة Simplicity
تحافظ عملية Agile على كل شيء بسيطًا وتستخدم مصطلحات بسيطة لقياس العمل الذي لم يكتمل.
مصطلحات ذاتية التنظيم Self-organized terms
يجب أن يكون الفريق المرن منظمًا ذاتيًا ومستقلاً مع أفضل بنية؛ المتطلبات والتصاميم تنشأ من فرق ذاتية التنظيم.
مراجعة الأعمال Review the work
من المهم مراجعة العمل على فترات منتظمة حتى يتمكن الفريق من التفكير في كيفية تقدم العمل. ستؤدي مراجعة الوحدة في الوقت المناسب إلى تحسين الأداء.
الوقوف اليومي Daily Stand-up
يشير الوقوف اليومي إلى اجتماع الحالة اليومي بين أعضاء الفريق. ويوفر التحديثات المتعلقة بتطوير البرمجيات. ويشير أيضًا إلى معالجة معوقات تطوير المشروع.
يعد الوقوف اليومي ممارسة إلزامية، بغض النظر عن كيفية إنشاء فريق رشيق بغض النظر عن موقع مكتبه.
قائمة ميزات الوقوف اليومي هي كما يلي :
1 – يجب أن تكون مدة اللقاء اليومي حوالي 15 دقيقة. لا ينبغي أن تمتد لفترة أطول.
2 – يجب أن تتضمن المواجهة مناقشات حول تحديث الحالة.
3 – عادة ما يقف المشاركون في هذا الاجتماع بنية إنهاء الاجتماع سريعًا.
متطلبات العميل User Story
عادة ما تكون القصة متطلبًا، والتي تتم صياغتها في جمل قليلة بلغة بسيطة ويجب إكمالها خلال التكرار. يجب أن تتضمن قصة المستخدم الخصائص التالية :
1 – يجب أن يكون لجميع التعليمات البرمجية ذات الصلة تسجيلات وصول ذات صلة.
2 – حالات اختبار الوحدة للتكرار المحدد.
3 – ينبغي تحديد جميع حالات اختبار القبول.
4 – القبول من صاحب المنتج أثناء تحديد القصة.
ماهو Scrum ؟
يمكن اعتبار سكروم مجموعة فرعية من Agile Methodology . إنها عملية خفيفة الوزن وتتضمن الميزات التالية :
1 – إنه إطار عمل يتضمن مجموعة من الممارسات التي يجب اتباعها بترتيب ثابت. أفضل مثال على Scrum هو التكرارات التالية أو سباقات السرعة.
2 – إنها عملية “خفيفة الوزن” مما يعني أن العملية تظل صغيرة قدر الإمكان، لزيادة الإنتاج الإنتاجي إلى الحد الأقصى خلال مدة معينة محددة.
تُعرف عملية Scrum بعمليتها المميزة مقارنة بالمنهجيات الأخرى للنهج الرشيق التقليدي. وهي مقسمة إلى الفئات الثلاث التالية (الأدوار ، الآثار ، صناديق الوقت).
تحدد الأدوار أعضاء الفريق وأدوارهم المدرجة طوال العملية. يتكون فريق سكروم من الأدوار الثلاثة التالية (سكروم ماستر ، مالك المنتج ، الفريق).
توفر عناصر Scrum المعلومات الأساسية التي يجب أن يكون كل عضو على علم بها. تتضمن المعلومات تفاصيل المنتج والأنشطة المخططة والأنشطة المكتملة. المصنوعات اليدوية المحددة في إطار عمل سكروم هي كما يلي (تطور المنتج ، سباق زمن التنفيذ ، تنفيذ الرسم البياني ، زيادة القيمة).
المربعات الزمنية هي قصص المستخدم التي تم التخطيط لها لكل تكرار. تساعد قصص المستخدمين هذه في وصف ميزات المنتج التي تشكل جزءًا من منتجات Scrum. تراكم المنتج عبارة عن قائمة بقصص المستخدمين. يتم تحديد أولويات قصص المستخدمين هذه وإرسالها إلى اجتماعات المستخدمين لتحديد القصة التي يجب تناولها.
لماذا Scrum Master ؟
يتفاعل Scrum Master مع كل عضو في الفريق. دعونا نرى الآن تفاعل Scrum Master مع الفرق والموارد الأخرى.
مالك المنتج Product Owner
يتفاعل Scrum Master مع مالك المنتج بالطرق التالية :
1 – إيجاد تقنيات لتحقيق تراكم فعال للمنتج لقصص المستخدمين وإدارتها.
2 – مساعدة الفريق على فهم احتياجات عناصر تراكم المنتج الواضحة والموجزة.
3 – تخطيط المنتج مع بيئة محددة.
4 – التأكد من أن مالك المنتج يعرف كيفية زيادة قيمة المنتج.
5 – تسهيل أحداث Scrum عند الاقتضاء.
Scrum Team
يتفاعل Scrum Master مع الفريق بعدة طرق
1 – تدريب المنظمة في اعتماد سكروم.
2 – تخطيط تطبيقات Scrum لمنظمة معينة.
3 – مساعدة الموظفين وأصحاب المصلحة على فهم متطلبات ومراحل تطوير المنتج.
4 – العمل مع Scrum Masters من الفرق الأخرى لزيادة فعالية تطبيق Scrum للفريق المحدد.
Organization
يتفاعل Scrum Master مع المنظمة بعدة طرق. تم ذكر عدد قليل أدناه :
1 – يتفاعل فريق التدريب وفريق سكروم مع التنظيم الذاتي ويتضمن ميزة الوظائف المتقاطعة.
2 -تدريب المنظمة والفرق في المجالات التي لم يتم فيها اعتماد Scrum بالكامل بعد أو لم يتم قبوله.
فوائد Scrum
يساعد Scrum العملاء وأعضاء الفريق وأصحاب المصلحة على التعاون. يتضمن نهجًا محددًا بالوقت وتعليقات مستمرة من مالك المنتج لضمان أن المنتج في حالة صالحة للعمل. يوفر Scrum فوائد للأدوار المختلفة للمشروع.
العملاء
يتم أخذ سباقات السرعة أو التكرارات بعين الاعتبار لمدة أقصر ويتم تصميم قصص المستخدمين وفقًا للأولوية ويتم تناولها في تخطيط سباقات السرعة. إنه يضمن تلبية متطلبات العملاء في كل تسليم سريع. إذا لم يكن الأمر كذلك، تتم ملاحظة المتطلبات ويتم التخطيط لها وأخذها في سباق السرعة.
المنظمة
يمكن للمنظمة بمساعدة أساتذة Scrum وScrum التركيز على الجهود المطلوبة لتطوير قصص المستخدمين وبالتالي تقليل عبء العمل الزائد وتجنب إعادة العمل إن وجدت. ويساعد هذا أيضًا في الحفاظ على زيادة كفاءة فريق التطوير ورضا العملاء. ويساعد هذا النهج أيضًا في زيادة إمكانات السوق.
مديري الإنتاج
المسؤولية الرئيسية لمديري المنتجات هي ضمان الحفاظ على جودة المنتج. بمساعدة Scrum Masters، يصبح من السهل تسهيل العمل وجمع الاستجابات السريعة واستيعاب التغييرات إن وجدت. يتحقق مديرو المنتجات أيضًا من أن المنتج المصمم يتوافق مع متطلبات العميل في كل سباق.
فريق التطوير
مع الطبيعة المحدودة للوقت والحفاظ على فترات السرعة القصيرة، يصبح فريق التطوير متحمسًا لرؤية العمل ينعكس ويتم تسليمه بشكل صحيح. يقوم منتج العمل بزيادة كل مستوى بعد كل تكرار أو بالأحرى يمكننا أن نطلق عليها اسم “Sprint”. تصبح قصص المستخدم المصممة لكل سباق من أولويات العميل، مما يضيف المزيد من القيمة إلى التكرار.
الخاتمة
يعد Scrum إطارًا فعالاً يمكنك من خلاله تطوير البرامج في العمل الجماعي. تم تصميمه بالكامل على مبادئ رشيقة. ScrumMaster موجود لمساعدة فريق Scrum والتعاون معه بكل الطرق الممكنة. إنه يعمل كمدرب شخصي يساعدك على الالتزام بالخطة المصممة وتنفيذ جميع الأنشطة وفقًا للخطة. يجب ألا تمتد سلطة ScrumMaster أبدًا إلى ما هو أبعد من العملية. يجب أن يكون قادرًا على إدارة كل موقف.