Web Site Software Jeff Offutt SWE 432 Design and Implementation of Software for the Web “Where is the wisdom we lost in.

Slides:



Advertisements
Similar presentations
Overview Environment for Internet database connectivity
Advertisements

Hypertext, hypermedia and interactivity. A brief overview and background primer.
DT228/3 Web Development WWW and Client server model.
© 2010, Robert K. Moniot Chapter 1 Introduction to Computers and the Internet 1.
The Internet Useful Definitions and Concepts About the Internet.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Write basic.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
INTERNET DATABASE. Internet and E-commerce Internet – a worldwide collection of interconnected computer network Internet – a worldwide collection of interconnected.
Principle of Web site Engineering URL: Lecturer: Zhanfang ZHAO Contacts: Tel: 6340 Rome: T409
© 2004, Robert K. Moniot Chapter 1 Introduction to Computers and the Internet.
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
1 Internet History Internet made up of thousands of networks worldwide No one in charge of Internet - No governing body Internet backbone owned by private.
Internet Basics مهندس / محمد العنزي
The Internet & Web Browsers Business Webpage Design Kelly Seale.
Web Design Basic Concepts.
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
1 Networks and the Internet A network is a structure linking computers together for the purpose of sharing resources such as printers and files Users typically.
1 Accessing the Global Database The World Wide Web.
Web 2.0: Concepts and Applications 11 The Web Becomes 2.0.
Dynamic Web Pages (Flash, JavaScript)
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Chapter 16 The World Wide Web Chapter Goals ( ) Compare and contrast the Internet and the World Wide Web Describe general Web processing.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
Chapter 16 The World Wide Web. 2 The Web An infrastructure of information combined and the network software used to access it Web page A document that.
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
Web Search Created by Ejaj Ahamed. What is web?  The World Wide Web began in 1989 at the CERN Particle Physics Lab in Switzerland. The Web did not gain.
Lesson 2 — The Internet and the World Wide Web
Computers in Society Week 3: The Internet. Preliminaries There are two important things to know before we talk about the internet: Packet switching Standards.
Chapter 6 The World Wide Web. Web Pages Each page is an interactive multimedia publication It can include: text, graphics, music and videos Pages are.
Quality Attributes of Web Software Applications – Jeff Offutt By Julia Erdman SE 510 October 8, 2003.
Chapter 8 The Internet: A Resource for All of Us.
Programming the Web Web = Computer Network + Hypertext.
NASRULLAH KHAN.  Lecturer : Nasrullah   Website :
Internet Essentials The Internet and World Wide Web Lesson 1.
10/6/2015 ©2007 Scott Miller, University of Victoria 1 2a) Systems Introduction to Systems Introduction to Software Systems Rev. 2.0.
Introduction To Internet
HTML for ISD Brown Bag Presentation Session 1 Why?
Introduction to HTML Tutorial 1 eXtensible Markup Language (XML)
MySQL and PHP Internet and WWW. Computer Basics A Single Computer.
Implementation - Part 2 CPS 181s March 18, Pieces of the Site-building Puzzle Page 180, figure 4.1.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Overview Web Session 3 Matakuliah: Web Database Tahun: 2008.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
Cs332a_chapt10.ppt CS332A Advanced HTML Programming DHTML Dynamic Hypertext Markup Language A term describing a series of technologies Not a stand-a-lone.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
How the Web Works Building a Website – Lesson 1. How People Access the Web Browsers People access websites using software called a web browser. To view.
 A website, also written Web site, web site, or simply site, is a group of Web pages and related text, databases, graphics, audio, and video files that.
Web Design and Development. World Wide Web  World Wide Web (WWW or W3), collection of globally distributed text and multimedia documents and files 
Web Systems & Technologies Lecture 1
World Wide Web Guide * for Students to the Internet.
Introduction to HTML. _______________________________________________________________________________________________________________ 2 Outline Key issues.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
NASRULLAH KHAN.  Lecturer : Nasrullah   Website :
Web 2.0: Concepts and Applications 11 The Web Becomes 2.0.
Chapter 1 Introduction to HTML, XHTML, and CSS HTML5 & CSS 7 th Edition.
JavaScript and Ajax (Internet Background) Week 1 Web site:
A SSIGNMENT #3 Com tech. ANSL HTML Hypertext Markup Language, a standardized system for tagging text files to achieve font, color, graphic, and hyperlink.
The Internet Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
A BRIEF HISTORY OF THE INTERNET, WEB, AND HTML. Internet vs. World Wide Web What is The Internet? The Internet is a massive network of networks, a networking.
 World wide web is a set of protocols that allows you to access any document on the net through the naming system based on URLs. www also specifies the.
