Development of web-based content and services

The delivery of e-business services via a web interface may initially appear straightforward. Everyone has heard apocryphal tales such as a 12-year-old relation creating a web site to sell used cars. Indeed, the creation of static web content is straightforward as we will see. In this example, simple HTML code is used for layout and formatting of information to create a simple catalogue of perhaps ten cars, with a web page for each that is accessed from a home page or simple menu. But imagine the situation for a real car dealership where a cus­tomer will want to select from a range of hundreds or thousands of cars with different specifications from different manufacturers. Here, it is impractical for the user to select from a menu of hundreds of cars. At the very least, they will expect the cars to be grouped into categories by manufacturer and perhaps sorted by age. But finding the right car through browsing these categories could take a long time and most users will demand a basic search facility by which they type in, or select, the make of car or an advanced search facility by which they choose the make, plus the specification such as engine size and year of registra­tion. In this case the page delivered to the user will depend on their preferences and will be dynamic web content. Here, it is apparent that more than simple formatting and presenta­tion is required – the site is interactive, that is to say it must accept text input from the user and respond to the request with the appropriate information. The development process will involve coding to accept the user’s preferences, passing the request to a database, performing a query, returning the results and formatting them for the user.

In this section we briefly introduce how simple static web pages can be developed using HTML and how scripts and databases can be used in conjunction with HTML to produce dynamic content.

1. Creating static web content

HTML or hypertext markup language, which was introduced in Chapter 3, is the standard that is most commonly used for producing static web content. HTML files can be written with an ordinary text editor such as the Windows Notepad program or the specialist tools described in a later section.

The operation of HTML is based on a web browser interpreting HTML tags or codes on a web page when it is loaded into the browser as explained in Chapter 3 (see the example in Figure 3.14). Reviewers of previous editions have rightly indicated that a more detailed treat­ment isn’t required in a text focusing on the management issues of e-business systems. However, we will stress some aspects of HTML development that managers need to be aware of:

  • Standards compliance. The World Wide Web Consortium (www.w3.org) has been promi­nent in defining web standards. However, its primary role is not to promote standards. This role has been taken up by other advocacy groups such as the WaSP, the Web Standards Project (www.webstandards.org/about/mission/) and the many web design agencies that are passionate about web standards implementation. The use of web standards affects the quality of service and accessibility levels of sites. It enhances accessibility for the visually impaired and increases the range of previous and future browser versions and access devices supported. The range of browsers, platforms and visual disabilities supported by a site translates to satisfied customers who will return to it.

In his seminal reference on web standards, Jeffrey Zeldman says that the best way to view web standards is as ‘a continuum, not a set of inflexible rules’. In practice a combination of the standards shown in Box 12.1 will be required. In particular the use of plug-ins and Ajax should be carefully discussed prior to implementation since according to how widely adopted the type or version of plug-in or the Ajax application this may exclude some site users or force them to use another plug-in.

  • Cross-browser support. Dependent on the standards used and how they are implemented, the site may appear different in different browsers since they may have interpreted some of the W3.org standards differently. This can result in a site rendering (appearing) differ­ently in different browsers. Sometimes different browsers, such as Internet Explorer 6, may require special coding to support them. So, prior to implementation a list of browsers and versions should be targeted and then subsequently tested using tools such as BrowserShots (Figure 3.9).

Increases accessibility – users can more readily configure the way a site looks or sounds using browsers and other accessibility support tools. Site is more likely to render on a range of access platforms like PDAs and smartphones.

  • Use of stylesheets for different platforms. We introduced Cascading Style Sheets (CSS) in Chapter 11 as a mechanism for enabling different style elements such as typography and layout to be controlled across an entire site or section of site.

