Upload
cornelia-banks
View
216
Download
2
Tags:
Embed Size (px)
Citation preview
Enterprise .NET 1 CA - presentation
HENDRI FRANYO HT082210N
KRISHNAMURTHY SAMANTH YADAV HT082239L
CAI XIANG HT082182A
KHAING MYAT THWE HT082208L
AUNG MOE HT082184B
SHAIKALAWDEEN FARIDUL HUK HT082188X
USHA RANI KONUDULA HT082183N
Team 07
Introduction
SingAir Online Ticketing System (SOTS) is a web based internet booking system with the following functionalities :•Guest
• Search Flights• User Registration
•Registered Users • Search Flights• Flight Booking and Cancellation• Track booking
• SingAir Staffs • Manage Flight schedules• Manage Airports• User Administration• Track customer bookings• Reporting
Global Use-case Diagram
autoFill
(from Use Case View)
Payment
(from Use Case View)Seat Selection
(from Use Case View)
Register User
(from Use Case View)
Book Flight
(from Use Case View)
retrieve logon info
(from Use Case View)
change Password
(from Use Case View)
View Flight Schedule
(from Use Case View)
Cancel Flight
(from Use Case View)
<<extend>><<extend>>
PassengerDetails
(from Use Case View)
<<extend>>
ViewBookingDetails
(from Use Case View)
<<extend>>
<<extend>>
(from Use Case View)
<<extend>>
User
(from Use Case View)...)
Registered User
(from Use Case View)...)
View Airport Details
(from Use Case View)
Add new airport
(from Use Case View)
Update Airport
(from Use Case View)
Delete Airport
(from Use Case View)Generate Booking Report
(from Use Case View)
Search Flight
(from Use Case View)
<<extend>>
Logon
(from Use Case View)
Track Booking
(from Use Case View)
<<include>>
Update Particular
(from Use Case View) View CustomerList
(from Use Case View)
View Airport List
(from Use Case View)
Add Flight Schedule
(from Use Case View)
Update Flight Schedule
(from Use Case View)
Delete Flight Schedule
(from Use Case View)
Staff
(from Use Case View)...)
Booking (step 1) - Search Flight
Booking (step 2) - Selecting Flight
Login to continue Booking or Register if not yet a member
Register for membership
Continue Booking (step 3) – Auto Fill in Passenger Details
Booking (step 4) - Seat Selections
Booking (step 5) - Make Payment
Booking (step 6) - Booking confirmed
Booking (step 7) - Print Booking Info
Track My Bookings
Booking Cancellation
Admin Features
Manage Airport using MVC (By Admin)
Manage Airport using MVC Continue (By Admin)
Manage Flight Schedule (By Admin)
Track Customer Bookings (By Admin)
Reporting (By Admin)
Guiding principles
• Layered architecture• Presentation Layer, • Business Logic Layer• Data Access Layer.
• DAL – Data Access Layer• All Data handling is done in this layer• Implements the DAO Pattern• Include Entity Framework and Typed DataSet
• BLL – Business Logic Layer• All Business Logic is incorporated in this layer• Implements the Façade for BLL and the Presentation Layer
interacts with Façade only.• Implements the Factory Pattern to get specific Business Entity
• PL – Presentation Layer• All User Interface is in this layer• WebForm UI will adopt the PageController Pattern• UI with minimal rendering control and the functional flow logic
is in the PageController• Core
• Common Functionalities – Constants, Messages
Architectural Diagram
Client Browsers
Web Forms and MVC Presentation Layer (Singair.PL)
Business Logic Layer (Singair.BLL)
Data Access Layer (Singair.DAL)
Core(Constants,Common
Functionalities)(Singair.Core)
Page Controller/Controller
Business Facade
DAO Factory
Features
Technology Features Location Description
Master Page Site.Master All Pages use it
CSS Site.css, CalendarControl.css, jquery-ui-1.8.1.custom.css
All Pages use it
Site Navigation Register.aspx, Login.aspx, ChangePassword.aspx, ForgotPassword.aspx
All Pages use it
Membership API ManageFlightSchedule.aspx,SearchFlight.aspx,Reports.aspx
UserControls: PasswordRecovery, Login, ChangePassword, CreateUserWizard
GridView, ListView Control SearchFlight.aspx, Register.aspx
Search Result, Create/Edit/Delete Record
Javascript Calendar SearchFlight.aspx, Register.aspx
Depart / Return Date, DOB
Features (cont…)
Technology Features Location Description
Caching BaseForm.aspx.cs InitCities()
XML File as Datasource countries.xml, Register.aspx Bind country list to a dropdownlist control dynamically
User Control PassengerInfo.ascx, PassengerDetails.aspx
Used in a Repeater control
MVC Manage Airports MVC, WebForms into single project
AJAX SeatSelection.aspx SeatSelection.aspx
Querystring TrackBooking.aspx Used to pass booking id
JQuery Register.aspx To create a javascript calendar control
Http Session SearchFlight.aspx, PassengerDetails.aspx
Keep the value for multi-pages task
Features (cont…)
Technology Features Location Description
View State BaseForm.aspx.cs InitCities()
Concurrency SeatSelection.aspx Handles concurrency in seat booking.
Entity Framework DAL Project All use cases except Reports.
Data Annotation DAL Model MVC Airport
Typed Data Set DAL project Reports
Transactionscope BLL project CreateBooking, Cancel Booking
Integration of MVC with ASP.NET Application
• Add references to existing ASP.NET application
System.Web.Routing,System.Web.Abstractions,System.Web.Mvc
• Enable ASP.NET MVC in ASP.NET – web.config • Routing Configuration – Global.asax
public static void RegisterRoutes(RouteCollection routes){ routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.IgnoreRoute("{resource}.aspx/{*pathInfo}"); routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Airport", action = "Index", id = UrlParameter.Optional } // Parameter defaults ); } protected void Application_Start() { RegisterRoutes(RouteTable.Routes); }
Sequence diagram for BookFlight
To be displayed from Rational Rose
Demo
Demo of SingAir Online Ticketing System