DataWeb: Three worlds collide A talk given at the Institutional Web

Download Report

Transcript DataWeb: Three worlds collide A talk given at the Institutional Web

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
1
Contents
2
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
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
3
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?
4
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
5
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
6
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
7
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?)
8
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
9
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 clientside) solution
ASP + ODBC can access SQL DB for data
management
10
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
11
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...
12
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
13
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
14
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
15
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
16
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!)
17
Internal web design concept number
1: Weblet managers and editors
18
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 offline 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)
19
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
20
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
21
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
22
The future
Implementation in Java
Dynamic, virtual weblets
Registration of interest
That was the corporate pitch... Any
questions so far?
The horror stories
23