Managers need to check with designers that the CSS will be designed to be flexible for making minor changes to presentation (for example in the case of a re-branding) and that it supports different platforms such as mobile access or print output.

  • Accessibility support. We saw in the section on user-centred design in Chapter 11 that web accessibility is about allowing all users of a web site to interact with it regardless of disabil­ities they may have or the web browser or platform they are using to access the site. The level of accessibility support provided (Level A, AA and AAA) should be defined before imple­mentation and then validated as part of implementation. Since each level has many require­ments, individual requirements should be specified, e.g. ‘text of the main document will resize when the option is selected via the browser or from the site option’ (many designs do not support text resizing despite this being essential for visually impaired users).
  • SEO support. We saw in Chapter 9 that different on-page optimization techniques are important to indicate to search engine algorithms the context of the page. Box 12.2 high­lights some of the main standards. Unless SEO support is strictly defined as part of a site redesign it maybe difficult to change these attributes of a page through a content manage­ment system. The on-page factors should be uniquely defined for each page within the site to avoid a ‘duplicate content penalty’ meaning that the search engine does not index a page since it is considered similar to another page.
  • Form validation. Forms are vital pages in a site since they create value from a visit through leads (via a contact us form for example), forum postings or the shopping trolley and checkout. It is vital that they use cross-browser web standards and that they use an appro­priate approach to check user inputs are valid (for example a ZIP or postcode).

2. Software and services for web-site development and testing

A variety of software programs are available to help developers of web sites. These can save a lot of time when developing the sites and will also help in site maintenance since they will make it easier for other people not involved in the original development of the web site to be involved in web-site maintenance. Tools are available with different levels of complexity and managers must decide which are most suitable to invest in. The types of tools to choose between are listed below. Although there are many rival tools, the ones here have been used for several years and are widely used, and skills in these tools are often mentioned in adverts for web design staff.

2.1. Basic text and graphic editors

Simple text editors can be used to edit HTML tags. Such tools are often low-cost or free, including the Notepad editor included with Windows. They are flexible and all web site developers may need to use them occasionally to develop content since more automated tools may not provide this flexibility and may not support the latest standard commands. However, they will not be widely used.

Examples

  • Microsoft Windows Notepad (microsoft.com)
  • Program File Editor (PFE).

Graphics editors are used to create and modify GIF and JPEG pictures.

Examples

  • Adobe Photoshop (macromedia.com)
  • Paintshop Pro (jasc.com).

2.2. Specialized HTML editors

These tools provide facilities for adding HTML and CSS tags automatically. For example, adding the bold text tag <B> </B> to the HTML document will happen when the user clicks the bold tag.

Examples

There are many freeware and shareware editors in this category.

Basic tools

  • Microsoft FrontPage (microsoft.com).
  • Dreamweaver (macromedia.com/products/dreamweaver)
  • Modern versions of word processors such as Microsoft Word or OpenOffice now have these facilities through using the Save As Web Page option but they may add to ‘page weight’ through additional XML markup code, so cannot typically be used for commercial sites.

Advanced graphics tools

  • Adobe Photoshop (extensively used by graphic designers, adobe.com).
  • Macromedia Flash and Director-Shockwave (used for graphical animations, macromedia.com).

2.3. Web application frameworks and application servers

Web application frameworks provide a foundation for building dynamic interactive web sites and web services. They use standard programming conventions or Application Pro­gramming Interface (APIs) in combination with data storage to achieve different tasks such as simply adding a user to a system or rendering the different page elements of a site. They provide standard functions in libraries to make it quicker to develop functionality than starting from lower-level coding. Functions in the web application framework are executed by web application servers which are software processes running on the server which accept and action requests via the principal web server software (e.g. Apache or Microsoft Information Server). The Common Gateway Interface (CGI) was a forerunner of this con­cept since it enabled standard functions to be accessed on a server, for example to perform form validation.

