לדלג לתוכן

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

מתוך ויקיפדיה, האנציקלופדיה החופשית
תוכן שנמחק תוכן שנוסף
הרחבה
הרחבה
שורה 1: שורה 1:
{{בעבודה}}
{{בעבודה}}
{{הנדסת תוכנה}}
{{הנדסת תוכנה}}
ב[[פיתוח תוכנה]], '''DevOps''' היא [[תרבות ארגונית]] ו[[מתודולוגיית פיתוח תוכנה|מתודולוגיית עבודה]] אשר שמה דגש על שיתוף הפעולה והתקשורת בין [[מתכנת|מפתחי התוכנה]] לבין שאר אנשי ה-[[טכנולוגיית מידע|IT]] שבחברה. השיטה דוגלת בביצוע [[אוטומציה]] של תהליכי אספקת התוכנה (delivery) ושל שינויים בתשתיות. מקור המילה DevOps הוא מ[[הלחם בסיסים]] של המילים ה[[אנגלית|אנגליות]] development (פיתוח) ו-operations (תפעול). מטרת השיטה לכונן תרבות וסביבה שבהן [[בניית תוכנה|בנייה]], [[בדיקות תוכנה|בדיקות]] ושחרור של גרסאות תוכנה יכולים להתבצע במהירות, לעתים קרובות ובאופן אמין יותר.
ב[[פיתוח תוכנה]], '''DevOps''' היא [[תרבות ארגונית]] ו[[מתודולוגיית פיתוח תוכנה|מתודולוגיית עבודה]] אשר שמה דגש על שיתוף הפעולה והתקשורת בין [[מתכנת|מפתחי התוכנה]] לבין שאר אנשי ה-[[טכנולוגיית מידע|IT]] שבחברה. השיטה דוגלת בביצוע [[אוטומציה]] של תהליכי [[פריסת תוכנה|אספקת התוכנה]] (delivery) ושל שינויים בתשתיות. מקור המילה DevOps הוא מ[[הלחם בסיסים]] של המילים ה[[אנגלית|אנגליות]] development (פיתוח) ו-operations (תפעול). מטרת השיטה לכונן תרבות וסביבה שבהן [[בניית תוכנה|בנייה]], [[בדיקות תוכנה|בדיקות]] ושחרור של גרסאות תוכנה יכולים להתבצע במהירות, לעתים קרובות ובאופן אמין יותר.


בארגונים מסורתיים, המורכבים מבעלי תפקידים המתמחים בביצוע פונקציות ספציפיות, שיתוף פעולה בין המחלקות שאחראיות על הפעולות שתוארו למעלה, לבין פעילויות התפעול של ה-IT הוא נדיר. גישת ה-DevOps מקדמת תהליכים ושיטות שמטרתם לחשוב על [[תקשורת]] ושיתוף פעולה בין צוותי הפיתוח, ה-[[הבטחת איכות|QA]] וה-IT.
בארגונים מסורתיים, המורכבים מבעלי תפקידים המתמחים בביצוע פונקציות ספציפיות, שיתוף פעולה בין המחלקות שאחראיות על הפעולות שתוארו למעלה, לבין פעילויות התפעול של ה-IT הוא נדיר. גישת ה-DevOps מקדמת תהליכים ושיטות שמטרתם לחשוב על [[תקשורת]] ושיתוף פעולה בין צוותי הפיתוח, ה-[[הבטחת איכות|QA]] וה-IT.

== כלים ==
מכיוון ש-DevOps מהווה שינוי תרבותי ודורש שיתוף פעולה בין הפיתוח, התפעול והבדיקות, לא קיים כלי יחיד של DevOps. במקום זאת קיימת "שרשרת כלי DevOps", המורכבת מכלים שונים רבים. באופן כללי, כלים ל-DevOps ניתנים לסיווג בין אחת או יותר מהקטגוריות הבאות של תהליכי פיתוח ו[[פריסת תוכנה]]:

* תכנות (code) – פיתוח הקוד וסקירה שלו (code review), כלים ל[[ניהול גרסאות|ניהול ומיזוג גרסאות]]
* בנייה (build) – כלים ל-[[continuous integration]] ולקבלת סטטוס של [[בניית תוכנה|בניית התוכנה]]
* בדיקות (test) – [[בדיקות תוכנה]] ומדידת הביצועים
* אריזה (package) – אחסון תוצרי בנייה בינאריים (artifact repository), הכנת היישום לפריסה
* שחרור (release) – ניהול שינויים, אישור שחרור גרסאות, אוטומציה לשחרור גרסאות
* קונפיגורציה (configure) – הגדרה וניהול תצורה של תשתיות
* ניטור (monitor) – ניטור ביצועים של היישום בזמן ריצה, [[חוויית משתמש]]

