Sunteți pe pagina 1din 11

ADEYEMI ODENEYE 30671580

EBIN 520
1. Using the three-tier architecture, discuss what functionality you would expect at
each of the three tiers in terms of the Expedia website .

The Expedia website is an example of a client/ server which has a three tier architecture layer wand comprises the Presentation /application layer, The Business/Logical layer and the Database Layer

The above is a representation of a client/server three-tier architecture.

THE PRESENTATION LAYER This layer interprets task in a human readable form. This is the first layer which contains the interface code that is going to be displayed to the user. This code could contain any web programming language that can be used on the client side like HTML, JavaScript or VBScript etc In the case of Expedia this layer is expected to display information related to services such as browsing the Airline website, purchasing tickets, log on information e.t.c. It interacts with the other tiers by providing end results to the browser client. This tier is responsible for communication with the users. The users in this context may be the customer or the administrator. This is where objects are used from the business layer to respond to the GUI raised events. The presentation layer is the form

which acts as a user interface to either programmer or end user. The Programmer uses this layer for designing purpose and to get or set the data while the end user uses it for interaction to get information. However in more specific terms the presentation layer in Expedia has the capacity of providing the following: USER SIDE Home Page The users can access Expedia homepage via the internet. He can reach the homepage of the airline reservation website. This is where he sees information regarding other aspects of Expedia. Login and Register Another this tier the capability of the Expedia website is the user log in or registration form. Here new users can create a username and password while existing users could log on to the user page. This is where existing users modify information they have earlier provided. For instance a newly married lady may change her marital status. Booking flights This layer enables the customer to create a search for available flights and get information as regards their fares. Customer can also search for the flights available and reserve his place on the flight by purchasing a ticket. Contact the company There is also information where customers can call the customer service or send an email to make an enquiry. Booking instructions This where the website provide the user with various packages based on his search criteria. ADMINISTRATOR SIDE Login/log out Similar to the user the administrator in Expedia will also have a log in account. Here he logs on to the website to make changes and for updates to the airline reservation system. Add/Modify Customer information The Administrator will also be able to add, delete or modify the flight information after logging on to the website. He is the only person who has the access to delete, modify or add the flight information.

Not all flights reserved are actually used by the customers. Sometimes the flights get cancelled for some reasons so such flights would be removed from the list of flights available to the customer. Similarly whenever any flight information has to be modified or if any new flights need to be added to the database these operations will be performed by the administrator. Add/Modify Hotel Information The administrator can also add delete or modify information related to different motels. This information can be the number of rooms available at the motel and the prices e.t.c Cancellation of Rervations Sometimes after making a reservation a customer might cancel the reservation he has made so the administrator also handles such special situations and sends the customer an email confirmation letter after deleting the specific transaction. Email confirmations Whenever customers makes or cancel a reservation the administrator is responsible for sending emails to the customer confirming the transaction.

The above is a caption from the Expedia website containing presentation layer informatio.

THE BUSINESS LOGIC LAYER This is mainly responsible for information exchange between user interface and the database of the project. This is where the business logic is stored it validates business rules and communicates with the data access layer. At this second layer programs are written which collects data from the presentation layer and feeds the data access layer. He also collects the processed data after querying

the data tier which is the information and fetches the presentation layer which finally provides them to the user in a readable form. DATA ACESS LAYER This is the final Layer of the three tier architecture. This is also referred to as the data access tier which mainly contains of the database servers. The information related to the airline is stored and retrieved there. The codes used at the server end are found in this layer this are programs used for accessing the database. This layer mainly contains the code that is used for accessing the database and to query, manipulate, pass data to user interface and handle any input from the UI as well. This layer is a class and it acts on the instruction supplied from the business /logic layer which we use to write the function which works as a mediator to transfer the data from Application or presentation layer data layer. In the three tier architecture we never let the data access layer to interact with the presentation layer. At this tier data are stored in various forms in XML file, MS Access e.t.c The clients have the user interface to invoke the requests through function calls, and the database servers send the results after running the functions and stored procedures that implement the business logic of the application, and the information is displayed on the client machines. 2. Consider what would happen if there were no client- side scripting in the Expedia interface. For example, what impact would this have on performance? Client-side programming is the technique of embedding dynamic changes in the HTML pages that do not require any communication with the server Client side scripting contributes to the richness of a website. For instance the Expedia uses java script to provide more information when you want to pick date in the date form. One advantage of this is that users whose browsers support scripts will be able to see what dates fall on which days of the week and allowing them to select a date with a mouse rather than text entry.This functionality enables ease of access for consumers. In additition client side enables forms which saves time and bandwidth, and enables immediately prompting the user when there is incorrect information while filling a particular the forms before clicking the submit button. A t the client side some Web programming language run from the computer and this enables the performance of scripting operations before it is displayed on the web page. With the aid of a client side scripting it gives room for the execution of programs on the downloaded page instead of sending request to the server. Client-side scripting compared to server-side scripting can reduce server load by 80%. In the absence of a client side scripting Expedia may be slow in executing customers request

