230 likes | 319 Views
DataWeb: Three worlds collide A talk given at the Institutional Web Management Workshop, Newcastle, 15-17 September 1998. Victoria Marshall and Kevin O'Neill, CLRC Rutherford Appleton Laboratory. Contents. What is DataWeb? Motivation General requirement #1: Distributed responsibility
E N D
DataWeb: Three worlds collideA talk given at the Institutional Web Management Workshop, Newcastle, 15-17 September 1998 Victoria Marshall and Kevin O'Neill, CLRC Rutherford Appleton Laboratory
Contents • What is DataWeb? • Motivation • General requirement #1: Distributed responsibility • General requirement #2: Utilise existing databases • General requirement #3: Consistent(ish) look and feel • Problem #1: Distributed responsibility • Problem #2: User interfaces vs databases • Problem #3: Technology • What is ASP? • Disadvantages of ASP • Advantages of ASP • System architecture • Web design concept #1: Activities • Web design concept #2: Expand-in-place metaphor • Web design concept #3: Different views • Internal web design concept number 1: Weblet managers and editors • Internal web design concept number 2: HTML • Internal web design concept number 3: It's the Web :-( • Design of the database • Conclusions • The future
What Is DataWeb? • It's a web • It's a web created from a database • It's a web created from a database on-the-fly • The DCI web is a practical application of it • Launched in April 1997 • First phase of development finished by October 1997 • About to start planning next (Java) phase
Motivation • Old TCS and CISD webs fairly large (>7K pages) • Design largely unchanged since 1994 • Difficult to maintain by hand so badly out of date • Update bottleneck through just one web manager • Something had to be done... but what?
General requirement #1: Distributed responsibility • Empowerment • Give responsibility for pages to group leaders/project managers • (And everybody else too if they so desire) • "I'd be more inclined to do something if I could do it myself" • Doesn't have to all go through one or two fed-up individuals
General requirement #2:Utilise existing databases • No point in yet another copy to get out of synch • Most administrative DBs already have established update mechanisms so make them work for you • Databases reflect up-to-the-minute changes • Re-use of the data works two ways: • 1. More uses for existing data • 2. More uses for the new data
General requirement #2:Consistent(ish) look and feel • Don't want to have to edit all the pages every time the corporate name changes • ... or the corporate colours change • ... or every time the department is restructured (as happens to DCI) • ... or every time a new browser or version of HTML comes out • ... or every time the web manager decides it's time for a revamp • But allow some individuality if required • But cannot be a closed system
Problem #1: Distributed responsibility • Distributed responsibility --> distributed editing • Distributed editing --> variable HTML expertise • Distributed editing --> no central point of control • But management still need to find out what's going on • (Who did it? When? Why?)
Problem #2:User interfaces vs databases • A good DB structure rarely makes an exciting interface ... and vice-versa • Database people say: "The information must be structured in a meaningful way" • User interface people say: "The information is excruciating and inpenetrably structured" • Database people say: "The colour is immaterial" • User interface people say: "Of *course* the shade of pink matters!" • Need a middle ground - a solid DB, an attractive presentation, and tailored queries in the middle
Problem #3:Technology • Is this feasible? Is it going to be too slow? • Java? cgi-bins? ASP? IDC? Something else? • Management wanted zero budget with zero learning time • ASP happened to come along at just the right time • ASP was a server-side (rather than client-side) solution • ASP + ODBC can access SQL DB for data management
What Is ASP • ASP = Active Server Pages • Part of Microsoft's IIS web server • Enables (VBScript and/or JavaScript) scripting embedded within HTML pages • Example of ASP
Disadvantages of ASP • ASP ties us to Microsoft and NT on the server-side • (But the concepts and DB interface easily translate to, say, Java) • Bad interaction between server and developing code • You're stuck with .asp? in the URLs unless you do something clever...
Advantages of ASP • Cheap and cheerful • No client-side constraints • Very fast to put together (but we're not pretending that this is a real programming language) • Fast execution (for a script) • ODBC links to any data source • Example of ODBC access using ASP
System Architecture • ODBC access to various DBs; Images, PostScript, videos on disk • Copied across at 2am (Buffer Time Zone) • ASP files for data entry NOT copied; nothing goes back inside
Web design concept #1: Activities • Web is architectured in terms of activities (project, CCP, facility etc) • Each activity is a weblet in its own right, with a human-typable URL • Activities organised into broad classes (R&D, Coordination, Facility etc)... Example of the R&D broad class • ... and types within them Example of the Distributed Information sub-class
Web design concept #2: Expand-in-place metaphor • Based on GUIDE (Peter Brown, U. Kent, 1986) Example of an expand-in-place activity • Hyper-(semi)structured text - not the usual 'anarchic' web presentation (more memorable?) • Discourages 'everything linked to everything else' spaghetti • Reader's context is maintained (and no massed ranks of meaningless icons to do it!) • Imposes some linearity on the text
Web design concept #3: Different views • One big HTML page for printing Example • Searching on acronyms, titles, keywords, section headings, body text etc Example search page • By associated people (on person pages) Example person page • Publications by associated activity Example activity publications page • (Note the REFER format just for fun!)
Internal web design concept number 1: Weblet managers and editors • Each activity has a Weblet Manager and Weblet Editor (possibly the same person) • Weblet Manager is the contact person; responsible for the page content • Can choose to delegate the actual editing task to... • Weblet Editor who is part of that activity/group • Group/Team has responsibility for their own pages • They agree changes, new wording etc off-line then Weblet Editor makes them
Internal web design concept number 2: HTML • Proforma approach to inputting text • Web Manager's job to determine departmental and/or corporate L&F (the entire web can be revamped in a matter of minutes) • Authors are freed from having to know the overall presentation policy of the pages • For very simply structured text, no HTML knowledge is required • Better if you know at least <P> • Some limitations imposed by SQL on text size (16K characters)
Internal web design concept number 3: It's the Web :-( • Web browsers were never really designed for input • Forms interface is not a good GUI; Java might help a bit • Major headaches were the Back/Reload buttons • Subtle differences between browsers affect the presentation and input
Design of the database • This was Kevin's job (thank goodness!) • He says "The biggest problem was understanding the interface designer" • Tension between optimising the DB for reporting and updates via the interface
Conclusions • DataWeb is a cutting-edge concept as well as an application • The result is pretty good, and has been in use within the department for over a year • 19 groups on-line, 89 activities, >1000 publications, 270 partners • People don't always realise it's a database! Could you just... Our group is called 'XYZ' but we prefer to be known as 'PQR'; could you change it on our web pages, please? In my photo my hair is too blond; could you make it a bit more brunette, please? • The project has highlighted inconsistencies between personnel's/everybody else's view(s) of the world! • ASP is cheap and cheerful; useful for smallish things
The future • Implementation in Java • Dynamic, virtual weblets • Registration of interest • That was the corporate pitch... Any questions so far? The horror stories