איך לעבוד נכון עם חברת פיתוח או אפליקציות

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

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

פיתוח אפליקציות

האלטרנטיבה - פיתוח במיקור חוץ

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

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

מדוע זה כך?

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

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

איך באמת עובד עולם הפיתוח?

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

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

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

אז איך באמת צריך להראות תהליך פיתוח?

ניתו להסתכל על ארבעה חלקים עיקריים :

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

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

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

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

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

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

אז קדימה לפתח, ובהצלחה


הגעת עד לפה? נשמע לך מעניין? אולי כדאי שנדבר?

למתענינים בפיתוח מוצר יש אפשרות לשיחת ייעוץ ראשונית בחינם

 טלפון 054-777-8005 

מייל : erez@mvp-house.com