Presentation is loading. Please wait.

Presentation is loading. Please wait.

Robert Zimmer Room 6, St Johns 29 Office Hours: Web-Based Computing.

Similar presentations


Presentation on theme: "Robert Zimmer Room 6, St Johns 29 Office Hours: Web-Based Computing."— Presentation transcript:

1

2 Robert Zimmer Room 6, St Johns 29 R.Zimmer@gold.ac.uk Office Hours: Web-Based Computing

3 The Return of Mickey Mouse Last year, we saw the Sorcerer's Apprentice as an example of how software projects can go wrong This year, we see it as a model of modern computing system

4 Mickey has a lot of water to move For water, thing about information At first, he delivers it all himself Then he has a system to deliver it one load (two buckets) at a time

5 Then he has a brilliant accident: He makes lots of new wap-enabled brooms all getting the information at the same time Notice that each broom is really controlling himself This can be a problem But it can be an opportunity

6 So, we have one pool of water (The Server) and lots of different brooms (the clients) And that is what the course is about Almost Really there are lots of different pools of water and brooms going around from pool to pool

7 The image: We have lots of pools of water Some spilled water And lots of brooms surfing in the water from pool to pool, taking water out of each Sometimes even putting water into some of the pools The Surfing Broom

8 So what kinds of problems come up? Too many brooms at the same pool Two Brooms politely waiting for each other to go first A broom gets lost: Impossible to work out which pools have the right kind of water

9 It gets too slow for a broom get his water if there are lots of brooms there already The water keeps going off and need to be replaced by the water that complies with the new European Standard

10 What this course is about Applications distributed across a number of computers Maintaining your own well Not principally a programming coures, but Java used for illustration

11 The rationale for using Java Portable Exhibits all the main features of object orientation Has hooks into the main distributed technologies Free and widely available

12 Distributed system functions Core functions Core functions Distributed functions Core functions are those which are found in any type of application, maintaining the well Distributed functions are those concerned with maintaining distributed system and controlling access (talking to the brooms)

13 Example (i) auction sites Auctions either held in real-time or in elapsed time Uses the Web Profit made from commissions and also from banner adverts

14 Example (ii) search engines Used to find information on the Web Many general purpose engines, for example Lycos, Yahoo Mainly use automatic indexing, some use human indexers Revenue from advertising

15 Change notification sites The Web is incredibly dynamic: pages disappear or are updated very frequently Such sites inform webmasters when these events happen Revenues raised from charging for the service or banner adverts

16 Email providers Provide Web-based email services Sometimes the service is tiered with the lower tier free Revenues from banner advertising. One of the most popular applications

17 The main facilities of the Internet The World Wide Web FTP Email Mailing lists Newsgroups

18 The World Wide Web Browsers Web server

19 The Web Simple but large distributed system Servers provide Web files Browsers consume and display Web files Web documents expressed in HTML Two way communication, via forms Example of clients and servers

20 Issues in distributed application development (i) Legacy technology Space problems Stateless server dispensing static pages Security and privacy Programming and abstraction

21 Issues in distributed application development (ii) Transactions Speed of development Standards Design

22 Legacy technology The initial design of the Web was simple: static pages and no dynamic content Changed Addresses running out Changing Web protocol is stateless Changed

23 Security and privacy Internet is an open system. Architecture and protocols are public Good effect is that errors can be spotted and rectified quickly Bad effect is that privacy can be compromised

24 How secure is the Internet? In 1996 Dan Farmer, one of the leading members of the Internet security community, analysed a number of Internet sites using a tool known as SATAN which reports on security vulnerabilities. He discovered that out of the 2200 sites he accessed, 1700 were relatively easy to attack (77 per cent of the sites). This is a staggering figure; however, what makes it more staggering is the fact that Farmer chose sites which should have been neurotic about security, for example sites owned by banks, government agencies, insurance companies and credit card companies.

25 Speed of development Faster development times needed for Internet applications Hence the need for OO languages A potential use for patterns More and more companies using rapid development methods

26 Problems with transactions A transaction is applied to stored data and can alter the data Concurrency problems Inconsistent update problems Data changed in the presence of failure

