Speed Date Final Presentation
description
Transcript of Speed Date Final Presentation
Speed DateFinal Presentation
הצוות
מציגים:
שמואלי • נועם
יחזקאל • אביעד
מנחה:
קוליקוב ויקטור
מבוא
כללי
Speed Date . מהירה בדרך אנשים להכיר שיטה הינה
הצדדים שני יכולים בו בזמן קצוב מפגש באמצעות נעשה הדבר
. השני עם אחד שיחה ולנהל ליזום
היעד קהלהחברתיות ) הרשתות משתמשי (.Open Socialכל
טכנולוגיים כליםפיתוח - • Windows, Visual Studio 2008, .Net 3.5סביבת
• NUnit - אוטומטי בדיקות כלי
• ASP. Net - טכנולוגיה ליישומי אינטרנט בצד השרת, שפותחה על ידי
ניתן ליצור אתרי אינטרנט דינמיים ASP.NETחברת מיקרוסופט. באמצעות
בשילוב נתונים מבסיסי נתונים, ולטפל בטפסים ובמידע שנשלחים
מהמשתמש.
•Ajax - - Asynchronous JavaScript And XML טכניקה ליצירת יישומי דפדפן
בודד, ולא כיישום מרובה HTMLאינטראקטיביים המבוססים על קוד המורץ במסגרת דף
דפים, כמקובל בסביבת הווב. מטרתה העיקרית של הטכניקה היא שיפור חוויית המשתמש
והאצת מהירות הטעינה של דפי האינטרנט, מאחר והיא מאפשרת לעדכן רק חלקים
מבוקשים בדף האינטרנט, ללא צורך לטעון את הדף כולו מחדש במחשבו של המשתמש.
) המשך ) טכנולוגיים כלים
•Ajax Controls חבילה המספקת ממשקים גרפיים נוחים וידידותיים -
• JavaScript מימשנו – Controls חדשים שהיינו צריכים וכמו כן
על מנת לממש צ'אטHTTP(Get/Post)מימשנו בקשות
• Microsoft SQL Server-אחסון ה – Data Base
• IIS Server - Internet Information Services הוא ערכה של כלים
. בחרנו Windowsמבוססי אינטרנט עבור שרתים שרצים בסביבת
זהServer רצה על ASP מכיוון ש- IISלהשתמש דווקא ב-
• Google SVN –Source Control
האפליקציה דרישות
הצגת מידע כללי
למשתמש יוצג הסבר כללי על האפליקציה. •
המשתמש יוכל לחזות בסטטיסטיקה האישית שלו (פירוט בהמשך).•
המשתמש יוכל לקבל מידע על אירועים מיוחדים שהתרחשו בזמן האחרון.•
המשתמש יוכל לקבל מידע לגבי המשתמשים הפופולאריים.•
שמירת נתוני המשתמש
המשתמש יוכל להירשם לאפליקציה.•
המשתמש יוכל להוסיף\לעדכן\למחוק פרטים אישיים.•
האפליקציה דרישות) המשך)
אישית סטטיסטיקה שמירת
• : מספר כגון פרטים תכלול אשר סטטיסטיקה תישמר משתמש כל עבור
' , , וכו עניין רמת דירוג הומור חוש דירוג יצא אליהם דייטים
חיפוש קונפיגורציית הגדרת
•. שונות חיפוש קונפיגורציות להגדיר יוכל המשתמש
•. \ קיימות קונפיגורציות לעדכן לצפות יוכל המשתמש
ניתן • לפיהם האפשריים הפרמטרים כל את תכלול החיפוש קונפיגורציית
. חיפוש לבצע
•- כ המשתמש במחשב ישמרו הקונפיגורציות .Cookieהגדרות
האפליקציה דרישות) המשך)
משתמשים חיפוש• " לחפש מ ע שהגדיר הקונפיגורציות באחת להשתמש יוכל המשתמש
. שהגדיר החתך על העונים משתמשיםעל • שענו מהמשתמשים אחד כל של בפרופיל להתבונן יוכל המשתמש
החתך.
הדייט תהליך• ." לדייט " יציאה בקשת עם הודעה אחר למשתמש לשלוח יוכל המשתמש•." " \ לדייט יציאה לבקשת לסרב להיענות יוכל המשתמש• ' שני ) בין אט צ יתחיל הדייט תהליך מאושרת והבקשה במידה
המשתמשים(.•. בזמן קצוב יהיה הדייט• , חוש – רמת העניין רמת כגון שאלות סידרת תוצגנה הדייט בסיום
ההומור.
האפליקציה דרישות) המשך)
טכנית קונפיגורציהבקובץ • תישמר .XMLהקונפיגורציה בשרת •. להגדרה הניתנים הפרמטרים כל את תכלול הקונפיגורציה•. הרשאה תוגדר האפליקציה למשתמשיהרשאת • עם משתמשים מידע Administratorרק ולעדכן לצפות יורשו
זה.• , האפליקציה בהורדת צורך אין כלומר דינמי הוא בקונפיגורציה שינוי
לא ) המשתמשים מיידי הוא השינוי כן וכמו מחדש והפעלתה מהשרת.) לאפליקציה מחדש להתחבר יצטרכו
על מבט
- ה Clientצד
GUI
- ה Serverצד
BusinessLogic
Client Configuration
Server Configuration
Common Utilities
Data Base
Data Access
Data Base Layer
תאור
- ה שכבת .DBזו האפליקציה, עובדת איתם הנתונים טבלאות כל את מכילה אשר
בטכנולגיית , ASP. Netהשתמשנו להם בסיסיים נתונים טבלאות שירותי מספקת אשר
. האפליקציה לדרישות מענה לתת מנת על צריכים שהיינו נוספות טבלאות הוספנו
תפקיד
• . אמינה בצורה בטבלאות הנתונים את שומרת
•. שהגדרנו שאילתות לפי נתונים מספקת
Data Base Layerסכמטי תרשים
Data Base Layerסכמטי ASP. Net DBתרשים
Data Access Layer
תאור- ה עם הקישור .DBשכבת
תפקיד
- ה שכבת מול הלוגיקה שכבת של התקשורת כל על , Data Baseאחראית
. שאילתות סמך על נתונים לספק אחראית
Data Access Layerהעיקריים השירותים
חדשים • משתמשים הוספת
המשתמש • של אישיים פרטים ועדכון שליפת
המשתמש • של סטטיסטיקה פרטי ועדכון שליפת
דייטים • סיפורי והוספת שליפת
• " פופולאריים " יוצאים והוספת שליפת
מחוברים • משתמשים רשימת שליפת
Business Logic Layer
תאורלשרת הרלוונטיים האפליקטיביים האובייקטים את המחזיקה שכבה
תפקיד
- מה שמגיע המידע כל את לרכז נוח DBאחראית יהיה איתם כאובייקטיםלעבוד.
Business Logic Layerהעיקריים השירותים
חדש • משתמש רישום
המשתמש • של אישיים פרטים ועדכון שליפת
המשתמש • של סטטיסטיקה פרטי ועדכון שליפת
משתמשים • חיפוש
דייטים • סיפורי והוספת שליפת
• " פופולאריים " יוצאים והוספת שליפת
מחוברים • משתמשים רשימת שליפת
Business Logic LayerClass Diagram
Business Logic Layerעיקריים אובייקטים
CAppModel – שכבת מול התקשורת את המנהלת הראשית המחלקה
.DBה-
CUser. משתמש -
CPersonal. המשתמש – של אישיים נתונים
CAppearance. חיצוני – מראה נתוני
CSearch. חיפוש – קונפיגורציית
CStatistic. משתמש – של סטטיסטיקה
CNews. דייט – של ארוע
CSecurity. הזדהות – לצורך משתמש של פרטים
GUI Layer
תאור- ה בצד הנמצאת -Clientשכבה ה, את GUIהמייצגת
תפקיד
- ה למימוש (GUIאחראית המשתמש ) יראה אותם הגרפיים המסכים
GUI LayerClass Diagram
GUI Layerעיקריים אובייקטים
MainForm- ה - את המממש הראשי GUIדףMainTabControl- הכללי Tabה – המידע את המכיל הראשי
ProfilePersonalControl – האישיים הפרטיםProfileAppearanceControl – החיצוני המראה נתוני
SearchResultControl – משתמשים חיפושSearchSettingsControl – חיפוש קונפיגורציית הגדרת
TechnicalSettingsControl – השרת קונפיגורציית הגדרתהרשאת) עם למשתמשים רק (Administratorנגיש
ChatRoomForm – בהמשך נפרטFillScoresOnEndChatForm – משתמשים דירוג
Error Handling) למשתמש)
שהתרחשו שגיאות על המשתמש בפני להתריע נועד זה מנגנון: , למשל השימוש בזמן
. חובה שדה ערך הזנת אי.) תאריך ) למשל חוקי לא בפורמט ערך הזנת חיווי יקבל הוא המשתמש מבצע אותה פעולה כל על
.) למשתמש ) המובן כישלון או הצלחהשל מוכנים מימושים באמצעות התבצע המנגנון Asp .Netמימוש
– RegularExpressionValidator - ו RequiredFieldValidator.
Error Handling) למפתח)
Logger• , בעיות – ביעילות לפתור המפתחים לנו לאפשר המטרה
. באפליקציה שימוש כדי תוך להתעורר שעלולות אפשריותהכניסה • בעת ללוג כתיבה תתבצע עיקרית מתודה בכל
והיציאה.•. מרכזיות פעולות תכתבנה• , באופן ופרטיה השגיאה מיקום ייכתב שגיאה של במקרה
מדויק.
Chat
תאור - מ :2מורכב שכבות
• - ה ' GUIנמצא – Clientבצד בין אט צ חדר .2שמייצג משתמשים • - ה .Serverבצד ' עצמו – אט הצ את שממשות המחלקות נמצאות
בין באמצעות 2הקשר נעשה - Javascriptהשכבות ה ) בצד ( Clientשרץבקשות .Http – Get/Postהמיישם
תפקיד. ' שונים משתמשים בין אט צ שירותי לספק נועדו השכבות
Chat) המשך )Class Diagram
Chat) המשך )עיקריים אובייקטים
- ה :Serverבצד• CChatHandler – התקשורת את המנהלת הראשית המחלקה
- ה לבקשות Clientמול תגובות .Http (Get/Post)באמצעות• CDBChat ' הפעילים – אט הצ חדרי כל את המחזיקה מחלקה
( ' ידי על בשימוש שלא אט צ חדרי לסגור מדומים pingsואחראית.) השונים למשתמשים
. שונים המשתמשים בין הקשר יצירת הוא זו מחלקה תפקיד כן כמו• CUserDetailsChat – למימוש לדאוג הוא זו מחלקה תפקיד
– ' השונים אט הצ חדרי של . Multi ThreadingתקיןCChatRoom. ' משתמשים – שני בין אט צ חדר המממשת מחלקה
Chat) המשך )עיקריים אובייקטים
- ה :Clientבצד• ChatRoomForm ' שני – בין אט צ חדר של גרפי ממשק
. שונים משתמשים - ה פונקציות את מריץ זה דף כן אשר Javascriptכמו השונות
בקשות תהליך ) Http(Get/Post)מבצעות מתנהל באמצעותן.) אט' הצ
• Pulling script - Javascript בקשות לדגום תפקידו אשר , ' או אישור פעולת המאפשר גרפי ממשק להקפיץ אט לצ חדשות
דחייה.
להמשך מבט
, מומשו חלקם רעיונות מעט לא עלו הפרויקט מימוש כדי תוך
. הרבות התכולות מפאת הבא לפרויקט נדחו וחלקם
רעיונות – להמשך מבט•( ' אט צ בוידיאו ( Web-Camתמיכה
לפייסבוק • חיבור
מחוברים • לא למשתמשים הודעות שליחת אפשרות מתן
פורום •
• " " ' - ' הדייט מיקום לפי אט הצ רקע מיוחד בעיצוב אט צ
• Popup blocker
תקציב – • שונים ודירוגים קרדיטים
\Calendarיצירת • \ עתיד הווה בעבר הדייטים רשימת את יכיל אשר
למייל – • התראות קבלת מייל ממשק
רוסית – / / • עברית אנגלית בשפות תמיכה
? למדנו מההמון...
• Design. שכבות לפי
מול • .DBבניית – DBעבודה וביצוען, שאילתות הגדרת
נתונים – • לאחסון נוספות .Xml, Cookiesשיטות
• : .C#, Javascript, Htmlשפות
דינמית – • בצורה אתרים .ASP .Netתכנות
.Ajaxטכנולוגיות •
שרת • .Webהתקנת
גרפיים - • .CSSעיצובים
•. פיתוח בצוות עבודה
שאלות...