ניהול איכות תוכנה

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

ניהול איכות תוכנהאנגלית: Software Quality Management, בראשי תיבות: SQM) הוא ניהול איכות תהליך פיתוח התוכנה ואיכות המוצר. בניהול איכות תוכנה, מוצר איכותי הוא מוצר שעומד בדרישות שאופיינו לו לשביעות רצון הלקוח.

שילוב תשתית לניהול איכות תוכנה במחזור חיי הפיתוח החל מהיום הראשון הוא קריטי להבטחת פיתוחו המוצלח של מוצר איכותי.

המדען Ian Sommerville[1] מגדיר את המושג ניהול איכות תוכנה (SQM) כמושג-על המקיף את שלוש שכבות האיכות


שלבים בניהול איכות תוכנה עריכה

הבטחת איכות (באנגלית: Quality Assurance) עריכה

מדריך איכות ברמת הארגון הכולל

  • סטנדרטים, רגולציות, נהלים וכלים ליצירה, בדיקה להערכה ואישור תוצרי הפיתוח
  • ארגון ידע נצבר ונגיש לצוותי הפתוח והניהול בארגון
  • מוצרי מדף נבחרים לביצוע האמור לעיל

תכנון איכות (באנגלית: Quality Planning) עריכה

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

  • רכיבים מהבטחת איכות תוכנה (SQA) שברמת הארגון, אשר אומצו במלואם לשימוש חוזר בפרויקט או עודכנו והותאמו לצורכי הפרויקט
  • סטנדרטים, נהלים וכלים חדשים הנדרשים בפרויקט אך חסרים בחבילת הבטחת איכות התוכנה (SQA). רכיבים אלה נכתבו במיוחד עבור הפרויקט או יובאו ממקורות שמחוץ לארגון.

בקרת איכות (באנגלית: Quality Control ) עריכה

בקרת האיכות תוכנה נועדה להבטיח שהבטחת האיכות ותכנון האיכות מבוצעות כנדרש ובתהליך על ידי צוותי הפיתוח. בקרת איכות תוכנה כוללת את הפעילויות הבאות

  • ייעוץ והדרכה בכתיבת מסמכים הנדסיים בהנחיית תבניות
  • ניהול/ליווי סקרי איכות (כגון סקר אפיון דרישות, סקר עיצוב, סקר מוכנות לבדיקות) וביצוע סקירות (למסמכים הנדסיים ולקוד) לבדיקה, הערכה ואישור תוצרי הפיתוח
  • בדיקה והערכה לשיפור היישום של שיטות, נהלים וכלי תוכנה
  • ביצוע מבדקי איכות להערכת המוכנות לאיכות.

ניהול איכות תוכנה - תפקידים עיקריים עריכה

מנהל איכות תוכנה הוא:

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

הערות שוליים עריכה

  1. ^ Ian Sommerville (2004), Software Engineering, 7th ed., chapter 27