and this may make customers feel bored. Customers value their time a lot and they do not like to spend much time on a particular request. This may influence the customer from further using Expedia. Besides the website will not be interactive and there will be no richness o n the WebPages and this will discourage consumers to substitute Expedia for other Air line reservation. Scripting technologies like JavaScript is used on the Expedia website to add extra functionality to a website. For instance this could be a mouse over image effects, animations. It stimulates positive user experience. 3. Given an interaction with Expedia: i) searching for a flight or holiday destination (to Paris for the new year) ii) looking at the returned list iii) putting a flight or holiday in your shopping cart iv) checkout and payment illustrate what messages you think are passing between the three tiers of the architecture. (For messages, brief English descriptions will suffice). What is happening at each stage of the interaction? Which part of the architecture is being used?

Searching for a destination


Here the user sends his request with the criteria for the search at the presentation layer. The presentation layer captures the data and sends it to the business logic layer at this point does the modification based on the users request. The Business layer queries the data base which in turn retrieves the information back to the business layer and finally gives the report to the presentation layer. The return list is viewed by the user on the web page.

Putting a flight or holiday in your shopping cart.


At this point the user selects the flight package and sends it to the Business and logic layer. At this point because this layer stores logical data and functions it does not need to query the database it supplies the presentation layer with the total amount.

Check out
The user check out at the presentation layer sends message tom the business layer which also queries the database. The database retrieved the information and sends back to the business layer which finally fetches the presentation layer with the information which is transaction status.

The diagram above represents the interactions between the tiers The first request: 1) will involve interactions among all the layers while the 2) looking at the return list is only at the presentation layer 3) will be within the presentation and business/logic layer 4) will be among the three layers.

The company would like to provide an additional service to improve its marketability by introducing video streams (holiday videos uploaded by customers or video advertising by the company itself). What technologies would need to be considered for this and what are the technical challenges. Do you think this could help or hinder the companies marketability.

The technologies that will be considered by Expedia in order to engage in video streaming will be identified in terms of the following technological areas: Protocols to be used In the context of data communication, a network protocol is a formal set of rules, conventions and data structure that governs how computers and other network devices exchange information over a network. The rules and procedures which are implemented for a particular kind of technology in networking can be described as protocols. For instance in streaming technology at Expedia protocol will be used to carry message packets, and they are the only means through which communication takes place . Real Time Streaming Protocol (RTSP) Considering the fact that user of the Expedia website may want to access the web video at different locations and at different time, Expedia should opt for a Real time sharing protocol. This is because it is an application layer protocol that can be used in controlling the delivery of data with real time

features. With the use of the Transmission control protocol (TCP) the RTSP provides an extensible framework to enable controlled, on-demand delivery of real-time data, such as audio and video, u In this streaming technology, streams are broken into data called packets and their size will be in line with the bandwidth available between the client and the server. When the client has received enough packets, the user's software can be playing one packet, decompressing another, and downloading the third. With this the user can listen or view the real-time file almost immediately, and without downloading the entire media file. This can be used in a live data and stored clips.

The above diagram represent how the HTTP interacts with the RTPS in streaming a Windows Media-based content are Real Time.

The above diagram is a pictorial representation of how streaming works

On demand streaming Now let us assume that Expedia will be using a RTSP, then it follows that an on demand broadcast will be used. This is because it includes some functions such as pause, forward, rewind. On Expedia website viewers can click on a video link and actually watch it immediately. It is on demand because the event has already been featured viewers are only accessing it. It can be viewed for as many times as possible. Here with on demand streaming video is delivered to the viewer through the streaming server and it is directly viewed on the web page of the viewer. Here as you click the button the web server will send message to the streaming server telling it which file the viewer wants and this is sent directly to the viewers web page hence streamlining the web server. Band with Based on the above recommendation s Expedia would need to work on its bandwidth because with this there is high possibility for an increase in traffic hereby slowing down network performance. If Expedia has a low band-with there is tendency that the bandwith becomes congested incase of increase traffic. On the other a wider bandwidth will give room for scalability and enable free flow of information across the network. A high Bandwidth is important for a multimedia transmission over the

