Agile mindset (Arabic)
- 2. الفهرس
السابقة الحلقة ملخص
المرنة للبرمجة الرسمي البيانAgile Manifestoالمرنة البرمجة قيم أوAgile Values
مكتوبة غير أخرى قيم
المرنة البرمجة مباديءAgile Principles
مكتوبة غير أخرى مباديء
برشاقة التفكيرLean Thinking
الشائعة المرنة المنهجيات على نظرة
- 3. السابقة الحلقة ملخص...البرمجيات فشل أسباب
الواقعية غير أو الغامضة األهداف
المطلوبة الموارد تقدير في الخطأ
مستمر بشكل المشروع حالة متابعة عدمpoor reporting of project status
المخاطر إدارة في الفشل
التواصل ضعفpoor communication
ناضجة غير تقنيات على االعتمادimmature technologies
المشروع تعقيدات إدارة في الفشل
التطوير في المتقنة غير أو السيئة الممارساتhacking-driven development
اإلداري الفقر أو الضعف
المصلحة أصحاب سياساتstakeholdersالمتعارضة
السوق ضغط
واحد لسبب عادة الفشل يحدث ال,مجتمعة أسباب لعدة إنما,تنظيمية و إدارية و فنية.
*المصدر:http://spectrum.ieee.org/computing/software/why-software-fails
- 4. السابقة الحلقة ملخص...للطميات ال
المرنة البرمجة حركة ظهور قبل مخدومة تكن لم البرمجيات صناعة أن االدعاءAgile Software
Development–العرض بداية في قدمنا كما-خاطيء لكنه و شائع مدخل!
حقيقية أزمة من تعاني ال البرمجيات صناعة أن تبين اإلحصاءات,قديم مشكالت من تخلو لم إن وجديدة ة!
النجاح أسباب أهم خالصة:
«سكر تاكل نملة عيش»!!–مصري مثل
صغير المشروع–صغير فريق–قصير زمن
Go agile!
بالفعل المرنة البرمجة حركة نجاح تبين اإلحصاءات,الخاطيء المدخل غير من لكن و,االتجا فهيالعام ه
األيام هذه...
- 5. الفضية الرصاصة عن البحثseeking the silver
bullet!
سنة في2001,اجتمع17خفيفة منهجية عن للبحث مبرمجاlightweightالبرمجيات لتطوير
البرمجيات صناعة في نجوما كانوا االجتماع هذا حضروا من,خبرتهم خالصة هو به خرجوا ما و!
االجتماع هذا حضروا ممن:Martin Fowler,Kent Beck,Robert Martin(Uncle Bob),Ken
Schwaber(Scrum),Andy Hunt (The Pragmatic Programmer),...إلخ
االجتماع هذا ناتج كان:المرنة للبرمجة الرسمي البيانAgile Manifesto
األولويات بتغيير البرمجيات صناعة مشاكل من الكثير حل يمكننا أننا خالصته!
- 6. المرنة للبرمجة الرسمي البيانAgile Manifestoأو
المرنة البرمجة قيمAgile Values
We are uncovering (عن )نكشف better ways of developing software by doing
it and helping others do it. Through this work, we have come to value:
Individuals and interactions over Processes and tools
Working software over Comprehensive ( شامل,موسع ) documentation
Murphy’s law: If a program is useless, it will have to be documented!
Customer collaboration over Contract negotiation
Responding to change over Following a plan.
Change is constant!
That is, while there is definitely ()قطعا a value in the items on the right, we
value the items on the left more.
- 7. مكتوبة غير أخرى قيم
المدير مهام في التغير,المبرمج و,العميل و
نفسه للفريق انتقلت الفريق قائد أو المدير مهام بعض(توزيعها و المهام اختيار)
إيجابي العميلactiveسلبيا ليس و باستمرار يشاركpassiveفقط يتلقى
االعتقاد(الخاطيء)األولية الخطوات بأن المرنة البرمجة ممارسي بعض لدى(المتطلبات كجمع
requirement gathering)الهندسي التصميم و(design)األهمية قليلة«دائما»
إما يكون بالتسليم الوعد( :1)الخصائص كل,أو(2)المحدد الوقت في,كالهما ليس و
المرنة البرمجة القيم في أساس محور البرنامج جودة
- 8. المرنة البرمجة مباديءAgile Principles
المرنة للبرمجة الرسمي البيان,على مبني12مبدأ..
إلى سنقسمهم4مجموعات
المشروع بتسليم مرتبطة مباديءProject delivering
بالتواصل مرتبطة مباديءCommunication
المشروع بتنفيذ مرتبطة مباديءProject execution
الفريق و المشروع بتطوير مرتبطة مباديءImproving Project and Team
- 9. المشروع بتسليم مرتبطة مباديءProject
delivering
Principle #1: Our Highest Priority Is to Satisfy the Customer Through Early
and Continuous Delivery of Valuable Software.
الخطة اتباع أن تفترض التقليدية المشروعات إدارة=المشروع نجاح=العميل رضا
باستمرار تتغير العميل حاجات أن الواقعباستمرار العميل رضا اختبار من البد,كيف؟
Release early = بالتسليم عجل
العكسية التغذية من تسرع هذهfeedback
المطلوبة خصائصه في شديد نقص به يكون قد المنتج المقابل فيالمعنية األطراف لوstakeholdersمتفهمين غير
النقطة لهذه,سلبية بصورة البرنامج تقييم في ذلك يتسبب قد!ا األطراف مع الوثيق االتصال من البدلمعنية
stakeholders
Deliver value continuously = التسليم من أكثر
Satisfy customer = العميل ِأرض
السابقتين للنقطتين مباشرة نتيجة هذه:بسرعة تسلم حين,كثيرا التسليم توالي و,راج تغذية يأتيكباستمرار عة,فتحقق
بسرعة العميل رغبات!
- 10. المشروع بتسليم مرتبطة مباديءProject
delivering
Principle #2: Welcome Changing Requirements, Even Late In Development.
Agile Processes Harness ( يستخدم/يسخر ) Change for the Customer’s
Competitive Advantage (التنافسية .)الميزات
Welcome change = التفكير طريقة في تغيير
العميل من أو منك خطأ أنه على التغير مع التعامل عن توقف,وسعه في ما منكما كل بذل فقد
المتطلبات جمع عن التوقف يعني ال هذاrequirement gathering
Control Change
منعه محاولة من فعالية أكثر التغيير تسهيل!
التغيير كلفة من تقلل المستمرة الراجعة التغذية!
المتطلبات في التغيير هو هنا المقصود التغييرrequirementsمثال العميل إهمال عن الناشيء التغيير ليس و,
المخاطر إدارة ضمن يدخل فهذاrisk managementلل دخل ال وAgileفيه.
- 11. المشروع بتسليم مرتبطة مباديءProject
delivering
Principle #3: Deliver Working Software Frequently, from a Couple of Weeks
to a Couple of Months, with a Preference to the Shorter Timescale.
فوضى المشروع لجعل المستمر التقبل يتحول ال لكيتنظيمه من البد
التسليمdeliveringدفعات علىsprintsقصيرة(لشهرين أسبوعين من)كل بداية في تكون التغييرات ودفعة,
العمل أثناء ليس و
نفسه يراجع أن التغيير يطلب لمن فرصة يعطي هذا,ينض حتى وقته يأخذ التعديل في يفكر أن وج
التسليمdelivering=!اإلطالقreleasing
- 12. بالتواصل مرتبطة مباديءCommunication
Principle #4: The Most Efficient and Effective Method of Conveying ()نقل
Information To and Within a Development Team Is Face-To-Face
Conversation.
التوثيقdocumentationمهم,المب االتصال منه خير و المعلومات لنقل الوحيدة الوسيلة ليس لكنهاشر
(المرنة البرمجة ممارسو يعتقد كما,ذلك في قدواُتان و)
فيه خالف ال ما:
مهم التوثيق,المباشر االتصال عن يغني ال لكنه
- 13. بالتواصل مرتبطة مباديءCommunication
Principle #5: Business-people and Developers Must Work Together Daily
Throughout the Project.
المرنة الفرق و التقليدية الفرق بين الفرق:
التقليدية الفرق فييتفاوضونالعميل مع
المرنة الفرق فييتعاونونالعميل مع
المستمر االتصال أهمية على للداللة اليومي االتصال,الحرفي لاللتزام ليس و(أف ذلك كان إن وبال ضل
شك)
- 14. بالتواصل مرتبطة مباديءCommunication
Principle #6: Build Projects Around Motivated Individuals. Give Them the
Environment and Support They Need, and Trust Them to Get the Job
Done.
المبدأ هذا تخالف عملية أمثلة:
البرمجية األخطاء عدد على المبرمج تقييمbugsعنه الصادرة(غير عن صادرة األخطاء كانت إذا خاصة
إهمال)الحقيقية المشكالت عنك سيخفي
األنظمة مختبري مكافأةtestersيكتشفوها التي األخطاء عدد علىالكيف دون بالكم سيهتم
على بناء المحللين تقييم«كم»ينتجونها التي الوثائقالصفحات كثيرة وثائق سيخرجون,قالفائدة ليلة
ثقافة فيها تنتشر الريبة على المبنية الفاسدة البيئة«نفسك نِأم»!
ثقافة فيها تنتشر الثقة على المبنية الصحية البئية«بالمسئولية اإلحساس»الم نجاح عنشروع.
- 15. المشروع بتنفيذ مرتبطة مباديءProject
execution
Principle #7: Working Software Is the Primary Measure of Progress.
الحالة تقاريرstatus reportsكافية ليست
المستمر التسليم ميزةcontinuous deliveryمؤشرات تعطيني أنها,اإلطالق عند النهائي للهدف سأصل هل
releasingال؟ أم
- 16. المشروع بتنفيذ مرتبطة مباديءProject
execution
Principle #8: Agile Processes Promote Sustainable (لالستمرار )قابل
Development. The Sponsors, Developers, and Users Should Be Able to
Maintain a Constant Pace (ثابتة )وتيرة Indefinitely (مسمى غير أجل .)إلى
الحماسة فقدُي و اإلنتاجية يقلل طويلة لساعات العملmotivationللعمل
الموت مسيرات تجنبdeath marches
األسبوع في ثابتة عمل ساعات عدد على المحافظة(40ساعة(
سياسة20%قوقل في يشاء كما يقضيه الموظف وقت منGoogle(منذ2013السياسة هذه إيقاف تحاول)!!
عمليا,من أكثر العمل تجنب يمكن ال40األسبوع في ساعة,و االستثناء هو ذلك جعل هو عمله يمكن ما أقصى و
األصل ليس.
Principle #9: Continuous Attention to Technical Excellence and Good
Design Enhances Agility.
- 17. الفريق و المشروع بتطوير مرتبطة مباديء
Improving Project and Team
Principle #10: Simplicity—the Art of Maximizing the Amount of Work Not
Done—Is Essential.
Simplicity
Keep It Simple Stupid (KISS)
البرمجة مستوى على هذهdevelopmentالمنهجية وprocess
Work-less
You Ain’t Gonna Need It (YAGNI)
20%تستخدم الخصائص من80%الوقت منفالمهم األهم على ركز
- 18. الفريق و المشروع بتطوير مرتبطة مباديء
Improving Project and Team
Principle #11: The Best Architectures, Requirements, and Designs Emerge
()تنبثق from Self-Organizing Teams.
التقليدية الفرق:األوامر تنفذ
المرنة الفرق:بنفسها قراراتها تأخذself-organized teams
التخطيط في واحد شخص على يعتمد ال يخطط الفريق
عليهم تفرض ال بأنفسهم مهامهم يختارون الفريق أعضاء
فقط المشروع مدير أو قائد ليس و كله الفرق مسئولية المشروع
نقد:األحوال لكل و الفرق لكل يصلح ال الفكرة هذه تعميم,الحسبان في باألخذ جديرة لكنها
حديث:«أحدكم فأمروا ثالثة كنتم إذا»
للفريق قائد وجود األصل,االستثناء هو العكس
- 19. الفريق و المشروع بتطوير مرتبطة مباديء
Improving Project and Team
Principle #12: At Regular Intervals, the Team Reflects on How to Become
More Effective, Then Tunes and Adjusts Its Behavior Accordingly.
باستمرار البرامج إنتاج في طريقته بتحسين يقوم حتى مرنا الفريق يكون ال,الم طريق عن ذلك وو راجعة
المستمر التصحيح.
- 20. مكتوبة غير أخرى مباديء
المرنة األساليب كل في خاصا اهتماما ىَليو اختبارها و البرامج بجودة االهتمام أن من الرغم على,بهذا ل
المرنة البرمجة لحركة األساسية اإلضافات من االهتمام,المبا من أي في مذكور غير االهتمام هذا أن إالديء
الذكر سالفة.
السابقة المتطلبات مشكالت حل من تفرغ حتى جديدة متطلبات تطوير في تبدأ ال
االختبار اكتبunit testنفسه الكود كتابة قبلTDD
الدفعة انتهاء حتى التعديالت تجميدsprint
الثالث المبدأ في:لشهرين أسبوعين من دفعات على المستمر التسليم
المبدأ هذا تكملة:دفعة كل بداية عند عتبرُت التعديالت,ك تأجيل يتم الدفعة في العمل بدأ إذا لكنالتعديالت لقبلنا
قليال أجلناه لكن التغيير!
سيناريو صورة في تكتب المتطلبات,موسع إماuse caseمقتضب أوuser story
- 21. مكتوبة غير أخرى مباديء
متغيرة و جديدة أدوار
جديد:المنتج صاحبproduct owner
جديد:المنهجية مسئولagile coach/master
متغير:المدير مهام تقليل
الفريق صفات:
ذاتي تنظيم ذوself-organized:بنفسه قراراته يأخذ
المهام متعددcross-functional:التخصصات كل يضم الفريق(المختبرين فيهم بماtesters)
- 22. برشاقة التفكيرLean Thinking
اإلنتاج في نظامها و تويوتا شركة من البدايةToyota Production Systemعند اإلنتاج اسم تحت
الحاجةjust-in-time production,السم الحقا تطور الذي:Lean Manufacturing
الهدف:المخزون تقليل
الهدر تقليل محور حول تدور تفكير طريقة و فلسفة هيreduce or eliminate waste
جدا ملهمةالبرمجات صناعة بها تأثرتLean Software Developmentاألعمال عالم و
Lean Startups
- 23. الرشيق التفكير مباديءLean Principles
التعهدات تأجيلDefer commitment
جيدة برامجbuild quality in
الكلي التحسينOptimize the whole
األفراد تقديرRespect people
سريعا التسليمDeliver fast–قبل من عنها تحدثنا
الخبرات تعظيمCreate Knowledge
الهدر إزالة و تقليلEliminate waste
- 25. جيدة برامجbuild quality in
للمستخدم يظهر فيما جيدPerceived Integrity
األكمل الوجه على المستخدم احتياجات يحقق
جيدنفسه فيConceptual Integrity=
Unit testing + refactoring
المشكالت حدوث منع حاول
ممكن وقت أسرع في المشكلة حل
س العكسية التغذية لتأتيك كثيرا و سريعا سلمكثيرا و ريعا
حللتها و مشكلة وجدت لو,ثاني تتكرر لن أنها تأكدة
- 26. الكلي التحسينOptimize the whole
الكلية الصورة على الصغيرة قراراتك أثر من تأكد
شيء لكل مستمرة قياسات ضع
أعراضها ليس و جذرها حللت أنك تأكد مشكلة حدوث عند
Root cause analysis
Five whys
- 29. الهدر إزالة و تقليلEliminate waste
فقط للعميل مضافة قيمة يمثل ما اعمل,بسرعة اعمله و
- 30. الهدر إزالة و تقليلEliminate waste
Inventory ()مخزون < -- > Partially done work
Incomplete features, Unchecked-in work, untested code, commented-out code…etc.
Overproduction < -- > Extra Features/Code/Functionality
Extra processing < -- > Relearning / Reworking
Transportation < -- > Handoffs without proper knowledge
آخر لمبرمج الكود نقل
آخر لفريق البرنامج نقل:الجودة–التشغيل–العميل
Waiting < -- > Delays
اإلدارة موافقة انتظار–موارد توفر انتظار–آخر فريق عمل على االعتماد...إلخ
Defects < -- > Defects
- 31. الهدر إزالة و تقليلEliminate waste
Motion < -- > Task switching Relearning
•الـ وظائف منScrum Master
األساسية:ال بين التنقل تقليلمهام
•من المبرمج يحتاج15إلى45دقيقة
اإلنتا و التركيز حالة في ليدخلجية
- 32. المرنة؟ البرمجة أساليب شيوع مدى ما
فورستر مؤسسة نشرتها دراسة فيForresterسنة2011بعنوان:
Water-Scrum-Fall Is The Reality Of Agile For Most Organizations Today
الخالصة:
شائعة المرنة البرمجة أساليب,خالصة ليست لكنهاAgile Is Popular But Not Pure
الدراسة عليه أطلقت ما هو شيوعا المناهج أكثر:Water-scrum-fallو التقليدية األساليب من هجين هي و
سقرام أسلوبscrumسيئا أو حسنا ليس هذا و
- 33. المرنة المنهجيات على نظرةالشائعة
المصدر:https://www.versionone.com/pdf/state-of-agile-development-survey-ninth.pdf