פיתוח מערכות Desktop

פיתוח תוכנה Desktop

פיתוח תוכנה הוא תהליך המשלב בתוכו תיעוד ובדיקות (Testing) יחד עם יצירת ותחזוקת יישומים ומסגרות עבודה (FrameWorks) כחלק מ"מחזור החיים" של פיתוח התוכנה ושחרור המוצר הסופי.

We do media שמה דגש על תהליך כתיבת קוד המקור (Source Code) של התוכנה, איכות הקוד (מבחינת ביצועים וזמני ריצה יעילים) ועל שמירתו תוך שילוב בין התפיסה של התוכנה הרצויה עד לביטוי הסופי של הרעיון באופן מתוכנן ומובנה בתהליך. לכן, תהליך הפיתוח כולל בין היתר מחקר, פיתוח חדש (From Scratch), בניית אב טיפוס, שינויים על פי דרישה במהלך התהליך, הנדסה (על ידי צוות של מהנדסי תוכנה המלווים את כל התהליך מתחילתו ועד סופו), ותחזוקה של הקוד ושל המוצר.

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

We do media שמה דגש רב גם על הצורך בבקרת איכות טובה לאורך כל תהליך פיתוח התוכנה, בקרת האיכות היא המשמעת של הנדסת תוכנה אשר מטרתה היא להחיל את הגישה השיטתית שהודגמה בפרדיגמה ההנדסית (תבנית מחשבה הנדסית) לתהליך של פיתוח התוכנה.

We do media שמה דגש על תהליך כתיבת קוד המקור (Source Code) של התוכנה, איכות הקוד (מבחינת ביצועים וזמני ריצה יעילים) ועל שמירתו תוך שילוב בין התפיסה של התוכנה הרצויה עד לביטוי הסופי של הרעיון באופן מתוכנן ומובנה בתהליך

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

  • ניתוח הבעיה או הצורך
  • ביצוע סקר שוק
  • איסוף דרישות לפתרון העסקי המוצע
  • הכנת תכנית או עיצוב לפתרון המבוסס על התוכנה – אפיון המוצר
  • יישום האפיון לקוד – בניית התוכנה
  • בדיקות תוכנה (Testing)
  • פריסה – לאחר תהליך הבדיקות נמצאים מספר ליקויים/באגים, מתבצעת פריסה של התוכנה למחלקות הרצויות (תכנון, פיתוח, עיצוב) לצורך תיקון הליקויים
  • תיקון תחזוקה ובאגים

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

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

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

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


לתאום פגישה - לחץ