Top Banner
THE UNIVERSITY OF TEESSIDE SCHOOL OF COMPUTING MIDDLESBROUGH TEES VALLEY TS1 3BA THE FUTURE OF CONTENT MANAGEMENT SYSTEMS BSc Web Development March 2007 M D Connor Supervisor: A P Bingham Second Reader: M Birtle
188

THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Aug 15, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

THE UNIVERSITY OF TEESSIDE

SCHOOL OF COMPUTING

MIDDLESBROUGH

TEES VALLEY

TS1 3BA

THE FUTURE OF CONTENT MANAGEMENT SYSTEMS

BSc Web Development

March 2007

M D Connor

Supervisor: A P Bingham

Second Reader: M Birtle

Page 2: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

THE UNIVERSITY OF TEESSIDE

SCHOOL OF COMPUTING

MIDDLESBROUGH

TEES VALLEY

TS1 3BA

THE FUTURE OF CONTENT MANAGEMENT SYSTEMS

BSc Web Development

March 2007

M D Connor

Supervisor: A P Bingham

Second Reader: M Birtle

Page 3: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Abstract

Abstract

The research to the future of content management systems begins by exploring

and selecting a process model and methodology. Upon the selection of these,

the past, present, and future of the web are discussed. The main focus during

the course of this report will be on AJAX (Asynchronous JavaScript and XML),

how it works, and what the advantages and disadvantages are. Further

investigation into AJAX will also look at interoperability and the security risks that

may be encountered by developers. Legal aspects which apply to developers

will be explored with a number of acts and guidelines, primarily the Disability

Discrimination Act, and the Web Accessibility Initiative. The use of open source

JavaScript frameworks and text editors will be discussed, with particular regards

to not needing to create a similar product if it’s already available and free to use.

AJAX is the underlying technology to many modern web applications, and has

been given the biggest spotlight with thanks to Google, with various applications,

such as Google Maps, and Google Docs and Spreadsheets. In the latter

application, AJAX has been used to theme a web application to look like its

desktop software rivals.

The aim is to take AJAX, a web 2.0 combination of existing technologies, and

applying it to a well known Web 1.0 application such as a content management

system, to see if this could be the future for content management systems, or

whether people will seek other alternatives. This will all be implemented into a

fictional school website which will be designed from the ground up, and will be

fully analysed and designed as part of the report.

The report will conclude on whether the use of AJAX is simple or not, and will

speculate as to whether AJAX will be necessary in the future to maintain the

longevity and use of content management systems.

Matthew Connor (D4060381) i

Page 4: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Acknowledgements

Acknowledgements

I would like to firstly thank my project supervisor, Andrew Bingham who has

helped guide me along the whole project process, and has helped me to gain a

better grasp on how to create PHP, which prior to this project was fairly poor.

I would like to thank the Learning Resource Centre, for making available a vast

range of journal articles, conference proceedings, and books available, which

have been used extensively used for this report, and without them, this report

would not have been possible.

I would like to thank the module leader, Dave Eagle, for making materials

available on the Intranet to help guide me through the project, in relation to how

to set out the report, and marking schemes for example. I would also like to

thank him, for making examples from last year available to help me gain a better

understanding on how to layout the report.

A final thank you to all the lecturers and teachers who have helped nurture my

passion for ICT and the web since 2000, and helped me along with invaluable

advice, in particular, John Stafford, from Grangefield School, who started off the

passion I have for ICT and the web.

Matthew Connor (D4060381) ii

Page 5: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Contents

Contents

1. INTRODUCTION ................................................................................................ 7

2. RESEARCH METHODOLOGIES ....................................................................... 9

2.1. Hybrid Process Model and Web Methodology ..................................................................................... 9

2.2. Identifying Project Tasks and Objectives ............................................................................................ 11

3. EVOLUTION OF THE WORLD WIDE WEB .................................................... 15

3.1. Brief History of the Web ....................................................................................................................... 15

3.2. Growth of the Web ................................................................................................................................ 15

3.3. Web 2.0 – The Future on our Doorstep? ............................................................................................. 16

3.4. AJAX – Old Technologies Merge Together ........................................................................................ 16

3.5. How AJAX Works ................................................................................................................................. 17

3.6. Advantages and Disadvantages of AJAX ............................................................................................ 18

4. CAN CURRENT TECHNOLOGY USE AJAX? ................................................ 20

4.1. Interoperability ...................................................................................................................................... 21

4.2. OpenAJAX ............................................................................................................................................. 21

5. WORLD WIDE WEB SECURITY ..................................................................... 23

5.1. Web Browsers ........................................................................................................................................ 23

5.2. AJAX ....................................................................................................................................................... 25

6. WEB GUIDELINES AND LEGISLATION ........................................................ 28

6.1. Web Accessibility Initiative .................................................................................................................. 28

Matthew Connor (D4060381) iii

Page 6: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Contents

6.2. Disability Discrimination Act (DDA) 1995 .......................................................................................... 29

7. JAVASCRIPT FRAMEWORKS AND TEXT EDITORS ................................... 32

7.1. Why Reinvent the Wheel? ..................................................................................................................... 32

7.2. Prototype Framework ........................................................................................................................... 33

7.3. Script.aculo.us ........................................................................................................................................ 34

7.4. TinyMCE ................................................................................................................................................ 34

8. ANALYSIS ........................................................................................................ 35

8.1. User Analysis .......................................................................................................................................... 35

8.2. Competitor Analysis .............................................................................................................................. 36

8.3. Scripting Standards Analysis ................................................................................................................ 38

8.4. Content Management Systems Analysis .............................................................................................. 39

8.5. Software Analysis ................................................................................................................................... 43

9. DESIGN PHASE ............................................................................................... 47

9.1. Original Sketches ................................................................................................................................... 47

9.2. Logo Design ............................................................................................................................................ 47

9.3. Colour Palette ......................................................................................................................................... 48

9.4. Font Palette ............................................................................................................................................. 50

9.5. Storyboards ............................................................................................................................................ 52

9.6. Content .................................................................................................................................................... 52

9.7. Navigation Chart ................................................................................................................................... 53

9.8. Entity Relationship Diagram ................................................................................................................ 54

Matthew Connor (D4060381) iv

Page 7: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Contents

10. IMPLEMENTATION ........................................................................................ 57

10.1. Developing XHTML Site ..................................................................................................................... 57

10.2. Developing Site with PHP and MySQL ............................................................................................. 67

10.3. Implementing Login for AJAX CMS ................................................................................................. 73

10.4. Implementing AJAX Functions .......................................................................................................... 77

11. TESTING ......................................................................................................... 82

11.1. Defining a Testing Platform ................................................................................................................ 82

11.2. Concurrent Testing .............................................................................................................................. 84

11.3. Validation Testing .............................................................................................................................. 85

11.4. Browser Testing ................................................................................................................................... 86

11.5. Functional Testing ............................................................................................................................... 87

12. CONCLUSION ................................................................................................ 88

12.1. Is AJAX Simple to Implement? .......................................................................................................... 88

12.2. Is AJAX the Future of Content Management Systems? .................................................................. 88

13. EVALUATION ................................................................................................. 91

14. RECOMMENDATIONS .................................................................................. 95

15. GLOSSARY .................................................................................................... 96

16. REFERENCES ............................................................................................... 98

17. BIBLIOGRAPHY .......................................................................................... 110

APPENDIX A – PROJECT SPECIFICATION .................................................... 123

Matthew Connor (D4060381) v

Page 8: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Contents

APPENDIX B – XHTML CODE (VERSION 1) ................................................... 126

APPENDIX C – PHP CONTENT CODE (VERSION 2) ...................................... 133

APPENDIX D – PHP LOGIN CODE (VERSION 3) ............................................ 137

APPENDIX E – PHP AND AJAX IMPLEMENTATION ..................................... 142

APPENDIX F – CSS CODE ............................................................................... 148

APPENDIX G – TESTING DOCUMENTATION ................................................. 153

APPENDIX H – ANALYSIS DOCUMENTATION .............................................. 163

APPENDIX I – DESIGN DOCUMENTATION .................................................... 175

Matthew Connor (D4060381) vi

Page 9: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Introduction

1. Introduction

The majority of traditional content management systems (CMS) have been coded

using a server side scripting language, such as PHP, which connects to a

database, such as MySQL. These systems usually have a set of administration

pages, which allow users to edit content, users, and templates. These pages

usually feature some kind of an HTML form, with a number of input fields and text

areas. When a user is ready to submit any changes they submit the form, and

the entire page reloads, informing a user if the update was successful or not. If

AJAX was to be used in this example, the entire page would not reload, and only

the area concerning the form would do so. It is this kind of implementation

marrying the use of AJAX to a content management system which this project

will explore.

AJAX is a relatively new idea, which first came to life, after an article in 2005 by

Jesse James Garrett (Garrett, 2005). Soon after this article Google, released a

number of web applications which made use of AJAX to avoid page reloading on

Google Maps, Google Docs and Spreadsheets, and Google Mail. With no prior

experience of using AJAX, extensive research will need to take place, to find out

how the combined technologies in AJAX work, and to discover how simple or not,

it would be to implement this into a standard content management system. Other

factors relating to the use of AJAX will be explored including the advantages and

disadvantages, security issues, whether current technology is compliant, and

whether assistance is available to developers in the sense of pre-built

frameworks, to help in the development of web applications involving AJAX.

In regards to an AJAX CMS very few examples exist currently on the web today,

therefore for the artefact which accompanies this report, one will be developed,

to see if there are any reasons as to why there are so few, when compared to the

number of standard sole PHP and MySQL solutions. However to achieve this a

web site will need to be built from the ground up for a fictional client called

Matthew Connor (D4060381) 7

Page 10: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Introduction

Middleton High School. This will consist in building a traditional school website

using XHTML and CSS. From this step, the web site will be transformed to use

PHP and MySQL to draw content out from a database and display it, just as the

traditional website would do so. The penultimate step would be to implement a

login system to an administration control panel which will form the basis of a

basic content management system. The final step will be to implement AJAX

functions such as a text editor that does not reload the entire page, to see if

AJAX is feasible for a content management system, or whether it is simply just

jumping on the bandwagon with no real benefits. The content management

system will be developed to a basic level as the focus of the report is on AJAX

and the future of content management systems, not on developing a full scale

content management system which may end up being irrelevant if it is concluded

AJAX is not really a feasible option to fully integrate into a CMS.

Matthew Connor (D4060381) 8

Page 11: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Research Methodologies

2. Research Methodologies

2.1. Hybrid Process Model and Web Methodology

To effectively carry out this project it has been decided that existing process

models and web methodologies do not suffice to the needs required. It is

acknowledged however, that parts of different process models can be used to

form a hybrid model. The same principles apply towards creating a hybrid web

methodology.

A process model is essentially a defined sequence of events in which a project is

recommended to be completed. To create the hybrid process model for this

project, elements from two different models will be used. These models are the

waterfall model and prototyping.

The waterfall model was first proposed in its current form by Winston Royce in

1970 (Royce, 1970, cited in Sommerville, 1996, p269).

The waterfall mode in comparison to others is a simplistic linear model. The

basic principle behind the model is the progress of a project in a linear fashion.

For example, analysis has to be completed before any design can take place.

This principle also applies if using the model in reverse, for example, any

changes made in design, will need reflecting in analysis.

A disadvantage of this model as described by Curtis et al (1987, p96) is that it

does not consider what changes would be required if a client has a change of

mind on a project at different stages. In addition Pillai (1996, p32) states that the

most “efficient design” cannot possibly be determined at the analysis phase.

Prototyping is another model of how a system can be designed and developed.

Matthew Connor (D4060381) 9

Page 12: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Research Methodologies

If prototyping is carried out in a concurrent fashion to the design phase of a

software development, then any changes determined from the prototype, such as

a layout that does not work, can be fed back into the documentation, and help to

speed up the process of completing a system (Carr, 1989, p132). This is an

element that the waterfall model lacks, and if combined would produce a greater

quality model and one relevant for this project.

Jayaratna, 1993, describes a methodology as a definitive way of structuring an

individuals thinking and actions.

The role of a methodology is to layout how to perform change (Jayaratna, 1993),

using different diagrams and models such as navigation charts and storyboards,

for example.

To create a web methodology for this project elements from a standard static

methodology such as SWM, and a dynamic one such as RMM, need to be

considered. The outcome of combining these two methods will result in a list of

tasks and objectives for the project.

Griffiths et al, (2002, p755) proposed the Simple Web Method (SWM –

pronounced Swim) in 2002. An ability of SWM is the ability to trace back and

forth through models produced, for example, design documentation (Griffiths et

al, 2002, p755). The method is also stated to be suitable for “students and

inexperienced users (Griffiths et al, 2002, p755).

The documentation for SWM has clearly defined areas which are planning,

analysis, design, building (implementation), and maintenance (Griffiths et al,

2002, p756). SWM is a method for developing, in general static websites.

However the relationship management methodology (RMM) which was first

proposed in 1995, by Isakowitz, Stohr, and Balasubramanian, is a method for

Matthew Connor (D4060381) 10

Page 13: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Research Methodologies

tackling hypermedia or dynamic design, which includes “relationships among

information objects” (Isakowitz, Stohr, and Balasubramanian, 1995, p34).

RMM seeks to explain the relationship between databases and the information

that is displayed on a web system. The whole methodology for RMM is not

necessary in the case of the project, however adding elements such as an entity

relationship diagram to SWM, would produce a more versatile methodology

suitable to the project’s needs.

Figure 2.1 shows the combination of adding prototyping to the standard waterfall

model defined by Winston Royce (Royce, 1970, cited in Sommerville, 1996,

p269).

Figure 2.1. The hybrid process model to be used for the project, showing

traditional waterfall model, with an element of prototyping.

2.2. Identifying Project Tasks and Objectives

To help track the progress of the project, using a hybrid web methodology with

those mentioned above, a number of set tasks will be identified, including internal

deadlines, to help with time management and distribution of the tasks over the

entire lifecycle.

Matthew Connor (D4060381) 11

Page 14: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Research Methodologies

Phase Task Deadline

(Contingency Deadline)Specification Project Specification 31st October 2006Planning Project Plan 17th November 2006Planning/Research Identifying Process Model 17th November 2006Planning/Research Identifying Methodology 17th November 2006Analysis Rapid User Modelling

Method 2 (RUMM 2)

15th December 2006

Analysis Software Analysis 15th December 2006Analysis Competitor Analysis 15th December 2006Design Initial Ideas (sketches) 12th January 2007Design Storyboards 12th January 2007Design Colour and Font Palettes 12th January 2007Design Navigation Chart 12th January 2007Design Entity Relationship

Diagram

12th January 2007

Implementation Building artefact 12th March 2007

(27th March 2007)Testing Validation Testing 12th March 2007

(27th March 2007)Testing Event/Function Testing 12th March 2007

(27th March 2007)

Table 2.1. Table listing the tasks required to complete the artefact.

Elements of the SWM web methodology are evident from tasks such as carrying

out a competitor analysis and navigation chart, with an element of RMM visible

with the entity relationship diagram, to allow for the modelling of dynamic

databases.

In terms of personal objectives for this project these include, to improve

understanding and use of PHP, improve and understand how AJAX works, and

how it can be implemented, monitor time management skills, and increase

research skills. These will be evaluated at the end of the project.

Matthew Connor (D4060381) 12

Page 15: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Research Methodologies

No deadlines have been set on the creation of report sections due to the

constant changing development of the artefact implementation, and also to allow

research to carry on throughout the project lifecycle. In addition, future lectures,

from other modules, will also help to contribute to knowledge for the report.

The continuing use of research and editing of report sections has been

documented in the project learning diary.

The final deadline for the entire project, which will be adhered to is Thursday,

29th March 2007, as part of the ‘Group D’ hand in on the assessment schedule,

which includes Web Development.

To graphically represent the progress of table 2.1 a Gantt chart has been

produced to aid with the project management of both the report and associated

artefact.

Matthew Connor (D4060381) 13

Page 16: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Research Methodologies

Matthew Connor (D4060381) 14

Page 17: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Evolution of the WWW

3. Evolution of the World Wide Web

3.1. Brief History of the Web

The World Wide Web (WWW) started in 1989, when Tim Berners-Lee published

a document called “Information Management: A Proposal” (Berners-Lee, 1989,

Cailliau and Ashman, 1999, pg. 1, and Wikipedia, 2007). The wheels of the

World Wide Web began to move slowly in 1990, when the published document

by Tim Berners-Lee was re-circulated with refinement alongside Robert Cailliau

(Wikipedia, 2007). Berners-Lee’s proposal stated that the importance of the

World Wide Web was to be accessible on all machines rather than focusing on

extra features such as graphics (Berners-Lee, 1989, and Cailliau and Ashman,

1999, pg. 2).

In 1990, the first web browser, web pages, and web server were all built by Tim

Berners-Lee (Wikipedia, 2007). The first files to appear on the web were

uploaded in November onto the first web server at CERN (W3C, 2000a). The

first web browser also allowed for editing and was called “WorldWideWeb”, and

was created the previous month, in October (W3C, 2000a).

3.2. Growth of the Web

With more people beginning to build web pages, the standards set by the various

versions of HTML which ran up to 4.01, in 1999 (W3C, 1999), were starting to

blur, with designers failing to close tags, and being very relaxed in the structuring

of the HTML in their web pages. In addition the purpose of HTML was never to

create graphics rich, large hierarchical websites, as stated in 1989 by the web’s

founder.

In 2000, a stricter version of HTML was introduced that would be compliant with

the extensible mark-up language (XML), and to allow for greater flexibility on

Matthew Connor (D4060381) 15

Page 18: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Evolution of the WWW

devices other than PC’s. The “new” mark-up language was named XHTML, and

the first public specification released on 26th January 2000 (W3C, 2000b).

The web continued to grow with different plug-ins for browsers being released

with the most successful by far being Adobe’s Flash Player (formerly

Macromedia).

3.3. Web 2.0 – The Future on our Doorstep?

In the past few years, a couple of buzzwords have entered the web development

arena, which includes Web 2.0, and AJAX (Asynchronous JavaScript and XML).

These two ‘buzzwords’ are meant to signify an end to the standard static website

which has no input from the visitors, and give those visitors a direct hand in the

editing of them. The best example of user input currently on the web is

Wikipedia, an online encyclopaedia, which people from around the world can edit

the content for.

Web 2.0 also signifies a greater community environment to the web, with

applications such as blogs, and social networks. Examples of these on the web

today include Blogger, Last.fm, Meebo, MySpace, Wikipedia, and YouTube.

3.4. AJAX – Old Technologies Merge Together

In 2005, an article by Jesse James Garrett caused the web 2.0 movement to gain

even more momentum with another “buzzword” called AJAX or Asynchronous

JavaScript and XML. This was not a new language or technology, but it was

making use of current technologies, and using them together to produce powerful

web applications (Garrett, 2005).

Google has been at the forefront of bringing the use of AJAX in its applications

and making these accessible to millions of users for free. The best known of

Matthew Connor (D4060381) 16

Page 19: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Evolution of the WWW

these is Google Maps which allows users to zoom in and out on maps, change

the view between maps and satellite views, all without the need to reload the

page (Zakas et al, 2006, pg.1), which occurs on other sites such as Multi Map

(Multi Map, 2007).

3.5. How AJAX Works

As the name suggests, two of these existing ‘technologies’ which are behind the

power of AJAX are JavaScript and Extensible Mark-up Language (XML). These

are also joined by a number of other technologies such as XHTML and CSS

(Clark, 2006, p33), Document Object Model (DOM) (Paulson, 2005, p15), JSON

which is an alternative to using XML (Clark, 2006, p33), and the most important

aspect behind the power of AJAX is the XMLHttpRequest JavaScript object

(Clark, 2006, p33, and Paulson, 2005, p15) which is available in most new

browsers.

3.5.1. XMLHttpRequest (XHR)

XMLHttpRequest was first “created by Microsoft’s Exchange team in 1997” (Taft,

2006a, p14). However the potential of the JavaScript object was not realised

fully until 2002, when the Mozilla Foundation included the object as part of its

browser software (Taft, 2006a, p14).

The XMLHttpRequest object in basic terms acts as a middle man (Garrett, 2005),

between both the client and server, and handles the data requests and

responses that are handed between each (Clark, 2006, p33).

Matthew Connor (D4060381) 17

Page 20: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Evolution of the WWW

Figure 3.1. The above model shows how the traditional web model compares

with an AJAX web model (Garrett, 2005).

With this ‘middle man’ known as an AJAX engine sitting between the client’s user

interface and the web server, the client’s user interface no longer needs to reload

the entire page.

To begin with a client carries out an action on a web page, such as an in place

edit. This triggers a JavaScript call, which gets sent to the AJAX engine, which is

coded in JavaScript. This then sends a HTTP request to the web server, which

can then interact with a MySQL database for example. Upon the completion of

the request, if completed successfully, XML data or JSON, depending on

developer preference, is sent back carrying the data to the AJAX engine, which

then unfurls it into XHTML and CSS for display in the client’s user interface.

3.6. Advantages and Disadvantages of AJAX

One advantage of using AJAX is to provide web applications with what Lager

(2006, p11) calls “cleaner page loads”. This means less bandwidth is used, and

less memory and power required from the server (Lager, 2006, p11).

Matthew Connor (D4060381) 18

Page 21: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Evolution of the WWW

Another advantage to consider is user satisfaction. It can be speculated that

most users would far prefer an application that carries out functions in the

background, rather than reloading every time an action is required.

One disadvantage of AJAX is related to the cleaner page loads as termed by

Lager (2006, p11). If the code that a developer produces is poorly designed the

number of communications with the server between the AJAX engine could be

unnecessarily more, increasing the use of server memory, and its load (Bednarz,

2006, p30).

Another disadvantage of AJAX is that it breaks the traditional web model people

have come accustomed to over the recent years (Clark, 2006, p33). Examples of

this include, the URL in the browser’s address bar not changing for real time

updates, and the back button not working correctly (Clark, 2006, p33).

Matthew Connor (D4060381) 19

Page 22: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Can Current Technology Use AJAX?

4. Can Current Technology Use AJAX?

In short, the answer is yes. All current browsers, including Mozilla Firefox,

Internet Explorer, and Opera, can display the effects of AJAX. This is because of

support in three key areas.

The first area that these browsers support is the use of JavaScript. This is

important as the ‘AJAX engine’ or the file that contains the XMLHttpRequest

functions, is coded in JavaScript. However, as with any JavaScript reliant web

page, if a user has for some reason, for example for additional security, disabled

JavaScript, or is using assistive technology, such as a screen reader, that cannot

interpret JavaScript, then the whole area of the web page that relies on the

JavaScript will fail. This is why, it should be common practice for web developers

to provide accessibility within their designs and take these factors into

consideration.

The second area is the support of XML. This is what is used to deliver the

messages back from the server towards the ‘AJAX engine’, before it is

‘translated’ back into equivalent XHTML and CSS. Therefore if the browser is

unable to process any XML, then this message will fail on the return back to the

client’s browser.

The third area is the support of the XMLHttpRequest object, which is only

available in newer browsers, and is not supported in some older browsers. In

addition, the implementation of XMLHttpRequest across browsers can be faulty

(Clark, 2006, p33). For example, Opera has some issues with the JavaScript

object, as does Lynx, the text based browser (Clark, 2006, p33). Without the use

of this object then the whole AJAX application is doomed to start with from the

beginning, which again raises the issue of accessibility and AJAX.

Matthew Connor (D4060381) 20

Page 23: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Can Current Technology Use AJAX?

4.1. Interoperability

With AJAX being used to develop web applications, the issue of interoperability is

the vital reason for the Web 2.0 boom. A lack of interoperability would mean that

some versions of an ‘AJAX’ engine which had been developed by various people

would only work on certain browser versions and operating systems. In 2005,

Microsoft announced it would use AJAX as “an alternative to Windows

Presentation Foundation, its Vista rich client” (Havenstein, 2006, p8). This

announcement raised fears that Microsoft would adapt the technology to suit its

own needs, by adding in its own unique extensions, which would then in turn ruin

the principle of AJAX being able to run in every ‘modern’ browser (Havenstein,

2006, p8).

The founder of the buzzword AJAX, Jesse James Garrett has said that there are

two “major compatibility issues with AJAX” (Paulson, 2005, p17). The first of

these two issues being differences in “JavaScript implementations” (Paulson,

2005, p17). This can presumably mean the many different frameworks that are

available on the World Wide Web today for web developers to use to implement

AJAX. The second issue is providing a way for older browsers to access AJAX

applications through alternative means (Paulson, 2005, p17).

4.2. OpenAJAX

To ensure that AJAX is developed in a standard and uniform way, an

organisational alliance has been formed called OpenAJAX, which is associated

with many large vendors such as Adobe, IBM, Oracle, Tibco, and many more

(OpenAJAX, 2007).

The creation of the alliance has been an indication of the success of AJAX with

web developers and that the success has been loud enough for large vendors of

software, such as Adobe with Dreamweaver, to notice the potential and need for

Matthew Connor (D4060381) 21

Page 24: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Can Current Technology Use AJAX?

a standard and uniform way of producing AJAX applications which are

interoperable on all browsers and operating systems (Havenstein, 2006, p8).

Matthew Connor (D4060381) 22

Page 25: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems WWW Security

5. World Wide Web Security

AJAX and Web 2.0 may be the buzzwords of web developers at the current time,

but there is one buzzword that is one the word of most web users and that word

is security. In recent years, with the numerous email scams, and ‘horror’ stories

