Extreme Programming – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
RedBot (שיחה | תרומות)
מ r2.5.2) (בוט משנה: en:Extreme programming
Matanyabot (שיחה | תרומות)
מ בוט: שינויים קוסמטיים
שורה 22:
מהיסודות שלעיל, יצרה XP תריסר מנהגים / עקרונות (practices), המסודרים בשלושה מעגלים:
 
=== המעגל הפנימי ===
* [[תכנות בזוגות]] - תמיד יושבים מול מחשב אחד זוג מתכנתים. אחד מחזיק במקלדת ובעכבר ומכונה 'הנהג'. הוא מבצע בפועל את עבודת התכנות. השני, המכונה 'הנווט', עוקב אחר הנהג, מייעץ לו לגבי דרך העבודה, ובעיקר אחראי על איתור תקלות בקוד (תחביריות, לוגיות וכו'). את הזוגות מחליפים מדי פעם, בשביל שכל המתכנתים יכירו כמה שיותר קוד, ואילו במבט על קוד חדש יהיה מי שיחנוך את התוכניתן שאינו מכיר את הקוד.
* עיצוב פשוט - ההנחה היא שהתוכנה הטובה ביותר היא זו שעומדת בכל הדרישות, אין בה קוד כפול, הקוד שלה מובן למתכנתים ויש בה המינימום הנדרש של מחלקות ושיטות, '''ולא''' זאת המתוחכמת ביותר, המופשטת ביותר וזו המתוכננת לשנים רבות.
שורה 28:
* [[תכנות מונחה בדיקות]] - כתיבת והרצת [[בדיקות תוכנה]] אוטומטיות כחלק מרכזי בפיתוח, ובתדירות גבוהה. הבדיקות מבוצעות בכל הרמות החל מ[[בדיקות יחידה]], דרך [[בדיקות שילוב]] ועד ל[[בדיקות מערכת]].
 
=== המעגל האמצעי ===
* אינטגרציה מתמשכת - יש לבצע אינטגרציה של המערכת, הכוללת [[הידור]] ו[[קישור (תוכנה)|קישור]] לפחות פעם ביום. כך ניתן לאתר בעיות כמה שיותר מהר. אם נוצרה תקלה, המתכנת אחראי לפתור אותה בהקדם האפשרי.
* קצב הגיוני - יש לשמור על קצב פיתוח הגיוני. יש להגביל מראש את סך שעות העבודה השבועי, משמע העובדים לא נשארים מעבר לשעות עבודה יחסית מועטות.
שורה 34:
* בעלות משותפת - כל המתכנתים בצוות אחראים לכל הקוד. כל מתכנת הרואה מקום לשינוי או שיפור של הקוד, רשאי ומחויב לעשות כן.
 
=== המעגל החיצוני ===
* התנהלות צוותית - הצוות כולו מאוחד במטרה ומסונכרן כל הזמן. בתחילת כל יום מתבצעת 'פגישת עמידה' באורך של כ-15 דקות, בה כל הצוות נוכח, בעמידה, ומספר על התקדמותו ביום הקודם ותוכניותיו ליום הנוכחי.
* "משחק התכנון" - המתכנתים עובדים בשיתוף פעולה מלא עם הלקוח בתכנון המערכת. הלקוח כותב סיפורים והמתכנתים מנתחים אותם ומסדרים אותם על-פי סדר עדיפויות. לאחר מכן, הסיפורים הופכים למשימות פיתוח.
שורה 40:
* בדיקת התוכנה על ידי הלקוח - הלקוח שולח נציג מטעמו להצטרף לצוות הפיתוח ולבדוק באופן שוטף את התוכנה. היתרונות כוללים איתור מהיר ביותר של תקלות וכן עמידה בדרישות המערכת.
 
== אימוץ ==
בתחילת [[העשור הראשון של המאה ה-21]] חל גידול מהיר בהתעניינות ב-XP ויותר פרויקטים ובתי תוכנה בחרו בה כדרך פיתוח. כיוון ש-XP היא שיטה כמעט טוטאלית בדרישותיה, רוב בתי התוכנה שבחרו בה יצרו לעצמם מתודולוגיות פיתוח עצמאית, המבוססת על שילוב בין עקרונות XP לעקרונות שיטות פיתוח קלאסיות. חברות תוכנה רבות נרתעו מהפעילויות הקיצוניות של XP, ובפועל רוב מיישמי השיטה עשו זאת באופן חלקי.
 
== קישורים חיצוניים ==
* [http://www.extremeprogramming.org www.extremeprogramming.org]