פרוייקט מלווה מערכת ניהול טיסות קורס דוט נט

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

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

Slide 1

שאלהIgal : מערכים דו מימדיים רקורסיה:

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

Microsoft Word - דוגמאות ב

תרגול מס' 4: המתרגם שימוש במחלקות קיימות מחרוזות, קבצים, וקבלת קלט מהמשתמש

מבוא לתכנות ב- JAVA תרגול 11

מבוא למדעי המחשב

שאלהIgal : מערכים דו מימדיים רקורסיה:

Microsoft PowerPoint - rec3.ppt

מבוא למדעי המחשב

מבוא למדעי המחשב

משימה תכנית המתרגמת קטעי טקסט לשפה אחרת הקלט: קובץ המכיל את קטעי הטקסט וכן את השפה אליה רוצים לתרגם תרגול מס' 4: המתרגם שימוש במחלקות קיימות תכנות מתק

מבוא למדעי המחשב

PowerPoint Presentation

Slide 1

Slide 1

תכנות מונחה עצמים א' – תש"ע

סדנת תכנות ב C/C++

תרגול 1

תוכנה 1 אביב תשע"ח תרגיל מספר 8 אוספים גנריים ו- framework collection הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת ה

תוכן הגדרת שאלת רב-ברירה ]אמריקאית[...2 הגדרת שאלת נכון\לא נכון...8 שאלות אמריקאיות 1

יוםראשון, 02 ליולי 2014 סמסטר סוף מבחן )236703( עצמים מונחה תכנות - א' מועד 2014, אביב סמסטר קמחי יחיאל ד"ר מרצה: מסינג מיטל עבדאלקאדר, כרם גלעד, ערן

תרגול 1

מבוא לתכנות ב- JAVA תרגול 7

לנץ קרן מרצה: תכנותמונחהעצמים) ( יוםשישי 15 אוקטובר 0202 ב מועד 0202, אביב סמסטר סמסטר סוף מבחן גוטמן אייל רביב, אריאל משנה, אלון מתרגלים: הנחי

PowerPoint Presentation

PowerPoint Presentation

Slide 1

מבחן 7002 פרטים כלליים מועד הבחינה: בכל זמן מספר השאלון: 1 משך הבחינה: 3 שעות חומר עזר בשימוש: הכל )ספרים ומחברות( המלצות: קרא המלצות לפני הבחינה ובדי

HTML - Hipper Text Makeup Language

מספר זהות: סמסטר ב' מועד א' תאריך: 11102/4// שעה: 9:22 משך הבחינה: 3 שעות חומר עזר: אין מותר השימוש במחשבון פשוט בחינה בקורס: מבני נתונים מרצה: הדר בי

מבוא למדעי המחשב

תרגיל 9 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד 1. תהי L השפה בעלת סימן פונקצייה דו מקומי G, סימן פונקציה חד מקומי T, סימן יחס תלת מקומי.c, d וקבועים L

PowerPoint Presentation

פייתון

מבוא למדעי המחשב

Microsoft PowerPoint - lec10.ppt

Titre du document en police Sodexo

PowerPoint Presentation

תוכן העניינים

PowerPoint Presentation

שאלהIgal : מערכים דו מימדיים רקורסיה:

הגנה - שקפי תרגול

234114

Microsoft Word B

<4D F736F F D20F4FAF8E5EF20EEE5F2E320E020F1EEF1E8F820E120FAF9F2E3>

תרגול 1

Microsoft PowerPoint - 07_tdd.ppt

w-2003

תורת הקומפילציה

מספר מחברת: עמוד 1 מתוך 11 ת"ז: תשע"א מועד ב סמסטר א' תאריך: 00:11 שעה: 0 שעות הבחינה: משך כל חומר עזר אסור בשימוש בחינה בקורס: מבוא למדעי ה

שבוע 4 סינטקס של HACK ASSEMBLY ניתן להשתמש בשלושה אוגרים בלבד:,A,D,M כולם בעלי 16 ביטים. M אינו אוגר ישיר- הוא מסמן את האוגר של ה RAM שאנחנו מצביעים ע

תשע"דד אביב תוכנה 1 תרגיל מספר 4 עיבוד מחרוזות וקריאה מקבצים הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס..(

תוכן העניינים

מטלת מנחה (ממ"ן) 11 הקורס: חשבון אינפיניטסימלי II חומר הלימוד למטלה: יחידות 2,1 4 מספר השאלות: 7 משקל המטלה: נקודות סמסטר: ב 2007 מו

PowerPoint Presentation

מבחן סוף סמסטר מועד א 15/02/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, דניאל גנקין הוראות: א. בטופס המבחן 7 עמודים ו 4 דפי נוסחאות. ב

Microsoft PowerPoint - rec1.ppt

יצוא לחשבשבת תוכן עיניינים הגדרות - חשבונות בנק...2 הגדרות - הגדרות חשבשבת... 3 הגדרות - כרטיסי אשראי... 4 הגדרות - סוגי הכנסה... 5 יצוא לחשבשבת...6 י

ForMenahelHeshbonot

Slide 1

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

PowerPoint Presentation

מבוא לאסמבלי

Microsoft PowerPoint - 10_threads.ppt

Microsoft Word - pitaron222Java_2007.doc

(Microsoft Word - SQL\353\351\345\345\365 \341\361\351\361 \360\372\345\360\351\355 \ doc)

Office 365 ProPlus בחינם לסטודנטים באוניברסיטת בן גוריון בנגב הוראות סטודנטים באוניברסיטת בן גוריון בנגב יכולים להוריד ולהתקין את חבילת התוכנה Office

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

הגשה תוך שבוע בשעת התרגול

PowerPoint Presentation

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

PowerPoint Presentation

מבוא למדעי המחשב - חובלים

PowerPoint Presentation

Slide 1

People. Partnership. Trust מסלול Free פורטל החינוך מבית U-BTech מסלולים ומחירים חיבור לשירותי Office 365 ללא עלות פורטל התחברות הכולל ממשק למנב"ס ולסי

PRESENTATION NAME

PowerPoint Presentation

מקביליות

תוכן העניינים: פרק צמצומים ומימושים של פונקציות בוליאניות... 2 צמצומים של פונקציות באמצעות מפת קרנו:...2 שאלות:... 2 תשובות סופיות:... 4 צמצום

Slide 1

מבחן סוף סמסטר מועד ב 28/10/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, גדי אלכסנדרוביץ הוראות: א. בטופס המבחן 6 עמודים (כולל דף זה) ו

Overview of new Office 365 plans for SMBs

מבוא למדעי המחשב - חובלים

- גרסת חורף 18' של Salesforce 10 חידושים בענן המכירות גרסת חורף 18' כבר כאן, ולפני שנסקור את השיפורים בגרסה זו, הכנו לכם חידה: ב- Webinar שעשינו בגרסה

תרגיל 3 בקורס תוכנה 1

מס' סידורי: ת.ז.: עמוד 1 מתוך 20 בחינה בתוכנה 1 סמסטר ב', מועד א',תשס"ט 5/7/2009 וולף, ליאור ליאור שפירא, נעמה מאיר, מתי שמרת הוראות )נא לקרוא!( משך ה

PowerPoint Presentation

Microsoft Word - Ass1Bgu2019b_java docx

Microsoft PowerPoint - lec2.ppt

Slide 1

רשימת החברות החורגות

Homework Dry 3

ת'' מדריך לבעלי תיבה קיימת במופ ומשתמשים ב Outlook 2003 או doc.2007 לפני שניגש להגדיר את תיבת המייל החדשה, נבצע גיבויי של המיילים ופנקס הכתובות מהחשבו

תמליל:

פרוייקט מלווה מערכת ניהול טיסות קורס דוט נט

כללי תיאור המערכת: מערכת ניהול טיסות מאפשרת לחברות תעופה )AirlineCompanies( לפרסם טיסות וללקוחות ליבחור את הטיסה המתאימה להם ביותר במחיר אטרקטיבי. שלבי בניית המערכת: בניית בסיס הנתונים וממשקי DAO בניית ממשק WPF לעבודה מול המערכת בניית Rest Services בניית ממשק Web רשות: הטמעת הפרוייקט בענן רשות: בניית ממשק אנדרואיד.1.2.3.4.5.6 גישה למערכת מתחלקת ל 3 סוגי משתמשים: Administrator מנהל מערכת AirlineCompany חברת תעופה המעוניינת לעדכן טיסות השייכות לה Customer לקוח המעוניין לרכוש טיסה.1.2.3

שלב 1 בניית ליבת המערכת

בניית ליבת המערכת תיאור: בשלב זה יוגדר מסד הנתונים לאחסון ושליפת מידע אודות לקוחות, חברותתעופה וטיסות יוגדרו Entry Points 3 למערכת עבור כל אחד מסוגי לקוחותיה )אדמיניסטרטור, חברת תעופה או לקוח( אשר יתחברו בביצוע.Login! Console App הפרוייקט יהיה כתוב כ Framework) Class Library (.NET, ולא כ

הגדרת בסיס הנתונים: AirlineCompanies טבלת חברות תעופה ID LONG, PK AIRLINE_NAME STRING USER_NAME STRING PASSWORD STRING COUNTRY CODE LONG, FK.1 ID LONG, PK AIRLINECOMPANY_ID LONG, FK ORIGIN_COUNTRY_CODE LONG, FK DESTINATION_COUNTRY_CODE LONG, FK DEPARTURE_TIME DATE_TIME LANDING_TIME DATE_TIME REMAINING_TICKETS INT Flights טבלת טיסות.2 ID LONG, PK FIRST_NAME STRING LAST_NAME STRING USER_NAME STRING PASSWORD STRING ADDRESS STRING PHONE_NO STRING CREDIT_CARD_NUMBER STRING Customers טבלת לקוחות.3 ID LONG, PK FLIGHT_ID LONG, FK CUSTOMER_ID LONG, FK טבלת כרטיסים Tickets.4 ID LONG, PK COUNTRY_NAME STRING Countries טבלת מדינות.5

פירוט הטבלאות: טבלת AirlineCompany מכילה את רשימת חברות התעופה. לכל חברת תעופה יש מפתח מזהה, שם חברה, שם משתמש וסיסמא )לצורך לוגין(, וקוד המדינה של החברה. לכל חברת תעופה יש רשימה של טיסות אשר היא מפרסמת בכדי שלקוחות יקנו כרטיסים עבור הטיסה )ראה טבלת,Flights וטבלת )Tickets טבלת Flights מכילה את רשימת הטיסות. בפרטי הטיסה קיימים הפרטים הבאים: חברת התעופה אליה היא שייכת, קוד מדינת המקור, קוד מדינת היעד, זמן המראה, זמן נחיתה, מספר כרטיסים שנשארו, סטטוס הטיסה )טרםהמריאה/ באוויר/ נחתה. ראה טבלת )FlightStatus טבלת Customer מכילה את רישמת הלקוחות הקיימים במאגר. לכל לקוח יש מפתח מזהה, שם פרטי, שם משפחה, שם משתמש וסיסמא )לצורך לוגין(, כתובת, מספר טלפון ומספר כרטיס אשראי טבלת Tickets מכילה את הכרטיסים שנרכשו עבור הטיסות. לכל כרטיס יש מפתח מזהה, מספר טיסה, מספר לקוח. שים לב שאותו הלקוח אינו יכול לרכוש פעמיים כרטיס לאותה הטיסה טבלת Country מייצגת את כל המדינות הקיימות במערכת. לכל מדינה יש קוד ושם

עיצוב המערכת מידע להלן דיאגרמת המחלקות: יש לייצר אינטרפייס )ריק( בשם IPoco יש לייצר אינטרפייס )ריק( בשם IUser לכל טבלה יש ליצור מחלקת : POCO o המחלקה תכיל את כל שדות הטבלה o המחלקה תכיל בנאי ללא פרמטרים )?Id הוסף בנאי המקבל כפרמטרים את כל שדות הטבלה )כולל *המלצה: o o המחלקה תממש Equals,,==,=! GetHashCode אשר ישתמש ב Id של המחלקה