of account phishing on banking and auction sites, the profile and the requirement

for security has increased somewhat.

For example, with the release of both Windows Internet Explorer 7, and Mozilla

Firefox 2, anti phishing software came as standard. Phishing is defined as

tricking someone into giving you their personal details (Michigan Cyber Security,

2006).

This report will now look at security in two areas; web browsers, and AJAX itself.

5.1. Web Browsers

One security issue that can blight browsers is the use of cookies. Cookies are

small text files that are stored on your computer, which are created by websites

to store data such as the number of times you have visited a site, and possibly

your username, and such related details (Fitness Headquarters, 2007). It is

possible in some circumstances to gain unauthorised access to another

website’s cookie (Jackson et al, 2006, p737). This is usually as a result of a

poorly coded website, which can be accidental through cross site scripting

(Jackson et al, 2006, p737), and in some cases it could prove malicious.

One term for the malicious interception of cookies is known as cookie poisoning

(SearchSecurity.com, 2007a). This is when a cookie is modified by an attacker

to gain information about a user, which could be used in identity theft

(SearchSecurity.com, 2007a). There are ways to prevent cookies from becoming

poisoned by attackers, and this responsibility relays back to the web developer.

Matthew Connor (D4060381) 23

Page 26: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems WWW Security

One such way is to encrypt the cookies, before they get sent to a user

(SearchSecurity.com, 2007a).

This also gives reason and justification for the use of session variables to pass

sensitive data, such as usernames and passwords. This session variable

technique is commonly seen on the World Wide Web on community websites,

such as discussion forums. The sessions are created in PHP at the head of

each file, and the variables passed between them. This is not perfect however,

as session variables can be intercepted in some cases by ‘memory sniffing’, as

session variables are stored in memory (Velocity Reviews, 2004). This is when

the implementation and use of a secure socket layer server is recommended.

For discussion forums, it is not really feasible, but for websites such as online

banking, security is paramount.

When comparing the latest versions of the two big browsers the number of

security vulnerabilities reported is considerably different. According to the

Washington Post in 2006, Internet Explorer was exposed with various security

issues for 284 days of the year, whereas Firefox was only exposed for nine days

(Firefox Start, 2007). One of the contributing reasons for this may be the way in

which the browsers are distributed. With Firefox being an open source browser,

as soon as a vulnerability is reported, thousands of people can ultimately code a

fix for it almost straight away and release the fix. In addition the Firefox browser

has a facility to check for updates, whereas Windows Internet Explorer relies on

Windows Update to be turned on, or for a user to constantly check for any

security updates.

Internet Explorer does have a main security feature which can be used to control

the websites users visit. This feature is security zones, which are split into

different zones with different levels for each. These zones include Internet, Local

Intranet, Trusted Sites, and Restricted Sites (Schnoll, 2001). The different levels

to which these are set include high down to low. The level can also be custom

Matthew Connor (D4060381) 24

Page 27: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems WWW Security

set to suit a user’s need. For example, if there is a site someone knows they can

trust, for example, a site they have built, they can lower security settings on that

particular site by adding it to the trusted sites access zone, and set the level to

low. However this is a fiddly process to undertake for each site, and the only

settings that are likely to be edited are the Internet zones.

In the few months since the launch of Internet Explorer 7, there have been many

different stories of vulnerabilities including a window injection flaw (Naraine,

2006a), and most recently a cross site scripting vulnerability (Prince, 2007a, and

Secunia, 2007). In the interest of balance it should also be noted that Firefox has

had its recent share of vulnerabilities and exploits including cross-site scripting,

denial of service attacks (Naraine, 2006b), and a flaw that could allow cookies to

be changed (Prince, 2007b).

The main rule of thumb when browsing the web to avoid attack is to use websites

you know that can be trusted, and to avoid downloading files from unknown

sources.

5.2. AJAX

AJAX web applications in a nutshell are really as secure as the people who

design and develop them. For instance, if a developer decides to use GET as

the method for transferring data to and from the web page to server, then this

can easily be intercepted, and many possibilities for attack could arise.

Powell (2006, p36) states that AJAX applications are just as insecure as

standard web applications and that both are far too trusting when it comes to the

concern of user inputs (Powell, 2006, p36). One method of attack used

commonly in AJAX applications is a SQL injection (Powell, 2006, p36, and

Stamos and Lackey, 2006, s14-s16). A SQL injection attack usually occurs when

an attacker inserts an SQL command into an input field on a form, which can

Matthew Connor (D4060381) 25

Page 28: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems WWW Security

then be used to access data, which could then in turn be changed

(SearchSecurity.com, 2007b).

Other forms of attacks regarding ‘Web 2.0’ applications have been reported by

Stamos and Lackey (2006, s14-s16) during a presentation including cross-site

scripting methods such as injecting a script into a JavaScript stream, and placing

script into XML which then effects the Document Object Model (DOM) (Stamos

and Lackey, 2006, s14-s16).

Stamos and Lackey (2006, s14-s16) also mention the differences in security

measures that developers can use to prevent attack. The least secure of the

methods available are both GET and POST (Stamos and Lackey, 2006, s16).

The next step up surprisingly is Flash which can be configured with a file called

crossdomain.xml (Stamos and Lackey, 2006, s16); however this is not the most

secure method for Web 2.0. The most secure method at the current time is

reported to be XHR or XMLHttpRequest (Stamos and Lackey, 2006, s16), but

this is dependent on how the JavaScript object is developed and whether or not it

interacts with GET or POST.

If a web application is coded with high quality and care, or uses a framework

which is updated regularly to counter any security risks then Web 2.0

applications could be considered more secure than those of their predecessors in

normal static Web 1.0 environments.

An indication of how hard it can be however, to code a well structured secure

web 2.0 application using AJAX has been shown by the example of a JavaScript

worm which hit the application Yahoo Mail in 2006 (Roberts, 2006, p13).

Yamanner, as the worm was known, was first reported on 12 June 2006, and

used a previously unknown cross site scripting exploit to gain access to a users

email address book (Roberts, 2006, p13-14). The worm however was not a

normal JavaScript worm, but instead also used AJAX, which signalled a new era

Matthew Connor (D4060381) 26

Page 29: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems WWW Security

for “malicious code writers” (Roberts, 2006, p14). One method of securing the

use of PHP on a web server from cross site scripting attacks (XSS), is to switch

off register_globals from the PHP configuration file (ModX, 2007a).

Matthew Connor (D4060381) 27

Page 30: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Web Guidelines and Legislation

6. Web Guidelines and Legislation

6.1. Web Accessibility Initiative

In the past several years, people around the world have begun to realise that,

with the growth of the World Wide Web and the amount of content available from

it, that no section of society should be excluded from participating and gaining

knowledge from it (Bailey and Burd, 2005, p79). Excluding people with different

disabilities is removing the access of material on the Web from millions of people,

and many web developers may be unaware of this.

A common misconception is that accessibility is caused just by designing

websites so people with disabilities can access and engage with websites. It

also regards the access of websites on mobile devices, such as phones and

PDA’s (Seeman, 2004, p68). Using standards and making websites accessible

also has additional benefits such as improved download times, and higher

rankings from search engines (Pearson, 2006a, s16).

The Web Accessibility Initiative (WAI) was launched in February 1997, by the

World Wide Web Consortium (W3C), to help develop guidelines for web

designers and developers to help them make their websites accessible to all

users (World Wide Web Consortium, 2007a). The WAI was also responsible for

getting the developers of browser software and web design tools, such as Adobe

Dreamweaver, for example, to implement these standards also (World Wide Web

Consortium, 2007a).

The guidelines that are made available by the WAI are known as the Web

Content Accessibility Guidelines (WCAG). The guidelines were published as a

‘web’ standard, two years after the formation of the WAI, in May 1999, with

WCAG 1.0, being used in countries across the world (Brewer, 2004, p51).

Matthew Connor (D4060381) 28

Page 31: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Web Guidelines and Legislation

WCAG version 2.0 was published as a working draft in April 2006 (World Wide

Web Consortium, 2006).

The WCAG has three different priority levels for websites to compare against.

These are priority one, two, and three, with one being minimum, and three

showing a developer has gone to extreme lengths to ensure a website is

accessible. Priority one should be regarded as a compulsory priority that must

be passed (Pearson, 2006b, s6).

The problem with these standards and guidelines released by the WAI is that

they are ‘only’ standards and guidelines which are optional to implement for web

designers and developers to produce a semantic web. For accessibility to

become an issue and to be enforced on people, legal action has to be taken with

regards to sections relating to services in the Disability Discrimination Act 1995.

6.1.1. Section 508

Section 508 is an American based piece of legislation that was an amendment to

the Rehabilitation Act 1973, which was passed in 1998 (Section 508, 2007a). It

is designed to ensure that employees in Federal agencies have equal access to

software as all others. The section also applies to the general public, who should

be able to access government information regardless of any disability (Section

508, 2007b) or software, internet connection speeds, and platform (Gibson,

2002, p257). According to Section 508’s official website, 2007, the standards

only apply to Federal government departments, and the US post office (Section

508, 2007c).

6.2. Disability Discrimination Act (DDA) 1995

Prior to the act becoming law after being given Royal Assent in 1995 (Income

Data Services, 2002), there only existed an act from the 1940’s called the

Matthew Connor (D4060381) 29

Page 32: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Web Guidelines and Legislation

Disabled Persons (Employment) Act 1944. This act imposed a quota on

employers to ensure that if they had more than twenty employees, that at least

three per cent of them were registered as disabled. This act was rarely enforced

and over a period of thirty years only resulted with three prosecutions (Income

Data Services, 2002).

The act from 1995 was introduced to ensure all people regardless of any

disability had equal access, the same as everyone else, however the speed at

which the act was produced by the Government, left a lot of uncertainty how the

act should be interpreted and enforced (Gooding, 1996, p3).

Part three of the act is the most relevant to the web, under section 19, which

relates to goods, facilities, and services. It clearly states that it is against the law

to “discriminate against a disabled person” (Gooding, 1996, p78):

“…in refusing to provide, or deliberately not providing, to the disabled

person any service which he provides, or is prepared to provide, to members of

the public.”

(Gooding, 1996, p78)

Breaking down this part of the act word for word, if a service is interpreted as the

website, and members of the public interpreted, as the audience across the

World Wide Web who can access the website, then anyone refusing to amend a

website or build one to ensure its accessibility to everyone is breaking the law.

The DDA 1995 has been revised on several occasions, and the major

amendments were compiled and released with the Disability Discrimination Act

2005 (Disability Rights Commission, 2006).

No organisation or individual has yet been prosecuted under the DDA, however

in the United States, one website, Target has been sued, for failing to make its

website accessible to blind users (Out-Law, 2006a). This however, is likely to be

Matthew Connor (D4060381) 30

Page 33: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Web Guidelines and Legislation

a test case, and with Target, being a medium sized American company, it is

more than likely hoped that this case would set an example to others. The case

has highlighted the need for an international approach to web accessibility, and

in August 2006, the United Nations (UN) published a draft paper titled

‘International Convention on the Rights of Persons with Disabilities’ (Out-Law,

2006b).

6.2.1. Special Education Needs and Disability Act (SENDA) 2001

This act is an extension to the Disability Discrimination Act 1995 (Disability

Rights Commission, 2006). Education is believed to have been exempt from the

original Disability Discrimination Act 1995, due to the Government believing they

would have to foot the bill for upgrading the infrastructure of school systems to be

able to apply the act (Sloan, 2001).

School systems should have ‘reasonable adjustments’ so that disabled students

are not at a disadvantage to others (Sloan, 2001).

In a nutshell, SENDA 2001 is applying the principles of the Disability

Discrimination Act 1995 to educational institutions web systems, and other

computer systems and infrastructures, and therefore applies to this project.

Matthew Connor (D4060381) 31

Page 34: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Frameworks and Text Editors

7. JavaScript Frameworks and Text Editors

7.1. Why Reinvent the Wheel?

With the World Wide Web being a large open community with thousands of

developers who can easily communicate and exchange ideas with each other,

the development and implementation of AJAX, in just two years has grown

astronomically. A part of this success is down to the availability of free

downloadable frameworks which include varying different AJAX functions.

One thing all of these frameworks have in common is that they all at some point

have their own varying functions for the creation of an XMLHttpRequest object.

These may slightly differ from framework to framework, but all of them serve the

same purpose, in getting the AJAX engine in pages, up and running, ready to

carry out what can be considered to be called Web 2.0 functions, such as fading

transitions, in place editing and much more.

These frameworks also serve another idea of cooperation. If a fellow web

developer notices an error or a security issue with a particular framework then

they can report it to the main developer behind the framework, and then it can be

updated, and more people can benefit as a result.

There are hundreds of frameworks available today (Lysecki, 2006, p6), and some

of the more common include ‘Prototype’ and ‘Script.aculo.us’. Big names have

also developed their own AJAX toolkits including Google (Wayner, 2006, p26)

and Yahoo (Wayner, 2006, p27).

In addition to AJAX frameworks being available, JavaScript text editors are also

available, which are able to format text taken from a web page (the content of

which is pulled from a database) alike a word processor can, and then output the

result as XHTML and save the result to an attached database. These are often

Matthew Connor (D4060381) 32

Page 35: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Frameworks and Text Editors

used in AJAX applications, as they are more user friendly. One example of a

JavaScript text editor is ‘TinyMCE’, which can be found in Word Press blogging

software as seen in Figure 7.1.

Figure 7.1. A screen shot of the TinyMCE JavaScript text editor being used by

Word Press software.

The use of these frameworks is available through the means of an ‘MIT license’

(Prototype JavaScript Framework, 2007a), where developers are free to share

the framework with other users and to redistribute it. The editing of the file to suit

the needs of the developer is also allowed.

7.2. Prototype Framework

Prototype is a framework coded in JavaScript which can be used to aid in the

development of web applications (Prototype JavaScript Framework, 2007b). The

framework is compatible with all browsers, and adds extensions to the document

object model (DOM) (Prototype JavaScript Framework, 2007c). The current

version of the framework is 1.5.0 (Prototype JavaScript Framework, 2007b) and

the download is only one JavaScript file which only equates to a few kilobytes of

disk space. However it is this one text file that can open so many powerful doors

to web developers.

Matthew Connor (D4060381) 33

Page 36: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Frameworks and Text Editors

7.3. Script.aculo.us

Where Prototype gives the ‘bones’ to the web applications with all of the

functions regarding AJAX calls to and from the engine, Script.aculo.us provides

the ‘flesh’ and design to these applications. Script.aculo.us is an add-on to the

Prototype framework (Script.aculo.us, 2007) which is included with the

Script.aculo.us downloads. Effects which can be achieved with the use of this

‘framework’ include animation, drag and drop, various AJAX controls and utilities

for the document object model (Script.aculo.us, 2007).

It is claimed by the official website that Script.aculo.us is used by companies

such as Gucci, and Apple, and various well known websites such as Digg, and

Ruby on Rails (Script.aculo.us, 2007).

7.4. TinyMCE

TinyMCE is a JavaScript text editor that can be found in various web applications

such as Word Press blog software. It can be used for many types of different

applications, which involve PHP, .NET, JSP, Coldfusion, and more importantly

AJAX (TinyMCE, 2007a).

The default output of the text editor is XHTML 1.0, and cleans up any errors that

a user may have inputted into the editor (Moxiecode Systems, 2007). The text

editor is also compatible with all browsers (TinyMCE, 2007a) which is also

equally important, in an open standards environment with Web 2.0 and AJAX.

The implementation is also claimed to be simple with only a couple of lines of

code, and therefore could be an option for the project artefact with the AJAX

content management system, as the focus is on the content management

system, and not on the development of a text editor.

Matthew Connor (D4060381) 34

Page 37: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

8. Analysis

To enable the AJAX content management system to be designed so that it is

compliant with what the user would want several different analyses will take

place.

8.1. User Analysis

The purpose of analysing the users who will use the AJAX content management

system is to see what features they will require to fulfil their needs, and what

features would not be required.

With the AJAX content management system being designed for a ‘fictional’

school website’ then the users of the application will be teachers and other staff

members, with the front end of the website, being used by parents to gain

information about the school.

The analysis of the users will be done using a technique called Rapid User

Modelling Method (RUMM) version 2. This method uses a number of different

documents to profile users, to discover their needs. All users are fictional.

The RUMM documentation has been attached to this report as a section of

appendix H, with the key findings written below.

From the documentation it has been found several features will need to be

included in the final project artefact. These include a login facility for staff to be

able to login, and edit content.

The administrator of the website should have access to all areas on the website,

and is responsible for user management on the website, including creating,

editing, and deleting accounts.

Matthew Connor (D4060381) 35

Page 38: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

The head teacher of the school should have access to most areas of the AJAX

CMS to act in a role similar to a ‘chief editor’.

The faculty heads will have the lowest access level on the AJAX content

management system, and will only be able to edit content relevant to their own

faculties.

8.2. Competitor Analysis

Schools may not be businesses, but they need to compete with other local

schools, in terms of examination results, attendance, and so on. Therefore a

competitor analysis has been identified as an important aspect of the overall

analysis phase, to identify potential areas, which may be required on the fictional

school website, and implemented into the AJAX content management system as

a result.

The fictional school ‘Middleton High School’ is located in Stockton-on-Tees, so

the first step necessary, was to locate a list of local schools in the same area.

The first port of call was the local council website, which in this case, is Stockton-

on-Tees Borough Council (Stockton-on-Tees Borough Council, 2007a).

Navigating through the website by clicking on ‘Learning’ on the primary

navigation, and then ‘Schools information’ on the resulting secondary navigation

provided a web page with a link to an external site, which listed the schools in the

local borough (Stockton-on-Tees Borough Council, 2007b).

Middleton High School is a secondary school, so therefore a list of every school

including infant, primary and so on, was not required. The external website that

was linked from the council website, categorises the different types of schools,

and by clicking on ‘Secondary Schools’ on the navigation, a list of secondary

schools was listed (Schools Finder, 2007). Four schools have been selected for

analysis, which are Bishopsgarth School (Bishopsgarth School, 2007), Blakeston

Matthew Connor (D4060381) 36

Page 39: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

School & Community Sports College (Blakeston School, 2007), Conyers School

(Conyers School, 2007), and Grangefield School (Grangefield School, 2007).

To enable a fair evaluation of the four selected websites, a questionnaire-like

form has been created based on a design by Briers and Dwyer (2005, p2), to

allow a number of set criteria to be evaluated. Examples of criteria include first

impressions on the website design, page loading time (using Fasterfox, a Firefox

add on), and several more. These questionnaires are attached as part of

appendix H, and the findings summarised below.

8.2.1. Summary of Competitors

In simple terms, the quality of the design of all four websites was relatively poor,

and did not set a good first impression of any of the schools. The one that did

leave any positive impression was Blakeston School, with its more structured

layout and features such as a search engine, and a RSS feed.

Figure 8.1. Thumbnails of school websites. From top left: Bishopsgarth School,

Blakeston School, Conyers School (bottom left), and Grangefield School.

Matthew Connor (D4060381) 37

Page 40: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

However looking at these websites has given plenty of ideas, as to what kind of

content will be required on the fictional school website. Areas that will be

included will be a prospectus section, a subjects section, and more general areas

such as extra curricular, news, and careers. Some of these ideas may have

been overlooked if it was not for this competitor analysis. The fictional school

website with its AJAX content management system should easily surpass the

standards in terms of layout, and set a greater first impression to any prospective

parents and pupils.

The major area highlighted is to ensure that web standards are adhered to, with

accessibility at least passing the basic level, and alternate text being included for

all images, with valid XHTML and lack of alternate text being the failure of all four

analysed school websites.

8.3. Scripting Standards Analysis

As the project is based on implementing an AJAX content management system

on to a fictional school website, then JavaScript will definitely be required during

the course of the implementation. There may also be the need to develop some

extensible mark-up language (XML).

As the school is a ‘fictional’ one, a traditional static website needs to be first

created using XHTML and CSS. The main version of cascading style sheets

(CSS) widely used today is currently version 2.1, and this will be used for the

styling of the web pages, as there is also a validator available online (W3C,

2007) for the testing phase of the project to ensure no invalidities remain in the

CSS file. For XHTML there are two feasible options, both polar opposites in

terms of flexibility. The first, XHTML 1.0 Transitional allows the most scope for

flexibility from user inputs, and is also supported by tools such as the TinyMCE

JavaScript editor (TinyMCE, 2007a). XHTML 1.1 Strict is technically cleaner

and more standards compliant than 1.0, however it may restrict the possibilities

Matthew Connor (D4060381) 38

Page 41: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

for the implementation of the AJAX content management system. Therefore

XHTML 1.0 Transitional will be used for the development of the static website,

and will also be used for the dynamic version of the website which will be

developed.

The dynamic version of the website, of which the final prototype will use AJAX,

will allow the content management system to be effectively ‘plugged-in’ to the

existing design using a server side scripting language called PHP. The content

to allow it to be made dynamic will be drawn from a MySQL database, rather

than being ‘hard-coded’ into the page, as is the case with the static site. This will

require the use of SQL commands to insert all data into a database. All the

information and layout of the website will continue to use XHTML 1.0 and CSS

2.1.

To summarise, the scripting languages that will be used throughout the course of

the entire implementation are; XHTML 1.0 Transitional, CSS 2.1, PHP, SQL,

JavaScript, and XML.

8.4. Content Management Systems Analysis

There are a number of different content management systems which are freely

available to download and use. However, only one has been found that directly

uses AJAX throughout its interface, and front end. This content management

system is called ModX (ModX, 2007b). This will be analysed and compared

against another popular content management system, Joomla (Joomla, 2007).

8.4.1. ModX

The ModX administration panel can at first be quite confusing due to the tabbed

layout of its navigation. For example, to add a user to the system, an

administrator has to click on security, and then manage users. Some users may

Matthew Connor (D4060381) 39

Page 42: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

have difficulty locating user management in this location, if they do not think to

check the security menu tab.

Figure 8.2. Screen shot of the ModX Administration Control Panel Home

The interface as seen in figure 8.2 is not very detailed, and may make some

users feel daunted trying to use it, as it is not clear where to begin to carry out

any tasks. The design just seems to focus on AJAX, rather than usability for

administrators. This confusion continues on something like the user manager,

where there is only a new user button and no edit or delete user buttons. Each

user has to be clicked individually for a small menu to appear, to edit or delete

the user.

Matthew Connor (D4060381) 40

Page 43: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

Figure 8.3. An example site created by ModX.

One good feature of ModX is when you navigate the site when logged in as an

administrator. As highlighted at the top of figure 8.3, there is a quick edit mini

toolbar which you can drag around the page that enables you at any time, to

change the title of a page, or the content of the text, and so on. It also allows you

to revert back to an older version if you change your mind about an update.

8.4.2. Joomla

Alike ModX, Joomla is freely available as open source software. This CMS does

not use AJAX, but sticks to the basics and what users would know best from a

CMS, and other desktop applications such as Microsoft Word.

Matthew Connor (D4060381) 41

Page 44: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

Figure 8.4. Screen shot taken of the Joomla Administration Panel

As seen in figure 8.4, the administration panel is clean, and has large buttons

that take users to the main areas of the panel that would be commonly used such

as managing static content, and a user manager. These are also accessible with

the entire administration area in a drop down menu near the top of the screen,

below the Joomla logo. This acts in a similar way to menus in a desktop

application, so users would feel more at ease using them. All the features

expected of an administration panel are easily found in the clearly named

categories such as Content, Messages, Modules, and Site.

Figure 8.5. Screen shot showing the Joomla user manager

Matthew Connor (D4060381) 42

Page 45: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

Entering the user manager presents a simple screen as shown on figure 8.5. It

contains buttons under the navigation with the main operations expected, such

as add, edit, and delete.

8.4.3. Conclusion

When comparing both CMS’ side by side, Joomla has to win on the basis that it

is far more user friendly than ModX, which seems to be more style than

substance. Both have features however, that if combined together would make

an excellent CMS, such as ModX’s quick edit toolbar, combined with Joomla’s

administration backend.

This also goes to show, just because a CMS is mainly focused on AJAX, does

not mean it is necessarily better than a standard well designed PHP and MySQL

equivalent. If used in the right quantities however, AJAX could improve a

standard design in terms of usability, for example, content editing, with a save

and continue editing button, alike that seen on Word Press software.

8.5. Software Analysis

To allow the implementation to be designed effectively and efficiently, an analysis

on the software available is to be carried out. Two different variants will be

examined including a commercial product, and an open source product.

8.5.1. Adobe (Macromedia) Dreamweaver

This is the commercial product that is available to develop the project artefact.

Dreamweaver can be used as both a WYSIWIG (what you see is what you get)

editor, and a code editor.

During the implementation, only a code editor is required, as the skills to code

directly into an editor have been achieved over the past few years, and allows

Matthew Connor (D4060381) 43

Page 46: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

more flexibility in terms of laying out an XHTML page, with the combination of

CSS.

An advantage of the code editor is that it is colour coded which helps developers

to clearly see the differentiation between elements such as tags, and normal text.

An overall advantage of Dreamweaver on the whole is that it has the ability to

handle the editing of files for all the scripting languages required for this

implementation, and has different colour coded schemes for each.

Another advantage of Dreamweaver is the ability to create both XHTML

templates and PHP templates. The main purpose of these templates is the

ability to create web pages with a default structure, and then if changes are made

to the template at a later date, all changes will be updated in the associated files.

Within these templates there is the ability to set editable regions, where all area

outside of them cannot be accidentally changed.

