requirements
דרישות פונקציונליות
אורח
-
רישום למערכת ע"י הזנת פרטים מזהים.
משתמש רשום
-
התחברות למערכת ע"י הזנת פרטים מזהים. בסיום התחברות מוצלחת האורח יהפוך למשתמש מחובר.
-
התנתקות – משתמש מחובר שיבצע התנתקות יהפוך לאורח.
משתמש (אורח/רשום)
-
בחירת המקום שבו המשתמש נמצא מתוך רשימה מוצעת.
-
חיפוש שיר ע"י כתיבת שמו בתיבת החיפוש.
-
צפייה ברשימת שירים שחוזרת לאחר החיפוש.
-
בחירת שיר מתוך רשימת השירים שחזרה לאחר החיפוש, השיר הנבחר יכנס למערכת פילטור השירים, לאחר מכן – השיר יכנס לרשימת ההשמעה ולבסוף יתנגן בזמן אמת או – יפסל ע"י אחד מהפילטרים.
-
צפייה בשיר הנוכחי שמתנגן.
-
הצבעת like או dislike לשיר הנוכחי שמתנגן.
בעל המקום
-
רישום למערכת כבעל מקום.
-
התחברות/התנתקות מהמערכת כבעל מקום.
-
עריכת פרטי המקום.
-
יצירה/עריכה/מחיקה של מסגרת פילטור שירים.
-
בחירת מסגרת פילטור נוכחית.
-
הוספת/מחיקת שיר לספריית השירים המובנית.
-
צפייה בהיסטוריית דירוגים והצעות שירים.
-
יצירת מסגרת פילטור שירים על בסיס תוצאות מערכת ההמלצה.
מערכת
-
במצב שבו רשימת ההשמעה ריקה – המערכת תבחר שירים באופן אוטומטי לפי מסגרת פילטור השירים הנוכחית מתוך הספרייה המובנית.
דרישות לא פונקציונליות
Portability
-
ניתן יהיה לגשת לממשק המשתמש של המערכת דרך הדפדפן של מחשבים וטלפונים ניידים.
-
המערכת צריכה לתמוך בשפה האנגלית.
-
ניתן יהיה לחפש שירים בעברית ובאנגלית.
אילוצי הפלטפורמה
על מנת להשתמש ב-API של Spotify Business בצורה אופטימלית נשתמש בשפת התכנות JavaScript.
אילוצי הפרויקט בהנדסת תוכנה
-
המערכת תהא אינטראקטיבית.
-
הקלטים יגיעו מהמשתמשים במערכת.
-
על מנת לבחון את המערכת נבצע בדיקות יחידה, בדיקות אינטגרציה, בדיקות קבלה ובדיקות UI.
-
המערכת תוצג ותעמוד במבחן של דמו אמיתי במקום שבבעלות הלקוח.
הגבלות ואילוצים מיוחדים
-
המערכת מתבססת על שימוש ב-API של Spotify Business.
-
ה-API של Spotify Business מבוסס על עקרונות REST, HTTPS ופורמט UTF-8.
-
קיים Rate limiting אשר מאפשר גישה משותפת לכלל המשתמשים ב-Spotify Business, על כן נשתמש בבקשות אשר מחזירות מספר ישויות בו זמנית.
אילוצי מימוש
Performance (מהירות, קיבולת, וכו')
-
95% מהטרנזקציות אשר התקבלו מאורח במקום צריכות להסתיים תוך פחות מ-3 שניות.
-
על המערכת לתמוך בכ-1000 משתמשים (מחוברים או אורחים) בו-זמנית.
-
הקיבולת המקסימלית של מספר הטרנזקציות תהייה כ-1000 טרנזקציות.
Reliability & Stability
-
על המערכת להיות עמידה בפני תרחישים לא רצויים של שירות ה-Streaming, וניתוק קשר עם בסיס הנתונים.
-
על המערכת להתאושש לאחר כישלון של שירות ה-Streaming, וניתוק קשר עם בסיס הנתונים. מדדים לכך יהיו היכולת לעקוב אחרי שגיאות שהתרחשו, וכן מידה ואיכות האינפורמציה השוטפת.
Usability
-
משתמש המערכת צריך להיות בעל ידע של משתמש ממוצע בדפדפן הנמצא בטלפון נייד / מחשב.
-
ממשק המשתמש צריך להיות נוח כך שמשתמש לא יהיה צריך הדרכה על מנת לתפעל את המערכת.
-
מספר ההכנסות של שירים לרשימת ההשמעה מצד אורח מסוים יוגבל לשיר אחד בכל עשר דקות.