310 likes | 418 Views
AusWeb 2008 Keynote Web Development: Fabrication or Orchestration? David Lowe Director, Centre for Real-Time Information Networks University of Technology, Sydney (edited for release – post-conference). Software Engineering Wisdom.
E N D
AusWeb 2008 KeynoteWeb Development:Fabrication or Orchestration?David LoweDirector, Centre for Real-Time Information NetworksUniversity of Technology, Sydney(edited for release – post-conference)
Software Engineering Wisdom “Some Facts: Before software and computing systems can be developed, their requirements must be reasonably well understood. Before requirements can be finalised the application domain, as it is, must be fairly well understood” ‘Domain Engineering: A “Radical Innovation” for Softwareand Systems Engineering? A Biased Account’, Dines Bjorner AusWeb 2008 Keynote, (C) David Lowe, UTS
Developer divergence of views • We interview the clients to determine requirements • We interview intended users to determine requirements • It is important to respond to changes in user requirements as they occur • Changes in the user requirements require the site or application to be renegotiated. We often have difficulty in the relationship with clients • We prefer a single client liaison • It is important to identify technologies to use as soon as possible • It is important to be able to modify the system once it is completed AusWeb 2008 Keynote, (C) David Lowe, UTS
Web Development: Research vs Practice • “You can’t improve what you don’t understand / measure” • Is this still true in the Web domain? • “the most important figures that one needs for management are unknown or unknowable but successful management must nevertheless take account of them.” Deming, Out of the Crisis • Do researchers understand development? • Do developers understand what they are doing? AusWeb 2008 Keynote, (C) David Lowe, UTS
Research on Web Development • Sample of 287 papers in the last 12 years on Web design models and methods. WebEng workshops, ICWE, WWW WebEng track, JWE, IJWET, … • Modelling: Information = 74 • Operations: 41 • Modelling: Architecture = 34 • Testing, Verification and Validation = 31 • Modelling: Functionality and Behaviour = 29 • Requirements = 17 • Quality = 14 • Cost/Effort estimation = 11 • Commercial practice = 8 ! AusWeb 2008 Keynote, (C) David Lowe, UTS
How much of this research is being used? • Significant disjoint between research and practice! WHY? • Are the models irrelevant? • Are the models too cumbersome? • Are the models not being communicated to developers? • Are they ill-suited to the nature of the design process? AusWeb 2008 Keynote, (C) David Lowe, UTS
How much of this research is being used? • Significant disjoint between research and practice! WHY? • Are the models irrelevant? • Are the models too cumbersome? • Are the models not being communicated to developers? • Are they ill-suited to the nature of the design process? The sciences do not try to explain, they hardly even try to interpret, they mainly make models. By a model is meant a mathematical construct which, with the addition of certain verbal interpretations, describes observed phenomena. The justification of such a mathematical construct is solely and precisely that it is expected to work. [Johann Von Neumann] Essentially, all models are wrong, but some are useful. [George Box] AusWeb 2008 Keynote, (C) David Lowe, UTS
What questions should we be asking? • What then are the "hard" parts of the Web design process? • Understanding the users’ needs and intentions. • Blending content and functionality, engagement and control. • Orchestrating the interactions, rather than controlling them. • Creating an organic architecture which supports rapid evolution. • Making the interface “invisible”. • … [Interface design’s] highest ideal is to make a computer so wonderful, so interesting, that we never want to be without it. A less travelled path [has a] highest ideal to make a computer so imbedded, so fitting, so natural, that we use it without thinking about it. (Mark Weiser) A picture is worth a thousand words. An interface is worth a thousand pictures. (Ben Shneiderman) AusWeb 2008 Keynote, (C) David Lowe, UTS
Software Engineering Heresy Domain Understanding • For Web projects, design and requirements can only be jointly resolved! • Web Engineering research seems to have missed this point! Developers have had to confront it – or sink! Requirements Design AusWeb 2008 Keynote, (C) David Lowe, UTS
A short history lesson might be useful • Has this disjoint always existed? • Or did we lose focus at some point? We live in a moment of history where change is so speeded up that we begin to see the present only when it is already disappearing. (R. D. Laing) Hegel was right when he said that we learn from history that man can never learn anything from history. (George Bernard Shaw) AusWeb 2008 Keynote, (C) David Lowe, UTS
1990 to 1995 1G • Style The “Content” Web Focus on static structured content Amazon launched in 1995 • Adoption Emergence / early adopters Discovering potential • Research Hypertext structuring HDM in 1992, RMM in 1994, OOHDM in 1994 100M 10M 1M 100k 10k 1k 100 10 1 1992 1994 1996 1998 2000 2002 2004 2006 2008 1990 Source: http://www.useit.com/alertbox/web-growth.html AusWeb 2008 Keynote, (C) David Lowe, UTS
1990 to 1995 1G • Style The “content” Web Focus on static structured content Amazon launched in 1995 • Adoption Emergence / early adopters Discovering potential • Research Hypertext structuring HDM in 1992, RMM in 1994, OOHDM in 1994 100M 10M 1M 100k 10k 1k 100 10 1 1992 1994 1996 1998 2000 2002 2004 2006 2008 1990 AusWeb 2008 Keynote, (C) David Lowe, UTS Source: http://www.useit.com/alertbox/web-growth.html
1995 to 2000 1G • Style The “Functional” Web Dynamic content + some workflow First online banking 1995, eBay 1995 • Adoption Commercial use explodes From 20k to 10M • Research Hypertext + some functionality WAE in 1999, WebML in 1999 100M 10M 1M 100k 10k 1k 100 10 1 1992 1994 1996 1998 2000 2002 2004 2006 2008 1990 AusWeb 2008 Keynote, (C) David Lowe, UTS
1995 to 2000 1G • Style The “functional” Web Dynamic content + some workflow First online banking: Presidential savings, 1995 • Adoption Commercial use explodes From 20k to 10M • Research Hypertext + some functionality WAE in 1999, WebML in 1999 100M 10M 1M 100k 10k 1k 100 10 1 1992 1994 1996 1998 2000 2002 2004 2006 2008 1990 AusWeb 2008 Keynote, (C) David Lowe, UTS
2000 to 2005 1G • Style The “Social” Web (and Web 2.0) Friendster 2002, FaceBook 2004 Flickr 2004, YouTube 2005 • Adoption Mainstreaming commercial use Focus shifts to business integration • Research Hypertext + some workflow Drawing in Software Engineering lessons 100M 10M 1M 100k 10k 1k 100 10 1 1992 1994 1996 1998 2000 2002 2004 2006 2008 1990 AusWeb 2008 Keynote, (C) David Lowe, UTS
2000 to 2005 1G • Style The “Social” Web (and Web 2.0) Friendster 2002, FaceBook 2004 Flickr 2004, YouTube 2005 • Adoption Mainstreaming commercial use Focus shifts to business integration • Research Hypertext + some workflow Drawing in Software Engineering lessons 100M 10M 1M 100k 10k 1k 100 10 1 1992 1994 1996 1998 2000 2002 2004 2006 2008 1990 AusWeb 2008 Keynote, (C) David Lowe, UTS
2005 to now 1G • Style The “Mashed” Web Rich intermixing of applications Digg 2004, Ajax 2005, Google Maps 2005, … • Adoption Increasing Interdependence Inter-business integration • Research Hypertext + Architecture Web Services + QA + V&V + Estimation + … 100M 10M 1M 100k 10k 1k 100 10 1 1992 1994 1996 1998 2000 2002 2004 2006 2008 1990 AusWeb 2008 Keynote, (C) David Lowe, UTS
Now to …. 1G 100M • Style ??? • Adoption ??? • Research ??? 10M 1M 100k 10k 1k 100 10 EPIC 2015 http://www.youtube.com/watch?v=0fUHtc37MC8 1 1992 1994 1996 1998 2000 2002 2004 2006 2008 1990 AusWeb 2008 Keynote, (C) David Lowe, UTS
Now to …. 1G • Style ??? • Adoption ??? • Research ??? 100M 10M Participatory Functionality Giving the user access to mashing functionality - Intel Mash Maker http://www.technologyreview.com/Infotech/20400/ - Microsoft PopFly http://searchwindevelopment.techtarget.com/news/article/0,289142,sid8_gci1255579,00.html - IBM Zero http://www.sdtimes.com/content/article.aspx?ArticleID=31713 1M Participatory 100k 10k 1k 100 10 Static / Passive 1 Functionality Information 1992 1994 1996 1998 2000 2002 2004 2006 2008 1990 AusWeb 2008 Keynote, (C) David Lowe, UTS
Now to …. Real-time sporting events Live Auctions Monitoring (personal, environmental, home, …) Control (personal, environment, home, …) 1G • Style ??? • Adoption ??? • Research ??? 100M 10M 1M Participatory 100k 10k 1k Physical-world(direct, immediate, raw, real, …) 100 10 Static / Passive Social-world(mediated, delayed, interpreted, artificial, …) 1 Functionality Information 1992 1994 1996 1998 2000 2002 2004 2006 2008 1990 AusWeb 2008 Keynote, (C) David Lowe, UTS
Real-World, Real-Time • Ability to monitor and manipulate things in real-time • Not just watch the world, discuss the world, but control the world? • How far will this go? • Can I do anything at a distance that I currently do locally? • “Trying” an item I want to purchase? Can I start and then listen to a car I might be bidding on? • Is my lawn too dry? Can I change the chlorine dosing in my pool? • Can I know my heart rate right now? Can you know my heart rate right now? • How far are we from me being able to duck out of here this afternoon, and remotely walk my kids home from school? • But you aint seen nothing yet! • (guess what was TechCrunch product of the year?) AusWeb 2008 Keynote, (C) David Lowe, UTS
Physical World: Examples • NY Exchange - http://senseable.mit.edu/nyte/nyte-globe-encounters.mov • Australian Open - http://www.youtube.com/watch?v=ZAQ28qp6X0Y • Earthmine - http://www.earthmine.com/products/ • HackDiary - http://www.hackdiary.com/archives/000101.html • See also • http://2007.xtech.org/public/schedule/detail/88 • http://2007.xtech.org/public/schedule/detail/191 • … AusWeb 2008 Keynote, (C) David Lowe, UTS
Physical World: Example • Monitoring and watering my lawn…. • Simple devices • Wireless embedded Web server • http://www.lantronix.com/device-networking/embedded-device-servers/wiport.html • Webcam… • Little bit of code… • and… AusWeb 2008 Keynote, (C) David Lowe, UTS
So back to development… • Two key questions: • What should be the focus of commercial development? • Will our current approaches continue to work? • What should be the focus of research? • Shouldn’t we focus on what improves the end-result of the development, rather than what we can model? • Cutting to the chase… • Why should these be any different! AusWeb 2008 Keynote, (C) David Lowe, UTS
So back to development… • Returning to the evolution pathway… • Information --> Functionality • Need to model what we can do with he Web! Hints of some of this in use-case modelling, but this is still quite limited? • Static --> Participatory • Need to let go of control. Provide an environment for engagement. But what engages? • Monitoring usage patterns and rapid adaptation becomes crucial • Does an architect design a house to not "change" at all? How do they enable it to be “shaped” by its use? For every user to leave their mark? • Surrogate-World --> Real-World • Need to identify the points of connection to the real-world! • What real-tasks (not Web tasks) might be supported? AusWeb 2008 Keynote, (C) David Lowe, UTS
So back to development… • Result is a complex interdependency between systems, organisational processes, and the real world … • Key Issues: • Impact assessment • Co-evolution • Context awareness AusWeb 2008 Keynote, (C) David Lowe, UTS
So back to development… • Result is a complex interdependency between systems, organisational processes, and the real world … • Key Issues: • Impact assessment • Co-evolution • Context awareness Remember…. “[the] highest ideal is to make a [web system] so imbedded, so fitting, so natural, that we use it without thinking about it” AusWeb 2008 Keynote, (C) David Lowe, UTS
Evolutionary orchestration • We have become too bound by our expectations of what can be achieved? Rather than what we want to achieve! • So… A web designer needs to: • Be a choreographer, not a technocrat • Be a facilitator, not a modeller • Be agile and responsive, not a proponent • Understand the technology, but see it only as a tool • Begin from the user outcomes, determine the needed interactions, then try to make them invisible! AusWeb 2008 Keynote, (C) David Lowe, UTS
OK – so I like (mis)quotes…. • Ask not what the Web can do for you, but rather what you might want to do (with the Web)? • We spend too much time thinking about the technology, and not the task • Computers make it easier to do a lot of things, but most of the things they make it easier to do don't need to be done. (Andy Rooney) • What does need to be done? • For a list of all the ways technology has failed to improve the quality of life, please press three. (Alice Kahn) • Any science or technology which is sufficiently advanced is indistinguishable from magic. (Arthur C. Clarke) • Any technology that is distinguishable from magic is not sufficiently advanced (Gregory Benford) • Make your applications magic! AusWeb 2008 Keynote, (C) David Lowe, UTS
Thank You! AusWeb 2008 Keynote, (C) David Lowe, UTS