Dreamweaver includes a feature called ‘Sites’ where a local directory can be set

up as the root of a website development. These ‘sites’ can also include FTP

details to connect to a remote server, using Dreamweaver’s in built FTP client.

This feature easily allows developers to switch between developments or

versions of websites.

One disadvantage is linked to the use of the Dreamweaver templates, in which

occasionally a file will lose its association with a template. Also any changes in

PHP template code made are not updated through all the associated files, which

means each file has to be edited individually.

Matthew Connor (D4060381) 44

Page 47: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

8.5.2. Nvu

Nvu is an open source web page editor which is freely available to download

from the Internet (Nvu, 2007). In many ways the software is comparable to

Dreamweaver.

The Site Manager however varies in the fact that it only deals with remote files,

and has no facility to provide a local list of files from a computer’s hard drive. It

can however open remote files, edit them, and then republish them back on to

the web server. However it takes a few seconds to firstly connect to the web

server to do this, then a few seconds to open any directories, then a few seconds

whilst it downloads the file. It may just be as quick, to open the local version of a

file, jump into code view, make the changes, save the file, and publish the

changes to the Internet. Using Nvu’s site manager will cause the local file to

become outdated to the remote file over a period of time and number of updates.

One nice feature of the WYSIWIG editor is that you see the effects of the CSS in

the editor, and can change them accordingly if they do not match the

requirements of the user. This saves having a browser window open, which

requires refreshing each time a file is updated and saved.

Nvu also saves the XHTML files in .xhtml format, which is the actual format

XHTML files should be published in. But many web servers do not support the

file type, hence why XHTML files are almost usually saved as .html files.

One downside to Nvu is there are no facilities to create templates, and therefore

an XHTML file would have to be created with the default code, and copied over

to a new file when required. This then means updates would have to be done on

a page by page basis; if for example, there was a change to the structural layout

of the page, and for a website with tens of pages and more, this would be

extremely time consuming.

Matthew Connor (D4060381) 45

Page 48: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Analysis Phase

8.5.3. Summary

With the previous findings as a point of reference to what software to use for the

development of the project artefact, it has been decided that Dreamweaver will

be the most effective software at creating the static and dynamic websites,

templates, managing the files, and uploading them efficiently to the web server

when required for testing.

If a computer is used without access to Dreamweaver, then Notepad or any plain

text editor can be used to implement any required changes, as it is unlikely for

many computers to have Nvu installed as standard.

Matthew Connor (D4060381) 46

Page 49: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Design Phase

9. Design Phase

The design process has been carried out using documentation which was

proposed as part of the hybrid web methodology created. The decisions

regarding the design of the website and AJAX content management system

(CMS) have been influenced as a result of the analysis of competitors and users

in the previous section of the report.

9.1. Original Sketches

To begin the entire process of design, sketches were produced of various

elements of how the site should be structured, what controls to include in the

AJAX content management system and so on. These original sketches are

attached to the report as part of appendix I.

The rationale behind producing the sketches for the website and AJAX CMS is to

enable creative ideas which can help decide on future design factors, such as

logos, and colour choices. Sometimes during sketching a design, the ideas of

which colours to use may also come to some as a result, but will still need

documenting and justifying. However, every person is different, and creative

talent varies from person to person.

For this artefact the sketches have been produced without any external influence

from a client, as the website being produced is for a ‘fictional’ client.

9.2. Logo Design

The logo had to be designed for the entire website and associated AJAX CMS as

the client ‘Middleton High School’ was fictional. Common practice would suggest

that several logo ideas would be put before a client, before one is chosen, with

any changes being implemented after feedback. However, in some cases the

Matthew Connor (D4060381) 47

Page 50: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Design Phase

logo will already exist, and will have to be used, and considered when creating

the design of a website and such documentation such as the colour palette.

In the case for this report, a logo was created, using Adobe Photoshop, after a

couple of sketches on the website design sketches (appendix I). The idea of the

logo was to have an oak tree, with grass, along the bottom using a brush, and

the sky above using a cloud render filter. The image of the oak tree is originally

from Icons of England’s image database (Icons of England, 2007). The tree was

extracted from its background and placed on the new logo background created

as mentioned above. The logo was then used as a basis for the colour palette,

as if it had already existed, and was received from the ‘client’.

9.3. Colour Palette

The ideas behind the selections of colours for a website usually derive from two

areas, the first being the logo that has to be used for a website, and secondly

from a mood board. For the scope of this project the creation of a mood board

was not deemed necessary, as the website is formal, and mood boards are best

used for sites that designs are informal and need to be more creative. In

addition, the colours chosen originated from the idea of using an oak tree, as the

main feature in the logo. Table 9.1 shows the colours defined in a colour palette.

Matthew Connor (D4060381) 48

Page 51: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Design Phase

Table 9.1. The colour palette to be used for the design of the Middleton High

School with justifications for each colour choice.

The hexadecimal codes have been given to enable a quick visual reference, for

when implementing the colours into the implementation phase, with particular

reference to the cascading style sheet (CSS).

Black (#000) and white (#FFF) will both be used in the design of the web site but

only as default colours for the background of the content area and text. This is

due to black on white having the greatest contrast difference, therefore making

them the easiest combination to read from. The rationale for remaining with

black text on a white background for the content is to read as if it was a piece of

paper, which people will be most used to.

Matthew Connor (D4060381) 49

Page 52: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Design Phase

9.4. Font Palette

This document serves a similar purpose to the colour palette, and sets out which

fonts are to be used. This is not as necessary in a web environment, as by

standard, most websites should stand by the default family of fonts which are

used by most computers. Using cursive fonts, which have been downloaded

from websites such as DaFont.com (DaFont.com, 2007), may seem visually

appealing to use on a website, but if the user does not have it, then a default font

will be shown, meaning the design of the website could fail, and not render as

expected by a designer.

The default font family which will be used for the website’s textual content will be

‘Verdana, Arial, Helvetica, sans-serif’. This will be the list implemented into the

CSS file under the body selector (Figure 9.1), which will cause all fonts to be

displayed as default in Verdana.

Figure 9.1. A snippet of example CSS code showing how a font family is

implemented.

If a user does not have the Verdana font installed on a computer, then Arial will

be shown instead, and so on. The sans-serif is the general term for all of these

fonts, and if none in the list can be found, then a generic one will be displayed by

the browser.

Verdana and sans-serif fonts have been chosen for this website and AJAX CMS

as sans-serif fonts are generally easier to read on screen. In comparison, serif

Matthew Connor (D4060381) 50

body {…font-family: "Verdana", "Arial", "Helvetica", sans-serif;}

12345

Page 53: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Design Phase

fonts such as Times New Roman are easier to read on paper, as the serifs on

the letters, help the eye to flow through the text far easier.

A font palette has been produced for this project, but only in regards to the logo.

These fonts are listed below in Table 9.2.

Font Example Font Name

MIDDLETON Baskerville Old Face (36pt)

MiddletonCastellar (36pt)

MiddletonCopperplate Gothic Bold (36pt)

MiddletonFelix Titling (36pt)

MIDDLETONGoudy Old Style (36pt)

MIDDLETONOpus Chords (36pt)

MIDDLETONTimes New Roman (36pt)

Table 9.2. The font palette which was used to help decide on a font for the

school logo.

Serif fonts were used for the logo as they traditionally are associated with formal

businesses. Also the competitor analysis highlighted the use of serif fonts for

other school’s logos. From the above, the font Goudy Old Style will be used for

the logo, and only the logo. Due to the fact that the logo is an image file, and the

font is embedded when the file is compressed and saved, then the font will

Matthew Connor (D4060381) 51

Page 54: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Design Phase

display. However, if images were turned off users, would be unaware what the

font was, and would rely on the alternate text of the image on the web page.

The final logo is pictured below in figure 9.2.

Figure 9.2. The logo produced in Adobe Photoshop, which was a basis for the

final colour palette, and required the font palette for completion.

9.5. Storyboards

Storyboards are similar in many aspects to the original sketches but are a more

formal document. The sketch is replaced by either a diagram or screenshot of

the design that will be used, with an accompanying text box, detailing areas such

as the use of text, colour, sound, animation, and so on.

The storyboards for this project are attached in appendix I, and confirm the use

of colours and text defined earlier from the colour and font palettes. There is a

storyboard for each time a web page has a different layout. These different

storyboards will roughly map out to be the templates that will be created to aid

with the implementation of the AJAX CMS and website.

9.6. Content

No website can be built without knowing what pages, and types of content to

include as a result. Therefore, a navigation chart that lists the pages that the

website requires for the implementation phase is attached as part of appendix I.

Matthew Connor (D4060381) 52

Page 55: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Design Phase

All files will use the .html extension, to produce a static website, of which to build

upon, before changing them to .php when the dynamic content management

system is built into the website.

There is also a possibility that a second version of each file will be created with

_edit added to the end of each file name when the content management system

is implemented.

All the narrative in each of the pages will be developed from scratch, and will

vary in length to test the design of the XHTML and CSS, to ensure the website

renders correctly when differing amounts of text are applied to the content areas.

Any images that are used in the website have been ascertained from the Internet

and have been recorded in an images reference list, which is attached as part of

design appendix I accordingly.

9.7. Navigation Chart

The navigation chart is a document that maps out how each page is linked to

each other in the website’s architecture. The document however, does not

include links to supporting files such as CSS and JavaScript.

Each box on the navigation chart represents a page, and the lines between them

indicate the links between.

The navigation on the website however, will link to all main content areas from

the primary navigation, down the left hand side of the page, as seen on the

storyboards. The opportunity to use a breadcrumb trail was declined, as the

depth of the website, is no greater than three clicks, and therefore a user is

unlikely to get lost in the website’s structure. One ‘get out clause’, that most

websites implement is linking the logo image file, back to the home page, should

Matthew Connor (D4060381) 53

Page 56: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Design Phase

a user wish to return there, and begin from the ‘top’ of the navigation again. The

use of the word ‘Home’ is not generally recommended in a navigation system,

which is another reason why the logo is hyperlinked accordingly.

The navigation chart for the design of the artefact is outlined as part of appendix

I.

9.8. Entity Relationship Diagram

As the website includes an AJAX CMS which will be able to carry out ‘live

updates’, then a database will be required to save these changes permanently. If

there was no database, any changes made to a static XHTML file would be lost

once the page was closed or refreshed.

The database will also be required to manage users who can login to the AJAX

CMS, and to decide who has access to which pages to edit. For example, the

administrator would not want a faculty head, to have access to the user

management area of the AJAX CMS.

An entity relationship diagram (ERD) is a model that shows how each table in a

relational database is linked to another. The model shows the cardinality of each

relationship, and gives a name to each of the relationships.

Matthew Connor (D4060381) 54

Page 57: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Design Phase

Figure 9.3. The entity relationship diagram for the AJAX CMS enabled website

Table 9.3 shows a data dictionary that decides what fields will be required within

the database, and what data type they are, and which entity (table) each belongs

to. Primary keys are indicated in bold and underline, with foreign keys in bold.

Using table 9.3, SQL code can be created during the implementation phase to

simply add these entities to a MySQL database. A big integer has been used for

all the ID data types, as it would be infinite as to how many pages and users

could be added, for example. Date and time will be generated at the client side

using PHP and hidden input fields, before being inserted into the relevant

database table.

Matthew Connor (D4060381) 55

Page 58: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Design Phase

Entity Field Data Typepage_category category_ID bigint(10)page_category category_name varchar(50)page_details page_ID bigint(10)page_details author_ID bigint(10)page_details category_ID bigint(10)page_details page_heading longtextpage_details page_content longtextpage_details page_date datetimepage_details page_time datetimeuser_details user_ID bigint(10)user_details faculty_ID bigint(10)user_details privilege_ID bigint(10)user_details first_name varchar(50)user_details surname varchar(50)user_details user_name varchar(50)user_details password varchar(50)user_details email_address varchar(150)user_details register_date datetimeuser_details register_time datetimefaculty faculty_ID bigint(10)faculty faculty_name varchar(50)privilege_level privilege_ID bigint(10)privilege_level privilege_name varchar(50)

Table 9.3. Data dictionary for the database to be created from during the

implementation phase.

Matthew Connor (D4060381) 56

Page 59: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

10. Implementation

The implementation has been reached after concluding the analysis and design

phases. The findings of these will be evident as the implementation carries on

throughout the development period.

The implementation has four distinct development phases to firstly allow for

versioning, in the event that something could potentially go wrong further down

the development line. For example, if some code was accidentally overwritten,

and as a result, the entire content management system fails to work. With the

versions to fall back on to, any mistakes such as the above will be quickly

recovered from, rather than having to start again from scratch.

The four distinct development phases are as follows:

• XHTML and CSS development (Basic static site).

• PHP and MySQL development to static site (Making content dynamic).

• Implementing content management system with login facility.

• Identifying and implementing AJAX into content management system.

10.1. Developing XHTML Site

As determined in the analysis phase XHTML 1.0 Transitional and CSS 2.1 are

going to be used for the development of a basic static school website.

The rationale for developing this basic static website is to give some foundations

to allow for the development of an AJAX CMS, and also to represent the phases

required to upgrade a website from XHTML to a dynamic AJAX CMS.

If this project had a client, the likelihood would be that they would already have at

the very least a static website, to which they wish to add a content management

system, and if not, would require one built from scratch.

Matthew Connor (D4060381) 57

Page 60: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

In the first case this static website would provide the foundations, with all of its

content already available, including text, images, and any multimedia elements,

such as Flash movies. Using this as a start up point, then the implementation of

an AJAX CMS could begin, by exporting content to databases, and re-supplying

it to the pages dynamically using a server side script.

In the latter example if there was no site to begin with, then with the client’s

feedback, a static prototype could be developed using XHTML and CSS to give

the client an idea of how the AJAX content management system would work.

Then if they have any suggestions to the prototype, these can be taken forward

to the next level, of making the prototype more dynamic, showing the client how

databases are being used to store content. This cycle continues on, by

implementing the content management system, then receiving any feedback,

before the final implementation with AJAX. If the client is happy with the

prototype, then it can be finished, and developed to a full scale website and

AJAX content management system.

10.1.1. Starting With a Blank Canvas

With the analysis and design as the basis for the website, the construction of the

pages began. The first step was to categorise the pages identified on the

navigation chart into different templates. These templates could then be

developed using Dreamweaver and its template features.

Three distinct different kinds of web page have been identified, and go under the

name of master, prospectus, and subjects. The first template ‘master’, will be the

default template that all pages will use, unless otherwise specified. The

‘prospectus’ and ‘subjects’ template have been defined due to the nature of their

content being more than one level deep. All pages under these headings are

stored under the subdirectories ‘prospectus’, and ‘subjects’ respectively on the

Matthew Connor (D4060381) 58

Page 61: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

web server, with the exception of the prospectus.html and subject.html files.

Another reason for dividing these pages from the default template is to allow for

the navigation to expand, to show all the links under the headings of prospectus

and subjects to the user, without having them expanding the menu throughout

the entire site.

Using the storyboard to identify the different area names of a web page, the div

tags were added to the default master XHTML 1.0 template.

Figure 10.1. Example code from master template, showing the basic XHTML

structure of the page.

Alone this would not generate anything resembling the planned layout shown on

the storyboards. Also to help with the creation of the CSS layout, content was

added to each div tag. The navigation was placed within the ‘leftnav’ div tag

(figure 10.2), and an editable template region placed within the ‘content’ div tag

(figure 10.3). The inclusion of the logo was also added to the template within the

‘header’ div tag (figure 10.4).

Matthew Connor (D4060381) 59

<body><div id=”shell”><div id=”header”></div><div id=”personalBar”></div><div id=”leftnav”></div><div id=”content”></div></div><div id=”footer”></div></body>

123456789

Page 62: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.2. Navigation created using an unordered list.

Figure 10.3. Editable region for the content area.

Figure 10.4. Logo added to the header of the page.

The next step was to position the entire content using cascading style sheets

(CSS). This is where a major rendering issue occurred in Internet Explorer 6,

however, the web page rendered as expected in Mozilla Firefox, and Internet

Explorer 7.

Matthew Connor (D4060381) 60

<div id=”leftnav”><ul id=”mainmenu”><li><a href=”#”>About Us</a></li><li><a href=”#”>Prospectus</a></li><li><a href=”#”>Subjects</a></li><li><a href=”#”>Careers</a></li><li><a href=”#”>Extra Curricular</a></li><li><a href=”#”>Library</a></li><li><a href=”#”>Exam Results</a></li><li><a href=”#”>Ofsted Report</a></li><li><a href=”#”>News</a></li><li><a href=”#”>Calendar</a></li><li><a href=”#”>Contact Us</a></li><li><a href=”#”>Intranet</a></li></div>

123456789101112131415

<div id=”header”><a href=”#”><img src=”./images/logo.jpg”alt=”Middleton High School Logo” width=”760px” height=”130px” /></a></div>

1234567

<div id=”content”><!-- TemplateBeginEditable name="MainContent" --><p>Example content</p><!-- TemplateEndEditable --></div>

123456

Page 63: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.5 shows CSS code snippets on how the div tags were positioned as

required by the storyboards during the design phase of the project. The snippets

of code exclude details such as minimum height and formatting, which are

available from the code listing in appendix F.

Figure 10.5. CSS code snippets showing the first version of the CSS file

regarding positioning of the div tags.

With the content area rendering unexpectedly in Internet Explorer 6, options

needed to be explored on how to fix the solution. It was recommended by the

project supervisor to look at fluid layouts, but in the end the solution was simple,

with only a few edits to the CSS file required. The margin left and right properties

in figure 10.5, simply centres the div elements to the centre of the browser

window. The shell is the div tag that contains the entire design, with the

exception of the footer after this first version.

Matthew Connor (D4060381) 61

#shell {margin-left: auto;margin-right: auto;width: 760px;}#personalBar {height: 30px;}#leftnav {float: left;width: 130px;}#content {width: 618px;margin-left: 130px;}#footer {width: 760px;margin-left: auto;margin-right: auto;}

123456789101112131415161718192021

Page 64: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.6. The left image shows the Internet Explorer 6 render of the CSS file,

with the right image showing Mozilla Firefox.

The solution involved moving the footer div tag as shown in figure 10.1 inside of

the shell div tag with the rest of the layout elements. Then the CSS was altered

as follows in the code snippet.

Matthew Connor (D4060381) 62

Page 65: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.7. CSS code snippet showing the very few changes to the CSS file to

fix Internet Explorer 6 issue.

The background colour has been added to the shell so that the menu as seen in

figure 10.7 will not suddenly stop short, and will continue down with the content

box, which has its own formatting to produce a more consistent look to the

design. The header was forced to have a height, which coincides with the height

of the logo image file, which was seen in the design section of the report.

Instead of forcing the content area to have a fixed width within the shell, it is now

using the margins of the shell to position itself, and in turn giving itself a dynamic

width, which will work out at 630 pixels, without borders. The footer has been

told to clear the div tags above it, and has been given a fixed width, to ensure it

renders correctly in Internet Explorer 6.

Matthew Connor (D4060381) 63

#shell {...background-color: #7BBB7B;}#header {height: 130px;}#content {margin-left: 130px;margin-right: 0px;}#footer {clear: both;width: 760px;margin-left: auto;margin-right: auto;}

1234567891011121314151617

Page 66: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.8. The corrected CSS working in Internet Explorer 6

It is amazing how two lines of CSS can make such a difference between

browsers. The fix did take a couple of hours to work a solution for, as the

thought it would be something as simple as to add margin right to the content

and remove the fixed width did not occur until the whole CSS file was broken

down bit by bit, and the XHTML examined closely to ensure there were no errors.

The underlined CSS code in figure 10.7 shows the two lines that were the

influence to the changes seen above in figure 10.8.

The CSS menu was fairly simple to create using the unordered list and

associated list elements. The XHTML for these can be seen in figure 10.2.

The unordered list which had the ID of ‘mainmenu’ used CSS to remove the

bullet points, and removed the margin and padding from the left hand side. The

anchor tags that are placed inside each list element were styled, by changing

their display type to block, and giving them each a width of 126 pixels. A border

was placed along the bottom of each to separate each menu item, and to give

the user a visual reference between each. The underline from the standard

hyperlink was removed using text decoration. To achieve the hover effect seen

when the mouse rolls over each menu item, a background colour which was

darker than the normal menu background was selected, and the colour of the text

Matthew Connor (D4060381) 64

Page 67: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

changed also. This process was repeated for both the prospectus menu and

subjects menu, only using a different colour scheme as seen in figure 10.10.

Figure 10.9. CSS snippet showing how the left navigation was achieved

Matthew Connor (D4060381) 65

#mainmenu {margin-left: 0px;padding-left: 0px;list-style-type: none;}#mainmenu a {display: block;padding: 2px;width: 126px;border-bottom: 1px solid #000;}#mainmenu a:link {text-decoration: none;}#mainmenu a:hover {color: #B1DBE7;background-color: #006600;text-decoration: none;}#mainmenu a:visited {color: #000;text-decoration: none;}

1234567891011121314151617181920212223

Page 68: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.10. Prospectus menu expanded inside of the left navigation, using

CSS.

Upon the correction of the CSS, and the implementation of the navigation the

development of the XHTML version of the website continued, and included

inserting the narrative to all thirty pages, and inserting the images, using a CSS

float. The images had been resized from their original size to firstly save disk

space on the web server, but to also decrease the download time, and allow

easier integration into the CSS design, without stretching the dimensions of the

content area.

The final code for the three templates and CSS file, minus the narrative (pre and

post CSS solution) is attached to the code listing in appendices B and F.

Matthew Connor (D4060381) 66

Page 69: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

10.2. Developing Site with PHP and MySQL

The next step with the static website all complete and correct was to move the

narrative out of the page and call it from a database, so it could be edited client

side in the AJAX CMS, without the need for any software, like Dreamweaver.

The first step was to create the MySQL database in preparation for the data

being inserted. The database was created using the web host’s administration

panel. The details such as username, password, and database name were

entered here.

Figure 10.11. Using the web host administration panel to create the database.

The structured query language (SQL) code was separated into two separate files

to allow for the definition of creating the database, and for inserting the data for

the website into the database.

The first SQL file begins with dropping tables (entities) from the database if they

exist, to allow the update of a database structure if it has been edited in the main

body of the SQL file.

Matthew Connor (D4060381) 67

Page 70: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.12. SQL code snippet showing the drop table statements.

The tables are dropped in a certain order, with those with foreign key

relationships deleted first, followed by those without. This decomposes the

relationships correctly and avoids receiving an error, with the drops being

unsuccessful.

The create table statements are simple to execute, with the name of the field

required, the data type and its associated length if applicable, whether the field is

compulsory (with the use of not null), whether the field needs to auto increment,

and whether the field is a primary key.

Foreign keys which link to the other tables within the database are added at the

end of the create table statement before the closing bracket.

Matthew Connor (D4060381) 68

drop table if exists page_details;drop table if exists user_details;drop table if exists page_category;drop table if exists faculty;drop table if exists privilege_level;

12345

Page 71: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.13. SQL code snippet showing a create table statement.

The full SQL file regarding the creation of the website is attached in appendix C

as part of the code listings.

The insert statements in the second SQL file are also simple, and each row of

data required, equates to one line of insert statements. The format for the

command is 'insert into table name the values' which are expected as defined in

the previous SQL file and in the data dictionary in the design section. The SQL

insert commands for the page_details table included the narrative from the static

website, keeping XHTML tags to format the paragraphs and headings.

Figure 10.14 SQL code snippets of two SQL insert statements.

Matthew Connor (D4060381) 69

create table user_details(user_ID bigint(10) not null auto_increment primary key,faculty_ID bigint(10) not null,privilege_ID bigint(10) not null,first_name varchar(50) not null,surname varchar(50) not null,user_name varchar(50) not null,password varchar(50) not null,email_address varchar(150),register_date datetime, register_time datetime, foreign key(faculty_ID) references faculty (faculty_ID),foreign key(privilege_ID) references privilege_level (privilege_ID)};

1234567891011121314151617

insert into faculty values ('1','Art and Design');insert into faculty values ('2','Citizenship');

1234

Page 72: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

As seen in figure 10.14, data is being inserted into the faculty table, with the ID of

1, and the name ‘Art and Design’. An example of a full insert regarding the

page_details entity, is attached as part of appendix C, along side the inserts for

all other entities.

With the SQL statements complete, it was time to import the files into the

database, using a backend administration tool called phpMyAdmin. This tool

gives a user a graphical interface to interact with the database, and allows easier

input of SQL queries into the database.

Figure 10.15. Screen shot of the phpMyAdmin interface where SQL code can be

inputted.

As seen in Figure 10.15 the SQL can be typed in directly into a text area, or

uploaded using a SQL file. In the event of this project, the upload file feature was

used, to save time, and keep the SQL available for editing if required to do so at

a later time.

Matthew Connor (D4060381) 70

Page 73: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.16. The view in phpMyAdmin, when SQL code is inserted

successfully.

On a couple of occasions, an error was thrown up by the interface, similar to this

one:

“#1064 - You have an error in your SQL syntax; check the manual that

corresponds to your MySQL server version for the right syntax to use

near 'category_name varchar(50) not null

)' at line 4”

These errors were eventually overcome by checking the SQL code for missing

commas, at the end of each statement. One comma missing from a statement

will cause the SQL input to fail at the point of the error.

With the errors all rectified, and the database populated fully, in terms for the web

page content, and partially, for testing future events such as login, it was time to

remove the static page content, and retrieve it dynamically for the database.