לוגין להלן דיאגרמת המערכת: כיצד מתבצע הלוגין? לקוח אשר מעוניין לעשות לוגין: מקליד שם משתמש + סיסמא. לאחר מכן מופעלות שלושת הפונקציות TryCustomerLogin,TryArilineLogin,TryAdminLogin באופן סידרתי. אם הלוגין מצליח אז הפונקציה מחזירה אמת וה LoginToken המתאים )המוגדר ב )out מקבל ערך. אם הלוגין נכשל אז הפונקציה תחזיר שקר וה.null שיוחזר יהיה LoginToken כלומר, יש לנסות את שלושת צורות הלוגין עד אשר אחת מהפונקציות תחזיר אמת, או ששלושתם יחזירו שקר. אם שלושת הפונקציות החזירו שקר יש לזרוק אקספשיין.UserNotFoundException שים לב: אם נמצא המשתמש באחת מהטבלאות Customer( או )AirlineCompany אך הסיסמא לא נכונה, יזרק אקספשיין.WrongPasswordException שים לב שאין טבלת Administrators בשלב זה ולכן יש מנהל מערכת אחד אשר שם המשתמש שלו הוא admin וסיסמתו היא 9999. שים לב שאין לחזור על שם משתמש כלומר לא ייתכן שיהיה את אותו שם המשתמש גם בטבלת Customer וגם בטבלת.AirlineCompany כמו כן לא יתכן לייצר משתמש חדש בשם.admin מכיוון ששם משתמש זה תפוס. אתגר: צור טבלת Administrators אשר תכיל את מנהלי המערכת