27 Distributed system design Designing core functions is just as in conventional systems However there are design issues concerned with: Reliability Transmission media Speed

28 Design Client Server Transmission media can be slow A server can malfunction Transmis sion media can fail

29 Design issues Coping with server failure Coping with transmission media failure Coping with slow transmission speeds such as those found in the Internet Coping with synchronicity

30 The Internet

31 The Internet is an open system Details publicly available A lot of software is free Lots of publicly available expertise available via such things as newsgroups Dangers with privacy

32 Implications of open systems Wide variety of implementations, for example of TCP/IP Cost of implementation less High level of compatibility Wide variety of developers selling products

33 The First Problem we will address How to make it clear what kinds of water you have How to get your data in a form that everybody can understand

34 What most data looks like now: HTML Johns Sheep Farm My Sheep Farm Hi I have a farm where I keep sheep. Sheep are lovely and woolly. So am I. My favourite sheep is called Buttercup My first sheep was called Betty. I am a fanatical Welsh rugby supporter.

35 Some Things to notice The tags come in pairs The tags are only about formatting There is no way to know that a browser should not be turn up this page for a query about the flowers called buttercups.

36 Anchors and links HTML provides facilities whereby documents can link to other documents either on the same computer or on another one Uses anchors Clicking a link transfers to the new page

37 An example A good place to buy sheep online

38 URL Known either as Uniform Resource Locator or Universal Resource Locator Is an address of a Web page or other resource Links can be web pages, mail, newsgroups, FTP etc

39 An example of a URL http://www.open.ac.uk/staff/Darrel Specifies Web page Specifies computer Specifies location of Web page

40 Forms HTML has facilities for making GUIs for form filling,m for example Forms contain visual objects such as text fields, buttons, select boxes etc. When a form is completed data is sent to the Web server and a program executed

41 An example of an HTML form (i) Please type your name below Please type your address below Male<INPUT TYPE=RADIO NAME=maleButton VALUE=mButt>

42 An example of an HTML form (ii) Female<INPUT TYPE=RADIO NAME=femaleButton VALUE=fButt> <INPUT TYPE=SUBMIT VALUE=Submit> Form contains two radio buttons, a text field and a text area

43 Our First Real Topic: XML

44 XML Extensiblethats what the X means Not a markup language but a language for defining markup languages Tags not about layout, but about meaning (semantics)

45 Rationale for XML Difficulties with browser display HTML non-standard Difficult to impossible to discern semantics from a markup language

46 Aims of the XML designers Easy to use on the Internet Capable of supporting a large number of applications Compatible with SGML Should not be complicated to develop XML processors Only a small number of optional facilities Documents in XML should be easy to understand Editors should be capable of constructing HTML documents

47 XML as a central repository of data Document in XML Spreadsheet Web pages Word processed document Relational database

48 An example of a simple XML-based markup language CoatBlue 34000.. Similar to HTML but contains semantic markers

49 An example of an XML definition <!DOCTYPE ENTRY[ ]> Sequence of pairs consisting of a name and a definition.

50 XML used to define attributes The element TOWN has an attribute NAME which contains char data and is always required

51 Processing XML documents (i) Done via parsers Parser can be conforming or non- conforming Conforming checks everything Non-conforming just makes rudimentary checks Most parsers conforming

52 Processing XML documents(ii) Many parsers written in Java Parsers can be in-memory based: they build up a tree. Parsers can also be event-based: they trigger processing when some XML element is encountered

53 Event-based processing public void startElement(String tagName) { String currentTag = tagName;.. } Executed when a start element is encountered, for example. tagName assumes the value of the tag name

54 An example of XML in action Scaleable vector graphics (SVG) WWW standard Vector graphic standard Attempt to develop a standard for such graphics Can be used for text searching

55 SVG source This is a sample circle drawn for the book Distributed Applications and E-Commerce <CIRCLE style = fill: red; stroke: black cx = 100 cy = 100 r = 100/>

56 Associated technologies XHTML, a standard version of XML XSL, a style sheet transformation technology used to convert XML source into some other form, for example rtf XSL formatting objects, transformation to text document


Download ppt "Robert Zimmer Room 6, St Johns 29 Office Hours: Web-Based Computing."

Similar presentations


Ads by Google