1 give the dog a plone dominic hiles kieren pitts

29
1 Give the dog a Plone Dominic Hiles Kieren Pitts

Upload: carter-sutton

Post on 28-Mar-2015

220 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

1

Give the dog a PloneDominic HilesKieren Pitts

Page 2: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

2

Introduction

• Who are we?• What is Plone?• Implementing the Plone CMS• Plone pitfalls• Summary

Page 3: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

3

ILRT

• Unique combination of projects, services and research with national and international reputation

• 75-80 Staff• Semantic Web – RDF, XML, RSS and more• Elearning – Biz/ed, LTSN, LTSS• Digital Images – TASi, Biomed• Digital Libraries Portals – SOSIG, Regard,

Subject Portals• Internet Development (ID)

Page 4: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

4

Who are we?

• Dominic Hiles– Web developer– Background in information systems design

• Kieren Pitts– Senior Technical Researcher– Web development– Previously a research biologist

Page 5: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

5

Internet Development (ID) group

• 10+ staff: usability engineers, designers, developers (plus other ILRT staff)

• Consultancy unit – academic and public sectors

• Web sites, eLearning tools, car-share software, survey software, content management systems

• Usability reviews, testing, technical reviews

Page 6: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

6

Clients (2002-04)

• University of Bristol (40-50%)

• 48 Universities using CROS• 5 Universities using BOS• Bristol City Council, Temple

Quay companies, NHS, Ford UK, Oxford Universities, Swansea (234car)

• University of Southampton (BOPCRIS)

• HESDA• HEFCE – Good Management

Practice• UCISA

• SCONUL• Church of England• Institute for Fiscal Studies• Environment Agency• INASP• JISC Assist• Children’s Society• West Yorkshire Archive

Service• National Maritime Museum• CILIP, BIOME, BECTA, DLTR,

LTSN centres and more…

Page 7: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

7

What is Plone?

• A Content Management System (CMS)• Version 2 released Easter 2004• Built on Zope…

– An open-source Web application server– Written in Python (also used in Google!)

• …and CMF– Content Management Framework– Arguably, a "bare bones" CMS implementation

Page 8: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

8

The Plone Environment

Zope

Plone

CMF

Web application

Optional Web server (e.g. Apache)

Page 9: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

9

Plone features

• Open source• TTW management• XHTML• Extensible workflow

system• Accessible GUI• Search engine• WYSIWYG or external

XHTML editing

• Effective and expiration dates for content

• Pluggable user management

• External RDBMS Connectivity

• Automated RSS feeds• Platform independent

Page 10: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

10

Why Plone?

• Open Source• Free!• Feature rich - good fit with user

requirements• Experience with Zope• Platform independent

Page 11: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

11

The Projects

• LTSN BEST– Business Education Support Team is the Business,

Management and Accountancy subject centre of the Higher Education Academy

– A "new" site

• Church of England– Migrating an existing site– 2000 static HTML pages– 350 images, 450 "text" files– 4 ASP Web applications, serving data from around

20,000 database records, held in 4 different databases

Page 12: 1 Give the dog a Plone Dominic Hiles Kieren Pitts
Page 13: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

13

Page 14: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

14

Page 15: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

15

Real World Plone

Page 16: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

16

Skins

• Fundamental Plone concept• Separate views on the same content• Advantages

– Avoids compromising site design for site administration ("My Plone")

– Usable, accessible (WAI AA) administrative interface already written and extensively researched/tested => reduced total cost of ownership

– Allows developer to customise different aspects of functionality separately

Page 17: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

17

Content maintenance

1. Create the business roles – what should people be able to do to the content?

2. Create the workflow – provides the mechanism to underpin these roles

Page 18: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

18

Content maintenance - roles

• What should content maintainers be able to do with the content?– Create and edit content?– Review and Publish content?– Remove content?

• Where on your site should they able to do it?– The whole site…– ...or just specified areas?

Page 19: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

19

Content maintenance – roles (2)

• Managing the roles– Groups are created and named according

to a folder-dependant role• e.g. info_editors (editors of the info

folder)– Users are placed in group(s) according to

their role(s) in a given content area– Roles can also be created that allow users

to manage other users

Page 20: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

20

Content maintenance - workflow

• The process underlying the business roles

• Can be simple…– All content is automatically published when saved or

edited

• …or complex– Content must be reviewed before publishing– Can be versioned and later retrieved or reverted

Page 21: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

21

Private

Pending

Published

Reject

Retract

Submit

Publish

Retract

Publish

Re-edit(copy)

Versioned

Revert

Page 22: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

22

Content migration

• Import of HTML and file objects (e.g. PDFs, Images)– Opportunity to migrate HTML to valid XHTML– Import process can be semi-automated

• Plone can connect to and display data from most existing RDBMS

• It may be better to import these data as Plone "objects"– e.g. "Churches for Sale" database

• Content extractable = exit strategy

Page 23: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

23

Content editing

• TTW WYSIWYG editor– Kupu supplied as standard– edit-On Pro provides different feature set

• External editor (e.g. Dreamweaver)• Editing (X)HTML source• Upload new (X)HTML source

Page 24: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

24

edit-On Pro in action

Page 25: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

25

So, it's all rosy - not quite…

• Out the box, there's only one content role– Plone evolved from a community-orientated portal – No concept of business "ownership" – content "owned" by

creator

• Designing a collaborative workflow is hard – 40% of development time for Church of England

• No Versioning or Revisioning– We wrote our own…but lots now appearing

• No deletion management (cf. Windows Recycle Bin)– Again, we wrote our own

Page 26: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

26

So, it's all rosy (2) ?

• User management– Devolving user management to non-developers not

possible by default– Relatively easy to extend Plone to allow this– 3rd Party Product (CMFMember) also available to

facilitate this

• Content migration– Again, no tools "out the box"– Migration to accessible XHTML invariably requires

some manual work

Page 27: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

27

So, it's all rosy (3) ?

• Maintenance– Our development overlapped Plone 2

release cycle – not good!– Product testing required with each new

Plone release– Writing reusable code can cause problems– Some issues ameliorated by appropriate use

of CVS

Page 28: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

28

Summary

• Skins – different views on the same content

• Roles – control what people can do and where

• User management – allocate roles• Workflow - mechanism underpinning the

roles• Content migration• Content editing

Page 29: 1 Give the dog a Plone Dominic Hiles Kieren Pitts

29

Discussion

Slides available at: http://www.ilrt.bris.ac.uk/publications/conf/IWMW2004/plone_slides.ppt

Contact:[email protected]@bristol.ac.uk