23
1 CS 502: Computing Methods for Digital Libraries Lecture 22 Web browsers

1 CS 502: Computing Methods for Digital Libraries Lecture 22 Web browsers

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

1

CS 502: Computing Methods for Digital Libraries

Lecture 22

Web browsers

2

Administration

Final examination

May 19, 20001:00 - 2:30pm Phillips 219

5 or 6 questions on whole courseTraditional closed book examination

There will be a make up examination near the beginning of the examination period. Please send me email if you might wish to take it.

3

Administration

Discussion class, Wednesday April 19

One class only, from 7:30 to 8:30 p.m.

4

User interface needs for digital libraries

• Users have wide variety of computers, systems, network connections.

• Digital library materials encompass every known data type.

• Users range from experienced to unskilled.

• Digital libraries have complex needs for authentication and authorization.

• Protocols may be stateless or stateful.

• Federations include both state-of-the-art and legacy systems.

• Persistent naming is important to digital libraries.

5

Cost of user interfaces

Programming and maintaining a user interface is very expensive if it must support many types of computer and versions of operating systems.

Therefore, most digital libraries use web browsers for the user interface.

• If a function fits well with the web browser conceptual model, it is easy to implement.

• If a function does not fit well with the web browser conceptual model, it is hard to implement.

6

Web user interface: basic

Web serversWeb browser

• Static pages from server, using http get

• All interaction requires communication with server

http get (URL)

file + MIME type

7

Separation of type from presentation

Information to be displayed

Presentation software

Display

MIME type

8

Rendering

Web browser

file + MIME typeRendering software

Rendering and display may be:

• built into browser

• plug-in

• helper application

9

Basic web browser

Good• Runs on all computers• Supports wide range of data types

Bad• Stateless • Data checking requires interaction with host• No accommodation for legacy systems• Rendering varies according to local software

10

Basic extensibility in web browsers

Browsers are highly extensible

• Data types:

built-in -- html, gif, jpeghelper applications plug-ins

• ProtocolsHTTP, WAIS, Gopher, FTP, etc.proxies

11

Web user interface: CGI script

Non-web systems

CGIScripts

Web servers

Web browser

http post

12

CGI scripts

CGI scripts:

• Interface to non-web systems

• Can configure pages

• Can validate information

but ...

• Server interaction is constrained by web protocols

• CGI requires all interactions to be via server

13

The web and legacy systems

The web is a legacy system. New systems must find ways to interface with it. This is a problem for new technology,

• Stateful protocols, e.g., Z39.50

• URNs

CGI scripts enable web browsers to act as interfaces to non-web systems.

• Interface new system (web) to legacy system

• Interface new system to legacy system (web)

14

Mobile code: JavaScript

Web servers

Web browser

• Mobile code (e.g., JavaScript) can validate information as typed

• Some interactions are local

• Server interaction constrained by web protocols

JavaScript

html

15

Mobile code: Java Applet

Any server

Web serversWeb browser

• Any executable code can run on client

• Client can connect to any server

• Security model restricts some applications

Applets

16

Levels of usability

interface design

functional design

data and metadata

computer systems and networks

conceptual model

17

Interface design

Clickable links plus mobile code

• Easy for users to learn and use• Certain categories of error are avoided• Enables context-sensitive help

Major difficulty is structure of large sets of choices

• Scrolling menus (e.g., states of USA)• Hierarchical• Associated control panels• Menus plus command line

Users prefer broad and shallow to deep menu systems

18

Interface design

Conventions are growing over the years

• www.... for home page

• scroll bars, buttons, help systems, sliders

• terminology

Good for users, good for designers

19

Extensibility

• Data types

• Protocols

• Executable code

• XML and style sheets

Gaps

• State

• Security architecture

Functional design

20

Data and metadata

Identifiers

• URLs are very powerful

• Digital libraries need URNs

XML

• Provides a framework for metadata

• Namespaces and RDF -- open question

No support for structural metadata

21

Computer systems and networks

• Personal computer cycles are there to be used

• Any network transfer involves delay

• Shared systems have unpredictable performance

• Data validation often requires access to shared data

• Mobile code poses security risks

22

Computer systems and networks

Caching and mirroring: effective in digital library systems where digital objects change relatively slowly with time.

• Mirroring of web sites for performance and reliability

• Caching servers (e.g., Google cache, domain name system)

• Caching on user's computer

• Service bureau for world wide performance (e.g., Digital Island)

Parallelism:

• Display page while downloading

• Parallel streams of data

23

The importance of design

Good support for users is more than a cosmetic flourish

• Elegant design, appropriate functionality, & responsive system: => a measurable difference to effectiveness

• If a system is hard to use: => users may fail to find important results, or mis-interpret what they do find=> user may give up in disgust

A computer system is only as good as the interface it provides to its users