What Is the World Wide Web?
- The internet is a network of computer networks worldwide
- The web is a tool used to retrieve information published on the internet
- To navigate the web we use a browser i.E. Netscape or internet explorer
Brief History of the www
- 1968 – DARPA (Defense Advanced Research Projects Agency) contracts with BBN (Bolt, Beranek & Newman) to create ARPAnet
- 1970 – First five nodes:
- UCLA
- Stanford
- UC Santa Barbara
- U of Utah, and
- BBN
- 1974 – TCP specification by Vint Cerf
- 1984 – On January 1, the Internet with its 1000 hosts converts en masse to using TCP/IP for its messaging.
HTTP/HTTPS
- Original web communication protocol
- Request-Response type
- Client (browser) will open a connection to a server and then send a request using a very specific format
- Server will respond and close the connection
- Stateless
- Does not maintain any connection information between transaction information
- Feature
- Negotiation of data representation.
TCP/IP
- Transmission Control Protocol over Internet Protocol
- IP ensures that data packets reach the destination from the source of communication
- Not necessarily data packets follow the same path
- TCP keeps track of these packets, and manages the assembling of these packets to form the original message
- Thus, both TCP and IP work together to ensure that effective transmission of data over the internet
Web Brochures vs. Web Applications
Goal | Information: Text, graphics, tables |
Web interface to any application
Interaction: Data entry, data selection, checking, ordering |
Emphasis | Professional look, graphic design | Optimal support for the work flow |
Implementation | Few interaction steps, mostly static pages (e.g. data entries)
Navigation (browsing) – many integrated hyperlinks with jumps to other pages |
Usually interacts with data source
Incorporates business logic May contain simple or complex navigation Dynamic behavior. |
Web Brochures | Web Applications | |
Deployment | WWW | May present on companies LAN or WWW |
Examples Apps | University Web Sites, Personal Home Page etc. | Amazon.com
Purchasing System Address Book etc. |
Advantages of Using Web Applications
- Allows you to browse a wide variety of internet sources
- Instantaneous connections to internet sites world wide
Disadvantages of Using Web Applications
- Connections can be slow or busy
- No standard methods of organization
- Out-of -date materials may not be removed
- Contents can be (maliciously) altered
- Sites can simply be moved/removed
Layers: Simplified view of application and its layers.
- It is important to note that the layers are merely logical groupings of the software components that make up the application or service.
- They help to differentiate between the different kinds of tasks performed by the components.
- The make it easier to design reusability into the solution.
- Each logical layer contains a number of discrete component types grouped into sublayers, with each sublayer performing a specific kind of task.
- By identifying the generic kinds of components that exist in most solutions, you can construct a meaningful map of an application or service, and then use this map as a blueprint for your design.
Evolution of Enterprise Application Framework
- Single tier
- Two tier
- Three tier
- N-Tier
Client-server architectures1-tier Architecture
- Entire application exists on single node
- Installed on individual machines
- Dumb terminals are directly connected to mainframe
- Centralized model (as opposed distributed model)
- Presentation, business logic, and data access are intertwined in one monolithic mainframe application
- Types of systems
- Standalone executable
- Mainframe applications
Client-server architectures 2-tier Architecture
- Client Server Applications
-
- The client and server can be heterogeneous
- Different implementation languages
- Different operating systems
- The client and server can be heterogeneous
-
- The roles can be transient
- Fat client – server only manages data
-
-
- talk to back end database
- SQL queries sent, raw data returned
- Some Windows GUI based application
-
-
- Thin Client – server manages data and business logic
- Browser – server manages presentation too
Client-server architectures 2-tier Evaluation
Advantages
- Modifications on server propagated to clients
- Can distribute processing load
- Better scalability by adding server nodes and clients
- Database type independence
Disadvantages
- Client nodes require more computing power
- Development and maintenance more complex
- Presentation, data model, business logic are intertwined (at client side), difficult for updates and maintenance
- Data Model is “tightly coupled” to every client: If DB Schema changes, all clients break
- Updates have to be deployed to all clients making System maintenance nightmare
- DB connection for every client, thus difficult to scale
- Raw data transferred to client for processing causes high network traffic
3-tier Architecture (General)
Applications are generally partitioned as Client, Control (business) and Data Components
In 3-Tier Each logical partition maps to a layer in the system
- Modeling layers and software layers match 1-to-1
- Each layer implemented with appropriate technologies Layers have their own internal architectures
Advantages
- Complete separation of concerns
- Control logic can be reused by client applications
- Caches results in the controller layer
- Maximum flexibility for enterprise-wide applications
Disadvantages
- Difficult to integrate legacy stovepipes which represent large investment
- Complexity
- Speed decreases with levels of indirection and latency
- Increases cost and development time
- Lack of knowledgeable developers and managers
N-tier (multi-tier & multi-layered) Architecture
Layers added for better separation of concerns
- Every layer does a specified task, which improves cohesion and lowers coupling
- Application can be divided among developers with well defined roles.
- Layers and Tiers need not have 1-1 mapping. 3-tier is popular as its maps to typical IT problems
- For example a fortune five company uses
-
- JSP-Servlet-Handler-Translator-EJB-DAO layers
- These layers are deployed on three physical tiers which are
- Thin client à Web + Application server àDatabase Tiers
-
Learn More:
For solution, online support and query email us at .