Examples

  • Adobe ColdFusion (adobe.com/products/coldfusion/). An established commercial framework.
  • Microsoft ASPNet (asp.net) is an evolution of the former Micosoft ASP script-based approach to an entirely different approach based on running compiled code on a server.
  • PHP (php.net) An open-source script-based alternative for development of web applications which can be used to create web applications. Open-source CMS such as Drupal (www.drupal.org) are based on this.
  • JavaBeans Enterprise and Java Server Pages. Widely used enterprise open-source system promoted by Sun Microsystems which are implemented using the Java language (java.com). The ERP system SAP makes extensive use of this framework within its web application versions.
  • Zope (zope.org) An object-based open-source application server using the Python language on which the widely used Plone (www.plone.org) CMS is based.
  • Ruby on Rails (rubyonrails.org) Another relatively new open-source application framework feted for its rapid production of systems and re-usability of modules as part of agile development.

A technical discussion of the issues involved with selection of application frameworks and servers is outside the scope of this text. Essentially all of the solutions above have been suc­cessfully used to develop enterprise web services and what is most important to successful project delivery is finding the right level of skills for implementation and a project method­ology or development process which is effective. The open-source alternatives have lower costs associated, but there may be difficulty in obtaining the right in-house or third-party resources to create applications of some of the less widely used frameworks and servers. This is indicated by Figure 12.2 which shows a survey of the application frameworks used by For­tune 1000 companies in 2007.

2.4. Content management systems

A content management system (CMS) provides a method for non-specialists to update web site pages. Lotus Notes was an early form of enterprise CMS. This is an efficient method of publishing content since the facility can be made available to people throughout the com­pany. Today there are two main forms of CMS, both of which are delivered as web services which can be accessed through a web browser. Enterprise CMSs can be used for large, com­plex sites (and other corporate documents) and as well as the standard page creation and editing facilities, CMSs enable version control and review of documents through workflow systems which notify reviewers when new documents are ready for editing.

Typically, CMS, are browser-based web applications running on a server. All enable users to readily add new pages within an existing page template. Some have flexibility for modify­ing a page template to include new promotions and images with left and right sidebars.

Issues in selecting a content management system

A professional content management systems should provide these facilities:

  • Easy authoring system. Editing of new and existing documents should be possible through a WYSIWYG (what you see is what you get) facility similar to a word processor which makes it easy to embed images and supports a range of markup necessary for SEO.
  • Search engine robot crawling. The content within the search engine must be stored and linked such that it can be indexed by search engine crawlers to add it to their index – this was not possible with some first-generation content management systems, but is typical of more recent ones. Sometimes URL rewriting to a search-engine-friendly format without many parameters is required. The Google Webmaster pages describe the requirements: google.com/webmasters.
  • Search-engine-optimization-friendly markup. Some bespoke content management systems created by design agencies do not enable easy editing of the key fields shown in Box 12.2. such as <title>, <h1> and <meta name= “description” content=“page description’^.
  • Different page templates. The design and maintenance of content structure (sub-components, templates, etc.), web-page structure and web-site structure. It should be possible to create different layouts and designs for different site sections or categories of pages (many blogs, for example, only offer a single layout for the entire blog).
  • Link management. The maintenance of internal and external links through content change and the elimination of dead links.
  • Input and syndication. The loading (spidering) of externally originating content and the aggregation and dissemination of content from a variety of sources.
  • Versioning. The crucial task of controlling which edition of a page, page element or the whole site is published. Typically this will be the most recent, but previous editions should be archived and it should be possible to roll back to a previous version at the page, page element or site level.
  • Security and access control. Different permissions can be assigned to different roles of users and some content may only be available through log-in details. In these cases, the CMS main­tains a list of users. This facility is useful when a company needs to use the same CMS for an intranet, extranet or public Internet site which may have different levels of permission.
  • Use of plug-ins and widgets. Mashups are possible through embedding widgets such as links to social networks or third-party applications such as Google Maps or YouTube videos. But a content management system may not readily support embedding within the main content or sidebars.
  • Publication workflow. Content destined for a web site needs to pass through a publication process to move it from the management environment to the live delivery environment. The process may involve tasks such as format conversion (e.g. to PDF, or to WAP), rendering to HTML, editorial authorization and the construction of composite docu­ments in real time (personalization and selective dissemination).
  • Tracking and monitoring. Providing logs and statistical analysis of use to provide performance measures, tune the content according to demand and protect against misuse. It should be also be possible to rapidly add tags to the page templates for web analytics tools such as Google Analytics which require a script to be added at the end of every page on the site to collect data about site activity. In advanced implementation it may be necessary for the content or commerce management system to update these tags automatically according to page type.
  • Navigation and visualization. Providing an intuitive, clear and attractive representation of the nature and location of content using colour, texture, 3D rendering or even virtual reality.

