Professional Documents
Culture Documents
Internet Technology Week 1
Internet Technology Week 1
AN INTRODUCTION
BY
DR. PATRICIA GHANN
What is Internet Technology?
Internet Technologies is a technical field that covers the necessary skills to develop
Internet of Things
CAREERS AND PROSPECTS
The Internet is essentially a global network of computing resources. You can think of the
Internet as a physical collection of routers and circuits as a set of shared resources.
Some common definitions given in the past include −
• A network of networks based on the TCP/IP communications protocol.
• A community of people who use and develop those networks.
Internet Reference Models
The OSI model consists of seven layers. Each layer has a specific function, however each
layer provide services to the layer above.
OSI Reference Mode (2)
TCP/IP Reference Model
combines the two layers (Physical and Data link layer) into one layer known as Host-to-
Network layer.
Examples uses of the Internet
Search Engine
Information
Announcement
Computation
Mixed
Advantages of the Internet
Challenges of Posed by the Internet
Basic paradigms
Hypertext + Internet
Hypertext: textual documents together with the ability to interconnect documents by links
between them as part of the document contents
WWW stands for World Wide Web. A technical definition of the World Wide Web is − All the
resources and users on the Internet that are using the Hypertext Transfer Protocol (HTTP).
A broader definition comes from the organization that Web inventor Tim Berners-Lee helped
found, the World Wide Web Consortium (W3C): The World Wide Web is the universe of
network-accessible information, an embodiment of human knowledge.
In simple terms, The World Wide Web is a way of exchanging information between
computers on the Internet, tying them together into a vast collection of interactive multimedia
resources.
What is HTTP?
URL stands for Uniform Resource Locator, and is used to specify addresses on the World Wide Web. A URL
is the fundamental network identification for any resource connected to the web (e.g., hypertext pages,
images, and sound files).
A URL will have the following format −
protocol://hostname/other_information
The protocol specifies how information is transferred from a link. The protocol used for web resources is
HyperText Transfer Protocol (HTTP). Other protocols compatible with most web browsers include FTP,
telnet, newsgroups, and Gopher.
The protocol is followed by a colon, two slashes, and then the domain name. The domain name is the
computer on which the resource is located.
Links to particular files or subdirectories may be further specified after the domain name. The directory names
are separated by single forward slashes.
What is Website?
All website sits on a computer known as a Web server. This server is always connected to
the internet. And every Web server connected to the Internet is given a unique address
made up of a series of four numbers between 0 and 256 separated by periods.
For example, 68.178.157.132 or 68.122.35.127.
When you register a Web address, also known as a domain name, such as patriciagh.com
you have to specify the IP address of the Web server that will host the site.
What is Web Browser?
Web Browsers are software installed on your PC. To access the Web you need a web
browsers, such as Netscape Navigator, Microsoft Internet Explorer or Mozilla Firefox.
Currently you must be using any sort of Web browser while you are navigating through
my site tutorialspoint.com. On the Web, when you navigate through pages of information
this is commonly known as browsing or surfing.
What is SMTP Server?
delivering emails from one server to another server. When you send an email to an email
ISP stands for Internet Service Provider. They are the companies who provide you service
in terms of internet connection to connect to the internet.
You buy space on a Web Server from any Internet Service Provider. This space will be
used to host your Website.
What is HTML?
as an access point to other electronic resources. Typically, you click the hyperlink to
access the linked resource. Familiar hyperlinks include buttons, icons, image maps, and
www.example.com, your browser will ask the Domain Name System to find the IP that
hosts your site. When you register your domain name, your IP address should be put in a
DNS along with your domain name. Without doing it your domain name will not be
functioning properly.
What is W3C?
The W3C was founded in 1994 by Tim Berners-Lee, the original architect of the World
Wide Web. The organization's purpose is to develop open standards so that the Web
evolves in a single direction rather than being splintered among competing factions. The
W3C is the chief standards body for HTTP and HTML.
How the Web Work: Web Client-Server
Interaction
A user enters a URL into a browser (for example, Google.com. This request is passed to a
domain name server.
The domain name server returns an IP address for the server that hosts the Website (for
example, 68.178.157.132).
The browser requests the page from the Web server using the IP address specified by the
domain name server.
The Web server returns the page to the IP address specified by the browser requesting the page.
The page may also contain links to other files on the same server, such as images, which the
browser will also request.
The browser collects all the information and displays to your computer in the form of Web page.
Types of Web - Browser
Web Browsers are software installed on your PC. To access the Web, you need a web
browser, such as Netscape Navigator, Microsoft Internet Explorer or Mozilla Firefox.
There are four leading web browsers − Explorer, Firefox, Netscape, and Safari, but there
are many others browsers available.
While developing a site, it is important to make it compatible to as many browsers as
possible.
For instance sites must be compatible to major browsers like Explorer, Firefox, Chrome,
Netscape, Opera, and Safari.
Internet Explore
Internet Explorer (IE) is a product from software giant Microsoft. This is the most
commonly used browser in the universe. This was introduced in 1995 along with
This web browser is developed by Google and its beta version was first released on
September 2, 2008 for Microsoft Windows. Today, chrome is known to be one of the most
popular web browser with its global share of more than 50%.
Mozilla Firefox
Firefox is a new browser derived from Mozilla. It was released in 2004 and has grown to
Safari is a web browser developed by Apple Inc. and included in Mac OS X. It was first
released as a public beta in January 2003. Safari has very good support for latest
Opera is smaller and faster than most other browsers, yet it is full- featured. Fast, user-
friendly, with keyboard interface, multiple windows, zoom functions, and more. Java and
non Java-enabled versions available. Ideal for newcomers to the Internet, school children,
Konqueror is an Open Source web browser with HTML 4.01 compliance, supporting Java
applets, JavaScript, CSS 1, CSS 2.1, as well as Netscape plugins. This works as a file
manager as well as it supports basic file management on local UNIX filesystems, from
simple cut/copy and paste operations to advanced remote and local network file browsing.
Lynx
Lynx is a fully-featured World Wide Web browser for users on Unix, VMS, and other
Every Website sits on a computer known as a Web server. This server is always connected
to the internet.
Every Web server that is connected to the Internet is given a unique address made up of a
series of four numbers between 0 and 255 separated by periods. For example,
68.178.157.132 or 68.122.35.127.
There are four leading web servers − Apache, IIS, lighttpd and Jagsaw. Now we will see
these servers in bit more detail.
Other Web Servers also available in the market but they are very expensive. Major ones
are Netscape's iPlanet, Bea's Web Logic and IBM's WebSphere
Apache HTTP Server
This is the most popular web server in the world developed by the Apache Software
Foundation.
Apache web server is an open source software and can be installed on almost all
operating systems including Linux, Unix, Windows, FreeBSD, Mac OS X and more.
About 60% of the web server machines run the Apache Web Server.
Internet Information Services
The Internet Information Server (IIS) is a high performance Web Server from Microsoft.
This web server runs on Windows NT/2000 and 2003 platforms ( and may be on
upcoming new Windows version also). IIS comes bundled with Windows NT/2000 and
2003; Because IIS is tightly integrated with the operating system so it is relatively easy to
administer it.
lighttpd
The lighttpd, pronounced lighty is also a free web server that is distributed with the
FreeBSD operating system. This open source web server is fast, secure and consumes
much less CPU power. Lighttpd can also run on Windows, Mac OS X, Linux and Solaris
operating systems.
Sun Java System Web Server
This web server from Sun Microsystems is suited for medium and large websites. Though
the server is free it is not open source. It however, runs on Windows, Linux and Unix
platforms.
The Sun Java System web server supports various languages, scripts and technologies
required for Web 2.0 such as JSP, Java Servlets, PHP, Perl, Python, Ruby on Rails, ASP
and Coldfusion etc.
Jigsaw Server
Jigsaw (W3C's Server) comes from the World Wide Web Consortium. It is open source
and free and can run on various platforms like Linux, Unix, Windows, Mac OS X Free
BSD etc. Jigsaw has been written in Java and can run CGI scripts and PHP programs.
Advantages of Site
Computer Machine
Internet Connection
A Web Server
A Text Editor / Web Authoring Tools
A Web Browser
Secure telnet client
Secure FTP client
Domain Names
A domain name is the part of your Internet address that comes after "www". For
example, patriciagh. com
When you plan to put a site online, you need to purchase a domain name.
The domain name you purchase is registered and when domain names are registered they
are added to a large domain name register, and information about your site − including
your Internet IP address is stored on a DNS server with your contact information etc. is
registered with your registrar.
Types of Domain Extension
There are various types of domain extensions you can select for your domain name depending on your business nature.
For example, if you are going to register a domain name for education purpose then you can choose .edu extension.
Below is a reference of the correct usage of certain extensions. But there is no hard and fast rule to go for any
extension. Most commonly used is .com
• .com − Stands for company/commercial, but it can be used for any website.
• .net − Stands for network and is usually used for a network of sites.
• .org − Stands for organization and is supposed to be for non-profit bodies.
• .us, .in − They are based on your country names so that you can go for country specific domain extensions
• .biz − A newer extension on the Internet and can be used to indicate that this site is purely related to business.
• .info − Stands for information. This domain name extension can be very useful, and as a new comer it's doing well.
• .tv − Stands for Television and are more appropriate for TV channel sites.
Newer domain extensions such as .biz .info and .us etc. have more name choices available as many of the popular
domains have yet to be taken and most of the them are available at very nominal prices.
How to choosing a Domain Name
Based on your requirement you can divide your domain into different sub domains
especially with multiple businesses
Protocol Stack
World Wide Web Consortium (W3C)
international consortium where member organizations, a full-time staff, and the public
work together to develop Web standards
http://www.w3.org
W3C's mission:
to lead the World Wide Web to its full potential by developing protocols and guidelines that
ensure long-term growth for the Web.
Web Application
A Web Application is a software system based on technologies and standards of the World
Wide Web Consortium (W3C) that provides Web specific resources such as content and
services through a user interface, the Web browser.
[Kappel et al. 2004]
Web Application Development: The
BASIC Concepts
application (or web app) is the app the main part of which is contained on a remote server,
and the user interface (UI) is displayed in the browser as web pages.
Advantages of Web Application
Access from any device – You can work with the web application anywhere in the world from a
computer, tablet or smartphone connected to the Internet.
Saving – Web applications work on all platforms and eliminate the need to develop applications
separately for Android and iOS.
Adaptability – If native applications need a certain OS, then any operating system (Windows, MAC,
Linux, etc.) and any browser (Internet Explorer, Opera, FireFox, Google Chrome, etc.) are suitable for
working with a web application.
Lack of client software – Cheaper and easier to install, maintain and upgrade the client interface.
Updating to the latest version occurs the next time the page loads.
Network security – The web system has a single entry point, which can be protected and configured
centrally.
Scalability – With the increasing load on the system, it is not necessary to increase the capacity of
client places. A web application allows you to process more data, usually only by hardware resources,
without rewriting the code or changing the architecture.
Data loss protection – User data is stored in the “cloud”, for the integrity of which the hosting
providers are responsible, and are protected from loss if the hard disk of the computer is damaged.
The Full Web Application Development
Cycle
1. Analysis of business requirements and market conditions – It is necessary to find out the target audience of a
digital product, understand its functionality and check for competitors.
2. Drafting technical specifications – The requirements for the development of a web application should be
documented.
3. Prototyping web applications – It is a key step in allowing you to think through and visualize the entire logic of a
digital product.
4. Interface design development – It involves drawing graphic solutions that fully and conveniently meet the
functionality of the web application.
5. The adaptive layout of a web application – It is the implementation of interface design on different devices.
6. Programming the server and client parts of the program – It is the main stage in the development of web
applications.
7. Testing web applications – It is necessarily carried out not only at the final release stage but also in the development
process.
8. Launching and technical support – It implies that a web app will be located on the customer’s server and serviced
in the future.
Categories of Web
Applications
Categories of Web Applications (1/5)
Categories of Web Applications:
document-
centered
Informational
read-only content is provided with simple navigation and links
Download
a user downloads information from the appropriate server (ftp-server)
Customizable
the user customizes content to specific needs
examples:
static HTML-pages, „home pages“
web radio
simple presentations of companies/products
Categories of Web Applications:
Interactive
examples:
dynamic HTML pages
public transport schedules
search engines
Categories of Web Applications:
transaction-
oriented
complex interactions
read and write actions
usage of transaction management of database systems
efficient and consistent data management
structured data and queries
examples:
online banking
e-shopping
reservation systems
Categories of Web Applications:
workflow-
based
support business processes („workflows“) within resp. between different enterprises or private
users
an application provides a complex service to the user, e.g. assists the user in determining the
mortgage payment
prerequisite: structured flow of activities
examples:
Business-to-Business (B2B) Integration Frameworks
E-Government
patient workflows in health care systems
Categories of Web Applications
Categories of Web Applications:
Collaborative
support cooperation in case of unstructured flow of activities and high degree of communication
„groupware“
examples:
support of shared information- and workspaces
Wiki, http://c2.com/cgi/wiki
BSCW, http://bscw.gmd.de
chat rooms
e-Learning platforms
Categories of Web Applications:
portal-oriented
the application channels the user use to other Web content or services outside the domain of the
portal application
„single point of access“
examples:
Community portals
dedicated user groups
customer profiles
enterprise portals
Intranet, extranet
Categories of Web Applications:
ubiquitous
examples:
display of today‘s menu on end-user devices while entering a restaurant
Categories of Web Applications:
semantic web
„knowledge management“
derivation of new knowledge
re-use of knowledge
based on ontology's
examples:
Web 2.0
social software: wiki, Flickr, del.icio.us
Google
Categories of Web Applications
Characteristics of
Web Applications
Characteristics of Web Applications
Characteristics of Web Applications:
Content Product
• Presentation
• Hypertext
“content is king” in web applications
• Content
document-centered and multi-media
text, tables, graphics, animation, audio, video
main objective of web applications is to communicate content
high usability demands
high quality demands
actuality, preciseness, correctness, reliability, size
e-shopping: information about price, availability of products
quality is critical factor for acceptance of web applications
Characteristics of Web Applications:
Hypertext
Product
• Presentation
• Hypertext
non-linearity • Content
main distinction to traditional software systems
systematic reading (“browsing, query, guided tour”)
navigation in information space depends on interest and previous knowledge of user
great challenge for web application authors
risks
disorientation: loss of sense of locality and direction
cognitive overload for users
Characteristics of Web Applications:
Presentation
Product
• Presentation
• Hypertext
aesthetics
• Content
look and feel
depending on current fashion
self-explanatory
intuitive use without reading any documentation
uniform application logics
Characteristics of Web Applications
Characteristics of Web Applications:
spontaneity
users come and go ..
unknown number of users
scalability important issue
multiculturality
anonymous type of user
limited knowledge about previous knowledge, handicaps, preferences of users
desired adaptation of content and presentation
Characteristics of Web Applications:
quality of service
unknown network characteristics (e.g., bandwidth, reliability)
globality
internationalization of web applications
regional, cultural, linguistic differences have to be taken into account
demands on security
prevent access to private or confidential data
availability
instant delivery mechanism (also in case of partial realizations)
permanent (24/7)
time-dependent services
Characteristics of Web Applications:
multi disciplinary
mixture of
print publishing and software development
marketing and computer science
art and technology
IT-experts, hypertext experts, UI designer, domain experts, …
community development
open source
open content
Characteristics of Web Applications:
inhomogeneity
two essential components
Web server (under control of developer)
Web browser (out of control of developer)
immaturity
“buggy” components due to time-to-market pressure
continuous evolution of base technology
Characteristics of Web Applications:
flexibility
changing requirements
changing context
requires agile, light-weight processes
parallelism
of development of parts of web applications
of development steps
Characteristics of Web Applications:
internal integration
add web access to legacy systems
external integration
of content and services of external web applications (“web services”)
similarity to integration of heterogeneous database systems, but
high autonomy of sources w.r.t. to availability and change
few detailed information about sources
heterogeneity on different levels (data, schema, data model)
Characteristics of Web Applications
Characteristics of Web Applications:
continuous change
permanent evolution
changing requirements and contexts
change of characteristics product, use, or development
competitive pressure
time-to-market
necessity of web presence
leads to shorter product life cycles
leads to shorter development cycles
fast pace
“either you are fast or irrelevant”
Support for Web Application Development
Model-based Development
Support for Web Application Development
Model-based Development
Quality of Web Applications
• Kinds of quality properties
• External qualities are visible to the user
• Internal qualities are visible to / concerning the
developer
Model-based Development
Quality of Web Applications
external
qualities
correctness:
a web application is functionally correct if it behaves according to the specification of the application
reliability:
the probability that the software will operate as expected
occurring software errors are not serious
robustness:
software behaves reasonably even in circumstances that were not anticipated in the requirements
specification
Quality of Web Applications
external
qualities
actuality:
actuality of content must be guaranteed
user-friendliness:
easy to use by human (novice / experts)
efficiency:
economical handling of resources (time, storage space)
security:
system is protected from unauthorized access
Quality of Web Applications
internal
qualities
portability:
a web application is portable if it can run in different environments
interoperability:
refers to the ability of the web application to coexist and cooperate with other systems
maintainability:
ability to modify a web application after it has been deployed
correct errors
extend the web application
Quality of Web Applications
Compromise
ad-hoc development
based on knowledge, experiences and practices of individual developers
reuse of existing applications by “copy&paste” approach
insufficient documentation of design decisions
isolated activity: no “design for change”
missing methodical approach
Reasons for Quality Deficiencies
document-centered view
development of web applications seen as editorial activity: “ (textual) web pages, links and use
of graphics”
misconception that web applications are simple
due to availability of tools like HTML-editors and form generators
no use of know-how of relevant disciplines
no use of software engineering know-how
no use of hypermedia or HCI (Human Computer Interaction) know-how
Web Crisis
• COMPARABLE TO SOFTWARE CRISIS AT THE END OF THE 60’IES
• LEAD TO ORIGIN OF “SOFTWARE ENGINEERING” DISCIPLINE
What are the differences of general software systems and web applications?
Can we use the same techniques to develop web applications as we are using for
developing software systems in general?
What are the differences of general software systems and web applications?
Can we use the same techniques to develop web applications as we are using for
developing software systems in general?