למרות שקיימים כלים שונים רבים, ישנן כמה קטגוריות של כלים אשר חיוניות להקמת תשתית DevOps. כלים כמו [[Docker]], [[Jenkins]], [[Puppet]] ו-[[Vagrant]] הם דוגמאות לכלים פופולריים המשמשים בשרשרת הכלים של DevOps.

== ראו גם ==
* [[בניית תוכנה]]
* [[פריסת תוכנה]]
* [[Continuous integration]]


[[קטגוריה:הנדסת תוכנה]]
[[קטגוריה:הנדסת תוכנה]]

גרסה מ־14:32, 22 באוקטובר 2016

הערך נמצא בשלבי עבודה: כדי למנוע התנגשויות עריכה ועבודה כפולה, אתם מתבקשים שלא לערוך את הערך בטרם תוסר ההודעה הזו, אלא אם כן תיאמתם זאת עם מניח התבנית.
אם הערך לא נערך במשך שבוע ניתן להסיר את התבנית ולערוך אותו, אך לפני כן רצוי להזכיר את התבנית למשתמש שהניח אותה, באמצעות הודעה בדף שיחתו.
הערך נמצא בשלבי עבודה: כדי למנוע התנגשויות עריכה ועבודה כפולה, אתם מתבקשים שלא לערוך את הערך בטרם תוסר ההודעה הזו, אלא אם כן תיאמתם זאת עם מניח התבנית.
אם הערך לא נערך במשך שבוע ניתן להסיר את התבנית ולערוך אותו, אך לפני כן רצוי להזכיר את התבנית למשתמש שהניח אותה, באמצעות הודעה בדף שיחתו.
הנדסת תוכנה
ערך זה שייך לקטגוריית הנדסת תוכנה
פעילויות ושלבים
דרישותניתוחאפיוןארכיטקטורהעיצובתכנותניפוי שגיאותבדיקהאימותבנייהפריסהתפעולתחזוקה
מתודולוגיות
זריזותמפל המיםתכנת ותקןCrystal ClearScrumUnified ProcessExtreme Programmingאינטגרציה רציפהDevOps
תחומים תומכים
ניהול פרויקטיםניהול תצורהתיעודהבטחת איכותProfiling
כלים
מהדרמקשרמפרשIDEניהול גרסאותאוטומציית בנייה

בפיתוח תוכנה, DevOps היא תרבות ארגונית ומתודולוגיית עבודה אשר שמה דגש על שיתוף הפעולה והתקשורת בין מפתחי התוכנה לבין שאר אנשי ה-IT שבחברה. השיטה דוגלת בביצוע אוטומציה של תהליכי אספקת התוכנה (delivery) ושל שינויים בתשתיות. מקור המילה DevOps הוא מהלחם בסיסים של המילים האנגליות development (פיתוח) ו-operations (תפעול). מטרת השיטה לכונן תרבות וסביבה שבהן בנייה, בדיקות ושחרור של גרסאות תוכנה יכולים להתבצע במהירות, לעתים קרובות ובאופן אמין יותר.

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

כלים

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

  • תכנות (code) – פיתוח הקוד וסקירה שלו (code review), כלים לניהול ומיזוג גרסאות
  • בנייה (build) – כלים ל-continuous integration ולקבלת סטטוס של בניית התוכנה
  • בדיקות (test) – בדיקות תוכנה ומדידת הביצועים
  • אריזה (package) – אחסון תוצרי בנייה בינאריים (artifact repository), הכנת היישום לפריסה
  • שחרור (release) – ניהול שינויים, אישור שחרור גרסאות, אוטומציה לשחרור גרסאות
  • קונפיגורציה (configure) – הגדרה וניהול תצורה של תשתיות
  • ניטור (monitor) – ניטור ביצועים של היישום בזמן ריצה, חוויית משתמש

למרות שקיימים כלים שונים רבים, ישנן כמה קטגוריות של כלים אשר חיוניות להקמת תשתית DevOps. כלים כמו Docker, Jenkins, Puppet ו-Vagrant הם דוגמאות לכלים פופולריים המשמשים בשרשרת הכלים של DevOps.

ראו גם