With prior knowledge of PHP, from previous years, the script for the connection

to a database was fairly straight forward, and was inserted into the content div

tag in each of the three templates. The connection string is concerned with three

Matthew Connor (D4060381) 71

Page 74: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

main areas, including the server name, database username, and password. In

some cases the database server is required, and was so in this case. By default

this value is usually ‘localhost’, but for the web hosting platform the artefact is

hosted on, the server address was ‘mysql1033.servage.net’.

Figure 10.17. PHP code snippet showing the connection to a MySQL database.

As seen in figure 10.17 the MySQL database had been linked to the template,

ready for the retrieval of the content. This caused an issue; after a select SQL

query was placed into the PHP script at line 11 (figure 10.17). After echoing the

result variable into the template, this was not giving the desired result, and was

instead showing resource ID’s in place of where the content should have been on

the page.

This was overcome after some research in how to retrieve and display data from

a database from a book by Ullman (2005, p251-252). The reason that resource

ID’s were being displayed was the result variable ($result) was still an array, and

only the page content was needed from each row. This solution by Ullman

(2005, p251-252) is shown in figure 10.18.

Matthew Connor (D4060381) 72

<div id=”content”><?php// connect to mySQL database$db=mysql_connect ("mysql1033.servage.net", "mconnor_uni", "eWi27") or die ('I cannot connect to the database because: ' . mysql_error());// select relevant mySQL databasemysql_select_db ("mconnor_uni");// SQL query to gain content$contentQuery = "select page_content from page_details WHERE page_ID='1'";$result = @mysql_query($contentQuery);// close MySQL connectionmysql_close();?></div>

1234567891011121314151617

Page 75: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.18. Solution to echoing the content to each page (Ullman, 2005,

p251-252)

With the content now displaying properly, the files could be recreated, with the

same filenames, only this time editing the ID’s in the PHP code to call the correct

data for each page. This was all carried out without any issues. This signalled

the end of this development phase, by converting all the static narrative, to

dynamic data, which now has the potential to be changed in the AJAX CMS.

10.3. Implementing Login for AJAX CMS

With the scope of the website increasing in terms of surface area, several new

templates needed to be created, alongside the existing ones. The names of all

of the templates in this development phase are:

• Master

• Prospectus

• Subjects

• ADMIN-Main (for all admin master pages)

• ADMIN-Master (for the admin control panel)

• ADMIN-Prospectus (for all prospectus pages under admin panel)

• ADMIN-Subjects (for all subjects pages under admin panel)

Matthew Connor (D4060381) 73

<div id=”content”><?php// previous content from Figure 10.17 goes herewhile ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {echo $row['page_content'];}?></div>

123456789

Page 76: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

To enable the login to an admin control centre, it was decided to remove the

login form from the personal bar div tag, and replace it with a separate login

page, to make it more discrete, instead of broadcasting the login facility to all

users who visit the website on pages such as the home page.

To enable the login to be successful and more secure, the use of sessions and

session variables was elected, after discussion with the project supervisor. Prior

to this project, experience of successfully using sessions had been limited, but

the basics were achievable to begin with.

The session in every PHP template, has to be the first to start, in the code, so

therefore is positioned above the starting HTML tag. This is achieved by one

line, with the code ‘session_start()’. The database will also need

connecting to, to compare the values from a login form to those held in the

database. If they match, then the login will be successful, and the user

redirected to the admin control panel using a PHP header location. If the login

details do not match anything in the database, or are incorrect, then an error

message needs to be shown. This algorithmic approach helps to set out some of

the comments in the PHP script, to try and develop it. A tutorial was found online

to help guide the development of the entire PHP script (PHP MySQL Tutorial,

2007). Comments were added to the code to show understanding as to what

each line of code meant, and what its function was. This can be seen at the start

of the template code in appendix D.

Matthew Connor (D4060381) 74

Page 77: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.19. Login PHP code snippets created with guidance from online

tutorial (PHP MySQL Tutorial, 2007)

This is only half of the login system which deals with the login form being

submitted by a user on the website. To enable the login to be meaningful, the

redirected page (controlpanel.php), and all pages under the control panel, will

need some PHP script at the head of each page, to check whether the session

variables exist, to allow a user access to administrative areas.

Matthew Connor (D4060381) 75

<?php// start a sessionsession_start();// create an error message variable$errorMsg=’’;// if session variables are setif (isset($_POST['txtUserName']) && isset($_POST['txtPWord'])) {// database connection details (figure 11.17)// create session variables for username and p/w$userName = $_POST['txtUserName'];$password = $_POST['txtPWord'];// SQL query to gain user details$userQuery = "select user_name from user_details WHERE user_name = '$userName' AND password = '$password'";$result = mysql_query($userQuery);// if the number of results from query is 1if (mysql_num_rows($result) == 1) {// create session for login, redirect user$_SESSION['user_logged_in'] = true;header('Location: controlpanel.php');exit;} else {// display an error message to the user$errorMsg = 'The login details you entered are incorrect. Please re-enter your details or contact the website administrator for help';}mysql_close();}?>

1234567891011121314151617181920212223242526272829303132

Page 78: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

This PHP script is fairly simple, and involves, as standard starting the session,

and then an if statement, to check whether the user has accessed the page, by

logging in or not. In algorithmic terms, if the user is NOT logged in, then redirect

them, back to the login page. If this if condition is not met, then the user will be

allowed access to the page. This was created with guidance again, from an

online tutorial (PHP MySQL Tutorial, 2007), and with guidance from the project

supervisor.

Figure 10.20. Authenticating login on administration panel pages (PHP MySQL

Tutorial, 2007)

The login system took longer than would have been liked at this stage of

development, but did so, due to a lack of experience of working with session

variables. However, with the online tutorial that was used it is likely that this sort

of login procedure would be able to be recreated from memory, as the

understanding as to do what each line does now exists.

Matthew Connor (D4060381) 76

<?php// start a sessionsession_start();// if the user is not logged in, redirect to login.phpif (!isset($_SESSION['user_logged_in']) || $_SESSION['user_logged_in'] !== true) {// redirect using header to login.phpheader('Location: login.php');exit;}// list session variables that need to be called around the administration area

// Andrew’s code$userName = $_SESSION['UserName'];

mysql_close();?>

12345678910111213141516171819

Page 79: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

The guidance from the project supervisor was in relation to carrying a session

variable from the login to use as part of a welcome message, to the user who

logs in to the admin control panel. In the end it was a simple fix, requiring adding

the session variable assignment below line 21 on figure 10.19. This has been

commented as the supervisor’s code, and can be seen in appendix D.

10.4. Implementing AJAX Functions

With the main focus of the project being on developing an AJAX content

management system, this was the area, due to the nature of AJAX that this

development phase was going to deliver the most issues.

To start with, the Prototype JavaScript library was identified as in the research

sections of the report, which could be used to deliver AJAX applications

(Prototype, 2007b). Inevitably with AJAX being a relatively new area of web

development tutorials would be required to aid in the creation of developing

certain AJAX implementations. The areas highlighted for AJAX functions,

included all content pages, so that they could be edited, without reloading the

whole web page. Other possible areas identified were auto suggest lists on a

contact form, so when a user typed in part of someone’s name, for example, a

list of names beginning with ‘P’, would be shown, and narrowed down as each

letter was added.

A tutorial to help assist in creating an in place edit function was identified, which

also made use of the Prototype JavaScript library (McLellan, 2005). This was

seen as ideal, but this course of action, did not succeed for some reason. All

appears to work well, but when trying to commit the changes made, the update

fails. The basic principle of this tutorial was to make a paragraph clickable for

editing, and when clicked a text area would replace the paragraph with its

content, allowing a user to edit it.

Matthew Connor (D4060381) 77

Page 80: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.21. Showing the AJAX edit in place example in action. Phase 1 before

user clicks, phase 2 during an update, phase 3 after update fails.

If this method had worked, it would have simply been adapted to fit in with the

design of the Middleton High School web pages. Despite this setback, an

alternative method was ready to take over. This involved using the TinyMCE

JavaScript text editor and having it shown to an administrator as soon as they

view an editable page.

TinyMCE claimed to be an easy install with only a few lines of JavaScript

required to initialise its functions which have also been downloaded and added to

the file directory of the artefact (TinyMCE, 2007a).

The TinyMCE package comes as a zip file, and when extracted one directory

with all the necessary images and JavaScript is uploaded to a web server. It also

comes with documentation to help users understand the tool further.

The TinyMCE code which initialises the JavaScript file, to convert the normal text

area, into a rich text editor, is given by TinyMCE on their examples pages

(TinyMCE, 2007b). The code regarding an AJAX load and save was selected

(TinyMCE, 2007b) and inserted into the head of the templates for the

Administration area.

Matthew Connor (D4060381) 78

1 2

3

Page 81: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

To allow the text area to be populated with the data relevant to the page, a

MySQL query was carried out between the text area tags, as a PHP script. This

proved successful, and the TinyMCE initialisation was also successful and

provided the AJAX CMS what appeared to be its first success (figure 10.22).

The form originally contained two buttons for both load and save, but the load

button was additional to the needs of this AJAX CMS and was removed, to leave

the Save button alone.

Figure 10.22. Example of the TinyMCE text editor working with the populated

data being drawn from a database.

With the past experience of SQL and MySQL, it was acknowledged that an

UPDATE statement would have to be used to update the ‘page_content’ field in

the ‘page_details’ table. An INSERT would not work here, as the content already

exists in that field, and would produce a MySQL error.

To begin with a separate file was created called ‘savechanges.php’. This called

the session variable created when the form containing the text editor was

submitted. This variable was then used to insert the content into a MySQL

update query, after the usual connection to a database had taken place.

Matthew Connor (D4060381) 79

Page 82: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Implementing this file to the form action, at first seemed to work, and as the area

containing the text editor refreshed upon the completion of the ‘save’, another

issue was seen. A blank variable was being updated to the database, and was

returning the text editor with no content, and had also removed the associated

content from the front end of the website.

To try and rectify this solution, the file’s content was added to the main

templates. However, this returned the same issue, and technically when

standing back and looking at why on this occasion, the reasons were clear. The

main reason this solution was not working from within the main template was due

to the fact the update query which was located above the HTML was taking place

before the select query to populate the text area. Therefore, the update was

erasing any data before it got inserted to the text area. This solution was

scrapped and the external file resumed.

After a couple of hours of changing and trying things, there were two small

errors, which were the root of all the problems. The session variable for the

content was not being done so under a request, but rather as a post. This was

corrected, along side the name of what was being called. Originally ‘contents’

was the name being called, which was the name of the form. This instead should

have been ‘content’ the name of the text area (figure 10.23).

Matthew Connor (D4060381) 80

Page 83: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Implementation Phase

Figure 10.23. The underlined areas showing the cause for confusion which

prevented the save form action for working for a period of time.

This whole issue could have possibly been resolved far sooner, if the names

between these two was significantly different. Following the final success in

getting the text editor and updates working for one page, the time had come to

edit the save changes file to allow the redirect location to be dynamic.

From past experience, and from playing with Dreamweaver’s tool tips when code

is being entered it was known that a session variable for the server could be

called upon for a HTTP referrer. This would allow the save changes file to

ascertain the URL the form had submitted from, and with a variable in the

location header, redirect the form back to itself, reloaded with the new updated

content.

Matthew Connor (D4060381) 81

<div id=”content”><form method="post" name="contents" id="contents" action="./savechanges.php">

<textarea name="content" cols="70" rows="30"><?php// select query similar to figure 11.17?></textarea></form></div>

12345678910

Page 84: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Testing Phase

11. Testing

Testing is an important phase of software development, and is often not carried

out in a great enough quantity or in some cases at all. For the purpose of this

project artefact, there have been four different kinds of testing carried out. These

include:

• Concurrent Testing

• Validation Testing (includes Accessibility)

• Browser Testing

• Functional Testing

Before any testing can take place, a testing platform needs to be defined which

includes selecting a web browser and operating system to use. The identification

of web hosting also needs to take place.

11.1. Defining a Testing Platform

The latest statistics, as a percentage, for the use of browsers on the web today

show the following, as of the end of January 2007 (W3Schools, 2007).

13.342.3

31

1.7

11.7

Internet Explorer 7

Internet Explorer 6

Firefox

Safari

Others

Figure 11.1. Pie chart showing the browser usage (%) in January 2007

Matthew Connor (D4060381) 82

Page 85: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Testing Phase

The others incorporate browsers such as Mozilla, Opera, Flock, and various

others from Linux and mobile platforms. The above pie chart compiled with

statistics from W3Schools (2007), show that all browsers ideally need to be

designed for as they all have a relatively good market share, and when the

number of users on the World Wide Web is considered, excluding one browser

from the design process, could cost a website thousands upon thousands of

visitors theoretically. Internet Explorer shows a 42.3% share, and Firefox shows

a 31% share.

To create the AJAX content management system, a testing platform needs to be

defined, so the results will remain constant and true during the testing phase of

the project. The best way to select a testing environment for this AJAX content

management system will be to use the statistics above.

As the result of the above research, the testing platform for the implementation

phase to take place on will be as follows:

• Operating System: Windows XP

• Browser: Internet Explorer 6 and Mozilla Firefox 2

This software combination also happens to be the most widely available at

different locations to develop the implementation. Also Windows Internet

Explorer 7 will be examined and any errors noted, and also how the

implementation fares in Firefox 1.5 on Fedora Core 6. It is anticipated that there

should be no differences, despite differences in the ACID2 test between the

browsers. The ACID2 test, developed by the Web Standards Project (Web

Standards Project, 2007) is simply an XHTML and CSS page that is supposed to

produce a smiley face if the browser is standards compliant.

It should also be noted that this is just the software being used to test on, and

does not reflect that of the web server that will host the artefact online, in a

protected directory.

Matthew Connor (D4060381) 83

Page 86: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Testing Phase

The web server is in fact a cluster of web servers that work together to provide

more stability and reliability (Servage, 2007). The ‘web server’ will be run from a

Linux operating system, due to its general robustness and security.

The protected directory that has been created for the final artefact prototype is

accessible at the following URL:

URL – http://www.matthewconnor.co.uk/artefact/phpajax

Username – middleton

Password – high2007

Three other developmental prototype phases are also available from the below

URL’s, with the same username and password combination.