CS 501: Software Engineering Fall 1999 Lecture 23 Design for Usability I.
Evolution of Internet.
Web Application Software
Dynamic Web Pages (Flash, JavaScript)
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
Chapter 16 The World Wide Web.
[Robert W. Sebesta, “Programming the World Wide Web
Presentation transcript:

Web Site Software Jeff Offutt SWE 432 Design and Implementation of Software for the Web “Where is the wisdom we lost in knowledge? Where is the knowledge we lost in information?” – T.S. Eliot

9/16/2015© Offutt2 Motivation – Overview Modern web sites are: –Distributed (world-wide) –Heterogeneous (hardware and software) –Highly user interactive –Built on new technology The software is: –Very loosely coupled –Written in multiple languages –Often generated dynamically Diverse: In terms of software, communication, and people

9/16/2015© Offutt, Motivation – Overview (2) Web site software has to be better than most shrink- wrap or contract software The combination of higher quality requirements and unique technologies make for a very interesting situation (Academics think “interesting” means fun, managers think “interesting” is scary …) This talk discusses why and in what ways web software must be better

9/16/2015© Offutt, Web Sites and Software Web Page : Data that fits in one browser screen. Web Site : A number of connected web pages. Web Site Software : Software that makes web sites dynamic. network ClientServer Web Software

9/16/2015© Offutt, Formation of the WWW Internet Fast Computers Hypertext Theory World Wide Web The World Wide Web is a result of the confluence of three developments

9/16/2015© Jeff Offutt, Historical Highlights Hypertext, Internet, and the Web 1945: Vannevar Bush proposes hypertext 1965: Ted Nelson coins the term “Hypertext” Douglas Engelbart invents mouse (The ACM Douglas Engelbart award is given yearly at the HyperText conference) 1968: Engelbart’s hypertext system “Augment/NLS” Brown university’s HES 1969: Arpanet 1970: Unix 1972: Tomlinson invents 1977: UUCP 1978: First bulletin board system – Christensen and Suess

9/16/2015© Jeff Offutt, Historical Highlights (cont.) 1979: Truscott and Bellovin’s usenet news 1982: < 100 sites on “internet” (netnews) 1983: TCP / IP defines the internet 1986: NSFNET SGML 1987: HyperCard (Apple) First hypertext workshop 1989: WWW proposed by Berners-Lee 1990: HTML defined 1992: CERN (Switzerland) releases WWW 1993: NCSA Mosaic

9/16/2015© Jeff Offutt, Historical Highlights (cont.) 1994: WWW surpasses gopher 1994: Netscape 1995: Lycos search engine, Java, 15 million pages 1996: US Telecommunications Bill 1997: 31,000,000 pages, 476,000 servers, 14,000 news groups 2000: More than 100,000,000 hosts Amount of back-end programming exceeds the front-end hypertext 2004: 3,307,998,701 pages (google), 500,000,000 hosts, 1,200,000,000 users 2009: More than 1 trillion pages indexed by google; cell phone access, twitter What is a truly meaningful measure? Maybe it’s better to ask what’s not on the Web

9/16/2015© Offutt, Internet Size ,000,000 10,000,000 1,000, ,000 10,000 1, Groups Messages Internet Hosts 2001 Web Servers ,000,000, : Over 2.1 Billion web pages

9/16/2015© Offutt, The World Wide Web The world wide web was invented by Tim Berners-Lee, an Englishman at CERN, the physics research lab in Switzerland Tim Berners-Lee’s vision of the world wide web was to make all information available to all people at all times.

9/16/2015© Offutt, General Hypertext Terminology Node : Atomic amount of text – smallest unit of information known to system (pages) Link : Connects one node to another. Depicted by buttons or highlighted region. –Link Region (anchor) : Location in a node where link starts. Traverse (visit or view) : Moving from one node to another –Backtrack : Following links in reverse Landmark : Semantically important nodes that are linked to many nodes Hypermedia : Incorporates sound, video, pictures, or other non-textual information

9/16/2015© Offutt, General Web Terminology Web Page : Data that fits in one browser screen –Static Web Page : A web page whose HTML exists as a file on a computer –Dynamic Web Page : A web page that is created as needed Web Site : A number of web pages that are semantically related and physically linked Web Site Software : Software that makes web sites dynamic. 1.Dynamic Web Pages 2.User Interaction

9/16/2015© Offutt, Modern Web Sites We have moved from: –ftp/ … –to gopher … –to simple html pages … –to web sites … –to dynamic html … –to web commerce … with amazing speed! Web sites have continuously evolved in the last decade

9/16/2015© Offutt, Modern Web Sites Web sites are now too complicated for individuals to manage. They need to be engineered by teams of people with diverse talents: –Programming skills –Graphics design –Usability –Information layout and engineering –Data communications –Data base We need web site engineering

9/16/2015 © Offutt, Important Quality Attributes for Traditional Software Traditional 1.Efficiency of process (time-to-market) 2.Efficiency of execution (performance) 50.Reliability 51.Safety 52.Maintainability 53.Security

9/16/2015© Offutt, Important Quality Attributes 1.Reliability 2.Usability 3.Security Customers have little “site loyalty” and will switch quickly, thus time to market is much less important than in other application areas. (but still important!) 4.Availability 5.Scalability 6.Maintainability 7.Performance & Time to market Based on an informal survey of around a dozen software development managers, 2000.

9/16/2015© Offutt, First Generation Web Sites (Mosaic, ’93) Text with few images Weak layout facilities Very limited CGI programming – forms No background color One “webmaster” could do it all!

9/16/2015© Offutt, First Generation Web Sites Server Side HTTP Server CGI programs Data BaseFiles Client Side Browser HTML Forms GIF images Helpers - Audio - Video Web sites were usually created by one “early adopter.” Most were poorly designed and incomplete.

9/16/2015© Offutt, Second Generation Web Sites (Netscape, ’94) Centering and other layout options Background colors Tables Graphics designers started to develop web sites Technical & creative jobs diverged A lot of emphasis on appearance (over-designed brochures) Designers realized: People did not read websites, they visited them for a purpose.

9/16/2015© Offutt, Second Generation Web Sites Server Side HTTP Server Server API Programs CGI programs DB Media server Client Side Browser HTML + extensions Forms GIF JPEG etc. Helpers - Audio - Video More programming, but mostly print-oriented. Cookies allowed state information to be saved. Cookies

9/16/2015© Offutt, Third Generation Web Sites (Netscape, IE, ) People expected interaction. Bandwidth became a serious problem (still is!) More layout, proprietary tags, frames, stylesheets, … Java JavaScript ActiveX Applets …

9/16/2015© Offutt, Third Generation Web Sites Server Side HTTP Server Server API Programs CGI programs Media server DB Client Side Browser HTML + extensions Forms JavaScript, VBScript Full interactivity and rich software abilities. Cookies PluginsActive X controls Images Java Applets

9/16/2015© Offutt, Third Generation Web Sites New interactive applications FedEx document tracking Airline flight services Ticket agencies Maps The birth of E-commerce Impossible for one person to do everything. A Web Manager must manage programmers, graphics designers, DB administrators, security experts, usability engineers, business experts, ….

9/16/2015© Offutt, Third Generation Web Sites Marketing Promotion Commerce Entertainment Technical support Investor relations Employee recruitment Personal satisfaction and expression Distributing research results … Uses of web sites:

9/16/2015© Offutt, Fourth Generation Web Sites (software-centered) ClientWeb Server Application Server DB Server Browser Javascripts HTML CGI ASP JSP, etc Java C# network middleware Client-server … 3-tier … N-tier …

9/16/2015© Offutt, Problems Can Occur Anywhere 1995: Web sites were 100% interface 1998: Web sites were about 90% interface 2001: Web applications are less than 50% interface 2005: Web applications about 25% interface There is still a shortage of knowledgeable, skilled web programmers and software engineers

9/16/2015© Offutt, A Time of Transition The “.com-.gone” crash of has been terrible for many of my friends and students who lost jobs and took pay cuts But I see a positive sign – these claims are validated: The companies that “figured it out” are still alive, doing well, growing, making money, and hiring Henry Ford said “everybody is selling something” I’m not selling tools, languages, technologies or even research – I’m selling engineering

9/16/2015 © Offutt, Summary Changes in Web Technologies n Dynamic HTML n Programs (poorly written) n Confused webmasters n ASP, CSS, … n Functional websites n ECommerce + n WebManager + programmers, DB, network, UI, graphics designers, … n Java (JSP, Servlets, beans), {HT,U,X}ML, Component-based n.NET n AJax 1997 n Static web pages n “Soft brochures” n Webmasters n HTML, CGI, JavaScript

9/16/2015© Offutt, Summary Concerns of Software Traditional 1.Efficiency of process (time to market) 2.Efficiency of execution Web Software 1. Reliability 2. Usability 3. Scalability 4. Security 5. Availability 6. Maintainability 50.Reliability 51.Safety 52.Maintainability 53.Security

9/16/2015© Offutt, Subject of splits web software into two aspects: 1.The interface aspect 2.The software aspect The interface runs on the client side –Implementation of HTML is easy –Achieving usability is a key, and very difficult The software runs on the server side –A mixture of lots of technologies –The key to other quality criteria (reliability, etc.)

9/16/2015© Offutt, Summary The concept of Web Software Engineering is just beginning …