יש לייצר אינטרפייס בשם ILoginService אשר יגדיר את המתודות של הלוגין וימומש ע"י מחלקת.LoginService bool TryAdminLogin(string username, string password, out LoginToken<Administrator> token); bool TryCustomerLogin(string username, string password, out LoginToken<Customer> token); bool TryArilineLogin(string username, string password, out LoginToken<AirlineCompany> token); מחלקת LoginService תכיל את חיבורי ה DAO לטבלת לקוח ולטבלת החברות תעופה private IAirlineDAO _arilinedao; private ICustomerDAO _customerado; public T User { get; set; } where T : IUser מחלקת property תשמור את המשתמש ב LoginToken

עבודה מול בסיס הנתונים להלן דיאגרמת המערכת:

T Get(int id); IList<T> GetAll(); כל האינטרפייסים של ה DAO יורשים מאינטרפייס בשם IBasicDB<T> void Add(T t); void Remove(T t); void Update(T t); where T : IPoco הסיבה לך היא שכל DAO לטבלה בבסיס נתונים חייבים להכיל את האפשרויות הבסיסיות של הבאת מידע, עדכון ומחיקה. מעבר לכך, ייתכנו אינטרפייסים המכילים עוד אפשרויות, לדוגמא ב IAirlineDAO יש אפשרות לקבל חברת תעופה לפי שםמשתמש וכו'. לכל אינטרפייס של DAO קיימת מחלקה יורשת )MSSQL( אשר מממשת את האינטרפייס מול בסיס הנתונים ה MSSQL האינטרפייס ITicketDAO י רו ש מאינטרפייס IBasicDB<Ticket> והוא אינטרפייס ריק )כרגע( מתוך מחשבה שאם יהיה צורך בעוד פעולות ב DAO אז נגדיר אותם בתוכו )קח בחשבון שניתן להוסיף עוד מתודות ומחלקות בהתאם לצורך...( המחלקה TicketDAOMSSQL מממשת את אינטרפייס ITicketDAO האינטרפייס IAirlineDAO יורש מאינטרפייס IBasicDAO<AirlineCompany> ומכיל את שתי הפונקציות הבאות: AirlineCompany GetAirlineByUserame(string name); IList<AirlineCompany> GetAllAirlinesByCountry(int countryid); האינטרפייס ICustomerDAO יורש מאינטרפייס IBasicDAO<Customer> ומכיל את שתי הפונקציה הבאה: Customer GetCustomerByUserame(string name);