• XHTML Site (http://www.matthewconnor.co.uk/artefact/xhtml)

o XHTML Pre CSS fix

(http://www.matthewconnor.co.uk/artefact/xhtml_before)

• PHP Site (drawing content from database)

(http://www.matthewconnor.co.uk/artefact/php1)

• PHP Site (implementing login and session variables)

(http://www.matthewconnor.co.uk/artefact/login)

11.2. Concurrent Testing

Concurrent testing was carried out along side the development of each

prototype, to identify any errors disrupting the progress of the implementation

phase.

Concurrent testing is basically testing sections of code as they are developed to

ensure they are working. This prevents coding large areas of a web application,

before doing any testing, only to find that there are a number of errors,

Matthew Connor (D4060381) 84

Page 87: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Testing Phase

preventing the web application to work, and in some cases, particularly in relation

to PHP, display error messages, which can be ambiguous.

Throughout the implementation section of this report there is evidence of

concurrent testing, for example the issue with the CSS not rendering as expected

in Internet Explorer 6 and the update of content to the database in the final phase

of the prototype development using AJAX.

11.3. Validation Testing

This is a series of a different number of tests to ensure code developed is

standards compliant in regards to the selected versions of languages chosen

earlier in this report during the analysis phase.

11.3.1. XHTML 1.0 Validation

To carry out the testing to see if the XHTML used in both, the static

implementation, and the final PHP with AJAX implementation, the World Wide

Web Consortium’s online validator (World Wide Web Consortium, 2007b) will be

used, with assistance from the Web Developer toolbar (Pederick, 2007) in

Firefox. With three years of XHTML experience, including experience with the far

stricter 1.1, errors are not anticipated.

Any errors have been noted in the results table, and rectified in the code as a

consequence. The results tables are available from appendix G. One error was

found however, due to the nesting of block elements in an inline element. A

further two errors were found in relation to a form not having an action assigned

and labels not matching the names of the input fields correctly. In addition, there

was an issue regarding being unable to validate pages in the admin pages.

Matthew Connor (D4060381) 85

Page 88: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Testing Phase

11.3.2. CSS 2.1 Validation

To carry out CSS validation, the World Wide Web Consortium’s online CSS

validation tool will be used (W3C, 2007). Again with three years of experience of

CSS no errors are anticipated, however there maybe the possibility of some

warnings. This validation test only involves two CSS files ‘middletonHigh.css’,

which was used for the dynamic developments, and ‘master.css’ during the static

development. These files were found to be valid, but did however contain

warnings, as shown in appendix G.

11.3.3. Accessibility Testing

Each page that has been tested previously for XHTML and CSS will be done so

also to ensure compliance with the web content accessibility guidelines (WCAG).

This will be done by using an online validator called Bobby (Watchfire, 2004).

The minimum checkpoint of level one is expected for every page, and any that

fail to meet this, will be rectified, and the errors noted. It is anticipated that some

errors may be found, but should not be related to images missing alternate text.

The results are available from appendix G. The majority of pages created were

accessible to priority level two, and just missed priority level three with one error

regarding identifying the language of the document. All documents passed these

tests, however there was an issue regarding being unable to validate pages in

the admin pages.

11.4. Browser Testing

Browser testing is to ensure that all pages are displayed as expected in each of

the browsers. The primary browsers for testing Internet Explorer 6, and Mozilla

Firefox 2, will be the primary sources for testing, and any display errors

corrected, and noted as necessary.

Matthew Connor (D4060381) 86

Page 89: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Testing Phase

Secondary sources for testing will include using Opera 9.10 on Windows XP, and

ACID2 test compliant Konqueror (figure 11.2) on Linux platform, Fedora Core 6.

Any discrepancies found in these browsers will be noted, but not acted upon.

Figure 11.2. Konqueror passes the latest Acid2 test (As of March 16, 2007)

The results are available from appendix G, and all issues raised concerned the

rendering of the context div area.

11.5. Functional Testing

Functional testing includes putting the final prototype under a number of defined

tests to check features throughout the site. This includes testing the login

procedure, whether an email is sent from the staff email contact form, and editing

data in the content management system on a number of pages.

The results of all of these tests are attached in appendix G, and on the whole

were successful, with the exception of the email staff page, which emailed

regardless of content being entered into the form or not.

Matthew Connor (D4060381) 87

Page 90: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Conclusion

12. Conclusion

12.1. Is AJAX Simple to Implement?

On the surface people will see AJAX as a simple method for increasing the

interactivity of web applications, as it only makes use of the existing technologies

that have been available for a number of years including JavaScript and XML.

However during the process of implementation into a content management

system, this was found not to be the case.

Without the use of tutorials and articles to help try and grasp a better

understanding of AJAX and how it works, the development may have stalled, and

would have had to refer to a normal PHP dynamic development. Despite

following some tutorials to the word, even then the desired result was not being

developed as a result. However, one element should not be overlooked at this

point, regarding the level of experience of a developer with JavaScript and XML.

It is quite feasible that if a developer had a greater grasp of the existing

technologies that the production of an AJAX application would have been found

easier.

This difficulty however in developing an AJAX application is acknowledged in

different articles by Bednarz (2006, p30), Coffee (2006, D1-D5), Paulson (2005,

p16), and Powell (2006, p35). This was confirmed through first hand experience

during the implementation phase of the project.

12.2. Is AJAX the Future of Content Management Systems?

AJAX is the way forward as web applications look set to challenge the

dominance of desktop applications. Google Docs and Spreadsheets is one

example of this cross over from desktop to the web, and one other vital factor, is

Google’s services are currently free.

Matthew Connor (D4060381) 88

Page 91: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Conclusion

Weiss (2005, p20-25) speculates about a future where the boundaries of the

physical desktop computer are erased, and that with the Internet the capabilities

of a computer can be expanded with an idea called Web OS (Weiss, 2005,

p20-25). It may also shift the focus of software being a product to becoming a

service, where people will pay a subscription to use software over the Internet, to

guarantee vendors a continual stream of revenue being produced (Weiss, 2005,

p25). With users subscribing to software, the amount of software installed on a

hard disk will inevitably be reduced, as it will no longer be required. However,

the online tools are still far short in terms of quality of desktop applications due to

the limitations that currently exist with software such as browsers.

At the current time however, there are only a small number of developers who

are able to develop AJAX fully. According to Ray Valdes, who is an analyst with

Gartner Inc., applying a number of different AJAX techniques into one complex

project, which could be compared to an AJAX content management system, is

approaching “the rocket-science level of difficulty” (Valdes, cited in Paulson 2005,

p16). Valdes also added that only a small group could complete a project “in a

comprehensive, complete way” (Valdes cited in Paulson, 2005, p16).

One issue that makes the implementation of AJAX no easier is the presence of

hundreds of different frameworks (Lysecki, 2006, p6); all with different

approaches of AJAX calls and slightly differing code to use the XMLHttpRequest

object. Each of these frameworks are designed with developers in mind who

have not yet ascertained enough skills or confidence to produce AJAX requests

themselves. The OpenAJAX group is making some strides of bringing a

standard way of working with AJAX forward and has the backing of some of the

IT industry’s biggest names.

Accessibility will be the next big challenge for AJAX if its popularity is going to

continue to rise, with developer’s perceptions about accessibility improving as

Matthew Connor (D4060381) 89

Page 92: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Conclusion

each month passes by. Taft (2006b, p12) discusses how one framework

available has incorporated compliance with American Section 508 accessibility

laws (Taft, 2006b, p12).

Content management systems do not technically really require fancy transition

effects and all the ‘glittery’ side of AJAX. However, it has started to creep into

content management systems such as Word Press’ blogging software. The

reason for this is not primarily presentation, but functionality. AJAX allows the

editing of content far easier with a behaviour similar to that of a word processor

when combined with a tool such as the TinyMCE JavaScript text editor. Users

can type away, and every so often, a save can be made on the content, and

saved to a database as a draft, in the event the user accidentally closes the

browser or their computer freezes.

The benefits of a well coded AJAX CMS also stand out for the hardware hosting

them. Bandwidth can be saved, and the amount of memory the web server will

have to consume to process information will be reduced, therefore allowing it to

be allocated for users who may visit the front end of a website at the same time.

Wikis could be cited as the main successor of content management systems, as

they too are responsible for the management of content. However, wikis are

designed to let anyone, including guests in most cases, edit the content of the

page. Therefore to gain more control, a more formal CMS may be required for a

website such as the one developed throughout the course of this project.

Matthew Connor (D4060381) 90

Page 93: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Evaluation

13. Evaluation

The way the project has been developed and carried out has been done so to a

satisfactory level. The focus over the first several weeks of the project was to

gather research material during the planning stage identified in the project

specification (Appendix A). This was due to the fact AJAX was a new idea, only

developed in 2005, by Jesse James Garrett (Garrett, 2005). Another rationale

for the extended research was due to a lack of knowledge about AJAX.

Therefore this knowledge needed to be built up to at least a foundation level for

the development of an AJAX content management system to be at least partially

successful.

The analysis stage of the project served its purpose well, and gave useful

information on what scripting versions to use, what software was available to

develop the AJAX CMS with its wide range of technologies, and what current

school websites look like, and what features they have, that may be useful to

implement into the fictional Middleton High School website. This data helped to

make informed decisions in the design phase.

The design phase of the project was again well organised, and the necessary

documentation, such as storyboards were created.

The implementation stage is the area that is most needing of improvement. The

development of the AJAX CMS was anything but plain sailing, and in the original

scheduling of the project at the specification stage, the time required may have

been underestimated. Even so, it would be harder to justify moving the date

back any further than a month, as the quality in other areas of the project, such

as the research and design will have suffered.

Attempting to use AJAX was a far greater challenge than realised at the

beginning of the project; with the common misconception that AJAX is not too

Matthew Connor (D4060381) 91

Page 94: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Evaluation

difficult to develop being followed. This was found not to be the case, and the

implementation struggled to meet the objectives set in the specification. With the

contingency time that was allotted in the specification however, the

implementation has managed to achieve the secondary objective of

implementing an AJAX CMS into a working website. The AJAX CMS may not be

superbly designed, but the functionality of being able to edit page content has

been implemented successfully, with TinyMCE being used to make the editing of

the text far more user friendly than a plain standard form text area. The results of

the AJAX CMS’ compatibility on browsers, and accessibility have been

addressed as a result in the testing phase of the report.

Improvements could also be made to the overall content management system in

general, but as AJAX was the main focus these features were neglected as they

were not set as objectives to the project. Features such as a working user

management system, and setting up privileges to work correctly, so certain users

would only have access to certain pages, as noted during the user analysis

phase.

In addition, it may have given the project a bigger boost if a real client was used,

as opposed to a fictional one. However, due to the nature of AJAX being new,

and with the aid of retrospect it was perhaps better a live client was not involved

in this project, as if they set objectives as to what they would have liked to see

out of an AJAX CMS, then many of these may not have been met.

In terms of personal development over the course of the project, the confidence

in using server side scripting has increased, and the ability to script some basic

features such as handling session variables, and passing hidden form values into

a database, have been carried out successfully. Prior to this year, this had not

been possible, as the levels of skills with PHP were relatively poor. With this new

growing confidence in PHP it is hoped that it can be used in future to develop

Matthew Connor (D4060381) 92

Page 95: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Evaluation

further websites using a similar AJAX content management system which has

been fully implemented after months of development and refinement.

An area which is flagged for improvement, and continues to be the Achilles heel

in terms of the development of websites, and was highlighted in this project, is

using client side scripting such as JavaScript. For some reason, it is being found

hard to understand how JavaScript works. However, with the growing

confidence in using PHP, it is hoped it can be transferred over to JavaScript over

the coming summer. JavaScript is a particularly important area to understand if

the use of AJAX is going to be possible in future endeavours.

A passion for research and using it as evidence has been discovered greatly

during the course of this project. Admittedly in past years, reluctance has existed

in the amount of research gathered for assignments. The amount of material

from various sources such as magazine articles, conference proceedings, and

journals ascertained has been excellent, considering there has only been two

years of writing on the subject. The reason for the lack of books is due to the

relatively short time since 2005, AJAX has been in use. On the whole the

majority of the material found has been used to develop this report, and help

further the understanding of AJAX and Web 2.0 as a whole. This passion has

indicated the possibilities open in the future, such as the option of undertaking a

research degree.

The Gantt chart that was produced has not been followed as tightly as it could

have been. The creation of deliverables in the project such as report sections,

and design documentation has been flexible, and has often been in parallel with

the implementation phase of the project. Giving this flexibility that was used, it is

safe to say, the hybrid process model that was proposed early in the report has

been adhered to in a very loose fashion. If the model was to be edited to match

what actually happened during the project, a ringed boundary regarding research

would be placed around the whole model, as it was a process that happened

Matthew Connor (D4060381) 93

Page 96: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Evaluation

continually throughout the project. The phases did flow from one into another

however, some elements of the model did work. The methodology created also

helped to produce sufficient documentation to ensure that the implementation

covered a large enough surface sufficient for this project. Time management

may have slipped at times, but on the whole has been followed as outlined in the

specification.

Matthew Connor (D4060381) 94

Page 97: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Recommendations

14. Recommendations

Improve use of AJAX through the CMS

Due to the complex nature of AJAX, this has not been done to the level wished,

when the specification was drawn up. One of the primary reasons for this, is the

difficulty level of using AJAX was severely underestimated, and the actual

difficulty was only recognised after researching the area.

Improve Security

Due to the limited but improving PHP skills that have been developing through

this project, the security of the PHP is likely to be low, when compared to final

content management systems.

Add extra functions to CMS

With extra time consumed trying to get to grips with AJAX, and with the over

enthusiasm shown at the specification stage, functions such as being able to

upload files has not been implemented. This, along with a facility to manage

pages would be recommended, for example, being able to add, and delete

pages.

Replace TinyMCE with self built text editor

This would take a greater amount of time, and could possibly consume another

project lifecycle, however it would be designed to suit the needs of the AJAX

CMS exactly, and would not carry erroneous functions, which are not needed

and add to the download time.

Create news system

Instead of having a static CSS based news page, this could be developed into a

PHP and MySQL page, which an AJAX powered back end in the CMS, which will

allow for more flexibility and greater ease of use.

Matthew Connor (D4060381) 95

Page 98: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Glossary

15. Glossary

AJAX – Asynchronous JavaScript and Extensible Mark-up Language

A combined set of existing web technologies that are used to make and receive

requests to a web server without the need to reload an entire web page (Enzer,

2006).

CMS – Content Management System

A web application used to typically manage the content of a website dynamically.

Usually attached to some form of database, and can also be used to manage

user access, for example.

CSS – Cascading Style Sheets

Used to style and present HTML / XML / XHTML pages, and keep the

presentation separate from the structure.

HTML – Hypertext Mark-up Language

The basic fabric of the majority of web pages on the Internet. Used to structure

content using a set of tags throughout the entire document. The HTML

document has two main sections, the head, and the body.

JavaScript

A client side scripting language which is one of the key technologies for AJAX.

MySQL – My Structured Query Language

A freely available database system, which is used on the majority of Linux based

web hosts.

PHP – Hypertext Pre-processor

A server side scripting language commonly used to develop standard web

applications such as content management systems.

Matthew Connor (D4060381) 96

Page 99: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Glossary

SQL – Structured Query Language

A simple language used to create, edit, and manipulate databases.

XHTML – Extensible Hypertext Mark-up Language

The successor to HTML, and is based upon XML standards (Enzer, 2006).

XMLHttpRequest

A JavaScript object found in most modern browsers, which acts as a middle man

between the web server and client, during AJAX calls (Garrett, 2005).

Matthew Connor (D4060381) 97

Page 100: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

16. References

Bailey, J, and Burd, E. (2005) Web Accessibility Evolution in the United

Kingdom. Seventh IEEE International Symposium on Website Evolution.

IEEE Computer Society. 79-86.

Bednarz, A. (2006) AJAX offers corporate challenges, chances. Network

World. 23(20):30

Berners-Lee, T. (1989) Information Management: A Proposal [online]

http://www.w3.org/History/1989/proposal.html

[Accessed: 05 February 2007]

Bishopsgarth School (2007) Bishopsgarth School Internet Site [online]

http://www.bishopsgarth.stockton.sch.uk/

[Accessed: 19 March 2007]

Blakeston School (2007) A Community Sports College Web Site [online]

http://www.blakeston.stockton.sch.uk/index2.htm

[Accessed: 19 March 2007]

Brewer, J. (2004) Web accessibility highlights and trends. W4A ’04:

Proceedings of the 2004 international Cross-Disciplinary Workshop on Web

Accessibility (W4a). ACM Press. Vol 63. 51-55.

Briers, A, and Dwyer, P. (2005) Case Demonstration: Competitor Analysis.

Blackboard Handout – Business Online, 2005/6, p1-2.

Cailliau, R, and Ashman, H. (1999) Hypertext in the web – a History. ACM

Computing Surveys. 31(4):1-6.

Matthew Connor (D4060381) 98

Page 101: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

Carr, M.J. (1989) A Circular Model for Software Development. WADAS ’89:

Proceedings of the sixth Washington Ada symposium on Ada. ACM Press.

129-133.

Clark, J.A. (2006) AJAX (Asynchronous JavaScript and XML): This Isn’t the

Web I’m Used To. Online. 30(6):31-34.

Coffee, P. (2006) AJAX is no overnight success. eWeek. 23(3):D1-D5.

Conyers School (2007) Welcome to Conyers School Web Site – A Maths &

Computing Specialist School [online]

http://www1.conyers.stockton.sch.uk/news/news.asp

[Accessed: 19 March 2007]

Curtis, W, Krasner, H, Shen, V, and Iscoe, N. (1987) On building software

process models under the lamppost. ICSE ’87: Proceedings of the 9th

international conference on Software Engineering. IEEE Computer Society

Press. 96-103.

DaFont.com (2007) Download Fonts [online]

http://www.dafont.com/

[Accessed: 20 March 2007]

Disability Rights Commission (2006) DDA chronology – The DRC [online]

http://www.drc-

gb.org/the_law/legislation__codes__regulation/dda_chronology.aspx

[Accessed: 06 March 2007]

Enzer, M. (2006) Matisse’s Glossary of Internet Terms [online]

http://www.matisse.net/files/glossary.html#P

[Accessed: 25 March 2007]

Matthew Connor (D4060381) 99

Page 102: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

Firefox Start (2007) IE vs. Firefox Security Stats [online]

http://www.firefox-start.com/articles.php?id=8-IE-vs.-Firefox-Security-stats

[Accessed: 26 February 2007]

Fitness Headquarters (2007) Frequently Asked Questions [online]

http://www.fithq.com/help.asp?r=38.81967853068&svr=1&

[Accessed: 25 March 2007]

Garrett, J.J. (2005) Ajax: A New Approach to Web Applications [online]

http://adaptivepath.com/publications/essays/archives/000385.php

[Accessed: 06 November 2006]

Gibson, E. (2002) Web Accessibility and Section 508 Compliance. Journal of

Computing Sciences in Colleges. 17(6):257-259.

Gooding, C. (1996) Blackstone’s guide to the Disability Discrimination Act

1995. London: Blackstone Press.

Grangefield School (2007) Grangefield School Website [online]

http://www.grangefield.stockton.sch.uk/Frame%20set.htm

[Accessed: 19 March 2007]

Griffiths, G, Hebbron, B.D, Lockyer, M.A, and Oates, B.J. (2002) A simple

method and tool for web engineering. SEKE ’02: Proceedings of the 14th

international conference on Software engineering and knowledge

engineering. Ischia, Italy. ACM Press. Vol 27. 755-762.

Havenstein, H. (2006) Vendors Spread the AJAX Gospel. Computerworld.

40(6):8.

Matthew Connor (D4060381) 100

Page 103: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

Icons of England (2007) Oak Tree [online]

http://www.icons.org.uk/theicons/collection/oak-tree

[Accessed: 15 January 2007]

Income Data Services (2002) Disability Discrimination [online]

http://www.incomesdata.co.uk/brief/disability.htm

[Accessed: 06 March 2007]

Isakowitz, T, Stohr, E.A, and Balasubramanian, P. (1995) RMM: A Methodology

for Structured Hypermedia Design. Communications of the ACM. 38(8):34-44.

Jackson, C, Bortz, A, Boneh, D, and Mitchell, J.C. (2006) Protecting browser

state from web privacy attacks. WWW ’06: Proceedings of the 15th

international Conference on World Wide Web. Edinburgh, Scotland. ACM

Press. 737-744.

Jayaratna, N. (1993) Methodological challenge for information systems.

Proceedings of Conference on the Theory, use and Integrative Aspects of

IS methodologies. Heriot-West University, Edinburgh.

Joomla (2007) Joomla! [online]

http://www.joomla.org/

[Accessed: 19 March 2007]

Lager, M. (2006) Cleaner Page Loads with AJAX. CRM Magazine. 10(2):11.

Lysecki, S. (2006) Is AJAX coming to the enterprise? Computing Canada.

32(10):1-6.

McLellan, D. (2005) Edit-in-Place with Ajax [online]

http://24ways.org/2005/edit-in-place-with-ajax

Matthew Connor (D4060381) 101

Page 104: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

[Accessed: 08 March 2007]

Michigan Cyber Security (2006) Definitions [online]

http://www.michigan.gov/cybersecurity/0,1607,7-217-34415---,00.html

[Accessed: 17 March 2007]

ModX (2007a) My MODx Site (MODx CMS Manager) [online]

http://demo.opensourcecms.com/modx/manager/

[Accessed: 23 March 2007]

ModX (2007b) Content Management System [online]

http://www.modxcms.com/

[Accessed: 19 March 2007]

Moxiecode Systems (2007) TinyMCE:Configuration/valid elements [online]

http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/valid_elements

[Accessed: 18 March 2007]

Multi Map (2007) Online maps to Everywhere [online]

http://www.multimap.com/

[Accessed: 09 February 2007]

Naraine, R. (2006a) Old Window Injection Flaw Reappears in IE7 [online]

http://www.eweek.com/article2/0,1895,2047195,00.asp

[Accessed: 17 March 2007]

Naraine, R. (2006b) Mozilla Patches ‘Critical’ Bugs in Firefox, Thunderbird

[online]

http://www.eweek.com/article2/0,1895,2054122,00.asp

[Accessed: 17 March 2007]

Matthew Connor (D4060381) 102

Page 105: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

Nvu (2007) The Complete Web Authoring System for Linux, Macintosh and

Windows [online]

http://www.nvu.com/index.php

[Accessed: 19 March 2007]

OpenAJAX (2007) Standardising Web Development [online]

http://openajax.org/

[Accessed: 17 March 2007]

Out-Law (2006a) Target sued over web accessibility [online]

http://www.out-law.com/page-6634

[Accessed: 06 March 2007]

Out-Law (2006b) Target lawsuit tests limits of US accessibility law [online]

http://www.out-law.com/default.aspx?page=7285

[Accessed: 06 March 2007]

Paulson, L.D. (2005) Building Rich Web Applications with Ajax. Computer.

10(8):14-17.

Pearson, E. (2006a) Web Accessibility: The Business Case. Accessibility

Research Centre. Lecture Slides. 1-19.

Pearson, E. (2006b) Accessibility, the web and online resources. Accessibility

Research Centre. Lecture Slides. 1-20.

Pederick, C. (2007) Web Developer Extension [online]

http://chrispederick.com/work/webdeveloper/

[Accessed: 22 March 2007]

Matthew Connor (D4060381) 103

Page 106: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

PHP MySQL Tutorial (2007) Better User Authentication: Storing User ID and

Password in Database [online]

http://www.php-mysql-tutorial.com/user-authentication/database.php

[Accessed: 04 March 2007]

Pillai, K. (1996) The Fountain Model and its Impact on Project Schedule. ACM

SIGSOFT Software Engineering Notes. 21(2):32-38.

Powell, T. (2006) AJAX is the future of Web app development. Network World.

23(27):35-36.

Prince, B. (2007a) Microsoft Investigates IE7 Vulnerability [online]

http://www.eweek.com/article2/0,1895,2104437,00.asp

[Accessed: 17 March 2007]

Prince, B. (2007b) Firefox Flaw Could Let Attackers Change Cookies [online]

http://www.eweek.com/article2/0,1895,2096266,00.asp

[Accessed: 17 March 2007]

Prototype JavaScript Framework (2007a) License [online]

http://www.prototypejs.org/license

[Accessed: 18 March 2007]

Prototype JavaScript Framework (2007b) Easy AJAX and DOM manipulation for

dynamic web applications [online]

http://www.prototypejs.org/

[Accessed: 18 March 2007]

Prototype JavaScript Framework (2007c) Prototype Tips and Tutorials [online]

http://www.prototypejs.org/learn

[Accessed: 18 March 2007]

Matthew Connor (D4060381) 104

Page 107: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

Roberts, P. (2006) AJAX Worm Hits Yahoo Mail. InfoWorld. 28(25):13-14.

Schnoll, S. (2001) Internet Explorer Security Zones [online]

http://www.nwnetworks.com/iezones.htm

[Accessed: 17 March 2007]

Schools Finder (2007) Schools in Stockton-on-Tees [online]

http://www.schools.stockton.gov.uk/schools.aspx?type=SEC

[Accessed: 19 March 2007]

Script.aculo.us (2007) Web 2.0 JavaScript [online]

http://script.aculo.us/

[Accessed: 18 March 2007]

SearchSecurity.com (2007a) What is cookie poisoning? [online]

http://searchsecurity.techtarget.com/sDefinition/0,290660,sid14_gci861584,00.ht

ml

[Accessed: 17 March 2007]

SearchSecurity.com (2007b) What is SQL injection? [online]

http://searchsoftwarequality.techtarget.com/sDefinition/0,290660,sid92_gci10030

24,00.html

[Accessed: 17 March 2007]

Section 508 (2007a) 508 Universe [online]

http://www.section508.gov/508Awareness/html/aw01010.html

[Accessed: 10 March 2007]

Section 508 (2007b) 508 Universe [online]

http://www.section508.gov/508Awareness/html/aw01035.html

Matthew Connor (D4060381) 105

Page 108: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

[Accessed: 10 March 2007]

Section 508 (2007c) 508 Universe [online]

http://www.section508.gov/508Awareness/html/aw01020.html

[Accessed: 10 March 2007]

Secunia (2007) Internet Explorer 7 navcancl.htm Cross-Site Scripting

Vulnerability [online]

http://secunia.com/advisories/24535/

[Accessed: 17 March 2007]

Seeman, L. (2004) The Semantic Web, Web Accessibility, and Device

Independence. W4A ’04: Proceedings of the 2004 international Cross-

Disciplinary Workshop on Web Accessibility (W4a). ACM Press. Vol 63.

67-73.

Servage (2007) Quality Web Hosting [online]

http://www.servage.net/

[Accessed: 16 March 2007]

Sloan, M. (2001) Web Accessibility and the DDA. Journal of Information, Law

& Technology. 2001(2).

Sommerville, I. (1996) Software process models. ACM Computing Surveys.

28(1):269-271.

Stamos, A, and Lackey, Z. (2006) Attacking AJAX Web Applications [online]

http://www.isecpartners.com/files/iSEC-

Attacking_AJAX_Applications.BH2006.pdf

[Accessed: 26 November 2006]

Matthew Connor (D4060381) 106

Page 109: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

Stockton-on-Tees Borough Council (2007a) Home [online]

http://www.stockton.gov.uk/

[Accessed: 19 March 2007]

Stockton-on-Tees Borough Council (2007b) Schools Information [online]

http://www.stockton.gov.uk/citizenservices/learning/schooladmissions/

[Accessed: 19 March 2007]

Taft, D.K. (2006a) AJAX: Are you experienced? eWeek. 23(20):14.

Taft, D.K. (2006b) Developers eye AJAX accessibility. eWeek. 23(28):12

TinyMCE (2007a) JavaScript WYSIWIG editor [online]

http://tinymce.moxiecode.com/

[Accessed: 18 March 2007]

TinyMCE (2007b) Example 12 – Ajax Load/Save [online]

http://wiki.moxiecode.com/examples/tinymce/installation_example_12.php

[Accessed: 18 March 2007]

Ullman, L.E. (2005) PHP and MySQL for dynamic websites. 2nd ed. Berkeley,

CA: Peachpit Press.

Velocity Reviews (2004) How secure are session variables [online]

http://www.velocityreviews.com/forums/t90777-how-secure-are-session-

variables.html

[Accessed: 17 March 2007]

W3C (1999) HTML 4.01 Specification [online]

http://www.w3.org/TR/html4/

[Accessed: 08 February 2007]

Matthew Connor (D4060381) 107

Page 110: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

W3C (2000a) A Little History of the World Wide Web [online]

http://www.w3.org/History.html

[Accessed: 07 February 2007]

W3C (2000b) XHTML 1.0: The Extensible HyperText Markup Language [online]

http://www.w3.org/TR/2000/REC-xhtml1-20000126/

[Accessed: 07 February 2007]

W3C (2007) The W3C CSS Validation Service [online]

http://jigsaw.w3.org/css-validator/

[Accessed: 19 March 2007]

W3Schools (2007) Browser Statistics [online]

http://www.w3schools.com/browsers/browsers_stats.asp

[Accessed: 12 February 2007]

Watchfire (2004) Watchfire WebXACT [online]

http://webxact.watchfire.com/

[Accessed: 10 March 2007]

Wayner, P. (2006) AJAX Tools. InfoWorld. 28(31):25-34.

Web Standards Project (2007) Acid2 Browser Test [online]

http://www.webstandards.org/action/acid2/

[Accessed: 16 March 2007]

Weiss, A. (2005) WebOS: say goodbye to desktop applications. netWorker.

9(4):19-26.

Wikipedia (2007) World Wide Web – History [online]

Matthew Connor (D4060381) 108

Page 111: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems References

http://en.wikipedia.org/wiki/World_Wide_Web#History

[Accessed: 05 February 2007]

World Wide Web Consortium (2006) Web Content Accessibility Guidelines 2.0

[online]

http://www.w3.org/TR/WCAG20/

[Accessed: 10 March 2007]

World Wide Web Consortium (2007a) About W3C: History [online]

http://www.w3.org/Consortium/history

[Accessed: 10 March 2007]

World Wide Web Consortium (2007b) The W3C Markup Validation Service

[online]

http://validator.w3.org/

[Accessed: 22 March 2007]

Zakas, N.C, McPeak, J, and Fawcett, J. (2006) Professional Ajax:

Programmer to Programmer. Indianapolis: Wiley Publishing.

Matthew Connor (D4060381) 109

Page 112: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

17. Bibliography

Accessibility 101 (2007) Accessible Website Design by Shaun Anderson >

Glasgow, Scotland, UK [online]

http://www.accessibility101.org.uk/

[Accessed: 06 March 2007]

Adams-Spink, G. (2006) New standards for website access [online]

http://news.bbc.co.uk/1/hi/technology/4783686.stm

[Accessed: 06 March 2007]

AJAX Impact (2007) AJAX Tutorials [online]

http://www.ajaximpact.com/ajax_list_tutorial_2.html

[Accessed: 22 January 2007]

A List A Part (2006) User Proofing Ajax [online]

http://www.alistapart.com/articles/userproofingajax

[Accessed: 08 December 2006]

Apple (2007) Mac OS X – Safari RSS [online]

http://www.apple.com/macosx/features/safari/

[Accessed: 16 March 2007]

BBC News (2006a) ‘Most websites’ failing disabled [online]

http://news.bbc.co.uk/1/hi/technology/6210068.stm

[Accessed: 10 December 2006]

BBC News (2006b) FTSE firms’ websites criticised [online]

http://news.bbc.co.uk/1/hi/business/4948982.stm

[Accessed: 06 March 2007]

Matthew Connor (D4060381) 110

Page 113: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

BBC Radio 4 (2007) Disability Rights Commission [online]

http://www.bbc.co.uk/radio4/youandyours/items/01/2007_07_wed.shtml

[Accessed: 6 March 2007]

Bell, S. (2006) Where Did Firefox Come From? [online]

http://weblogs.mozillazine.org/ben/archives/009698.html

[Accessed: 26 February 2007]

Benson, B.W. (1999) JavaScript. ACM SIGPLAN Notices. 34(4):25-27.

Blass, S. (2006) Ask Dr. Internet. Network World. 23(5):23.

Brambilla, M, Ceri, S, Fraternali, P, and Manolescu, I. (2006) Process modeling

in Web applications. ACM Transactions on Software Engineering and

Methodology. 15(4):360-409.

British Standards Institute (2006) Guide to good practice in commissioning

accessible websites. PAS 78:2006.

Castledine, E. (2006) Using the XMLHttpRequest Object and AJAX to Spy on

You [online]

http://www.devx.com/webdev/Article/28861

[Accessed: 11 December 2006]

Caton, M. (2005) Productivity by design. eWeek. 22(50):62.

Chen, A. (2006) Online office apps are tempting. eWeek. 23(32):31-32.

ClickZ News (2006) Web 2.0 Still in Early Stages [online]

http://www.clickz.com/showPage.html?page=3624026

[Accessed: 27 November 2006]

Matthew Connor (D4060381) 111

Page 114: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

Clyman, J. (2005) Better Web-App Interfaces with AJAX. PC Magazine.

24(23):76.

Code D Code (2006) AJAX tutorial for beginners [online]

http://www.codedcode.com/ajax/

[Accessed: 26 November 2006]

Coding in Paradise (2006) AJAX Tutorials [online]

http://codinginparadise.org/projects/tutorials/

[Accessed: 23 November 2006]

Coffee, P. (2006) Swords sharpened for AJAX projects. eWeek. 23(3):D4.

Commission for Equality and Human Rights (CEHR) (2007) Purpose of the

CEHR [online]

http://www.cehr.org.uk/content/purpose.rhtm

[Accessed: 06 March 2007]

Content with Style (2005) Fixing the Back Button and Enabling Bookmarking for

AJAX Apps [online]

http://www.contentwithstyle.co.uk/Articles/38/

[Accessed: 22 January 2007]

Darie, C, Brinzarea, B, Cherecheş-Toşa, F, and Bucica, M. (2006) AJAX and

PHP: Building Responsive Web Applications. Birmingham: Packt Publishing.

Dark Net (2006) AJAX: Is your application secure enough? [online]

http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/

[Accessed: 11 December 2006]

Matthew Connor (D4060381) 112

Page 115: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

December, J. (2006) Web Development [online]

http://www.december.com/web/develop.html

[Accessed: 06 November 2006]

December, J. (2007a) Developing Information Content for the World Wide Web

[online]

http://www.december.com/web/develop/overview.html

[Accessed: 13 March 2007]

December, J. (2007b) Web Development: Elements [online]

http://www.december.com/web/develop/elements.html

[Accessed: 13 March 2007]

December, J. (2007c) Web Development: Processes [online]

http://www.december.com/web/develop/processes.html

[Accessed: 13 March 2007]

Directgov (2007) The Data Protection Act: Rights and Responsibilities [online]

http://www.direct.gov.uk/en/RightsAndResponsibilities/DG_10028507

[Accessed: 10 March 2007]

Disability Rights Commission (2006a) What we do - The DRC [online]

http://www.drc-gb.org/about_us/what_we_do.aspx

[Accessed: 06 March 2007]

Eernise, M. (2006) Build Your Own AJAX Web Applications. Collingwood:

Sitepoint.

ePolitix (2005) Disability Committee forms centrepiece of new equality

commission bill [online]

Matthew Connor (D4060381) 113

Page 116: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

http://www.epolitix.com/NR/rdonlyres/28F22743-

F4FC-45D1-906A-0DBFF800D34F/0/DRC030305.pdf

[Accessed: 06 March 2007]

Flexbeta (2005) The History of Mozilla Firefox: From Phoenix, to Firebird, to

Firefox [online]

http://www.flexbeta.net/main/printarticle.php?id=89

[Accessed: 26 February 2007]

Gehtland, J, Galbraith, B, and Almaer, D. (2006) Pragmatic Ajax: A Web 2.0

Primer. North Carolina: Pragmatic Bookshelf.

Google (2006) Google Blog Search [online]

http://blogsearch.google.com/

[Accessed: 08 February 2007]

Griffiths, G. (2004a) SWM – Simple Web Method [online]

http://outranet.scm.tees.ac.uk/users/u0000589/wsd/swm.htm

[Accessed: 13 March 2007]

Griffiths, G. (2004b) Quality Plan Sample [online]

http://outranet.scm.tees.ac.uk/users/u0000589/wsd/pmqa/samqp.htm

[Accessed: 13 March 2007]

Guimarães, L.R, and Vilela, P.R.S. (2005) Comparing software development

models using CDM. SIGITE ’05: Proceedings of the 6th conference on

Information technology education. Newark, NJ, USA. ACM Press. 339-347.

Hadlock, K. (2006) AJAX Power. .net Magazine. Issue 147, 28-37.

Matthew Connor (D4060381) 114

Page 117: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

Hakman, K. (2006) The four quantum states of AJAX. International

Developer. Issue 30, 44-45.

Hayre, J.S, and Kelath, J. (2006) Ajax Security Basics [online]

http://www.securityfocus.com/infocus/1868

[Accessed: 11 December 2006]

Henderson-Sellers, B, and Edwards, J.M. (1990) The object-oriented systems

life cycle. Communications of the ACM. 33(9):142-159.

Hines, M. (2006) AJAX Vulnerabilities Could Pose Serious Risks [online]

http://www.eweek.com/article2/0,1895,1998795,00.asp

[Accessed: 11 December 2006]

Holzschlag, M.E. (2006) Acid2 and Opera 9 Clarifications: Yes, Opera 9 Passes

the Test [online]

http://www.webstandards.org/2006/07/20/acid2-and-opera-9-clarifications/

[Accessed: 16 March 2007]

Humphrey, W.S, and Kellner, M.I. (1989) Software Process Modeling: Principles

of Entity Process Models. ICSE ’89: Proceedings of the 11th international

conference on Software engineering. ACM Press. 331-342.

Information Commissioner’s Office (ICO) (2007) ICO [online]

http://www.ico.gov.uk/

[Accessed: 10 March 207]

Isakowitz, T. (1997) What is RMM? [online]

http://jmis.bentley.edu/rmm/What_is_RMM.html

[Accessed: 13 March 2007]

Matthew Connor (D4060381) 115

Page 118: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

IT Observer (2006) AJAX Poses Security Risk [online]

http://www.it-observer.com/news/5703/ajax_poses_security_risk/

[Accessed: 11 December 2006]

Kelly, S. (2007) Mobile talk moves to Web 2.0 [online]

http://news.bbc.co.uk/1/hi/programmes/click_online/6389469.stm

[Accessed: 15 March 2007]

Kiesler, M. (2006a) 60 More AJAX tutorials [online]

http://www.maxkiesler.com/index.php/weblog/comments/60_more_helpful_ajax_t

utorials/

[Accessed: 23 November 2006]

Kiesler, M. (2006b) Round-up of 30 AJAX tutorials [online]

http://www.maxkiesler.com/index.php/weblog/comments/round_up_of_30_ajax_t

utorials/

[Accessed: 23 November 2006]

Korson, T, and McGregor, J.D. (1990) Understanding object-oriented: a unifying

paradigm. Communications of the ACM. 33(9):40-60.

Laplante, P.A, and Neill, C.J. (2004) “The Demise of the Waterfall Model Is

Imminent” and Other Urban Myths. Queue. 1(10):10-15.

LeClair, L. (2005) The hot new interface named AJAX. Inside Tucson

Business. 15(27):11.

Ledger, K. (2006) Designing a more accessible web [online]

http://news.bbc.co.uk/1/hi/programmes/click_online/6090418.stm

[Accessed: 06 March 2007]

Matthew Connor (D4060381) 116

Page 119: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

Lockyer, M.A, Griffiths, G, Hebbron, B.D, and Oates, B.J. (2003) Simple

Techniques for Complex Web Applications. ICWI ’03: Proceedings of the

IADIS International Conference. Algarve, Portugal. IADIS. 1068-1071.

Marson, I. (2005) Firefox: The alternative history [online]

http://news.zdnet.co.uk/software/0,1000000121,39208866,00.htm

[Accessed: 26 February 2007]

Microsoft (2007) Window History: Internet Explorer History [online]

http://www.microsoft.com/windows/WinHistoryIE.mspx

[Accessed: 12 February 2007]

Mozilla (2003) Firebird 0.6 Releases [online]

http://ftp.mozilla.org/pub/mozilla.org/firebird/releases/0.6/contrib/

[Accessed: 26 February 2007]

Mozilla (2005a) Phoenix 0.1 (Pescadero) release notes and FAQ [online]

http://www.mozilla.com/en-US/firefox/releases/0.1.html

[Accessed: 26 February 2007]

Mozilla (2005b) Phoenix 0.2 (Santa Cruz) release notes and FAQ [online]

http://www.mozilla.com/en-US/firefox/releases/0.2.html

[Accessed: 26 February 2007]

Mozilla (2005c) Firefox 0.8 (Royal Oak) Release Notes [online]

http://www.mozilla.com/en-US/firefox/releases/0.8.html

[Accessed: 26 February 2007]

Mozilla (2007) Mozilla Firefox 2 Release Notes [online]

http://www.mozilla.com/en-US/firefox/2.0/releasenotes/

[Accessed: 26 February 2007]

Matthew Connor (D4060381) 117

Page 120: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

Mozilla Wiki (2006) History:Timelines [online]

http://wiki.mozilla.org/History:Timelines

[Accessed: 26 February 2007]

Negrino, T, and Smith, D. (2007) JavaScript and Ajax for the web. 6th ed.

Berkeley, California: Peachpit Press.

Nielsen, J. (2000) Flash: 99% Bad [online]

http://www.useit.com/alertbox/20001029.html

[Accessed: 08 February 2007]

Oates, B.J. (2006) Process models for software development. Web

Development Issues Lecture Handout.

Opera (2007) Opera for Nintendo [online]

http://www.opera.com/products/devices/nintendo/

[Accessed: 16 March 2007]

Raccoon, L.B.S. (1997) Fifty Years of Progress in Software Engineering. ACM

SIGSOFT Software Engineering Notes. 22(1):88-104.

Rapoza, J. (2006) At your service. eWeek. 23(34):40.

Rasmus’ 30 Second AJAX Tutorial (2006) Lunatechian [online]

http://rajshekhar.net/blog/archives/85-Rasmus-30-second-AJAX-Tutorial.html

[Accessed: 23 November 2006]

ReactOS (2007) ReactOS Homepage – Screenshots [online]

http://www.reactos.org/en/screenshots.html

[Accessed: 16 March 2007]

Matthew Connor (D4060381) 118

Page 121: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

Ryan, J.F, and Reid, B.L. (2006) Usable Encryption Enabled by AJAX.

International Conference on Networking and Services (ICNS ’06). IEEE

Computer Society, 116.

Schmietendorf, A, Dimitrov, E, and Dumke, R.R. (2002) Process models for the

software development and performance engineering tasks. WOSP ’02:

Proceedings of the 3rd international workshop on Software and

performance. ACM Press. 211-218.

Schulz-Hofen, J, and Golega, S. (2006) Generating web applications from

process models. ICWE ’06: Workshop proceedings of the sixth international

conference on Web engineering. ACM Press. 6.

Sitepoint (2006) JavaScript & AJAX Tutorials [online]

http://www.sitepoint.com/subcat/javascript

[Accessed: 26 November 2006]

Sloan, D, and Phipps, L. (2003) Helping to Avoid e-Discrimination in UK Tertiary

Education. CUU ’03: Proceedings of the 2003 Conference on Universal

Usability. Vancouver, British Columbia, Canada. ACM Press. 150-151.

Softpedia (2007) Download Linux Distributions [online]

http://linux.softpedia.com/get/System/Operating-Systems/Linux-Distributions/

[Accessed: 16 March 2007]

Sommerville, I. (2000) Software Prototyping (slides 1-39) [online]

www.comp.lancs.ac.uk/computing/resources/IanS/SE6/Slides/PPT/ch8.ppt

[Accessed: 11 March 2007]

Matthew Connor (D4060381) 119

Page 122: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

Sonntag, M. (2006) Ajax Security in Groupware. 32nd EUROMICRO

Conference on Software Engineering and Advanced Applications

(EUROMICRO ’06). IEEE Computer Society, 472-479.

Spread Firefox (2006) 100,000,000 Downloads [online]

http://www.spreadfirefox.com/node/18908

[Accessed: 26 February 2007]

Spread Firefox (2007) 300+ million downloads [online]

http://www.spreadfirefox.com/node/26879

[Accessed: 26 February 2007]

TheCounter.com (2006) JavaScript Stats [online]

http://www.thecounter.com/stats/2006/October/javas.php

[Accessed: 27 November 2006]

Turn, R. (1982) Privacy Protection in the 1980s. 1982 IEEE Symposium on

Security and Privacy. IEEE Computer Society. 86-89.

Udell, J. (2006) The Tolerance Continuum. InfoWorld. 28(3):42.

Valade, J. (2006) PHP and MySQL: Your visual blueprint for creating

dynamic, database-driven Web sites. Hoboken, NJ: Wiley Publishing.

van Wyk, S. (2006) Web 2.0 – what it means. B&T Weekly. 56(2569):12

Virgin Media (2007) Virgin Media to boost top broadband speed from May

[online]

http://pressoffice.virginmedia.com/phoenix.zhtml?c=205406&p=irol-

newsArticle&ID=974156&highlight=

[Accessed: 15 March 2007]

Matthew Connor (D4060381) 120

Page 123: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

W3Schools (2006) AJAX Tutorial [online]

http://www.w3schools.com/ajax/default.asp

[Accessed: 23 November 2006]

W3Schools (2007) AJAX Suggest Example [online]

http://www.w3schools.com/ajax/ajax_example_suggest.asp

[Accessed: 20 January 2007]

Web Standards Project (2007) Acid2: The Guided Tour [online]

http://www.webstandards.org/action/acid2/guide/

[Accessed: 16 March 2007]

White, A. (2006) AJAX accelerates Web applications. Network World.

23(2):33.

Wikipedia (2007a) World Wide Web Consortium [online]

http://en.wikipedia.org/wiki/W3c

[Accessed: 08 February 2007]

Wikipedia (2007b) Java (programming language) [online]

http://en.wikipedia.org/wiki/Java_1.5

[Accessed: 08 February 2007]

Wikipedia (2007c) Adobe Flash [online]

http://en.wikipedia.org/wiki/Adobe_Flash#History

[Accessed: 08 February 2007]

Wikipedia (2007d) Web 2.0 [online]

http://en.wikipedia.org/wiki/Web_2.0

[Accessed: 08 February 2007]

Matthew Connor (D4060381) 121

Page 124: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Bibliography

Wikipedia (2007e) Internet Explorer [online]

http://en.wikipedia.org/wiki/Internet_explorer#Internet_Explorer_7

[Accessed: 12 February 2007]

Wikipedia (2007f) Mozilla Firefox [online]

http://en.wikipedia.org/wiki/Mozilla_Firefox

[Accessed: 26 February 2007]

Wikipedia (2007g) Mozilla [online]

http://en.wikipedia.org/wiki/Mozilla

[Accessed: 26 February 2007]

Wikipedia (2007h) History of the Opera Internet Suite [online]

http://en.wikipedia.org/wiki/History_of_the_Opera_Browser

[Accessed: 26 February 2007]

Wikipedia (2007i) Safari (web browser) [online]

http://en.wikipedia.org/wiki/Safari_web_browser

[Accessed: 16 March 2007]

Wikipedia (2007j) Data Protection Act [online]

http://en.wikipedia.org/wiki/Data_Protection_Act_1998#History

[Accessed: 10 March 2007]

Williams, W. (2006) IE7 Unwrapped. Web user. Issue 148:32-40.

Winter, D. (2006) Cleaning up with Ajax. International Developer. Issue 30,

62-65.

Matthew Connor (D4060381) 122

Page 125: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix A

Appendix A – Project Specification

Family Name CONNORFirst Name(s) MATTHEW DANIELE-mail Address [email protected] BINGHAM ACourse BSc Web DevelopmentTitle The Future of Content Management

Systems

Specification

A “fictional school” requires a new website, with which they

require a new content management system (CMS) using new

Web 2.0 technologies such as Asynchronous JavaScript and

Extensible Mark-up Language (AJAX), and concurrent

technologies such as XHTML, PHP, and CSS.

The scope of the AJAX-CMS would be site-wide so content on

all dynamic pages, which required constant updating, for

example, news, can easily be accessible by teachers and staff

with the appropriate levels of access.

This will mean that the CMS will need a way of displaying each

area that can be edited, with the appropriate form controls, such

as text boxes or drop down menus, which load the appropriate

controls on to the web page without the need of reloading the

entire page.

As part of building the CMS a number of factors need to be

considered including security, accessibility, and compatibility on

a number of different web browsers, and operating systems.

The primary objective and ultimate goal for the project is to

complete the AJAX CMS, and have it fully functioning, allowing

Matthew Connor (D4060381) 123

Page 126: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix A

different inputs for content including, images, text, and file

attachments, for example Word Documents or PDF (portable

document file) files. Ensuring the CMS is secure as possible will

be addressed as a progressive objective.

The secondary objective is to implement the AJAX CMS into a

working example website. Issues such as ensuring the AJAX

CMS is at least partially accessible, and compatible, will be

addressed as secondary objectives.

As a minimum subset to the objectives of the project, it would be

necessary to demonstrate the content management system,

adding content live to a test web page, most likely only textual

content, rather than being implemented onto a fully working

website.

The objectives will be met using a determined process model,

and a web method, to be determined in the planning stage. In

addition, they will be adhering to the following deadlines.

The work will be scheduled to fit with the process model which

has been selected for use, so each area can easily be divided

into four distinct stages.

Planning: 17th November 2006

Analysis: 15th December 2006

Design: 12th January 2007

Implementation/Testing: 12th March 2007

Contingency: up to 27th March 2007 (final deadline)

Planning the artefact, will include covering areas such as

Matthew Connor (D4060381) 124

Page 127: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix A

creating a detailed plan, which will outline clearly, how the

production of the artefact is to be completed within the deadlines

and milestones.

Analysis will cover areas including security, as scripting with

JavaScript and other languages can leave loopholes open to

hackers. Another area that will be covered is the audience who

will use the CMS, and how they will use it in the context of the

problem. In addition, the feasibility of whether there is a need

for an AJAX driven CMS will be examined, and comparing it to

standard CMS’ that currently exist today.

The design of the artefact will use a range of different standard

design documentation including storyboards, algorithms, and

entity-relationship diagrams to model how the data will be

stored.

Implementing the CMS, will run in parallel with testing, so any

unexpected errors can be determined as soon as possible.

When the artefact reaches a level to at least the minimum

subset of the objectives has been met, then final beta testing will

be undertaken.

The report which supplements the artefact will be produced

alongside the four stages above, detailing the process of

developing the artefact from start to end.

Matthew Connor (D4060381) 125

Page 128: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix B

Appendix B – XHTML Code (version 1)All pages for the XHTML version of the school website used one of three templates. The code for these three templates follows:

Matthew Connor (D4060381) 126

Page 129: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix B

Master Template (master.dwt)Used in files: index.html, about-us.html, calendar.html, careers.html, contact-us.html, exam-results.html, extra-curricular-activities.html, intranet.html, library.html, news.html, ofsted-report-2004.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><!-- TemplateBeginEditable name="PageTitle" --><title>Middleton High School Official Website - Welcome</title><!-- TemplateEndEditable --><link href="./master.css" type="text/css" rel="stylesheet" /><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /></head>

<body><div id="shell">

<div id="header"><a href="./index.html" accesskey="h"><img src="./images/school_logo.jpg" alt="Middleton High School Logo (Access Key: Alt and H)" width="760px" height="130px" /></a></div>

<div id="personalBar"> <!-- #BeginDate format:fcAm1 -->Sunday, February 11, 2007<!-- #EndDate --></div>

<div id="leftnav"><ul id="mainmenu">

<li><a href="./about-us.html">About Us</a></li><li><a href="./prospectus.html" title="Prospectus">Prospectus</a></li><li><a href="./subjects.html">Subjects</a></li><li><a href="./careers.html">Careers</a></li><li><a href="./extra-curricular-activities.html">Extra Curricular</a></li><li><a href="./library.html">Library</a></li><li><a href="./exam-results.html">Exam Results</a></li>

Matthew Connor (D4060381) 127

Page 130: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix B

<li><a href="./ofsted-report-2004.html">Ofsted Report</a></li><li><a href="./news.html">News</a></li><li><a href="./calendar.html">Calendar</a></li><li><a href="./contact-us.html">Contact Us</a></li><li><a href="./intranet.html">School Intranet</a></li>

</ul></div>

<div id="content"> <!-- TemplateBeginEditable name="BreadCrumbEdit" --> <div id="breadcrumb">Home // <a href="#">Test</a></div>

<!-- TemplateEndEditable --><!-- TemplateBeginEditable name="MainContent" --><p></p><!-- TemplateEndEditable --></div>

</div>

<div id="footer"><p>Hello World</p></div>

</body></html>

Matthew Connor (D4060381) 128

Page 131: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix B

Prospectus Template (prospectus.dwt)Used in files: prospectus.html (/prospectus/...):admissions.html, attendance.html, homework.html, school-day.html, school-mission-statement.html, uniform.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><!-- TemplateBeginEditable name="PageTitle" --><title>Middleton High School Official Website - Prospectus</title><!-- TemplateEndEditable --><link href="../master.css" type="text/css" rel="stylesheet" /><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /></head>

<body>

<div id="shell">

<div id="header"><a href="../index.html" accesskey="h"><img src="../images/school_logo.jpg" alt="Middleton High School Logo (Access Key: Alt and H)" width="760px" height="130px" /></a></div>

<div id="personalBar"> <!-- #BeginDate format:fcAm1 -->Monday, February 12, 2007<!-- #EndDate --></div>

<div id="leftnav"><ul id="mainmenu">

<li><a href="../about-us.html">About Us</a></li><li><span class="selected">Prospectus</span>

<ul id="prospmenu"><li><a href="../prospectus/admissions.html">Admissions</a></li><li><a href="../prospectus/attendance.html">Attendance</a></li><li><a href="../prospectus/homework.html">Homework</a></li>

Matthew Connor (D4060381) 129

Page 132: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix B

<li><a href="../prospectus/school-mission-statement.html">Mission Statement</a></li><li><a href="../prospectus/school-day.html">School Day</a></li><li><a href="../prospectus/uniform.html">Uniform</a></li></ul>

</li><li><a href="../subjects.html">Subjects</a></li><li><a href="../careers.html">Careers</a></li><li><a href="../extra-curricular-activities.html">Extra Curricular</a></li><li><a href="../library.html">Library</a></li><li><a href="../exam-results.html">Exam Results</a></li><li><a href="../ofsted-report-2004.html">Ofsted Report</a></li><li><a href="../news.html">News</a></li><li><a href="../calendar.html">Calendar</a></li><li><a href="../contact-us.html">Contact Us</a></li><li><a href="../intranet.html">School Intranet</a></li>

</ul></div>

<div id="content"> <!-- TemplateBeginEditable name="BreadCrumbEdit" --> <div id="breadcrumb">Home // <a href="#">Test</a></div>

<!-- TemplateEndEditable --><!-- TemplateBeginEditable name="MainContent" --><p></p><!-- TemplateEndEditable --></div>

</div>

<div id="footer"><p>Hello World</p></div>

</body></html>

Matthew Connor (D4060381) 130

Page 133: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix B

Subjects Template (subjects.dwt)Used in files: subjects.html (/subjects/...):art-and-design.html, citizenship.html, english.html, french.html, geography.html, history.html, ict.html, mathematics.html, physical-education.html, religous-education.html, science.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><!-- TemplateBeginEditable name="PageTitle" --><title>Middleton High School Official Website - Subjects</title><!-- TemplateEndEditable --><link href="../master.css" type="text/css" rel="stylesheet" /><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /></head>

<body>

<div id="shell">

<div id="header"><a href="./index.html" accesskey="h"><img src="../images/school_logo.jpg" alt="Middleton High School Logo (Access Key: Alt and H)" width="760px" height="130px" /></a></div>

<div id="personalBar"> <!-- #BeginDate format:fcAm1 -->Sunday, February 11, 2007<!-- #EndDate --></div>

<div id="leftnav"><ul id="mainmenu">

<li><a href="../about-us.html">About Us</a></li><li><a href="../prospectus.html" title="Prospectus">Prospectus</a></li><li><span class="selected">Subjects</span>

<ul id="subjmenu"><li id="art"><a href="../subjects/art-and-design.html">Art &amp; Design</a></li><li id="citizenship"><a href="../subjects/citizenship.html">Citizenship</a></li>

Matthew Connor (D4060381) 131

Page 134: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix B

<li id="english"><a href="../subjects/english.html">English</a></li><li id="french"><a href="../subjects/french.html">French</a></li><li id="geography"><a href="../subjects/geography.html">Geography</a></li><li id="history"><a href="../subjects/history.html">History</a></li><li id="ict"><a href="../subjects/ict.html">ICT</a></li><li id="mathematics"><a href="../subjects/mathematics.html">Mathematics</a></li><li id="phyed"><a href="../subjects/physical-education.html">Physical Education</a></li><li id="reled"><a href="../subjects/religious-education.html">Religious Education</a></li><li id="science"><a href="../subjects/science.html">Science</a></li>

</ul></li><li><a href="../careers.html">Careers</a></li><li><a href="../extra-curricular-activities.html">Extra Curricular</a></li><li><a href="../library.html">Library</a></li><li><a href="../exam-results.html">Exam Results</a></li><li><a href="../ofsted-report-2004.html">Ofsted Report</a></li><li><a href="../news.html">News</a></li><li><a href="../calendar.html">Calendar</a></li><li><a href="../contact-us.html">Contact Us</a></li><li><a href="../intranet.html">School Intranet</a></li>

</ul></div>

<div id="content"> <!-- TemplateBeginEditable name="BreadCrumbEdit" --> <div id="breadcrumb">Home // <a href="#">Test</a></div>

<!-- TemplateEndEditable --><!-- TemplateBeginEditable name="MainContent" --><p></p><!-- TemplateEndEditable --></div>

</div>

<div id="footer"><p>Hello World</p></div></body></html>

Matthew Connor (D4060381) 132

Page 135: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix C

Appendix C – PHP Content Code (Version 2)

The SQL for the creation of the databases is below:

drop table if exists page_details;drop table if exists user_details;drop table if exists page_category;drop table if exists faculty;drop table if exists privilege_level;

create table page_category(category_ID bigint(10) not null auto_increment primary key,category_name varchar(50) not null);

create table faculty(faculty_ID bigint(10) not null auto_increment primary key,faculty_name varchar(50) not null);

create table privilege_level(privilege_ID bigint(10) not null auto_increment primary key,privilege_name varchar(50) not null);

create table user_details(user_ID bigint(10) not null auto_increment primary key,faculty_ID bigint(10) not null,privilege_ID bigint(10) not null,first_name varchar(50) not null,surname varchar(50) not null,user_name varchar(50) not null,password varchar(50) not null,email_address varchar(150),register_date datetime, /* auto generated client side in hidden textbox */register_time datetime, /* auto generated client side in hidden textbox */foreign key(faculty_ID) references faculty (faculty_ID),foreign key(privilege_ID) references privilege_level (privilege_ID));

create table page_details(page_ID bigint(10) not null auto_increment primary key,author_ID bigint(10) not null,category_ID bigint(10) not null,page_content longtext not null,page_date date, /* auto generated client side in hidden textbox */ page_time time, /* auto generated client side in hidden textbox */foreign key(author_ID) references user_details (user_ID),

Matthew Connor (D4060381) 133

Page 136: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix C

foreign key(category_ID) references page_category (category_ID))

Examples of the SQL insert statements are below. The content queries have

been excluded due to their size but are available from the CD-ROM.

insert into faculty values ('1','Art and Design');insert into faculty values ('2','Citizenship');insert into faculty values ('3','English');insert into faculty values ('4','French');insert into faculty values ('5','Geography');

insert into faculty values ('6','History');insert into faculty values ('7','ICT');

insert into faculty values ('8','Mathematics');insert into faculty values ('9','Physical Education');insert into faculty values ('10','Religious Education');insert into faculty values ('11','Science');insert into faculty values ('12','Senior Staff');

insert into page_category values ('1','Main');insert into page_category values ('2','Prospectus');insert into page_category values ('3','Subjects');

insert into privilege_level values ('1','Administrator');insert into privilege_level values ('2','Head Teacher');insert into privilege_level values ('3','Art Faculty');insert into privilege_level values ('4','Citizenship Faculty');insert into privilege_level values ('5','English Faculty');insert into privilege_level values ('6','French Faculty');insert into privilege_level values ('7','Geography Faculty');insert into privilege_level values ('8','History Faculty');insert into privilege_level values ('9','ICT Faculty');insert into privilege_level values ('10','Mathematics Faculty');insert into privilege_level values ('11','P.E. Faculty');insert into privilege_level values ('12','R.E. Faculty');insert into privilege_level values ('13','Science Faculty');

insert into user_details values ('1','7','1','Matthew','Connor','admin','abc123','[email protected]','','');insert into user_details values ('2','12','2','Alan','Smith','a.smith','alan021','[email protected]','','');insert into user_details values ('3','1','3','Bob','Jones','b.jones','bob123','[email protected]','','');

insert into page_details values ('1','1','1','<h1>Welcome to Middleton High School</h1><img src="./images/school-exterior.jpg" alt="Exterior of the school" class="contentfloat" width="300" height="200" /><p>Welcome to the Middleton High School website. We are a secondary school in Teesside, who for 48 years, has educated over 30,000 pupils, with one of the highest pass rates at GCSE level in the region.</p> <p>We have made our prospectus available online for

Matthew Connor (D4060381) 134

Page 137: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix C

parents, and also details of the subjects we cover as part of the Key Stage 3 and Key Stage 4 curriculum.</p> <p>Also available is the latest events and holidays in the school year allowing you to plan your holidays in advance to avoid term time.</p> <p>We take great pride in the education of 11 to 16 year olds and have recently been granted Technology College status as part of our drive to improve the computing skills of young people so they have the skills necessary in future.</p> <p>Also it is not just technology we focus on, but also have spent millions on pounds on all our classrooms for art and design, mathematics, and have also built a lecture theatre, to house assemblies for each year group on a weekly basis.</p> <p>If you have any further queries and want to know more about the school, do not hesitate to <a href="./contact-us.html">contact us</a>.</p>','','');

PHP Code

This PHP was applied to all three templates in the content div tag. The ID’s in

the query were changed for each page individually.

<div id=”content”>...<h1> <?php// connect to mySQL database $db=mysql_connect ("localhost", "mconnor_uni", "eWi27") or die ('I cannot connect to the database because: ' . mysql_error()); mysql_select_db ("mconnor_middleton");

//mysql query 1$headingQuery = "select page_heading from page_details WHERE page_ID='1'";

$result = @mysql_query($headingQuery);

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {echo $row['page_heading'];

}

//close db connectionmysql_close();?></h1><!-- InstanceEndEditable --><!-- InstanceBeginEditable name="ContentID" --><?php// connect to mySQL database $db=mysql_connect ("localhost", "mconnor_uni", "eWi27") or die ('I cannot connect to the database because: ' . mysql_error()); mysql_select_db ("mconnor_middleton");

//mysql query 1$contentQuery = "select page_content from page_details WHERE page_ID='1'";

$result = @mysql_query($contentQuery);

//print result (adapted from Ullman, L. (2005) PHP and MySQL for Dynamic Websites. 2nd ed. Berkeley, CA: Peachpit Press, pg.251-2)while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {

Matthew Connor (D4060381) 135

Page 138: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix C

echo $row['page_content'];}

//close db connectionmysql_close();?>

Matthew Connor (D4060381) 136

Page 139: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix D

Appendix D – PHP Login Code (version 3)

This appendix shows the contents of three files, the login.php file, logout.php,

and controlpanel.php

Login.php

<?php//start a sessionsession_start(); $errorMsg ='';if (isset($_POST['txtUserName']) && isset($_POST['txtPWord'])) {

// connect to mySQL database $db=mysql_connect ("mysql1033.servage.net", "mconnor_uni", "eWi27") or die ('I cannot connect to the database because: ' . mysql_error()); mysql_select_db ("mconnor_uni");

$userName = $_POST['txtUserName'];$password = $_POST['txtPWord'];

// run MySQL query to determine whether combination of username and password exists$userQuery = "select user_name from user_details WHERE user_name = '$userName'

AND password = '$password'";

//store result of the MySQL query into a variable$result = mysql_query($userQuery);

// if the number of rows in the MySQL result equals 1 then login (controlpanel.php) else return to login form

if (mysql_num_rows($result) == 1) {// user name and password are matched, and set a session log in variable$_SESSION['user_logged_in'] = true;

//andrews code (project supervisor)

$_SESSION['UserName'] = $userName ;

// redirect to controlpanel.phpheader('Location: controlpanel.php');exit;

} else {// display an error message to the user$errorMsg = 'The login details you entered are incorrect. Please reenter your

details or contact the website administrator for help';}// close database connectionmysql_close();

}// login session adapted with help from http://www.php-mysql-tutorial.com/user-authentication/database.php

Matthew Connor (D4060381) 137

Page 140: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix D

?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/static.dwt.php" codeOutsideHTMLIsLocked="false" --><head><!-- InstanceBeginEditable name="doctitle" --><title>Middleton High School</title><!-- InstanceEndEditable --><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><link rel="stylesheet" type="text/css" href="./middletonHigh.css" /><!-- InstanceBeginEditable name="head" --><!-- InstanceEndEditable --></head>

<body>

<div id="shell">

<div id="header"><a href="./index.php"><img src="./images/school_logo.jpg" alt="Middleton High School Logo" class="logoborder" /></a></div>

<div id="personalBar"></div>

<div id="leftnav"><ul id="mainmenu">

<li><a href="./about-us.php">About Us</a></li><li><a href="./prospectus.php" title="Prospectus">Prospectus</a></li><li><a href="./subjects.php">Subjects</a></li><li><a href="./careers.php">Careers</a></li><li><a href="./extra-curricular-activities.php">Extra Curricular</a></li><li><a href="./library.php">Library</a></li><li><a href="./exam-results.php">Exam Results</a></li><li><a href="./ofsted-report-2004.php">Ofsted Report</a></li><li><a href="./news.php">News</a></li><li><a href="./calendar.php">Calendar</a></li><li><a href="./contact-us.php">Contact Us</a></li><li><a href="./intranet.php">School Intranet</a></li><li><a href="./login.php">Login</a></li>

</ul></div>

<div id="content"><!-- InstanceBeginEditable name="Content" --><?php// login session adapted with help from http://www.php-mysql-tutorial.com/user-authentication/database.phpif ($errorMsg != '') {?><p class="loginError"><?php echo $errorMsg; ?></p><?php}

Matthew Connor (D4060381) 138

Page 141: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix D

?> <h1>Login</h1><p>Please enter your username and password to enter the staff administration area.</p><div id="formLayout"><form id="loginForm" name="loginForm" method="post"><p><label for="userID">User Name:</label> <input type="text" id="txtUserName" name="txtUserName" /><br /><br /><label for="pWord">Password: </label> <input type="text" id="txtPWord" name="txtPWord" /><br /><br /><input type="submit" value="Login" id="btnSubmit" class="loginButtons" /></p></form></div> <!-- InstanceEndEditable --></div>

<div id="footer"><!--<p class="footerlinks"><a href="./adminlogin.php">Admin Login</a></p>--></div></div></body><!-- InstanceEnd --></html>

Logout.php

<?php// start a sessionsession_start();

// if login session variable is set, unset to log outif (isset($_SESSION['user_logged_in'])) {

unset($_SESSION['user_logged_in']);}

// on completion of unsetting the session variable, redirect user to the login pageheader('Location: login.php');

// adapted with help from http://www.php-mysql-tutorial.com/user-authentication/database.php?>

Controlpanel.php

?php//start sessionsession_start();

//is the current user trying to access the page logged in?if (!isset($_SESSION['user_logged_in']) || $_SESSION['user_logged_in'] !== true) {// if not logged in redirect to the login pageheader('Location: login.php');exit;}// adapted with help from http://www.php-mysql-tutorial.com/user-authentication/database.php//$userName = $_REQUEST['userName']; - original attempt at calling username//andrews code (project supervisor) amended version

Matthew Connor (D4060381) 139

Page 142: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix D

$userName = $_SESSION['UserName'];

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/ADMINmaster.dwt.php" codeOutsideHTMLIsLocked="false" --><head><!-- InstanceBeginEditable name="doctitle" --><title>Middleton High School</title><!-- InstanceEndEditable --><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><link rel="stylesheet" type="text/css" href="./middletonHigh.css" /><!-- InstanceBeginEditable name="head" --><!-- InstanceEndEditable --></head>

<body>

<div id="shell">

<div id="header"><a href="./index.php"><img src="./images/school_logo.jpg" alt="Middleton High School Logo" class="logoborder" /></a></div>

<div id="personalBar"><p>Welcome, <?php echo $userName ?> [ <a href="./logout.php">Logout</a> ]</p></div>

<div id="leftnav"><ul id="mainmenu"><li><a href="./index_edit.php">Homepage</a></li><li><a href="./about-us_edit.php">About Us</a></li><li><a href="./prospectus_edit.php" title="Prospectus">Prospectus</a></li><li><a href="./subjects_edit.php">Subjects</a></li><li><a href="./careers_edit.php">Careers</a></li><li><a href="./extra-curricular-activities_edit.php">Extra Curricular</a></li><li><a href="./library_edit.php">Library</a></li><li><a href="./exam-results_edit.php">Exam Results</a></li><li><a href="./ofsted-report-2004_edit.php">Ofsted Report</a></li><li><a href="./news_edit.php">News</a></li><li><a href="./calendar_edit.php">Calendar</a></li><li><a href="./contact-us_edit.php">Contact Us</a></li><li><a href="./intranet_edit.php">School Intranet</a></li></ul></div>

<div id="content"><!-- InstanceBeginEditable name="Content" --><h1>Admin Control Centre</h1><p>Use the menu on the left to go to a page for editing its content. </p> <!-- InstanceEndEditable --></div>

Matthew Connor (D4060381) 140

Page 143: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix D

<div id="footer"><!--<p class="footerlinks"><a href="./adminlogin.php">Admin Login</a></p>--></div></div></body><!-- InstanceEnd --></html>

Matthew Connor (D4060381) 141

Page 144: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix E

Appendix E – PHP and AJAX Implementation

This appendix covers the use of one of the edit pages, with the implementation of

the AJAX TinyMCE text editor, and also files related to contact-staff.php

Index_edit.php

<?php//start sessionsession_start();

//is the current user trying to access the page logged in?if (!isset($_SESSION['user_logged_in']) || $_SESSION['user_logged_in'] !== true) {

// if not logged in redirect to the login pageheader('Location: login.php');exit;

}//adapted with help from http://www.php-mysql-tutorial.com/user-authentication/database.php

//andrews code (project supervisor) amended version$userName = $_SESSION['UserName'];?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/ADMINmaster.dwt.php" codeOutsideHTMLIsLocked="false" --><head><!-- InstanceBeginEditable name="doctitle" --><title>Middleton High School</title><!-- InstanceEndEditable --><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><link rel="stylesheet" type="text/css" href="middletonHigh.css" /><script language="javascript" type="text/javascript" src="./tiny_mce/tiny_mce.js"></script><script language="javascript" type="text/javascript">// code from http://wiki.moxiecode.com/examples/tinymce/installation_example_12.phptinyMCE.init({

mode : "textareas",theme : "advanced",content_css : "./middletonHigh.css"

});

