100 likes | 258 Views
Team 07. Enterprise .NET 1 CA - presentation. Introduction. SingAir Online Ticketing System (SOTS) is a web based internet booking system with the following features : Registered Users Search Flights Self Register for booking Flight Booking and Cancellation Track booking SingAir Staffs
E N D
Team 07 Enterprise .NET 1 CA - presentation
Introduction SingAir Online Ticketing System (SOTS) is a web based internet booking system with the following features : • Registered Users • Search Flights • Self Register for booking • Flight Booking and Cancellation • Track booking • SingAir Staffs • Manage Flight schedules • Manage Airports • User Administration • Track customer booking • Reporting
Architectural Diagram Client Browsers Web Forms and MVC Presentation Layer (Singair.PL.dll) Core (Constants, Common Functionalities) Singair.Core.dll Page Controller Business Logic Layer (Singair.BLL.dll) Business Facade Data Access Layer (Singair.DAL.dll) DAO Factory
Guiding principles • Layered architecture separating user interface, application logic and data processing into different binaries. • Well defined interfaces for BLL and DAL separating implementation details. • Pattern (Page Controller, Factory, Façade, DAO ) driven design, following OO design principles like Open/Close principal, Separation of Roles.
: : BaseForm : : : BLLCustomer : BLLBooking : : FlightDAO : BookingDAO : : DAOFactory : : FlightFacade : BLLFlight : RegisteredUser SearchFlightPage PaymentPage BookingDet... CustomerDAO SeatSelect... PassengerDetailsPage 1: selectFlight() 2: validate() 3: continue() 4: next() 5: Response.Redirect(PassengerDetails) 6: enterDetails() 7: validate() 8: FillFirstPassengerWithCustomer() 9: FindCustomerById() 10: FindCustomerById() 11: FindCustomerById() 12: GetCustomerDAO() 13: FindById() 14: continue() 15: next() 16: Response.Redirect(SeatSelection) 17: load() 18: GetFlightSeats() 19: GetFlightSeats() 20: GetFlightSeats() 21: GetFlightDAO() 22: GetFlightSeats() 23: selectSeats() 24: Continue() 25: next() 26: Response.Redirect(Payment) 27: enterPaymentDetails() 28: validate() 29: Continue() 30: CreateBooking() 31: CreateBooking() 32: CreateBooking() 33: GetBookingDAO() 34: getNewContext() 35: AddBooking(ctxt, Booking) 36: AllotPassengerSeats(ctxt, Booking) 37: Response.Redirect(BookingDetails) 38: Close() Sequence diagram for BookFlight