Survival of the fittest Jini services, Part 1
Ensure the quality of Web services in the age of calm computing
By Frank Sommers, JavaWorld.com, 04/13/01
Sal awakens: she smells coffee. A few minutes ago her alarm clock, alerted by her restless rolling before waking, had quietly
asked, "Coffee?," and she had mumbled, "Yes." "Yes" and "no" are the only words it knows ...
At breakfast Sal reads the news. She still prefers the paper form, as do most people. She spots an interesting quote from
a columnist in the business section. She wipes her pen over the newspaper's name, date, section, and page number and then
circles the quote. The pen sends a message to the paper, which transmits the quote to her office.
Once Sal arrives at work, the foreview (in her car) helps her to quickly find a parking spot. As she walks into the building
the machines in her office prepare to log her in, but don't complete the sequence until she actually enters her office. On
her way, she stops by the offices of four or five colleagues to exchange greetings and news. The telltale by the door that
Sal programmed her first day on the job is blinking: fresh coffee. She heads for the coffee machine.
Coming back to her office, Sal picks up a tab and "waves" it to her friend Joe in the design group, with whom she is sharing
a virtual office for a few weeks. They have a joint assignment on her latest project. Virtual office sharing can take many
forms -- in this case, the two have given each other access to their location detectors and to each other's screen contents
and location ... A blank tab on Sal's desk beeps, and displays the word "Joe" on it. She picks it up and gestures with it
towards her liveboard. Joe wants to discuss a document with her, and now it shows up on the wall as she hears Joe's voice
...
Read the whole "Survival of the Fittest Jini Services" series:
Not your father's database
In the above words from a 1991 Scientific American article, "The Computer for the 21st Century," the late Mark Weiser, then head of Xerox's Palo Alto Research Center (PARC),
shares his vision of a world in which computing technology quietly disappears into the background of everyday life, making
itself unnoticeable, and yet indispensable. In the age of "calm computing," as Weiser described his vision, a person uses
many computing devices, and these devices make information available ubiquitously, regardless of time or geographic location.
For most of us, the truly indispensable things in life become unnoticeable. We take for granted the telephone, the automobile,
ATM machines, and lately email and the Internet -- and perhaps only notice them when they don't work as we expect.
However, while we take these tools of information processing and access for granted, we still can't do the same with the information
itself. We would be looked upon with sharp eyes, should we, while traveling in our automobile, ask the car the name of the
restaurant we enjoyed so much a few months before; or if, while at home, we ask our speaker system the current balance of
our bank account. Currently, our activities are still focused around the tools of information access, and not around the information
itself. The age of calm computing -- when the tools recede into the background, and we are free to interact with the information
in a smooth, natural way -- has not yet arrived.
Resources
- Read Frank Sommers's complete "Survival of the Fittest Jini Services" series in JavaWorld:
- "The Coming Age of Calm Technology," Mark Weiser and John Seely Brown (Xerox PARC, October 5, 1996)
http://www.ubiq.com/hypertext/weiser/acmfuture2endnote.htm
- "The Computer for the 21st Century," Mark Weiser (Scientific American, September 1991)
http://www.ubiq.com/hypertext/weiser/SciAmDraft3.html
- "As We May Think," Vannevar Bush (Atlantic Monthly, July 1945)
http://www.theatlantic.com/unbound/flashbks/computer/bushf.htm
- "How Much Information Is There in the World?" Michael Lesk
http://www.lesk.com/mlesk/ksg97/ksg.html
- Homepage of Gerhard Weikum, available papers
http://www-dbs.cs.uni-sb.de/~weikum/home.htm
- Jim Gray's homepage
http://www.research.microsoft.com/~gray
- For more information on John von Neumann's relevant work, see his article "Probabilistic Logic and the Synthesis of Reliable
Organisation from Unreliable Parts." Collected Works, Vol. 5, A.H. Taub, Editor (Pergamon Press, 1961-1963). The article also appears in Automata StudiesAnnals of Mathematics Studies, C.E. Shannon and J. McCarthy, Editors (Princeton University Press, 1956). He describes this issue also in "Principles of
Large-Scale Computing Machines," Collected Works, Vol. 5, reprinted also in Annals of the History of Computing, Vol. 3, (Princeton University Press, July 1981). For a fascinating account of his work on the brain, see The Computer and the Brain, John von Neumann, et al. (Yale University Press, November 2000)
http://www.amazon.com/exec/obidos/ASIN/0300084730/javaworld
- "The Semantic Web," Tim Berners-Lee, James Hendler, Ora Lassila (Scientific American, 2001)
http://www.scientificamerican.com/2001/0501issue/0501berners-lee.html
- "The Rio Architecture Overview, Version 1.0" (Sun Microsystems)
http://www.sun.com/jini/whitepapers/rio_architecture_overview.pdf
- HP Laboratories' e-services projects have studied the notions of "exactly once" guarantees from e-services, as well as service
composability
http://www.hpl.hp.com/org/stl/emd/
- "Data Processing Spheres of Control," (IBM Systems Journal, 1978; vol. 17, issue 2; pp. 179-98). For a list of online articles from IBM Systems Journal, visit
http://www.ibm.com/Search?v=10〈=en&cc=us&q=IBM+Systems+Journal
- The Ninja project at Berkeley aims to define a highly robust infrastructure for Web services, using Java. At the core of Ninja
is a cluster, which provides high availability and scalability for services
http://ninja.cs.berkeley.edu/
- The Infospheres projects at CalTech explores the notion of objects representing services on the Web, and the idea of composable
services
http://www.infospheres.caltech.edu/
- David Gelernter's "The Second Coming -- A Manifesto," (The Third Culture)
http://www.edge.org/3rd_culture/gelernter/gelernter_index.html
- "What Is Mean Time Between Failure (MTBF)?" (Western Digital)
http://www.wdc.com/products/drives/drivers-ed/mtbf.html
- MTBF FAQ
- http://www.t-cubed.com/faq_mtbf.htm
- http://www.hardwaregroup.com/faq/gen_mtbf.htm
- D.H. Brown's availability research
http://www.dhbrown.com/cffiles/RPPage.cfm?ID=202
- IEEE Distributed Systems Online on dependable systems
http://www.computer.org/dsonline/dependable/
- For more information about streams-based computing and ScopeWare, visit the Mirror Worlds Website
http://www.scopeware.com
- Jini FAQ and resources at Artima.com, maintained by Bill Venners
http://www.artima.com
- "Proving the Correctness of Multiprocess Programs," Leslie Lamport (IEEE Transactions on Software Engineering, Volume 3, Issue 2, 1977) -- only the abstract is available online
http://research.compaq.com/SRC/personal/lamport/pubs/pubs.html#proving
- Read past Jiniology columns
http://www.javaworld.com/javaworld/topicalindex/jw-ti-jiniology.html
- The most comprehensive book on transactions processing (and, in general, on making distributed systems reliable) is Transaction ProcessingConcepts and Techniques, Jim Gray and Andreas Reuter (Morgan Kaufmann, 1993)
http://www.mkp.com/books_catalog/catalog.asp?ISBN=1-55860-190-2
- Recent research into transactions has produced large and impressive literature. A good collection of essays on the subject
is Database Transaction Models for Advanced Applications, Ahmed K. Elmagarmid (Morgan Kaufmann, 1992)
http://www.mkp.com/books_catalog/catalog.asp?ISBN=1-55860-214-3
- A collection of papers on transaction logic is available from Anthony Bonner's Website
http://www.cs.toronto.edu/~bonner/papers.html#transaction-logic
- Sign up for the JavaWorld This Week free weekly email newsletter and keep up with what's new at JavaWorld
http://www.idg.net/jw-subscribe
- Chat about all things Java in ITworld.com's Java Forum
http://www.itworld.com/jump/jw-0413-jini/forums.itworld.com/webx?14@@.ee6b2b4