function ajaxLoad() {var inst = tinyMCE.getInstanceById('content');

// Do you ajax call hereinst.setHTML('HTML content that got passed from server.');

}

function ajaxSave() {var inst = tinyMCE.getInstanceById('content');

// Do you ajax call here

Matthew Connor (D4060381) 142

Page 145: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix E

alert("Saving");}</script>

<!-- InstanceBeginEditable name="head" --><!-- InstanceEndEditable --></head><body><div id="shell"><div id="header"><a href="index.php"><img src="images/school_logo.jpg" alt="Middleton High School Logo" class="logoborder" /></a></div>

<div id="personalBar"><p>Welcome, <?php echo $userName ?> [ <a href="./logout.php">Logout</a> ] [ <a href="controlpanel.php">Control Panel Home</a> ]</p></div>

<div id="leftnav"><ul id="mainmenu"><li><a href="./index_edit.php">Homepage</a></li><li><a href="./about-us_edit.php">About Us</a></li><li><a href="./prospectus_edit.php" title="Prospectus">Prospectus</a></li><li><a href="./subjects_edit.php">Subjects</a></li><li><a href="./careers_edit.php">Careers</a></li><li><a href="./extra-curricular-activities_edit.php">Extra Curricular</a></li><li><a href="./library_edit.php">Library</a></li><li><a href="./exam-results_edit.php">Exam Results</a></li><li><a href="./ofsted-report-2004_edit.php">Ofsted Report</a></li><li><a href="./news_edit.php">News</a></li><li><a href="./calendar_edit.php">Calendar</a></li><li><a href="./contact-us_edit.php">Contact Us</a></li><li><a href="./intranet_edit.php">School Intranet</a></li></ul></div>