Personal CMSs are lower-cost CMSs that can be used by individuals or smaller businesses, often as part of the hosting package. They enable editing and update of content, but do not usually contain version control or workflow facilities. Personal CMSs overlap with blogging services, many of which can be configured for more general site management but may lack some of the requirements for enterprise CMS such as security and workflow management. The main open source CMSs are:

  • Plone (plone.org)
  • Drupal (drupal.org), a PHP version
  • Mambo/Joomla (mamboserver.com).

Examples of commercial CMS:

  • Interwoven (interwoven.com)
  • RedDot (reddot.com)
  • Microsoft Office Sharepoint Server (MOSS, microsoft.com)

Blogging systems (personal CMSs):

  • Blogger (blogger.com)
  • Movable Type/TypePad (movabletype.com)
  • WordPress (wordpress.org).

Many of these capable CMSs such as Plone, WordPress and Mambo are open source CMSs, meaning that the cost of ownership is low.

2.5. Selecting e-commerce servers

E-commerce servers provide many of the capabilities of a CMS, but they are tailored to the needs of site owners running an e-commerce store. So they focus on the needs of promoting product information and supporting the purchase process. The basic facilities of e-commerce servers to offer display of product content in different categories will be similar, so many of the most important requirements will relate to integration with other internal and external systems. Specific integration requirements of e-commerce servers (in addition to those in common with CMSs mentioned above) include integration with:

  • Product catalogue systems to import the latest products
  • Feeds to support shopping comparison engines such as Google Product Search or Shopzilla
  • Advanced shopping search or faceted browsing systems such as Endeca (endeca.com), Mercado and Google Mini Search appliance (www.google.com/enterprise)
  • Merchandising systems which recommend appropriate products and promotions to visi­tors, for example ATG (atg.com)
  • Customer service solutions including click-to-call or click-to-chat systems (e.g. atg.com)
  • Customer reviews and ratings systems, for example BazaarVoice (bazaarvoice.com) and Feefoo (www.feefo.com)
  • Payment systems, for example Netbanx (netbanx.com), Verisign (www.verisign.com), Worldbank (www.worldbank.com) and consumer systems Google Checkout (www.google. com/checkout) and Paypal (www.paypal.com) which may help increase conversion rates
  • Enterprise resource management systems for supply chain management and order fulfil­ment, for example SAP (sap.com)
  • Testing and web analytics systems since retailers will want to optimize their pages by trialling different versions to increase conversion rates.

Some providers such as ATG seek to include many of these facilities, but many online retailers will be using a different system and will want to incorporate ‘best-of-breed’ technologies for these different applications.

Examples:

  • Actinic (actinic.com) and Intershop (www.intershop.com), generally smaller busi­ness solutions
  • ATG Commerce Suite (atg.com), generally an enterprise system
  • NetSuite Ecommerce module (www.netsuite.com), for a range of company sizes integrating with other systems such as accounting and fulfilment.

Source: Dave Chaffey (2010), E-Business and E-Commerce Management: Strategy, Implementation and Practice, Prentice Hall (4th Edition).

1 thoughts on “Development of web-based content and services

  1. marizon ilogert says:

    Hello there, I found your site via Google while searching for a related topic, your web site came up, it looks good. I have bookmarked it in my google bookmarks.

Leave a Reply

Your email address will not be published. Required fields are marked *