האתר הישראלי להנדסת תכנה

דף ראשי | מפת האתר | רשימת מושגים | מקורות נוספים | אודות

הרעיון מאחורי התפיסה

מה בדיוק מוקצן בתכנות לפי תפיסה זו ? ובכן, השיטה נוטלת שנים עשר עקרונות המוכרים בעולם התכנה כעקרונות "עשה", כלומר שיטות מומלצות הידועות כבעלות השפעה חיובית על המוצר הסופי ומקצינה אותם, היינו: לוקחת את הטיעון שבבסיסם ומקצינה אותו עד כמה שניתן מבחינה לוגית.
למשל, התהליך בו מפתחים נעזרים אלו באלו בפתרון בעיות קשות בתכנות ה"רגיל" מוחלף בתכנות מוקצן בבעלות משותפת על הקוד לפיה כל הצוות אחראי לכל הקוד ואין חלוקה פנימית בין המפתחים.

הנה העקרונות עליהם מושתת התכנות המוקצן:

  • משחק התכנון: מטרת ה"משחק" היא לייצר בשיתוף הלקוח משימות לצוות. כל יכולת שהלקוח מבקש עבור המערכת שלו מכונה "סיפור משתמש". כל סיפור כזה מועבר להערכת צוות הפיתוח המעריך כמה מאמץ יידרש כדי לפתחו. בשלב הבא מחליט הלקוח אילו סיפורים יממושו במחזור הפיתוח הקרוב.
  • גרסאות קטנות: הגרסה הראשונה צריכה לכלול את אוסף היכולות המינימלי הנדרש מהמערכת כדי שתפעל. לאחר מכן יש להקפיד ולשחרר גרסאות שאינן מכילות תוספות רבות בקצב קבוע ומהיר.
  • דימוי מערכתי: לכל מערכת צריך להיות דימוי ארגוני ממנו ניתן לגזור מוסכמות קלות לזכרון.
  • תכן פשוט: הנחת היסוד היא כי דרישות הלקוח עומדות להשתנות. תכן הממדל את דרישות הלקוח בפשטות ובמדויק ואינו מנסה להתכונן לכל צרה שלא תבוא חוסך מאמץ מיותר, איפוא.
  • בדיקה מתמדת: המפתח מייצר בדיקה לקוד שהוא עומד לכתוב עוד לפני כתיבת הקוד עצמו. המטרה היא לייצר בדיקות אוטומטיות גם ליחידות קוד קטנות כדי לתמוך בעיקרון השכתוב.
  • שכתוב: יש לשכתב החוצה מן המערכת קטעי קוד שהפכו מיותרים או כפולים תוך כדי הפיתוח. ניתן לעשות זאת ללא חשש בזכות הבדיקות שנכתבו לכל חלק וחלק במערכת.
  • תכנות בזוג: כל הקוד המערכת נכתב על ידי זוגות מתכנתים היושבים מול מחשב יחיד ובכך למעשה מבצעים ביקורת לקוד תוך כדי כתיבתו.
  • בעלות משותפת על הקוד: קטעי הקוד אינם מחולקים בין המפתחים. הציפייה מכל איש צוות היא שיהיה מסוגל לעבוד על כל קטע קוד במערכת.
  • כילול מתמיד: קטעי הקוד החדשים משולבים בקוד הקיים לפחות פעם ביום. על המערכת לעבור בהצלחה את הבדיקות לאחר כל כילול.
  • שבוע עבודה בן 40 שעות: אנשי הפיתוח הולכים הביתה בזמן. פרויקט בו המפתחים עובדים בכל יום 18 שעות נמצא כנראה בבעיה חמורה. ישנן כמובן בכל פרויקט תקופות לחוצות יותר. בזמנים כאלו מותר לעבוד שעות נוספות אך לא יותר משבוע אחד.
  • לקוח באתר: אנשי הפיתוח זקוקים ללקוח אמיתי (כזה שישתמש לבסוף במערכת) נגיש באופן שוטף. תחליף מקובל הוא מנהל המוצר בחברה האחראי לקשר עם הלקוח בכל הנוגע לדרישותיו מן המערכת.
  • תקני קידוד: כל המפתחים עושים שימוש באותם תקני קידוד: שמות משתנים, טיפוסים, סגנון כתיבה ואפילו הערות אחידות. בקוד אידאלי לא ניתן להבחין היכן מסתיים מפתח אחד ומתחיל אחר.
  • לתחילת הדף
    ©איתן 2003. כל הזכויות שמורות למערכת המידע איתן