<div id="content"><!-- InstanceBeginEditable name="PageID" --><form method="post" name="contents" id="contents" action="./savechanges.php"><textarea name="content" cols="70" rows="30"><?php// page ID$pageID = 1;

// connect to mySQL database $db=mysql_connect ("mysql1031.servage.net", "mconnor_uni2", "eWi27") or die ('I cannot connect to the database because: ' . mysql_error()); mysql_select_db ("mconnor_uni2");

//mysql query 1$contentQuery = "select page_content from page_details WHERE page_ID='$pageID'";

// result of query stored in variable$result = @mysql_query($contentQuery);

Matthew Connor (D4060381) 143

Page 146: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix E

//print result (adapted from Ullman, L. (2005) PHP and MySQL for Dynamic Websites. 2nd ed. Berkeley, CA: Peachpit Press, pg.251-2)// specific field selected from the array of the resultwhile ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {// echo the result into the div tagecho $row['page_content'];}

//close db connectionmysql_close();?></textarea><input type='hidden' value='<?php echo $pageID;?>' name="IDpage" id="IDpage" /><input type="hidden" value="<?php echo date ('Y-m-d');?>" name="updateDate" id="updateDate" /> <input type="hidden" value="<?php echo date ('H:i:s');?>" name="updateTime" id="updateTime" /><input type="submit" value="Save" onClick="ajaxSave();" /></form><!-- InstanceEndEditable --></div>

<div id="footer"><p>Matthew Connor (D4060381)</p><!--<p class="footerlinks"><a href="./adminlogin.php">Admin Login</a></p>--></div>

</div>

</body><!-- InstanceEnd --></html>

savechanges.php

<?php// start a sessionsession_start();

$newContent = $_REQUEST['content'];$pageID = $_REQUEST['IDpage'];$dateV = $_REQUEST['updateDate'];$timeV = $_REQUEST['updateTime'];$location = $_SERVER['HTTP_REFERER'];

// connect to mySQL database $db=mysql_connect ("mysql1031.servage.net", "mconnor_uni2", "eWi27") or die ('I cannot connect to the database because: ' . mysql_error()); mysql_select_db ("mconnor_uni2");

// update the content, date, and time database fields$updateQuery = "UPDATE page_details SET page_content='$newContent' WHERE page_ID ='$pageID'";mysql_query($updateQuery);

$dateQuery = "UPDATE page_details SET page_date='$dateV' WHERE page_ID ='$pageID'";

Matthew Connor (D4060381) 144

Page 147: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix E

mysql_query($dateQuery);

$timeQuery = "UPDATE page_details SET page_time='$timeV' WHERE page_ID ='$pageID'";mysql_query($timeQuery);

// close database connectionmysql_close();

header("Location: $location");?>

Contact-staff.php

<?php//start sessionsession_start();

//is the current user trying to access the page logged in?if (!isset($_SESSION['user_logged_in']) || $_SESSION['user_logged_in'] !== true) {// if not logged in redirect to the login pageheader('Location: login.php');exit;}//adapted with help from http://www.php-mysql-tutorial.com/user-authentication/database.php

//andrews code (project supervisor) amended version$userName = $_SESSION['UserName'];?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/ADMINcentral.dwt.php" codeOutsideHTMLIsLocked="false" --><head><!-- InstanceBeginEditable name="doctitle" --><title>Middleton High School</title><!-- InstanceEndEditable --><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><link rel="stylesheet" type="text/css" href="middletonHigh.css" /><!-- InstanceBeginEditable name="head" --><!-- InstanceEndEditable --></head>

<body>

<div id="shell">

<div id="header"><a href="index.php"><img src="images/school_logo.jpg" alt="Middleton High School Logo" class="logoborder" /></a></div><div id="personalBar"><p>Welcome, <?php echo $userName ?> [ <a href="./logout.php">Logout</a> ]</p></div><div id="leftnav"><ul id="mainmenu">

Matthew Connor (D4060381) 145

Page 148: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix E

<li><a href="./index_edit.php">Homepage</a></li><li><a href="./about-us_edit.php">About Us</a></li><li><a href="./prospectus_edit.php" title="Prospectus">Prospectus</a></li><li><a href="./subjects_edit.php">Subjects</a></li><li><a href="./careers_edit.php">Careers</a></li><li><a href="./extra-curricular-activities_edit.php">Extra Curricular</a></li><li><a href="./library_edit.php">Library</a></li><li><a href="./exam-results_edit.php">Exam Results</a></li><li><a href="./ofsted-report-2004_edit.php">Ofsted Report</a></li><li><a href="./news_edit.php">News</a></li><li><a href="./calendar_edit.php">Calendar</a></li><li><a href="./contact-us_edit.php">Contact Us</a></li><li><a href="./intranet_edit.php">School Intranet</a></li>

</ul></div>

<div id="content"><!-- InstanceBeginEditable name="Content" --><h1>Email Staff Member</h1>

<script type="text/javascript">function validateform(a) {form_is_valid=true;if (emailaddress == "") {form_is_valid=false;}if (form_is_valid) {a.form.submit();} else {alert("Email Address Required");}

if (subject == "") {form_is_valid=false;}if (form_is_valid) {a.form.submit();} else {alert("Subject Required");}

if (emailContent == "") {form_is_valid=false;}if (form_is_valid) {a.form.submit();} else {alert("Message Required");}}</script>

<div id="formLayout"><form id="emailStaff" name="emailStaff" class="emailStaffClass" method="post" action="emailStaff.php" onsubmit="validateform(this)"><p>

Matthew Connor (D4060381) 146

Page 149: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix E

<input type="hidden" value="<?php echo $userName;?>" name="from" /><label for="emailaddress">Email Address</label><input type="text" size="40" id="emailaddress" name="emailaddress" /><br /><br /><label for="subject">Subject: </label><input type="text" size="40" id="subject" name="subject" /><br /><br /><label for="emailContent">Message: </label><textarea name="emailContent" id="emailContent" rows="6" cols="40"> </textarea><br /><br /><input type="submit" value="Send Email" id="btnSubmit" class="loginButtons" /> <input type="reset" value="Clear Form" class="loginButtons" /> </p></form></div>

<!-- InstanceEndEditable --></div>

<div id="footer"><p>Matthew Connor (D4060381)</p><!--<p class="footerlinks"><a href="./adminlogin.php">Admin Login</a></p>--></div></div>

</body><!-- InstanceEnd --></html>

emailStaff.php

<?php// start a sessionsession_start();

$eaddress = $_REQUEST['emailaddress'];$title = $_REQUEST['subject'];$body = $_REQUEST['emailContent'];$sender = $_REQUEST['from'];$headers = "From: $sender <[email protected]>";

mail($eaddress,$title,$body,$headers);

header( "Location: http://www.matthewconnor.co.uk/artefact/phpajax/staff-email-success.php" );

// with help from http://www.w3schools.com/php/php_mail.asp

?>

Matthew Connor (D4060381) 147

Page 150: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix F

Appendix F – CSS CodeBelow are the two CSS files that have been used throughout the development, the first during the XHTML development, the latter for the remainder of the project. The CSS files have been combined for the appendix as their content is basically the sam

Matthew Connor (D4060381) 148

Page 151: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix F