האינטרפייס IFlightDAO יורש מאינטרפייס IBasicDAO<Flight> ומכיל את הפונקציות הבאות: Dictionary<Flight, int> GetAllFlightsVacancy(); Flight GetFlightById(int id); IList<Flight> GetFlightsByOriginCountry(int countrycode); IList<Flight> GetFlightsByDestinationCountry(int countrycode); IList<Flight> GetFlightsByDepatrureDate(DateTime departuredate); IList<Flight> GetFlightsByLandingDate(DateTime landingdate); IList<Flight> GetFlightsByCustomer(Customer customer);

תיאור ה Business Logic להלן דיאגרמת ה :Anonymous Facade באינטרפייס IAnonymousUserFacade רשימת האפשרויות החשופות בפני משתמש "אנונימי"(כלומר משתמש שלא עשה לוגין(. להלן הפונקציות: IList<Flight> GetAllFlights;)( IList<AirlineCompany> GetAllAirlineCompanies;)( Dictionary<Flight, int> GetAllFlightsVacancy;)( Flight GetFlightById(int id); IList<Flight> GetFlightsByOriginCountry(int countrycode); IList<Flight> GetFlightsByDestinationCountry(int countrycode); IList<Flight> GetFlightsByDepatrureDate(DateTime departuredate); IList<Flight> GetFlightsByLandingDate(DateTime landingdate);

המחלקה האבסטרקטית FacadeBase מכילה כשדות את רשימת כל ה DAO הקיימים במערכת. כל ה Facade יורשים ממחלקה זו )בכדי שיקבלו את רשימת ה.)DAO protected IAirlineDAO _airlinedao; protected ICountryDAO _countrydao; protected ICustomerDAO _customerdao; protected IFlightDAO _flightdao; protected ITicketDAO _ticketdao;

