Agile in Action .. تكوين الفريق
لما نتكلم عن المواقف يبقي نتكلم اول حاجة علي الفريق و ازاي بيشتغلوا مع بعض ، كنا بنشتغل coaching مع فريق اول مرة يطبق الagile و فيهم ناس اول مرة يشتغلوا مع بعض ، في الاول اخدوا التدريب و بدأوا المشروع و الحياة جميلة و كلها حماس و بعدين بدأ الشغل بجد و tasks و عايزين نخلص عشان نعمل demo و لازم نعمل test و نحل الissues و هنا بدأ ال conflict الشهير بين الtester و الdeveloper ، انتو بتعملوا testing بطريقة مختلفة لا دي bug لا دي مش bug لا ده انتو مسلمين حاجة مش شغالة ، كل ده عادي و طبيعي بس طبعا بدآ يأثر علي روح الفريق و يعمل احزاب جوا الفريق و الدنيا بدآت تروح في سكة مش هتخلينا ننجز خالص ، هنبقي بنعمل process بس احنا كده فعلا مش agile.
طيب ايه علاقة الagile بالموضوع ده مش احنا شغالين iterations و بنعمل demo و daily standup و الحياة تمام ؟ لا طبعا الموضوع مش كده ، خلينا نفتكر ان اول مبدأ من الagile manifesto بيهتم بالindividuals and interactions بينهم ، ده كده core agile و ان عندنا principle في ال manifesto بيقول
Build projects around motivated individuals.
Give them the environment and support they need,
and trust them to get the job done.The best architectures, requirements, and designs
emerge from self-organizing teams.At regular intervals, the team reflects on how
to become more effective, then tunes and adjusts
its behavior accordingly.
يعني ال self organizing team ده حاجة مهمة جدا عشان نبقي شغالين agile ، و اكيد اللي بيحصل ده مش self organizing خالص .
مهم بقي نعرف ايه هو الself organzing teams و ازاي بيتكونوا ، الteams دي ناس بتعرف تشتغل مع بعض و عندهم هدف واحد مركزين عليه و مش محتاجين الادارة تعملهم micro management بس محتاجين ثقة و دعم عشان يعرفوا يعملوا شغلهم علي احسن وجه. و تكوين الفرق دي بياخد وقت و كمان مجهود و تركيز لحد ما نوصل للself organizing state .
تكوين الفرق دي بيمر باكتر من مرحلة ، مش معني اننا عارفين المشروع و متحمسين ليه وخلاص جمعنا الفريق مع بعض اننا هنبقي self organizing من اول يوم ، لا الفريق و لا الادارة المفروض يتوقعوا كده و لا يبقوا محبطين لو ده محصلش و كمان مهم قوي ان الفريق يبقي عنده هدف مشترك و الادارة فعلا مدياهم دعم و ثقة و امان .
المراحل دي بتتلخص في Forming , Storming , Norming and Performing
اول مرحلة Forming هي مرحلة تكوين الفريق و التعارف بينهم
تاني مرحلة Storming و هي مرحلة ان كل واحد بيشتغل بالطريقة اللي شايفها صح ، اللي مش بالضرورة نفس طريقة بقيه الفريق و يبدأ يحصل خلاف .
مرحلة ال Norming هي المرحلة اللي الناس بتحل فيها الخلاف و يوصلوا لاحسن حلول لمصلحة الشغل ، مش حلول وسط بس هي الحلول اللي تضيف قيمة و تكون في مصلحة العميل و المشروع و الشركة.
مرحلة الPerforming هي اللي فيها الفريق بينجز بسرعة و خلافاته بتكون قلت جدا و كمان بيبدأوا يبدعوا في طرق جديدة تحسن شغلهم
نرجع تاني للفريق اللي كنا بنتكلم عليه فوق ، الفريق ده كان في الstorming stage و ده طبيعي ، كل اللي كانوا محتاجينه هو انهم يعرفوا ده و ياخدوا الactions اللي تخليهم يوصلوا للمرحلة اللي بعدها .
و قد كان ، في اول retrospective meeting اتكلمنا في المشكلة و كان الحل بسيط جدا ، عايزين ال cases المهمة اللي بتحصل مع العميل تكون communicated للفريق و الtester يبعت الcases المهمة للdeveloper عشان يتاكد انه عملها handling قبل ما يسلم . و هنا طبعا يبان اهمية الretrospective meeting في اننا نعدي مراحل تكوين الفريق عشان يوصلوا للself organizing .
و الحمد لله الفريق ده كمل شغل مع بعضه و سلم المشروع و بدأوا مشروع تاني سوا بنفس الطريقة و ال rules اللي هم حطوها لنفسهم في المراحل اللي قبل كده.