because sending large amounts of video and audio data over the Internet occupies a lot of space and requires large bandwidths. DATA COMPRESSION A simple description of data compression is the reorganisation of bits and bytes that make up ones data in a smaller and compact form without losing its content It involves a process of coding and decoding. A data compression form that I will recommend for Expedia website for video streaming is a lossy compression. An example of a lossy compression is the MPEG 4. Without going into its technicalities behind mpeg 4 I will justify this choice from its features and capabilities. This includes the following: It is acceptable for streaming over the internet. It has a low bitrates for video coding a method that requires extraction of objects. Ait comprises architecture and coding methods for representing rich multimedia content It supports popular multimedia technologies like Broadcast , streaming Broadcast Includes low bitrates, error resilience, scalable coding. More efficient use of bandwidth deployed across different platforms TECHNICAL CHALLENGES Network When communication network increases the need to have reliable network and to make it available becomes a matter of high importance. Some organisations deploy some penetration testing so as to determine its functions. For instance in terms of security penetration testing is used to assess the level of Expedias vulnerability and identify possible threats to the network security. In addition the whole Information technology infrastructure is assessed. In this situation Expedia may decide to hire a consultant who will provide this service. Also the scalability of the network which has been adopted should be considered. This is the ability of the website to be able to meet up with future demands by customers and potential customers. Infrastructure Another technical challenge in a video streaming technology is the existing infrastructure. This could be the hardware configuration already in place at Expedia. On the side of the users the existing infrastructure could be the clients computer and internet connection may not have enough capacity for such a technology.

JITTER IN VIDEO STREAMING. Another inherent technical challenge that may face Expedia is JITTER. At times there may be some differences in the rhythm of digital transmission, this could be as a result of poor connectivity, traffic congestion. That differences so caused s is simply referred to as jitter. This usually occurs in internet streaming or communications. In such situation a buffer is usually used, it will serve as a storage in the system. This will be were incoming packets for videos and audios will be arranged before play back. This technique allows for timing for the computer so as to ensure that data packets are accurate before play back. MARKETABILITY OF EXPEDIA The introduction of technological innovations in modern business general will always have a far reaching impact to the growth of the business. In more specific terms a technological development such as video streaming if applied to Expedia website will impact positively on their sales because : It will project the image of Expedia as a company which is at the edge of latest development in technology. It will enable trust and confidence in Expedia by existing and potential users. It will attract potential users to the webpage. It will increase traffic which could be use for data analysis by Expedia. The video display will serve as a way of advertising it will enable to display the content of expedia to a first time visitor to the web site. Use on all types of networks without need for new networks or transport formats

REFERENCES:

Dieter Gollmamh, 2005 Computer Security Second Edition. Hamburg University Press Harold I.Tipston, 2009. Official (ISC) guide to the CISSP CBK Second Edition. CRC Press Dave Chaffey, 2009. E Business Commerce and Management Fourth Edition. Pearson Education ltd

http://computer.howstuffworks.com/internet/basics/streaming-video-and-audio3.htm. How streaming video and audio work. Howstuffs work.com(10/11/2011) http://campustechnology.com/articles/38707/ Larson, Lisa. "A Crash Course in Flash Video." StreamingMedia.com. 9/24/2007 (10/11/2011) http://www.streamingmedia.com/article.asp?id=9711&c=8 Media College. "Introduction to How to Create Streaming Video." (10/11/2011) http://www.mediacollege.com/video/streaming/overview.html Reuters. "YouTube Serves Up to 100 Million Videos a Day." USA sToday. 7/16/2006 (10/11/2011). http://www.usatoday.com/tech/news/2006-07-16-youtube-views_x.htm Steinmetz, Mike. "Streaming Media." (10/11/2011) http://www.digitalwebcast.com/Htm/Tutorials/streaming/streaming.htm StreamingMedia.com. "Understanding Streaming Media Protocols." 2/2/2003 (27/11/2011) http://www.streamingmedia.com/article.asp?id=8291&c=1 University of Wisconsin. "Understanding Streaming Media." (27/11/2011) http://streaming.wisconsin.edu/understand/understand.html(27/11/2011) http://computersight.com/software/developing-web-applications/#ixzz1erdFYWhg http://edn.embarcadero.com/article/10343http://www.simple-talk.com/dotnet/.net-framework/.netapplication-architecture-the-data-access-layer/

S-ar putea să vă placă și