להלן דיאגרמת ה :LoggedInAdministratorFacade ה LoggedInAdministrator Facade מטרתו להכיל את רשימת האפשרויות אשר קיימות עבור משתמש מסוג מנהל )לאחר שעשה לוגין בהצלחה(. המחלקה יורשת מ AnonymousUserFacade מכיוון שעבור המנהל קיימות גם כל האפשרויות הקיימות עבור משתמש "אנונימי" )שעדיין לא עשה לוגין(. כמו כן קיימות ב LoggedInAdministrator Facade אפשרויות נוספות אשר רק מנהל שעשה לוגין יכול לקבל. האפשרויות הקיימות למנהל מתוארות באינטרפייס ILoggedInAdministratorFacade בפונקציות הבאות: void CreateNewAirline(LoginToken<Administrator> token, AirlineCompany airline); void UpdateAirlineDetails(LoginToken<Administrator> token, AirlineCompany customer); void RemoveAirline(LoginToken<Administrator> token, AirlineCompany airline);

void CreateNewCustomer(LoginToken<Administrator> token, Customer customer); void UpdateCustomerDetails(LoginToken<Administrator> token, Customer customer); void RemoveCustomer(LoginToken<Administrator> token, Customer customer); שים לב שפונקציות ה DB בכדי לגשת ל DAO אמורות לפנות למחלקות ה Façade להלן דיאגרמת ה :LoggedInAirlineFacade ה LoggedsInAirline Facade מטרתו להכיל את רשימת האפשרויות אשר קיימות עבור משתמש מסוג חברת תעופה )לאחר שנעשה לוגין בהצלחה(. המחלקה יורשת מ AnonymousUserFacade מכיוון שעבור חברת תעופה קיימות גם כל האפשרויות הקיימות עבור משתמש "אנונימי" )שעדיין לא עשה לוגין(. כמו כן קיימות ב

LoggedsInAirline Facade אפשרויות נוספות אשר רק חברת תעופה שעשתה לוגין יכולה לקבל. האפשרויות הקיימות לחברת התעופה מתוארות באינטרפייס ILoggedInAirlineFacade בפונקציות הבאות: IList<Ticket> GetAllTickets(LoginToken<AirlineCompany> token); IList<Ticket> GetAllFlights(LoginToken<AirlineCompany> token); void CancelFlight(LoginToken<AirlineCompany> token, Flight flight); void CreateFlight(LoginToken<AirlineCompany> token, Flight flight); void UpdateFlight(LoginToken<AirlineCompany> token, Flight flight); void ChangeMyPassword(LoginToken<AirlineCompany> token, string oldpassword, string newpassword); void MofidyAirlineDetails(LoginToken<AirlineCompany> token, AirlineCompany airline); שים לב שפונקציות ה Façade אמורות לפנות למחלקות ה DAO בכדי לגשת ל DB

להלן דיאגרמת ה :LoggedInCustomerFacade ה LoggedInCustomer Facade מטרתו להכיל את רשימת האפשרויות אשר קיימות עבור משתמש מסוג לקוח )לאחר שנעשה לוגין בהצלחה(. המחלקה יורשת מ AnonymousUserFacade מכיוון שעבור לקוח קיימות גם כל האפשרויות הקיימות עבור משתמש "אנונימי" )שעדיין לא עשה לוגין(. כמו כן קיימות ב LoggedInCustomer Facade אפשרויות נוספות אשר רק חברת תעופה שעשתה לוגין יכולה לקבל. האפשרויות הקיימות ללקוח מתוארות באינטרפייס ILoggedInCustomerFacade בפונקציות הבאות: IList<Flight> GetAllMyFlights(LoginToken<Customer> token); Ticket PurchaseTicket(LoginToken<Customer> token, Flight flight); void CancelTicket(LoginToken<Customer> token, Ticket ticket); שים לב שפונקציות ה Façade אמורות לפנות למחלקות ה DAO בכדי לגשת ל DB

מחלקת FlyingCenterSystem יש לכתוב מחלקה זו כסינגלטון פניות ללוגין יבוצעו אך ורק דרך מחלקה זו אין לייצר FAÇADE "לבד", אלא לייצר FACADE רק דרך מחלקה זו, ולכן יש להוסיף פונקציה בשם GetFacade )גנרית?( אשר מחזירה FACADE מוכן. וזאת כדי לשלוט במספר החיבורים הקיימים במערכת בוזמנית )ניהול החיבורים יתואר בשלב הבא( בבנאי של המחלקה יש לייצר Thread אשר "מתעורר" פעם ביום )יש לקנפג את זמן ההתעוררת ב.)appconig כאשר ה Thread מתעורר, הוא מעביר את כל הכרטיסים של טיסות שכבר נחתו לפני יותר מ ש 3 עות, לטבלה שנקראת.TicketHistory כמו כן הוא מעביר את כל הטיסות שכבר נחתו לפני יותר מ ש 3 עות, לטבלה שנקראת FlightsHistory

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

הערות כלליות ניתן להוסיף מתודות למחלקות ולאניטרפייסים לפי הצורך אם יש צורך בשינוי ה design הקיים, נא להתייעץ קודם יש להוסיף מחלקות של Exception לצורך אירועים חריגים במערכת )לפחות עוד 4 מחלקות( יש לכתוב קוד ברור, נקי, מסודר עם הערות יש לשמור את ה ConnectionString בקובץ AppConfig יש להעלות את הפרוייקט ל GIT לצורך בדיקה בהצלחה