פרויקט 1 – רעיון/הצעת פרויקט - Software Project Idea

מבוא

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

המשימה הנוכחית מתבצעת ע”י צוות של שני סטודנטים.

מקור לרעיונות

הטוב ביותר הוא רעיון מקורי או בעיה אמיתית שנתקלתם בה.

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

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

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

מיד לאחר הצגת ההצעה המעובדת בכיתה יש לשלוח לרכז התכנית:

צוות הקורס יעדכן בהקדם על השיבוץ שייעשה בהתאם למידע שתעבירו לעיל.

כללי

המשימה העיקרית מורכבת משני חלקים.

א. רעיון - לתאר את המוצר המוצע כך שהאחרים יבינו מהו וישתכנעו שהוא בעל ערך (בד”כ כלכלי).

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

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

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

דרישות המוצר

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

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

למרות האמור, החברה מטילה על תכנון המוצר, מספר אילוצים:

  1. למוצר יהיה קשר לעולם האמיתי, ז”א הוא בא לפתור בעיה אמיתית של מישהו\מישהי אמיתי\ת באמצעות מערכת שעיקרה תוכנה (משחק בדרך כלל לא עונה על דרישה זו).
  2. המוצר יהיה אפליקציית ווב (יישום רשת) בארכיטקטורת לקוח/שרת (ולא אתר או מערכת ניהול תוכן בלבד!). כברירת מחדל, הלקוח יהיה כתוב ב- html/css/js (ומותאם גם ללקוח נייד) והשרת ב- node.js או שפה מונחית עצמים אחרת.
  3. השרת צריך לכלול לוגיקה שאינה טריוויאלית (ולא רק בסיס נתונים).
  4. כברירת מחדל הקוד יהיה מאוחסן במאגר פתוח ב- github וגרסה עובדת של השרת תהיה זמינה על גבי תשתית ענן - כך שתהיה למוצר גישה נוחה למפתחים וללקוחות (יילמד בתרגיל).
  5. המוצר הוא רעיון חדש. הוא יכול למשל להיות תוסף (plug-in) לתוכנה קיימת, אך לא העתק מדויק של מוצר קיים או של פרויקט אחר במכללה.
  6. המוצר יעשה שימוש משמעותי ולא טריוויאלי ברכיבים ותשתיות קיימים (ולא רק ספריות סטנדרטיות), זאת כדי שהוא יהיה מעניין וגם ישים במגבלות הקורס.
  7. יהיה אפשר להדגים את המוצר בזמן ההרצאה והוא מתאים להערכתכם לפיתוח במסגרת האילוצים של הקורס (כולל הזמן שייקח ללמוד את הסביבה, התהליך וכדו’).
  8. רעיונות יוצאי דופן במקוריותם אינם מחויבים לתנאים שלמעלה – בתיאום עם צוות הקורס.

תוצרים להגשה

  1. מסמך – עמוד \ שניים.
  2. מצגת (או סרטון) של 3-4 שקפים. שני התוצרים אמורים לכלול תכנים דומים, אך מיועדים למטרות שונות. המסמך ישמש כבסיס להמשך הפיתוח. המצגת מיועדת לשווק את הרעיון שלכם ובמיוחד במהלך ההרצאה הבאה. שני התוצרים אמורים לכלול את הנקודות הבאות (פחות או יותר):

א. הגדרת המוצר (לפעמים נקרא גם: SOW - Statement of Work או Project Vision), כולל:

הצגה

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

הרכב הציון

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

הציון יחולק פחות או יותר לפי המאפיינים הבאים:

הוראות הגשה

עד לתחילת ההרצאה הבאה, צריך:

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

ב. להגיש דרך טופס ההגשות למשימה קבוצתית.

להבהרות נוספות פנו בבקשה לפורום הקורס.

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

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

קישורים נוספים

  1. מדריך כתיבת SOW
  2. ReadySet תבנית הצעת פרויקט מאתר תבניות
  3. Jonathan Rasmusson, Ten Questions You’d Be Crazy not to Ask at the Start of Your Project
  4. תבנית למצגת מבוססת על המאמר הקודם
  5. טיפים לפרויקט תוכנה לסטודנטים
  6. טיפים לכתיבת מצגת לדוגמא

בהנאה ובהצלחה צוות הקורס