Main.css, Middletonhigh.cssbody {background-color: #DDD;font-size: 12px;font-family: "Verdana", "Arial", "Helvetica", sans-serif;color: #000;padding: 0px;margin: 0px;}

#shell {width: 760px;margin-top: 5px;margin-left: auto;margin-right: auto;background-color: #7BBB7B;border: 1px solid #000;}

#header {background-color: #800205;height: 130px;padding: 0px;margin: 0px;}

#content {background-color: #FFF;border: 1px solid #000;border-bottom: none;border-top: none;border-right: none;padding: 0px;margin-left: 130px;margin-right: 0px;}

div#content { min-height: 550px;height: auto !important;height: 550px;}

#leftnav {float: left;width: 130px;margin: 0px;padding: 0px;color: #FFF;}

#footer {clear: both;background-color: #006;color: #FFF;

margin: 0px;padding: 0px;border-top: 1px solid #000;}

#personalBar {background-color: #800205;color: #FFF;border-bottom: 1px solid #000;height: 30px;}

/* Navigation */

.selected {background-color: #990000;color: #FFF;display: block;padding: 2px;width: 126px;border-bottom: 1px solid #000;}

/* Main Navigation */

#mainmenu {margin-left: 0px;padding-left: 0px;list-style-type: none;}

#mainmenu a {display: block;padding: 2px;width: 126px;border-bottom: 1px solid #000;}

#mainmenu a:link {text-decoration: none;}

#mainmenu a:hover {color: #B1DBE7;background-color: #006600;text-decoration: none;}

#mainmenu a:visited {color: #000;text-decoration: none;}

/* Prospectus Navigation */

Matthew Connor (D4060381) 149

Page 152: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix F

#prospmenu {margin-left: 10px;padding-left: 0px;list-style-type: none;background-color: #B1DBE7;}

#prospmenu a {display: block;padding: 2px;width: 116px;border-bottom: 1px solid #000;border-left: 1px solid #000;}

#prospmenu a:link {text-decoration: none;}

#prospmenu a:hover {color: #B1DBE7;background-color: #000066;text-decoration: none;}

/* Subject Navigation */

#subjmenu {margin-left: 10px;padding-left: 0px;list-style-type: none;background-color: #B1DBE7;}

#subjmenu a {display: block;padding: 2px;width: 116px;border-bottom: 1px solid #000;border-left: 1px solid #000;}

#subjmenu a:link {text-decoration: none;}

#subjmenu a:hover {color: #B1DBE7;background-color: #000066;text-decoration: none;}

/* Login Form Layout v1.0 *//*#formLayout {padding-top: 3px;

margin-left: 330px;

}

#loginForm {display: block;width: 430px;padding: 0px;margin: 0px;}

label {color: #FFF;}

#userID, #pWord {background-color: #EEE;border: 1px solid #000;width: 100px;font-size: 85%;}

#btnSubmit {margin-right: 10px;border: 1px solid #000;height: 20px;margin-top: 3px;}*/

/* General Formatting */

p {padding: 5px 10px;margin: 0px;}

a img {border: none;}

.date {font-weight: bold;padding: 5px;}

.menusubtitle {font-weight: bold;}

.contentfloat {float: right;margin-right: 5px;padding-left: 3px;}

Matthew Connor (D4060381) 150

Page 153: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix F

.current {font-weight: bold;}

h2.newstitle {background-color: #900;font-size: 150%;font-weight: bold;margin: 0px;padding: 2px;color: #FFF;}

h3.newsdate {background-color: #006;font-size: 110%;font-style: italic;margin-top: 4px;margin-bottom: 4px;padding: 2px;color: #FFF;}

.newscontent {padding: 2px;}

.newsitem {display: block;margin-top: 1px;width: 90%;}

.calyear {font-size: 150%;font-weight: bold;}

.calmonth {font-size: 110%;font-style: italic;}

.caldate {font-weight: bold;}

a:link {color: #000066;}a:hover {color: #FF0000;}a:active {color: #99CC00;}

h1 {margin: 0px;padding: 0px;padding-left: 2px;padding-bottom: 3px;

}

#content li {padding: 0px;}

.footerlinks {font-size: 80%;}

.footerlinks a {color: #CCC;}

.footerlinks a:hover {color: #FFF;}

/* admin login form */

label {width: 80px;font-weight: bold;float: left;text-align: right;margin-right: 0.5em;display: block;color: #000;}

#txtUserName, #txtPWord {background-color: #EEE;border: 1px solid #000;width: 100px;font-size: 85%;}

.loginButtons {margin-left: 10px;border: 1px solid #000;height: 20px;margin-top: 3px;margin-bottom: 3px;}

.loginError {font-size: 110%;color: #F00;font-weight: bold;}

#personalBar a {color: #FC0; }

#personalBar a:hover {color: #F90;

Matthew Connor (D4060381) 151

Page 154: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix F

}

.h1edit {font-size: 50%;}

.h1edit a {color: #39F;}

.h1edit a:hover {color: #F00;}

.pedit {font-size: 85%;}

.pedit a {color: #39F;}

.pedit a:hover {color: #F00;}

Matthew Connor (D4060381) 152

Page 155: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix G

Appendix G – Testing Documentation

1.0. XHTML Site Validation

This area will cover XHTML 1.0 validation, accessibility validation, and browser testing.

Filename TestingXHTML 1.0 Valid WCAG Level IE6 compatible Firefox 2

compatibleOther Browsers

index.html Pass Priority 2 As expected As expected (B) As expected (B)about-us.html Pass Priority 2 As expected As expected (B) As expected (B)calendar.html Pass Priority 2 As expected As expected (B) As expected (B)careers.html Pass Priority 2 As expected As expected (B) As expected (B)contact-us.html Pass Priority 2 As expected As expected (B) As expected (B)exam-results.html Pass Priority 2 As expected As expected (B) As expected (B)extra-curricular-activities.html

Pass Priority 2 As expected As expected (B) As expected (B)

intranet.html Pass Priority 2 As expected As expected (B) As expected (B)library.html Pass Priority 2 As expected As expected (B) As expected (B)news.html Error A Priority 2 As expected As expected (B) As expected (B)ofsted-report-2004.html

Pass Priority 2 As expected As expected (B) As expected (B)

prospectus.html Pass Priority 2 As expected As expected (B) As expected (B)subjects.html Pass Priority 2 As expected As expected (B) As expected (B)admissions.html Pass Priority 2 As expected As expected (B) As expected (B)attendance.html Pass Priority 2 As expected As expected (B) As expected (B)homework.html Pass Priority 2 As expected As expected (B) As expected (B)school-day.html Pass Priority 2 As expected As expected (B) As expected (B)school-mission-statement.html

Pass Priority 2 As expected As expected (B) As expected (B)

uniform.html Pass Priority 2 As expected As expected (B) As expected (B)art-and-design.html Pass Priority 2 As expected As expected (B) As expected (B)citizenship.html Pass Priority 2 As expected As expected (B) As expected (B)english.html Pass Priority 2 As expected As expected (B) As expected (B)french.html Pass Priority 2 As expected As expected (B) As expected (B)

Matthew Connor (D4060381) 153

Page 156: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix G

Filename TestingXHTML 1.0 Valid WCAG Level IE6 compatible Firefox 2

compatibleOther Browsers

index.html Pass Priority 2 As expected As expected (B) As expected (B)geography.html Pass Priority 2 As expected As expected (B) As expected (B)history.html Pass Priority 2 As expected As expected (B) As expected (B)ict.html Pass Priority 2 As expected As expected (B) As expected (B)mathematics.html Pass Priority 2 As expected As expected (B) As expected (B)physical-education.html

Pass Priority 2 As expected As expected (B) As expected (B)

religious-education.html

Pass Priority 2 As expected As expected (B) As expected (B)

science.html Pass Priority 2 As expected As expected (B) As expected (B)

General Error (all 30 pages) – no character encoding on any pages so any tests were passing tentatively. Added the following HTML line to rectify error - <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

Error A – 6 errors all relating to placing <h2> and <h3> tags inside of the block element <p>. Replaced <p> with <div> as shown:<!-- <p class=”newsitem”> --><div class="newsitem">

<h2 class="newstitle">ICT Lab Upgraded</h2><h3 class="newsdate">January 31, 2006</h3><div class="newscontent">Today one of our ICT labs has been upgraded so the machines can run the

latest version of Windows, Vista. The labs are currently running Vista Business Edition, and we hope to gain feedback from our pupils as to how easy it is to use, and whether to go through with a full scale upgrade.</div></div><!-- </p> -->

Accessibility Testing

Matthew Connor (D4060381) 154

Page 157: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix G

Result from index.html

Guidance B (all 30 pages) (Firefox 2)The footer currently has a gap of several pixels after the content and navigation areas. This has been resolved however in the second and third phases of development when implementing PHP. Effects Firefox 2, and Opera 9.10.

Note: All web pages that passed the priority level two checkpoints all contained warnings, for example: “Check that the foreground and background colours contrast sufficiently with each other” (Watchfire, 2004).

Matthew Connor (D4060381) 155

Page 158: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix G

2.0. PHP and AJAX ValidationThis area will cover XHTML 1.0 validation, accessibility validation, and browser testing.

Filename TestingXHTML 1.0 Valid WCAG Level IE6 compatible Firefox 2

compatibleOther Browsers

index.php Pass Priority 1 As Expected As Expected As Expectedindex_edit.php Issue B Issue B As Expected As Expected Issue Aabout-us.php Pass Priority 2 As Expected As Expected As Expectedabout-us_edit.php Issue B Issue B As Expected As Expected Issue Acalendar.php Pass Priority 2 As Expected As Expected As Expectedcalendar_edit.php Issue B Issue B As Expected As Expected Issue Acareers.php Pass Priority 2 As Expected As Expected As Expectedcareers_edit.php Issue B Issue B As Expected As Expected Issue Acontact-us.php Pass Priority 2 As Expected As Expected As Expectedcontact-us_edit.php Issue B Issue B As Expected As Expected Issue Aexam-results.php Pass Priority 2 As Expected As Expected As Expectedexam-results_edit.php Issue B Issue B As Expected As Expected Issue Aextra-curricular-activities.php

Pass Priority 2 As Expected Issue A Issue A

extra-curricular-activities_edit.php

Issue B Issue B As Expected As Expected Issue A

intranet.php Pass Priority 2 As Expected As Expected As Expectedintranet_edit.php Issue B Issue B As Expected As Expected Issue Alibrary.php Pass Priority 2 As Expected As Expected As Expectedlibrary_edit.php Issue B Issue B As Expected As Expected Issue Anews.php Pass Priority 1 As Expected As Expected As Expectednews_edit.php Issue B Issue B As Expected As Expected Issue Aofsted-report-2004.php Pass Priority 2 As Expected As Expected As Expectedofsted-report-2004_edit.php

Issue B Issue B As Expected As Expected Issue A

prospectus.php Pass Priority 2 As Expected As Expected Issue Aprospectus_edit.php Issue B Issue B As Expected As Expected Issue Asubjects.php Pass Priority 2 Issue A Issue A Issue Asubjects_edit.php Issue B Issue B As Expected As Expected Issue A

Matthew Connor (D4060381) 156

Page 159: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix G

Filename TestingXHTML 1.0 Valid WCAG Level IE6 compatible Firefox 2

compatibleOther Browsers

index.php Pass Priority 1 As Expected As Expected As Expectedadmissions.php Pass Priority 2 As Expected As Expected As Expectedadmissions_edit.php Issue B Issue B As Expected As Expected Issue Aattendance.php Pass Priority 2 As Expected As Expected As Expectedattendance_edit.php Issue B Issue B As Expected As Expected Issue Ahomework.php Pass Priority 2 As Expected As Expected As Expectedhomework_edit.php Issue B Issue B As Expected As Expected Issue Aschool-day.php Pass Priority 2 As Expected As Expected As Expectedschool-day_edit.php Issue B Issue B As Expected As Expected Issue Aschool-mission-statement.php

Pass Priority 2 As Expected As Expected As Expected

school-mission-statement_edit.php

Issue B Issue B As Expected As Expected Issue A

uniform.php Pass Priority 1 As Expected As Expected As Expecteduniform_edit.php Issue B Issue B As Expected As Expected Issue Aart-and-design.php Pass Priority 2 As Expected As Expected As Expectedart-and-design_edit.php Issue B Issue B As Expected As Expected Issue Acitizenship.php Pass Priority 2 Issue A Issue A Issue Acitizenship_edit.php Issue B Issue B As Expected As Expected Issue Aenglish.php Pass Priority 2 Issue A Issue A Issue Aenglish_edit.php Issue B Issue B As Expected As Expected Issue Afrench.php Pass Priority 2 Issue A Issue A Issue Afrench_edit.php Issue B Issue B As Expected As Expected Issue Ageography.php Pass Priority 2 As Expected Issue A Issue Ageography_edit.php Issue B Issue B As Expected As Expected Issue Ahistory.php Pass Priority 2 Issue A Issue A Issue Ahistory_edit.php Issue B Issue B As Expected As Expected Issue Aict.php Pass Priority 2 As Expected Issue A Issue Aict_edit.php Issue B Issue B As Expected As Expected Issue Amathematics.php Pass Priority 2 Issue A Issue A Issue Amathematics_edit.php Issue B Issue B As Expected As Expected Issue Aphysical-education.php Pass Priority 2 As Expected Issue A Issue Aphysical- Issue B Issue B As Expected As Expected Issue A

Matthew Connor (D4060381) 157

Page 160: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix G

Filename TestingXHTML 1.0 Valid WCAG Level IE6 compatible Firefox 2

compatibleOther Browsers

index.php Pass Priority 1 As Expected As Expected As Expectededucation_edit.phpreligious-education.php Pass Priority 2 Issue A Issue A Issue Areligious-education_edit.php

Issue B Issue B As Expected As Expected Issue A

science.php Pass Priority 2 As Expected As Expected As Expectedscience_edit.php Issue B Issue B As Expected As Expected Issue Acontrolpanel.php Issue B Issue B As Expected As Expected Issue Alogin.php Error A & B Priority 1 As Expected As Expected Issue Acontact-staff.php Issue B Issue B As Expected As Expected Issue A

Issue A – CSS not completing the content areas as seen below, possible causes, unordered list, and form controls.

Issue B – As the code for these pages is behind the login and requires access, the online validators cannot access the pages to check them.Error A – No form action specifiedError B – Label’s do not match the names of the inputs they are supposed to be designated too.

Matthew Connor (D4060381) 158

Page 161: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix G

3.0. Functionality Testing

A number of tests will be performed on the website and CMS to ensure functionality.

Test Expected Result Actual Result CommentsLogin with correct details Logging in with

Username: adminPassword: abc123

Control Panel shows

As expected

Login with incorrect details Logging in with Username: adminPassword: abc

An error message is shown

As expected

Login in with any string Logging in with Username: 2345h79Password: 333334vv

An error message is shown

As expected

Email staff member EnterEmail: [email protected]: TestContent: Hello World

Email received in university email account

As expected

Blank email Enter nothing into form fields

Validation shows alert popups.

Email sends as normal, when errors should be shown.

Validation code not working, needs reworking.

Access index_edit.php without login

Redirects to login.php As expected

Access controlpanel.php without login

Redirects to login.php As expected

Edit data on index_edit.php Changes are reflected on the As expected Need to look outside the admin

Matthew Connor (D4060381) 159

Page 162: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix G

website after save is committed. control panel to see changes have been successful.

Edit data on subjects.php Changes are reflected on the website after save is committed.

As expected Need to look outside the admin control panel to see changes have been successful.

Matthew Connor (D4060381) 160

Page 163: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix G

4.0. CSS ValidationThe main.css and middletonhigh.css files have been validated and the results are shown below:

The following warnings were found regarding the CSS files.

Matthew Connor (D4060381) 161

Page 164: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix G

Matthew Connor (D4060381) 162

Page 165: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Appendix H – Analysis Documentation

This appendix contains the competitor analysis questionnaires and the RUMM 2

documents that were used.

1.0. Questionnaires

2.0. RUMM 2

Matthew Connor (D4060381) 163

Page 166: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Matthew Connor (D4060381) 164

Page 167: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Matthew Connor (D4060381) 165

Page 168: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Matthew Connor (D4060381) 166

Page 169: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Matthew Connor (D4060381) 167

Page 170: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Actor Name: Head of Faculty(End-User)

Actor Importance:HighMediumLow

[ ] [X][ ]

Summary Description Of Actor: Head of faculty for the Geography department. Wishes to be able to edit the Geography area of the school website without the need to go to the school’s current webmaster with the content.

Complete Actor Profile (If applicable)

Age: Children – KS 0 (0-4 yrs) Children – KS 1 (4-7 yrs)Children – KS 2 (7-11 yrs)Children – KS 3 (11-14 yrs)Children – KS 4 (14-16 yrs)Adults (17-30)Adults (30-50)Adults (50+)

[ ][ ][ ][ ][ ][ ][ X ][ ]

Gender: Male [ X ] Female [ ] Both [ ] I.T. Literacy Level: Novice [ X ] Intermediate [ ] Expert [ ]

Web Usage Habits: Email [ X ] Shopping [ ] Purchasing Goods [ ] Entertainment [] Learning [X] Content Developer [ ]Data Input [ X ] Information Gathering [ X ]

If this application will replace a previous version, please complete this section

Offline Only [ ] Online [ X ] Mobile [ ] Online/Mobile Hybrid [ ]

Other:____________________________________Actor Traits (tick all that applies)

Time Poor [ X ] Time Rich [ ] Likes To Explore [ ] Likes To Access Information Quickly [ X ] Needs Assistance To Complete A Task [ X ] Needs A Little Help To Complete A Task [ ] Works Remotely [ ]

Actor Completes The Following Tasks Within The ApplicationThe actor will be able to load up the Geography area of the school website, and then can login, and edit the page using the AJAX Content Management system.

May also want to upload files promoting how the school teaches Geography as part of the curriculum for parents to be able to download and access. (Word Documents/PDF’s)

Matthew Connor (D4060381) 168

Page 171: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Actor Name: Head Teacher(Stakeholder)

Actor Importance:HighMediumLow

[X] [ ][ ]

Summary Description Of Actor: Head Teacher at the school and wants to be able to have greater control of the website than previously. Has decided that pupils will not require any privileges on the website at the current time.

Complete Actor Profile (If applicable)

Age: Children – KS 0 (0-4 yrs) Children – KS 1 (4-7 yrs)Children – KS 2 (7-11 yrs)Children – KS 3 (11-14 yrs)Children – KS 4 (14-16 yrs)Adults (17-30)Adults (30-50)Adults (50+)

[ ][ ][ ][ ][ ][ ][ ][ X ]

Gender: Male [ X ] Female [ ] Both [ ] I.T. Literacy Level: Novice [ ] Intermediate [ X ] Expert [ ]

Web Usage Habits: Email [ X ] Shopping [ ] Purchasing Goods [ ] Entertainment [] Learning [X] Content Developer [ ]Data Input [ X ] Information Gathering [ X ]

If this application will replace a previous version, please complete this section

Offline Only [ ] Online [ X ] Mobile [ ] Online/Mobile Hybrid [ ]

Other:____________________________________Actor Traits (tick all that applies)

Time Poor [ X ] Time Rich [ ] Likes To Explore [ X ] Likes To Access Information Quickly [ X ] Needs Assistance To Complete A Task [ ] Needs A Little Help To Complete A Task [ X ] Works Remotely [X]

Actor Completes The Following Tasks Within The ApplicationActor will be able to login to the system, and will be able to have access to all non faculty pages for editing plus all faculty pages, in a role similar to chief editor, to ensure the school is sending the right message out through the website.

Will not have access to user management or file management, at own request, as they feel they would not have the confidence or the time to do maintain these.

Matthew Connor (D4060381) 169

Page 172: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Actor Name: ICT Support Head(Administrator)

Actor Importance:HighMediumLow

[X] [ ][ ]

Summary Description Of Actor: Head of the ICT support department at the school, and is the most qualified to ensure that the website is maintained correctly. Was tired of having to update pages manually one by one in editing software previously, due to the way the website was originally designed. To be able to maintain the ICT support department efficiently would like a system where updates are quick and instantaneous without the need to login to a FTP server and upload files manually.

Complete Actor Profile (If applicable)

Age: Children – KS 0 (0-4 yrs) Children – KS 1 (4-7 yrs)Children – KS 2 (7-11 yrs)Children – KS 3 (11-14 yrs)Children – KS 4 (14-16 yrs)Adults (17-30)Adults (30-50)Adults (50+)

[ ][ ][ ][ ][ ][ ][ X ][ ]

Gender: Male [ ] Female [ X ] Both [ ] I.T. Literacy Level: Novice [ ] Intermediate [ ] Expert [ X ]

Web Usage Habits: Email [ X ] Shopping [ ] Purchasing Goods [ X ] Entertainment[] Learning [X]Content Developer [X ]Data Input [ X ] Information Gathering [ X ]

If this application will replace a previous version, please complete this section

Offline Only [ ] Online [ X ] Mobile [ ] Online/Mobile Hybrid [ ]

Other:____________________________________Actor Traits (tick all that applies)

Time Poor [ X ] Time Rich [ ] Likes To Explore [ X ] Likes To Access Information Quickly [ X ] Needs Assistance To Complete A Task [ ] Needs A Little Help To Complete A Task [ ] Works Remotely [ X ]

Actor Completes The Following Tasks Within The ApplicationBe able to login on site or from outside the school to be able to manage the entire website.

Should be able to edit all content pages, including each faculty, and general information. Should be able to add/remove files from the website, and also add/edit/delete user’s access to the website.

Matthew Connor (D4060381) 170

Page 173: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

List Actors

No Actor Name Tasks

1 Head of Faculties LoginEdit Faculty pagesUpload files to faculty areaView website

2 Teachers LoginUpload examples of workView website

3 Head Teacher LoginEdit all pagesUpload filesView website

4 Head of ICT Support LoginEdit all pagesUpload FilesRemove FilesAdd usersEdit user detailsRemove usersView website

5 Pupils View website

6 Search Robots Access robots.txt

7 Parents View website

Matthew Connor (D4060381) 171

Page 174: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Design Considerations

Navigation Considerations

Task Must consider the following;

Login Login form must be visible on all pages to allow swift access to AJAX-CMS. Place in same area on each page.

Edit Pages Using the standard menu navigate around the website to edit the pages in the AJAX-CMS. Users without privileges to edit certain pages, will see normal page with no facilities available to them.

Upload Files No implication for navigation.

View Navigation must be consistent and accessible on a range of browsers and platforms, where feasibly possible. No JavaScript, but must use rollovers to show user that an interaction is possible.

Remove Files For administrator an additional link will need to be available from menu, which goes to a file management page.

Add Users Additional link in primary navigation for administrator to be able to access a user management interface.

Edit Users Additional link in primary navigation for administrator to be able to access a user management interface.

Remove Users Additional link in primary navigation for administrator to be able to access a user management interface.

Access robots.txt

No implication for navigation

Layout Considerations

Task Must consider the following;

Login Placed in a consistent position in all pages. When logged in, replace login field, with Welcome <<User>> and a log out link.

Edit Pages When loading a text box into the page to edit content, the box should be the same width as the area it is editing.

Upload Files Upload file form needs to be placed at the foot of each page in the AJAX-CMS, where a table of the list of files available would normally be displayed on the web page.

View Layout must be consistent throughout the entire website and AJAX-CMS. Fixed width website. Layout separated from content in CSS file.

Remove Files On separate file management page, which has a table listing the file details such as name, description, file size, and file type.

Add Users On separate user management page, which has a table listing the user details such as name, role, access level. Above table a search facility to search by faculty or name.

Edit Users On separate user management page, which has a table listing the user details such as name, role, access level. Above table a search facility to search by faculty or name.

Remove Users On separate user management page, which has a table listing the user details such as name, role, access level. Above table a search facility to search by faculty or name.

Access robots.txt

No implication for layout.

Matthew Connor (D4060381) 172

Page 175: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Theme/Metaphors Considerations

Task Must consider the following;

Login People expect to see login areas near the top of the page, even in a bar at the top, or beneath the logo in a horizontal bar.Login without reload?

Edit Pages Will expect to see a loading image when the AJAX-CMS loads the content into the textbox without the refresh of the entire page.

Upload Files Will expect to see a status bar showing progress of the upload.

View Usual conventions on most websites include

Remove Files Could consider removing files without the need to reload a page.

Add Users When dealing with potentially up to 100 users, a search facility by different categories is usually expected.

Edit Users When dealing with potentially up to 100 users, a search facility by different categories is usually expected. Edit details without reloading the page. Load details in table into separate relevant text boxes.

Remove Users When dealing with potentially up to 100 users, a search facility by different categories is usually expected.

Access robots.txt

No implications for theme/metaphors.

Colour Considerations

Task Must consider the following;

Login Consider colouring selected text boxes to allow users to see which textbox they have selected. Works in FF 1.5.x, does not work on IE6. Research for IE7.

Edit Pages Colour selected text box, with a pastel green. Default colour for form buttons.

Upload Files Colour selected text box, with a pastel green. Default colours for form buttons.

View See the house style of the website. Dark green being the main colour from logo

Remove Files Use red cross symbol as image link to delete files from file management table.

Add Users Colour selected text box, with a pastel green. Default colour for form buttons.

Edit Users Colour selected text box, with a pastel green. Default colour for form buttons.

Remove Users Use red cross symbol as image link to delete files from user management table.

Access robots.txt

No implications for colour.

Accessibility Considerations

Task Must consider the following;

Login Make use of access keys in the navigation, and to access login form. Alternate text for every image. All file downloads come with a meaningful name, and description. Can be run on a number of platforms and browsers.

Edit Pages Make use of access keys in the navigation, and to access login form.

Matthew Connor (D4060381) 173

Page 176: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix H

Alternate text for every image. All file downloads come with a meaningful name, and description. Can be run on a number of platforms and browsers.

Upload Files Make use of access keys in the navigation, and to access login form. Alternate text for every image. All file downloads come with a meaningful name, and description. Can be run on a number of platforms and browsers.

View Make use of access keys in the navigation, and to access login form. Alternate text for every image. All file downloads come with a meaningful name, and description. Can be run on a number of platforms and browsers. Can be viewed with CSS switched off. Ensure website is accessible without JavaScript to general public, as they do not require access to the AJAX-CMS. Computers at school sufficient to run AJAX-CMS and JavaScript in browser.

Remove Files Make use of access keys in the navigation, and to access login form. Alternate text for every image. All file downloads come with a meaningful name, and description. Can be run on a number of platforms and browsers.

Add Users Make use of access keys in the navigation, and to access login form. Alternate text for every image. All file downloads come with a meaningful name, and description. Can be run on a number of platforms and browsers.

Edit Users Make use of access keys in the navigation, and to access login form. Alternate text for every image. All file downloads come with a meaningful name, and description. Can be run on a number of platforms and browsers.

Remove Users Make use of access keys in the navigation, and to access login form. Alternate text for every image. All file downloads come with a meaningful name, and description. Can be run on a number of platforms and browsers.

Access robots.txt

No implication for accessibility.

Matthew Connor (D4060381) 174

Page 177: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Appendix I – Design Documentation

The following documents complete this appendix:

• Original Sketches

• Storyboards

• Navigation Chart

• Images Reference List

Matthew Connor (D4060381) 175

Page 178: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Matthew Connor (D4060381) 176

Page 179: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Matthew Connor (D4060381) 177

Page 180: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Matthew Connor (D4060381) 178

Page 181: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Matthew Connor (D4060381) 179

Page 182: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Matthew Connor (D4060381) 180

Page 183: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Matthew Connor (D4060381) 181

Page 184: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Matthew Connor (D4060381) 182

Page 185: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Matthew Connor (D4060381) 183

Page 186: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Matthew Connor (D4060381) 184

Page 187: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

Images Reference List

art-class.jpg K.R. Montgomery & Associates (2007) Art Classroom [online]http://www.krmontgomery.com/educational_design/portfolio/images/ArtClassroom.jpg[Accessed: 11 February 2007]

classroom1.jpgSouthern Illinois University of School Medicine (2007) 320 East Carpenter [online]http://www.siumed.edu/telehealth/images/classroom.jpg[Accessed: 11 February 2007]

classroom2.jpgSouthern Illinois University of School Medicine (2007) Square Setup [online]http://www.siumed.edu/telehealth/images/square.jpg[Accessed: 11 February 2007]

classroom3.jpg3D Valley (2007) Classroom [online]http://www.3dvalley.com/gallery/d/16003-5/classroom.JPG[Accessed: 11 February 2007]

classroom4.jpgTouro University (2007) COHS New Classroom [online]http://209.209.34.22/gallery/albums/COHS-New-Classroom/oc9.jpg[Accessed: 11 February 2007]

classroom5.jpgMedia Tek Ltd. (2007) Classroom [online]http://www.mediatek.bm/images/Classroom%20012.jpg[Accessed: 11 February 2007]

classroom6.jpg Cornell University Library (2007) Stone Computing Center Classroom [online]http://www.mannlib.cornell.edu/computing/classroom/images/classroom1.jpg[Accessed: 11 February 2007]

classroom7.jpg Cours de Civilisation Française de la Sorbonne (2007) Classroom [online]http://www.ccfs-sorbonne.fr/IMG/jpg/fouarre-classroom-02.jpg[Accessed: 11 February 2007]

extra-curricular.jpgRevolution Skatepark and Climbing Centre (2007) Wall [online]http://www.revolutionskatepark.co.uk/climbing_new/images/wall/wallpic001.jpg[Accessed: 11 February 2007]

geography-class.jpgUniversity of Georgia Department of Geography (2007) Geography Classroom [online]http://www.ggy.uga.edu/facilities/200C/200c.jpg[Accessed: 11 February 2007]

lecture-room1.jpg School of Computing (2007a) Virtual Tour [online]http://www-scm.tees.ac.uk/virtualtour/noflash/glect_large.jpg

Matthew Connor (D4060381) 185

Page 188: THE UNIVERSITY OF TEESSIDE - Matthew Connor - Web ... · The research to the future of content management systems begins by exploring and selecting a process model and methodology.

Future of Content Management Systems Appendix I

[Accessed: 11 February 2007]

lecture-room2.jpg School of Computing (2007b) Virtual Tour [online]http://www-scm.tees.ac.uk/virtualtour/noflash/ol1_med.jpg[Accessed: 11 February 2007]

library.jpg Royal Forest of Dean College (2007) Library [online]http://www.rfdc.ac.uk/contentimages/large_LIBRARYWIDE1.jpg[Accessed: 11 February 2007]

map.gif Multimap (2007) Map of United Kingdom [online]http://www.multimap.com/map/browse.cgi?client=public&X=390000.090740791&Y=394500.619909062&gride=389974.090740791&gridn=394529.619909062&scale=5000&coordsys=gb&db=GB&lang=&inmap=&table=&ovtype=&keepicon=true&localinfosel=&local=&kw=&srec=0&mapsize=small&db=GB&rt=[Accessed: 11 February 2007]

maths-class.jpg Hsin Tien Senior High School (2007) Maths Classroom [online]http://www.htsh.tpc.edu.tw/newweb/newenglish/images/math.jpg[Accessed: 11 February 2007]

ofsted-logo.gifOFSTED (2007) Home [online]http://www.ofsted.gov.uk/[Accessed: 11 February 2007]

school-exterior.jpgImages of England (2007) Bromham Road [online]http://www.imagesofengland.org.uk/search/details.aspx?pid=1&id=35487[Accessed: 11 February 2007]

school-uniform.jpg Shene School (2007) Jacket and Shirt [online]http://www.shene.richmond.sch.uk/Images/Jacket&shirt.jpg[Accessed: 11 February 2007]

science-lab.jpg Ajax Building Corporation (2007) East Gadsen Science Lab [online]http://www.ajaxbuilding.com/photos/pc/k12/East%20Gadsden%20Science%20Lab.jpg[Accessed: 11 February 2007]

sports-hall.jpg Bishop Wordsworth’s School (2007) Sports Hall [online]http://www.bws.wilts.sch.uk/tour%20of%20the%20school/sportshall/insphall.jpg[Accessed: 11 February 2007]

student-planner.jpg Same Day Books (2007) Student Planner [online]http://images.samedaybooks.co.uk/cover.php?isbn=1403946868&type=medium[Accessed: 11 February 2007]

Matthew Connor (D4060381) 186