cloud computing specialist certification kit

219

Upload: muhammad-majid-khan

Post on 26-Nov-2015

65 views

Category:

Documents


0 download

DESCRIPTION

vdfgvvsd

TRANSCRIPT

SaaS and Web Applications Specialist Level Complete

Certification Kit:

Software as a Service Study Guide Book and Online Course

Notice of Rights: Copyright © The Art Of Service. All rights reserved. No part of

this book may be reproduced or transmitted in any form by any means,

electronic, mechanical, photocopying, recording, or otherwise, without the prior

written permission of the publisher.

Notice of Liability: The information in this book is distributed on an “As Is” basis

without warranty. While every precaution has been taken in the preparation of the

book, neither the author nor the publisher shall have any liability to any person or

entity with respect to any loss or damage caused or alleged to be caused directly

or indirectly by the instructions contained in this book or by the products

described in it.

Trademarks: Many of the designations used by manufacturers and sellers to

distinguish their products are claimed as trademarks. Where those designations

appear in this book, and the publisher was aware of a trademark claim, the

designations appear as requested by the owner of the trademark. All other

product names and services identified throughout this book are used in editorial

fashion only and for the benefit of such companies with no intention of

infringement of the trademark. No such use, or the use of any trade name, is

intended to convey endorsement or other affiliation with this book. ITIL® is a

Registered Community Trade Mark of OGC (Office of Government Commerce,

London, UK), and is Registered in the U.S. Patent and Trademark Office.

Write a Review and Receive a Bonus Emereo

eBook of Your Choice

Up to $99 RRP – Absolutely Free

If you recently bought this book we would love to hear from you – submit

a review of this title and you’ll receive an additional free ebook of your

choice from our catalog at http://www.emereo.org.

How Does it Work?

Submit your review of this title via the online store where you purchased

it. For example, to post a review on Amazon, just log in to your account

and click on the ‘Create Your Own Review’ button (under ‘Customer

Reviews’) on the relevant product page (you’ll find plenty of example

product reviews on Amazon). If you purchased from a different online

store, simply follow their procedures.

What Happens When I Submit my Review?

Once you have submitted your review, send us an email via

[email protected], and include a link to your review and a link to the

free eBook you’d like as our thank-you (from http://www.emereo.org –

choose any book you like from the catalog, up to $99 RRP). You will then

receive a reply email back from us, complete with your bonus ebook

download link. It's that simple!

Foreword

As an education and training organization within the IT Service

Management (ITSM) industry, we have watched with enthusiasm as

cloud computing, Software as a Service (SaaS) and Web Applications

have evolved over the years. The opportunities provided through SaaS

and Web Applications have allowed for significant growth within an

industry that continues to mature and develop at a rapid pace.

Our primary goal is to provide the quality education and support

materials needed to enable the understanding and application of SaaS

and Web Applications within a wide range of contexts.

This comprehensive book is designed to complement the in-depth

eLearn SaaS and Web Applications Specialist program provided by The

Art of Service. The interactive eLearn course uses a combination of

narrated PowerPoint presentations with flat text supplements and

multiple choice assessments which will ultimately prepare you for the

SaaS and Web Applications Specialist Level certification exam.

We hope you find this book to be a useful tool in your educational library

and wish you well in your IT Service Management career!

The Art of Service

http://www.theartofservice.com/

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 3

How does the Certification Kit work?

Welcome to the Software as a Service and Web Applications Specialist Level Complete

Certification Kit. This book is part of the series of books around Cloud Computing and

managing the services that are involved in, or utilize, Cloud Computing.

The certification kits are in line with the Cloud Computing Certification Scheme.

After you‟ve read this book, studied the eLearning materials and successfully passed

your exam, you can continue with your qualifications through the specialist programs

and work toward your Cloud Computing Executive Level Certification.

In addition to the certification kits, The Art of Service has also developed a series of

books on the subject of Cloud Computing. All books are available as e-book, PDF

download, audio book and paperback.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 4

eLearn Component

This certification kit comes with FREE access to the eLearning program. The following

page explains how to access the program materials online.

The Software as a Service and Web Applications Specialist Level Exam

Chapter 8 of this book provides more detail about the certification exam and what the

requirements are to pass.

How to access the associated Software as a Service and Web Applications

Special Level eLearning Program:

1. Direct your browser to: www.theartofservice.org

2. Click „login‟ (found at the top right of the page)

3. Click „Create New Account‟. If you already have an existing account, please

move on to step 5.

4. Follow the instructions to create a new account. You will need a valid email

address to confirm your account creation. If you do not receive the confirmation

email check that it has not been automatically moved to a Junk Mail or Spam

folder.

5. Once your account has been confirmed, email your User-ID for your new

account to [email protected].

6. We will add your account to the Software as a Service and Web Applications

eLearning Program and let you know how to access the program from then on.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 5

Minimum system requirements for accessing the eLearning Program:

Processor Pentium III (600 MHz) or higher

RAM 128MB (256MB recommended)

OS Windows 98, NT, 2000, ME, XP, 2003, Mac OSX

Browser Internet Explorer 5.x or higher (Cookies and JavaScript Enabled),

Safari

Plug-Ins Macromedia Flash Player 8

Other 16-bit sound card, mouse, speakers or headphones

Display

Settings

1024x768 pixels

Internet

Connection

Due to multimedia content of the site, a minimum connection speed of

256kbs is recommended. If you are behind a firewall and face

problems accessing the course or the learning portal, please contact

your network administrator for help.

If you are experiencing difficulties with the Flash Presentations within the

eLearning Programs please make sure that:

1) You have the latest version of Flash Player installed, by visiting www.adobe.com and

following the links.

2) You check that your security settings in your web browser don't prevent these flash

modules playing. There is support for these issues on the Adobe webpage.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 6

Contents

1 INTRODUCTION 14

1.1 WHAT IS SAAS? 14

1.2 THE HISTORY OF SAAS 17

1.3 GOALS AND OBJECTIVES OF SAAS 19

2 COMMON TERMINOLOGY 21

3 WHAT SAAS IS AND WHAT IT IS NOT 25

3.1 SAAS VS. SOFTWARE + SERVICE 25

3.2 SAAS VS. ASP 27

4 BENEFITS OF SAAS 30

4.1 SAVING MONEY 30

4.2 SAVING TIME 31

4.3 ALLOWING A BUSINESS TO USE THEIR BUDGET MORE EFFECTIVELY 31

4.4 GIVING BUSINESSES ACCESS TO THE VERY LATEST SOFTWARE VERSIONS 32

5 RELATED FORMS OF CLOUD COMPUTING 34

5.1 CLOUD COMPUTING 34

5.2 VIRTUALIZATION 35

5.3 GRID COMPUTING 35

5.4 UTILITY COMPUTING 35

6 COMPANIES INVOLVED WITH SAAS 36

6.1 ADOBE SYSTEMS 36

6.2 AXENTIS 36

6.3 GOOGLE 37

6.4 MICROSOFT 37

6.5 NETSUITE 38

6.6 SALESFORCE 38

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 7

6.7 SUCCESSFACTORS 39

7 TECHNOLOGIES THAT INCORPORATE SAAS 41

7.1 SOFTWARE AS A SERVICE 41

7.2 SAAS HOSTING 42

7.3 SAAS PLATFORM 44

7.4 TENANCY PARTITIONING 45

7.5 MONITORING AND METERING 45

7.6 SCALING 46

7.7 GOOGLE APPS 46

7.8 GMAIL 46

7.8.1 Google Talk 46

7.8.2 Google Calendar 47

7.8.3 Google Docs 47

7.8.4 Google Sites 47

7.9 GOOGLE MAPS 48

7.10 WINDOWS LIVE 49

7.10.1 Windows Live Messenger 49

7.10.2 Windows Live Hotmail 51

7.10.3 Windows Live Calendar 51

7.10.4 Windows Live Spaces 51

7.10.5 Windows Live ID 52

7.11 MICROSOFT OFFICE LIVE SMALL BUSINESS 52

7.11.1 Web site design tool and hosting space 52

7.11.2 Domain name registration and business email creation tools 53

7.11.3 Contact Manager 53

7.11.4 Document Manager 53

7.11.5 Workspaces 53

7.11.6 Project Manager 54

7.11.7 Resources as well as support 54

7.11.8 Store Manager 54

7.11.9 E-Mail Marketing 54

7.11.10 adManager 55

7.12 A BRIEF COMPARISON BETWEEN TECHNOLOGIES 55

7.13 INTRODUCTION REVIEW QUESTIONS 58

8 HOW TO ACCOMPLISH SAAS 59

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 8

8.1 MIGRATING FROM A STANDARD SOFTWARE ENVIRONMENT TO A SAAS ONE (BEFORE AND AFTER) 59

8.1.1 Things to do and consider before migration 59

8.1.2 Things to do after migration 61

8.2 A SIMPLE HOW TO GUIDE 62

8.3 TOP 10 THINGS TO DO AND CONSIDER WHEN IMPLEMENTING SAAS 67

8.4 TOP 10 SAAS PITFALLS 71

8.5 SOME OF THE PROBLEMS THAT YOU MAY ENCOUNTER WITH SAAS 76

9 MANAGING A SAAS ENVIRONMENT 79

9.1 SUPPORT ISSUES 79

9.2 HOW TO MEASURE CAPACITY AND PERFORMANCE 81

9.3 CONTRACTS AND AGREEMENTS SUCH AS LICENSING 82

9.4 ORGANIZATIONAL ASPECTS – SUCH AS THE ROLES & RESPONSIBILITIES THAT PEOPLE HAVE IN A SAAS

ENVIRONMENT 83

10 INTRODUCING APPLICATIONS ON THE WEB 86

10.1 STARTED WITH THE INTERNET 87

10.2 HISTORY OF WORLD WIDE WEB 89

10.3 EVOLUTION OF THE WEB APPLICATIONS 91

11 EXPANDING ON WEB 2.0 93

11.1 HARNESS THE COLLECTIVE INTELLIGENCE OF THE COMMUNITY 95

11.2 THE ADVANCEMENT OF BLOGGING 97

11.3 A NEW CENTRAL INTELLIGENCE 98

11.4 OBTAINING DYNAMIC CONTINUOUS IMPROVEMENT

100

11.5 CREATING PROGRAMMING MODELS THAT ARE LIGHTWEIGHT

101

11.6 NO LONGER BOUND TO A SINGLE CUSTOMER

102

11.7 STRIVING FOR A BETTER EXPERIENCE

103

12 DISTINGUISHING WEB APPLICATIONS 105

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 9

13 INTRODUCTION WEB APPLICATION FRAMEWORK 107

14 A NEW SUCCESS FOR WEB APPLICATIONS IN AJAX 109

15 A SURVEY OF WEB APPLICATION FRAMEWORKS 111

15.1 ACTIONSCRIPT

111

15.2 ASP.NET

112

15.3 COLDFUSION

113

15.4 COMMON LISP

114

15.5 GROOVY

115

15.6 JAVA

115

15.7 JAVASCRIPT

117

15.8 LUA

117

15.9 PERL

118

15.10 PHP

118

15.11 PYTHON

119

15.12 RUBY

120

15.13 SCHEME

120

15.14 SMALLTALK

120

15.15 CONCLUSION TO WEB APPLICATIONS FRAMEWORKS

121

16 INTRODUCTION TO MARKUP LANGUAGES 123

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 10

16.1 SGML/HTML

123

16.2 XML/XHTML

124

16.3 CONCLUSION TO MARKUP LANGUAGES

125

17 BENEFITS FOR WEB APPLICATIONS 126

17.1 PROGRESS REVIEW QUESTIONS

128

18 SERVICE MANAGEMENT PROCESSES 129

18.1 IT FINANCIAL MANAGEMENT

129

18.1.1 IT Financial Management and SaaS 131

18.2 INFORMATION SECURITY MANAGEMENT

132

18.2.1 Information Security Management and SaaS 136

18.3 RELEASE & DEPLOYMENT MANAGEMENT

137

18.3.1 Release and Deployment and SaaS 141

18.3.2 Release Management and Web Applications 141

18.4 KNOWLEDGE MANAGEMENT

142

18.4.1 Knowledge Management and SaaS 146

18.5 INCIDENT MANAGEMENT

146

18.5.1 Incident Management and SaaS 149

18.5.2 Incident Management and Web Applications 149

18.6 CHANGE MANAGEMENT

150

18.6.1 Change Management and SaaS 158

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 11

18.6.2 Change Management and Web Applications 159

18.7 CAPACITY MANAGEMENT

159

18.7.1 Capacity Management and SaaS 161

18.7.2 Capacity Management and Web Applications 162

18.8 AVAILABILITY MANAGEMENT

162

18.8.1 Availability Management and SaaS 164

18.8.2 Availability Management and Web Applications 165

19 USING THE WEB TO PROMOTE ITIL 165

19.1 IT SERVICE CONTINUITY MANAGEMENT (ITSCM)

169

19.1.1 IT Service Continuity Management and SaaS 170

20 APPLYING CLOUD COMPUTING TO PROJECT MANAGEMENT 172

20.1 BENEFITING FROM CLOUD COMPUTING

172

20.2 THE EASE OF LINKING (HYPERLINKS)

173

20.3 SUBSCRIBING TO SUCCESS (BLOGGING)

174

20.4 INTERFACING WITH THE PROJECT (MASHUPS)

176

20.5 EVERYONE IS A PROJECT MANAGER (OPEN SOURCE)

177

20.6 TREATING THE PROJECT AS PARTS, NOT THE WHOLE (REUSE)

178

20.7 TESTING THE LIMITS (PORTABILITY)

179

20.8 FINAL REVIEW QUESTIONS

181

21 ANSWERS 182

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 12

INTRODUCTION REVIEW QUESTIONS

182

PROGRESS REVIEW QUESTIONS

182

FINAL REVIEW QUESTIONS

182

22 CERTIFICATION 183

22.1 CLOUD COMPUTING CERTIFICATION PATHWAYS

183

ITIL® CERTIFICATION PATHWAYS

185

22.2 ISO/IEC 20000 CERTIFICATION PATHWAYS

186

23 SAAS AND WEB APPLICATIONS SPECIALIST EXAM TIPS 187

24 REFERENCES 188

Also from Emereo Publishing and The Art of Service:

ITIL V3 Foundation Complete Certification Kit:

2009 Edition Study Guide Book and Online Course

2009 Edition ITIL V3 Foundation Certification exam prep guide, including

refreshed study guide, online eLearning program, new examples, instructions,

and cautionary advice.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 14

1 Introduction

1.1 What is Saas?

SaaS (Software as a service) changes the way software applications are stored and

accessed. Traditionally software applications would be installed and reside on the

same host machine, where they would be accessed from. However, SaaS changes this

by hosting software applications on a remote server. These software applications and

services are then accessed by remote users via the Internet.

A simple example of SaaS:

Although most people probably don‟t realize it, SaaS is more commonly used than they

actually think. One of the most common uses of SaaS is for web-based email services.

Popular web-based email service providers include Microsoft, Hotmail, Gmail, Yahoo

Mail and many others.

These web-based email services are a good example of what SaaS basically is. Each

web-based email service provider hosts all of their programs, information and data that

are linked to the services they are providing (in this case web-based email access), in a

remote centralized location.

End-users can then remotely access these web-based email services and data which

relates to them, via the World Wide Web using any normal web browser. To summarize

things, there are a few basic points that are common to all SaaS implementation.

1. Software applications or services are stored remotely.

2. A user can then access these services or software applications from anywhere

in the world, via the Internet.

3. In most cases, a user does not have to install anything onto their host machine,

all they require is a web browser to access these services (although in some

cases, a web browsers may require an additional plug-in or add-on for certain

services).

These simple set of points are common for all SaaS implementations, whether they are

for business and enterprise use or even just for individual use.

Categories of SaaS

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 15

Currently, there are two main categories of SaaS; these are business-orientated

services and customer-orientated services.

Business-orientated services

This type of SaaS involves offering software solutions to companies or enterprises. The

software is either sold in a traditional commerce way or it is made available to

companies on a subscription basis. A number of applications and software services fall

under this first category. However, in most cases they relate to business processes

such as product management services or customer relations applications.

Customer-orientated services

Customer orientated SaaS involves offering software solutions or services to the

general public. Sometimes these services are offered on a subscription basis but in a

lot of cases they are offered for free.

Often, advertising is what make it possible for these types of consumer orientated

services, to be offered for free.

Who has ownership of software in a SaaS Solution?

Normally a customer will purchase software along with a license (or licenses depending

on how many copies they require), by paying a one-off fee. This is similar to buying any

other product, whether it is software-based or hardware-based.

A customer buys a software product and once purchased, that software product then

becomes the property of the buyer. The customer now has full ownership of that

software solution and can effectively use the software in any way they wish, as long as

they do not break any of the terms and conditions (i.e. copyright terms) or licensing

terms for that software. In most cases, once a software solution has been purchased,

the vendor for that software solution will still provide software support in the form of

upgrades and patches.

In the case of SaaS, ownership of software solutions remains in the vendor‟s hands. A

customer does not buy a software solution or any licenses through a one-off fee.

Instead they pay a recurring fee in the form a subscription (if the software solution is

not one that is offered for free). The user then has access and permission to use that

particular software solution, until either their subscription period runs out or they cancel

their recurring payment.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 16

In a SaaS solution, ownership of software applications and services remain in the

vendor‟s hands because the software is not downloaded onto a user‟s computer in any

way. Instead it is accessed by a user remotely through the Internet using their web

browser. This means that software vendors now have full control of their software

solutions and do not have worry about consumers breaching their copyright terms or

licensing terms.

The main advantages of SaaS for software clients

Briefly mentioned below are a few of the main advantages for of SaaS for software

users.

Lower costs – If a user only needed to use a software application for one month, it

would be a waste of money for them to completely purchase this software application

(especially for expensive software applications such as video editing, graphics, etc.).

By using SaaS software solutions, consumers can save a lot of money. All they have to

do is pay a subscription fee for one month or for the duration of time that they will be

using an application for. This is a very cost-effective solution for users who may only

use a particular software application on rare occasions.

Reduced storage requirements – Some applications can take up a lot of hard drive

space. By using SaaS software solutions, consumers can save a lot of hard drive

space and in the long run this can save them money. Also, users do not have to worry

about constantly backing up software data as this is all handled by the SaaS vendors.

The main advantages of SaaS for software vendors

Continuous income and greater profits – SaaS allows software vendors to profit like

never before. Traditionally a client would purchase a software application, along with

the number of licenses that they required and then that was it. A software vendor

received very little from their clients after this initial purchase. However, SaaS now

allows software vendors to receive a continuous stream of income in the form of

subscriptions. In the long run, this means that software vendors are able to profit far

more than they could before.

A reduction in piracy and unlicensed software – By keeping ownership of software

applications in their own hands, software vendors can benefit from a reduction in piracy

and unlicensed copies of their software being distributed. Again, this increases their

profits because the amount of money that they are losing through piracy can be greatly

reduced.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 17

There are many more benefits to using SaaS software solutions for both clients and

vendors and only a few of the main ones were mentioned above.

1.2 The History of SaaS

SaaS is a technology that first came of age during the 1990s. However, it was nearly

lost in obscurity like many other new technologies that were emerging at that time, due

to the dot com bubble bursting. Fortunately, SaaS was able to recover and it is now a

software methodology that is widely used across the Internet.

Issues that were holding SaaS back during the 90s

The initial problems for SaaS during the late 90s included the fact that most software

applications were never designed to be remotely accessible. Software applications

would always be installed on to the same machines on which they were going to be run

on.

Other factors which greatly hindered the progress of SaaS, being widely implemented

during the 1990s included limited bandwidth availability and Internet speeds. Many

clients and potential users of SaaS accepted the subscription approach to software

services and hosted delivery of software services.

However, because Internet connections were so slow at the time (maximum of 56kbs

for most users), SaaS just wasn‟t practical. Bandwidth was also quite expensive, which

made SaaS a very expensive solution at the time. It was far quicker and cheaper for

businesses and individual users to install applications onto their local machines.

Finally, software vendors were just not interested in changing their pricing models. At

the time, most software vendors were happy with receiving immediate up-front payment

for their software applications and tended to overlook the benefits that a subscription-

based model would have for them. The major software companies like Microsoft,

Oracle, etc., also just ignored SaaS and did not take it seriously.

The resurgence of SaaS in the millennium

As mentioned, a lot of technologies and concepts just faded with the burst of the dot

com bubble, but SaaS was not one of these. To begin with, SaaS was just used in

niche markets. SaaS was being used to address specific software problems and

provide specific software services, in small specialized areas of a business.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 18

However with time, vendors like Salesforce, NetSuite and many more, began to

develop purpose-built SaaS solutions, delivering them to customers in the form of

subscriptions. This meant that businesses now had access to entire software solutions

and could subscribe to as many of these services or as few of these services as

required. This is one of the main reasons why SaaS solutions became widely adopted

in the new millennium, because of the flexibility that SaaS offered.

Of course this wasn‟t the only reason why SaaS solutions became so widely adopted in

the new millennium. There were a few other important reasons which are briefly

detailed below.

Improvements in Internet speeds and an increase in availability

In the new millennium, Internet speeds rapidly increased through the use of broadband

technologies. The price of bandwidth was also getting cheaper which meant

businesses could now purchase more bandwidth than ever before.

This meant that SaaS could not only be implemented cheaply but it could now also

work efficiently, without any lag or time delays that dial-up Internet connections would

have caused.

Also, more and more people were now connecting to the Internet and where there

might not have been a market for SaaS before (because most people worked offline);

there was one now (because people started to spend more time connected to the

Internet online).

Seeing things from a different perspective

At first, software vendors were against using a subscription-based model for their

software, they were happy receiving upfront payments. However, as the demand for

Internet-based services increased, software vendors decided to change their stance by

offering software services to consumers using a subscription-based model. This

allowed software vendors to receive a continuous stream of income and profit far more

than they could have by just using their traditional software sales model.

Also, consumers were much happier using a subscription-based model because they

would not have to pay large amounts of money upfront and had the ability to only pay

for the services that they required. A subscription model in most cases also ensured

that consumers would not be locked in by any licensing terms or a software vendor‟s

terms and conditions.

For example, some software vendors would not offer refunds once a software

application had been purchased. This meant that if a client purchased a software

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 19

application and it was not as it was advertised making it useless to the client, then that

client would have effectively lost their money.

However, using a subscription-based model, a client has the ability to pay a fraction of

a software application‟s full price, without being locked in to their subscription in any

way. This means that if a software application ends up being useless for a client, then

they can cancel their subscription with a minimal loss of funds.

SaaS is a relatively new technology when compared to other technologies, but it is now

starting to be widely adopted by both businesses and home users. Advances in Internet

speeds and bandwidth availability have made it both a very feasible software solution

and a cheap software solution and it is now backed by major software and Internet

companies such as Microsoft and Google.

1.3 Goals and Objectives of SaaS

Detailed below are some of the main reasons why SaaS was initially developed.

To make the management and control of software easier

Traditionally, software vendors would sell their software applications in the same way

that any other product would be sold. Once a software vendor sold a copy of their

software application, that was it, it was gone and the software vendor would lose

control of it.

Of course, by losing control of their software applications, these applications could now

be easily manipulated or even illegally duplicated. By using SaaS, software vendors

have complete control over their software applications. This also means that they can

easily be managed and piracy can be controlled to a certain extent.

To take the management strain away from consumers

A lot of time and money is spent by businesses on the deployment, management and

updating of their software applications. SaaS completely eliminates this on the

customer‟s side, because it is now the software vendor who deals with these issues

when a SaaS solution is used. This is much better for both parties because software

vendors are better equipped to deal with the management issues for their software

applications while customers have one less strain on them.

To make software services available globally

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 20

Because of the fact that SaaS operates across the Internet, software services can be

accessed by anyone from anywhere in the world as long as they have an Internet

connection. For people who travel often or constantly switch between machines that

have different software applications installed onto them, this is very beneficial.

To provide a single instance of a software service to multiple users

The great thing about SaaS for software vendors is that multiple users can access the

same instance of a software service. Each user will see their own instance of a

software service and their own data, without interfering with any other user‟s data. This

means that software vendors can save a lot of money and resources by running just a

single instance of a software service, which can then be accessed by many users.

To create flexible payment models for software services

Using SaaS, there are many different ways that a client can pay for software. For

example they could pay a monthly fee, they could be charged based on the features

that they use or on how much they used a particular software service, i.e. using a pay-

as-you-go model. The good thing about this flexibility in pricing models is that the

needs of many different users can be accommodated for. For example, larger

companies could pay bigger upfront fees to save them money in the long run, while

individual users could use a pay-as-you-go payment model to save them money in the

short term and avoid paying large upfront fees.

These were some of the main goals and objectives for SaaS when it was initially

implemented. The main aim for SaaS however, was to take the management strains of

software maintenance and deployment away from consumers, while at the same time

putting control of software services back into the hands of software vendors.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 21

2 Common Terminology

Below are some of the terms that you should be familiar with and may come across

when dealing with SaaS.

Term

Definition

ASP (Application

Service Provider

aka Application

Host)

Application Service Providers control, host and manage software

applications from a centralized location. ASPs can deliver software

applications using either a traditional license-based model or a

subscription-based model.

CRM (Customer

Relationship

Management)

CRM is a term that is often used when dealing with SaaS. Simply

put, it refers to the methods or processes that a company uses, in

order to communicate and remain in contact with their customers.

Due to the nature of the Internet, often some kind of CRM

software will be used so that businesses can efficiently manage

their customers. Some of the most well known SaaS organizations

offer CRM software services and CRM is quite a large niche for

SaaS.

Grid Computing Grid computing works by pooling together the resources of

individual machines, allowing these resources to be combined

together. These combined resources can then be used to provide

massive amounts of processing power, storage capacity, etc.

SETI (Search for Extraterrestrial Life Initiative) is a one of the most

well known examples of grid computing.

LAMP Stack

LAMP is an acronym for Linux (operating system), Apache (web

server), MySQL (database) and Perl/PHP (language). The term

LAMP Stack refers to a low cost or free development framework

that consists of a number of open source applications, which can

be used to help deliver on demand software services across the

web.

Multi-Instance

This term is used to refer to an application that is running multiple

„copies‟ of itself.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 22

These different „copies‟ of a software application can be accessed

simultaneously by a number of different users. Application Servers

are usually used to manage Multi-Instance Software.

Net-Native

Net-Native describes software applications or services that can

only be accessed via the Internet using a web browser. Unlike

some other SaaS solutions, Net-Native software applications

cannot be run without using a web browser or offline.

MSP (Managed

Service Provider)

An MSP deals with the delivery and management of network-

based services, software applications and equipment. MSPs will

usually offer a number of different software services such as

telephony services, messaging services, firewall software or even

security applications.

Multi-Tenant

On Demand

On-Premise

Software

Single Instance

This term refers to an application that has the ability to serve

multiple different end-users at the same time.

The term „on demand‟ can be used in a number of different

phrases. However, the phrase „on demand software‟ refers to a

fully integrated application, service or technology that can easily

be used or accessed across the Internet, when it is required.

On-Premise Software is effectively the opposite of Software as a

Service. It refers to software that is either stored or installed on a

businesses or users machines, locally.

This refers to an application that can only be run on its own

dedicated server and can only be accessed by just one end-user.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 23

SLA (Service

Level Agreement)

SOA (Service-

Orientated

Architecture)

Web Services

This is a formal written agreement that is made between a service

provider and their customer. It is used to make clear the standards

that will be used, to help measure the performance of services and

their delivery.

The content of an SLA will differ from service to service, however

all Service Level Agreements will have a set of guarantees or

promises made by a service provider to their customers. If a

service provider does not meet these guarantees set out in the

SLA, then they will usually reimburse their customers in some

way.

For example, some service providers might have set out in their

SLA, that they will provide 99 percent uptime of a particular

service to their customers each month. Now if that software

application was available for less than 99 percent in a particular

month, then that service provider would usually refund the

subscription amount for that month or credit their customer‟s

accounts, to keep them happy and avoid losing them.

This term simply refers to an architecture type, where numerous

services are collected together. These different services usually

communicate with each other, for example by passing data

between one another to complete a much larger process or to

provide a much more complex service. Simply, an SOA is a

collection of software services.

Web Services are simply web-based applications that can interact

with other web-based applications dynamically, using open

standards such as XML (extensible markup language), UDDI

(Universal Description Discovery and Integration) and so on. Web

service processes are usually carried out away from a user‟s eyes,

behind the scenes. For example, when one software service

communicates with another software application, a user does not

usually see this process occurring.

Some of the major development platforms that currently support

Web Services include LAMP (Linux, Apache, MySQL, Perl/PHP),

Microsoft‟s .NET Framework and Sun‟s J2EE (Java 2 Platform

Enterprise Edition) platform.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 24

Utility Computing

(Also sometimes

referred to as On-

Demand-

Computing)

XML (Extensible

Markup Language)

This refers to a model where a MSP (Managed Service Provider),

makes a number of different computer resources and services

available to customers. Instead of charging their customers for all

of these services, an MSP then only charges their customers

based on the resources and services that they use. If a customer

does not use a particular service, then they are not charged for it.

XML is a markup language that is similar to HTML (Hyper Text

Markup Language). However, the key difference between the two

is that HTML deals with how elements are displayed, while XML

deals with what data these elements contain. XML is an open

source language and because it deals specifically with data, it is

often the language used for data interchange between different

web services.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 25

3 What SaaS is and what it is not

3.1 SaaS vs. Software + Service

SaaS (Software as a Service), involves making an application an entirely hosted one,

which resides remotely outside of an organization‟s internal infrastructure. Although

Software plus Service has a similar concept to SaaS, it is not quite the same.

Software plus Service is something of a middle ground technology, where it provides

the complete functionality of traditional software applications but also the benefits of

external hosted software applications. This is achieved by installing an application in a

traditional way, where they reside on a machine locally but by also complementing

them with remote services, similar to the way in which a SaaS applications services are

delivered.

There are a number of benefits to using a Software plus Service model, instead of just

using a traditional software model or Software as a Service model. The main benefits

are detailed below.

More feature rich applications can be provided

SaaS is great because it means that businesses do not have to install any application

data onto their machines; however, there are a few setbacks to this (mainly because

SaaS is still in its infancy). One of these setbacks is that certain features are currently

just too difficult to implement across the Internet or run within web browsers efficiently.

By installing certain features locally and then complementing these features with web-

based features as well, a business can receive the best of both worlds. This is a good

compromise for businesses who do not want to fully change their software application

model to a SaaS-based one or for businesses who want to wait until SaaS catches up

to the point where software services can be delivered with the same efficiency as if

they resided locally.

Users can work offline

With a SaaS-based software delivery model, users must be connected to the Internet

whenever they want to use their software application services. Obviously this means

that if a user is offline, then they are unable to access their software applications, which

also means that it is very unlikely that they are able to get any work done (unless of

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 26

course they have local backup applications but this would defeat the purpose of using

SaaS-based applications in the first place).

Software plus Service on the other hand, allows users to work offline (because

important application data is stored locally). Once these users connect online, their

data can then automatically be synchronized with their software service provider‟s

servers. This is very advantageous to users who work remotely or users who are

constantly on the move, because they can complete all of their work offline. They can

then connect to the Internet when it is convenient for them and synchronize their data

online, so that they can receive the same collaboration benefits that SaaS provides but

of course without having to be constantly connected to the Internet.

Less Privacy Concerns

One concern that most businesses have when switching over to a SaaS-based

software delivery model, is how secure their data is. This is because when using a

SaaS-based software delivery model, all of a business‟s data resides externally and it

is up to the SaaS service providers to secure this data.

By using the Software plus Service software delivery model, businesses have the

option of controlling what data will reside locally and what data will reside externally.

This means that a business could choose to keep private sensitive data stored

internally, while less sensitive data could be stored on their software service provider‟s

servers, to improve the efficiency of their software services.

Greater Customizability

Traditional software applications are more difficult to customize for a business than

SaaS software applications are. Although SaaS software services offer businesses

more flexibility and the ability to customize their software experience (by picking and

choosing the services that they want), SaaS does not quite offer the same level of

customizability as Software plus Service does. Software plus Service allows

businesses to customize their in house software, while also receiving the services that

they require from a third party service provider, giving them a much more unique

software experience that is specifically geared towards their business.

It is clear that Software plus Service offers some advantages that SaaS cannot

currently offer. Software plus Service offers the benefits of being able to collaborate

with a wide range of users via the Internet, while also taking advantage of more

powerful PCs by running core application code locally. It is a great compromise

between the traditional in house software approach and the Software as a Service

approach. Software plus Service is great for businesses that want to receive similar

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 27

benefits to having a SaaS software delivery model and for businesses that do not want

to completely change their software delivery model to an outsourced external one.

3.2 SaaS vs. ASP

SaaS (Software as a Service) providers and ASP (Application Service Providers) are

two terms that are often used to describe the same thing (the delivery of outsourced

software applications via the Internet). Although both SaaS and ASP are very similar to

one another, there are important differences between the two software delivery models.

SaaS developed from ASPs and it was ASPs that first created the outsourced software

delivery model.

Understanding ASP

The ASP software delivery model first started being widely implemented during the

early 90s. It was the ASP software delivery model that created the whole idea of

hosting third party client/server software applications within an ASP organizations data

centers, and then delivering these software applications to their clients via the Internet.

However, initially ASP was not very successful. The problem with the ASP software

delivery model was that each client‟s applications or set of applications would require

their own mini-data centre within an ASPs premises. This meant that ASPs would

require massive data centers if they were going to host software applications for many

clients.

Because so many different customer specific applications were being run within an

ASPs data centre, ASPs just could not provide any help or documentation for each one

of their clients‟ software applications. This meant that the clients of an Application

Service Provider would still require their own in-house software experts and would still

need to implement their own set of troubleshooting procedures, both of which were

very costly.

This is one of the major reasons why many businesses decided not to use an ASP to

outsource their applications and instead decided to keep their software applications in-

house. Businesses would have to pay software professionals regardless of whether

they stored their software applications in-house or not, therefore instead of paying the

additional cost of out-sourcing their software applications, most businesses decided to

stick with their traditional software storage approach, by storing them within their own

data centers.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 28

A lot of ASPs failed because of two main reasons: firstly, because of the reason

mentioned above. Most businesses decided not to use an ASP because the savings

were just not enough to justify the decision to outsource their software applications.

The second reason was that ASPs did not benefit from economies of scale. The more

clients that an ASP had, the more expensive things became for them, because they

would have to keep enlarging their data centers to meet their client‟s needs. In most

cases this would eventually lead to an ASP not profiting at all or in the worst case

scenario, even going bankrupt.

How SaaS resolved the problems of the ASP software delivery model

SaaS software applications and services are different in the way that they are designed

to be delivered, when compared to ASP software applications. Application Service

Providers delivered their software applications on a one-to-one basis to their

customers.

However, SaaS software services and applications are designed to be delivered to

multiple customers. This means that SaaS service providers can benefit from

economies of scale (many clients can access the same software application, while

each client is delivered their own unique software experience). Also, SaaS service

providers do not need to constantly keep increasing the size of their data centers, to

meet their client‟s needs, which again improves their profits.

Because SaaS providers are dealing with less software applications and services, they

can also provide their clients with more application-specific documentation and can

maintain and manage software applications themselves, preventing their clients from

having to do all this, which of course saves them money.

The SaaS software delivery model also provides clients with cheaper upfront costs

when compared to the ASP software delivery model. This is because when a client

uses an ASP, they still have to pay the full cost for the software applications that they

are going to be using, because the ASP is only hosting a single copy of these software

applications for them and no other clients.

However, when a SaaS software delivery model is used, service providers can provide

the same set of services or software applications to many users. This means that the

cost of these services can be divided up among a SaaS service provider‟s clients and

they can be provided with much cheaper upfront costs.

Modern day ASPs

Although SaaS has effectively taken over from ASP as the dominant software delivery

service, ASPs still exist today. However, the modern ASPs differ from the ASPs of the

past, which failed.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 29

These days, ASPs either concentrate on a narrow range of software services instead of

many different types of software services; ASPs offer their own set of specific software

services, similar to the way in which SaaS vendors deliver their own set of software

services. Most modern ASPs will function in a very similar way to SaaS service

providers. This is mainly because the SaaS software delivery model has been proven

to be a successful one and can provide benefits to both service providers and a service

provider‟s clients.

In closing, using SaaS service providers to deliver software services, in most cases, is

the best choice for businesses. SaaS software applications have a quick deployment

time (no need to install the applications) and are much cheaper than ASP software

services (due to economies of scale). However, in some cases, using an ASP may be

the only choice that a business has. For example, if a business wanted to outsource a

particular software application or set of software applications but these applications

were not currently offered by any SaaS service providers, then they would have to use

an ASP to outsource these software applications for them.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 30

4 Benefits of SaaS

SaaS provides clients and businesses with a number of benefits. The main benefits of

SaaS include:

The potential to save money.

The potential to save time.

The ability to use your budget on business processes rather than on

infrastructure-related processes.

Access to the very latest technologies for a fraction of what this would normally

cost.

4.1 Saving money

SaaS allows businesses to save money in a number of different ways. Firstly there are

lower IT related costs when using SaaS software solutions in place of traditional

software solutions.

When a business purchases software applications in the traditional way, as well as the

initial costs of purchasing this software (and licenses), there are a whole host of other

costs.

For example a business may have to purchase additional hardware to run this software

on their machines, they have to secure the machines on which these software services

run on and IT professionals are required to manage or troubleshoot this new software.

Installing software in a traditional way can end up costing businesses a lot of money

and often these extra costs are unforeseen.

SaaS can save businesses money in the area of software management and

installation, because software is installed and managed by SaaS software vendors.

This means that all a business has to worry about when purchasing or subscribing to

SaaS services, is how much the fee for the software service is. There are no hidden

costs, no extra costs and businesses do not have to worry about licensing issues.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 31

Multi-tenancy or using multiple-tenant software services is another way in which

businesses can save money. Multi-tenant software is any software application that can

be used by more than one user or multiple users. Due to the fact that multiple users

can share the same software application/service, subscription levels can be offered by

SaaS vendors at much lower rates than if a software application was being used by

users in a 1:1 ratio.

The third way in which businesses can save money using SaaS is by using a pay-as-

you-go subscription model. A pay-as-you-go subscription model prevents the need for

a large initial investment by clients when purchasing software services. Instead,

businesses can either pay a monthly subscription fee (which they should be able to

cancel at any time) or they can pay for exactly what they use.

The good thing about paying for SaaS software services is that they offer flexible

payment methods, meaning that businesses can choose the payment method that

offers them the most benefits or the method that can save them the most money.

4.2 Saving time

Due to the fact that you do not need to install software applications yourself, you can

save a lot of time. SaaS software solutions are already up and running on a SaaS

vendor‟s data centre, therefore you can begin using SaaS software solutions almost

instantly.

However, installation is not the only area in which time is saved. Time and valuable

resources are also saved in other areas. For example a business does not need to

waste time on managing or updating software applications, because once more, it is

the software vendor who deals with these issues.

Also, traditionally when software applications had to be used on a number of different

machines, they would usually have to be installed on to each one of these machines

(which is a time consuming process). However, by using SaaS a business can access

the same software services on multiple machines without having to install anything.

This can save businesses a lot of time, resources and even money.

4.3 Allowing a business to use their budget more effectively

As mentioned before, when using SaaS, a business can save money and time on

certain IT related processes or tasks (which can sometimes even be completely

eliminated). A business can save money on or even completely eliminate the following

procedures:

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 32

Purchasing Servers or additional Server hardware to support the new software

services in-house.

Ensuring that the new software services are running in a secure, reliable and

conflict-free stable environment.

Maintaining and updating software services.

The above-mentioned procedures often have hidden costs and consequences that are

not easily spotted by businesses. For example, it can be so easy to overlook or forget

about the extra costs that maintaining software services, installing software patches

and troubleshooting entail.

By using SaaS, all of the above problems and procedures are virtually eliminated. This

means that businesses can use their budget far more effectively on business-related

processes, and a business‟s workforce can concentrate fully on core business

processes, rather than on software-related tasks and activities.

4.4 Giving businesses access to the very latest software versions

With traditional software applications, you often have to wait a while for the latest

version of that software application to be released. This is because it is not efficient for

software vendors to release new versions of their software applications every time they

make changes.

Therefore software vendors release new versions periodically or after making a certain

number of changes. Of course this means that businesses have to wait for new

features to be released.

SaaS changes this, because software vendors can immediately offer their updated

software solutions to clients online in a cost-effective and efficient way. This means that

clients can benefit from software innovations on an ongoing basis, because as soon as

a software vendor makes changes or offers new and improved features, their clients

can begin using them right away.

Sometimes, when a business installs software traditionally they face problems; for

example, the latest version of a particular software application may not work as

intended with their existing operating environment or with their existing infrastructure.

This means that a business would have to completely upgrade their existing

infrastructure or operating environment, to allow the latest version of a particular

software application to function correctly.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 33

This is obviously very expensive and although there are other ways around this, SaaS

is a great method to avoid having the problem mentioned above. By using SaaS, a

business does not need to change their existing operating environment or infrastructure

in any way. All incompatibility issues are dealt with on the software vendor‟s side of

things and they are the ones who will ensure that the software services they are

providing run stably within their data centers.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 34

5 Related forms of Cloud Computing

To view this picture as a moving GIF, go to

http://theartofservice.net/index.php?option=com_content&task=view&id=142

5.1 Cloud Computing

Cloud computing refers to the processing and storage of data through the Internet.

Computing and storage become „services‟ rather than physical resources. Files and

other data can be stored in the cloud and be accessed from any Internet connection. It

is a style of computing where IT-related capabilities are provided „as a service‟,

allowing users to access technology-enabled services from the Internet, or cloud,

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 35

without knowledge of, expertise with, or control over the technology infrastructure that

supports them.

5.2 Virtualization

Virtualization, in its broadest sense, is the emulation of one of more

workstations/servers within a single physical computer. Put simply, virtualization is the

emulation of hardware within a software platform. This allows a single computer to take

on the role of multiple computers. This type of virtualization is often referred to as full

virtualization, allowing one physical computer to share its resources across a multitude

of environments. This means that a single computer can essentially take the role of

multiple computers.

5.3 Grid Computing

Cloud computing is often confused with grid computing, a form of distributed computing

whereby a „super and virtual computer‟ is composed of a cluster of networked, loosely-

coupled computers, acting in concert to perform very large tasks.

Grid computing has been used in environments where users make few but large

allocation requests. For example, a lab may have a 1000 node cluster and users make

allocations for all 1000, or 500, or 200, etc. So only a few of these allocations can be

serviced at a time and others need to be scheduled for when resources are released.

This results in sophisticated batch job scheduling algorithms of parallel computations.

5.4 Utility Computing

Many cloud computing offerings have adopted the utility computing model. Utility

computing can be analogized to traditional computing such as the consummation of

electricity or gas. IT computing becomes a utility, similar to power, and organizations

are billed either based on usage of resources or through subscription.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 36

6 Companies Involved with SaaS

When talking about companies that are involved with SaaS, there are a number of

different companies that provide a number of different software services. Unlike other

computer technology niches, SaaS does not have a clear market leader. Instead, SaaS

has a number of different service providers, who each provide useful services for a

number of different scenarios. Detailed below are some of the more well known SaaS

companies and information about what software services they provide.

6.1 Adobe Systems

Location: San Jose, California

Adobe is one of the most well known software-related companies in the entire world.

Founded in 1982, Adobe‟s main foothold is in the market area of desktop publishing.

However, great success has allowed Adobe to branch out into other areas and

avenues of technology including SaaS.

Although Adobe is not currently viewed as being a market leader in the area of SaaS,

they have both the potential and the resources to lead the way. At the moment, around

10 to 15 percent of Adobe‟s resources are invested into SaaS. This is mainly through

their Acrobat Connect and Adobe Document Centre Applications. However, Adobe

does have plans to make available some of their most popular applications, online.

Again, as mentioned above, this gives Adobe the potential to lead the way in SaaS, as

they already have quite a large customer base.

Adobe is in a stable position and by offering some of their most popular desktop

applications online, they are sure to win over more customers. However, Adobe is

being smart about things and will only offer their popular software applications online as

supplements, rather than replacements to their existing software applications. This

means that they can keep both traditional offline desktop-based software users, and

modern online web-based software users, happy at the same time.

Website: http://www.adobe.com/

6.2 Axentis

Location: Cleveland, Ohio

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 37

Axentis was founded in 1999. They are a popular organization for SaaS services and

provide a wide range of SaaS software services. Axentis is expected to continue

growing and prospering in the future. Axentis specialize in GRC (governance, risk and

compliance) software solutions.

Website: http://www.axentis.com/

6.3 Google

Location: Mountain View, California

Google is a major force and anyone who uses the Internet will have heard of Google at

some point (if it is not already their default search engine site). Google first entered the

SaaS market area in early 2006 with the introduction of Gmail (in beta form). Since

then Google have not looked back.

They now offer an entire SaaS suite known as Google Apps, which is available either

for free (with limited features) or for a subscription fee (with full features). Google Apps

offers a number of services, such as web-mail, instant messaging (IM), word

processing and much more.

Due to the strong position that Google are generally in, their SaaS solutions have been

a success and Google will look to continue to prosper in the future, by staying one step

ahead of their competitors.

Website: http://www.google.com/apps/intl/en/business/index.html (The Google Apps

web site).

6.4 Microsoft

Location: Redmond, Washington

Microsoft has offered SaaS, in at least one form or another, since around 1997. In

1997, Microsoft acquired Hotmail (a web-based email service) and renamed it as MSN

Hotmail. Since 1997, Hotmail has either been offered as a free service (providing a

limited set of features) or as a subscription-based service (providing a full set of

features).

In 2005, Microsoft offered Windows Live Hotmail (which was intended to replace the

existing but somewhat outdated Microsoft Hotmail web-email service), for beta testing.

Microsoft Windows Live was officially made available in 2006-2007 and although it

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 38

offered the same basic web-based email features, it provided users with much more.

For example, Windows Live offered users their own personal spaces, a calendar

application and the ability to create contacts, among many other things.

Although Microsoft has always had a solid footing in web-based email services, they

have just recently started to expand into other SaaS based market areas. For example

they now offer some of their more popular applications like Microsoft Office, online and

they have also created online workspace utility that is intended to be used to share files

online.

Microsoft have dominated so many computer-related niches and market areas in the

past, that it would be hard not to envision them taking up a large and important role in

the market area of SaaS. However, they do have strong competition from Google, as

well as many other SaaS-related companies. This will make things interesting and is

also likely to make SaaS software solutions develop much more rapidly due to the

competition.

Website: http://www.microsoft.com/serviceproviders/saas/default.mspx

6.5 NetSuite

Location: San Mateo, California

NetSuite is another well known SaaS company that offers software services to its

customers, while continuing to grow. The company was founded in 1998. Just like

Salesforce, NetSuite offers customer relationship management tools. However,

NetSuite also offers Accounting and Ecommerce-related software services.

NetSuite is another SaaS company that is definitely one to look out for in the near

future. One thing of great interest to clients is NetSuite's relatively new SuiteFlex

offering. This tool allows customers to customize NetSuite's existing SaaS services, for

example by using software add-ons or plug-ins. Although not quite as well known as

SaaS companies such as Salesforce, NetSuite is still a decent SaaS company and is

definitely worth considering if you are looking for a company that offers SaaS.

Website: http://www.netsuite.com/

6.6 Salesforce

Location: San Francisco

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 39

Salesforce is one company that is most often associated with SaaS. Founded in 1999

by a former Oracle executive (Marc Benioff), Salesforce deals specifically with

customer relationship management (CRM) tools.

Research has shown that CRM is one of the largest SaaS offerings, followed closely by

content software service offerings and communications software service offerings. A

few of the main CRM software services that Salesforce offer include sales services,

marketing services and call centre operation services. Using these SaaS tools,

businesses can streamline their customer relationship management, providing much

higher levels of satisfaction for their customers.

Salesforce is the one company that has the potential to dominate the SaaS market

area and they are even diversifying in their approach. For example, they are working on

a new approach known as platform-as-a-service. Using this approach, Salesforce have

the ability to offer entire platforms of services to their clients, rather than just individual

services (as they currently offer using SaaS).

Website: http://www.salesforce.com/

6.7 SuccessFactors

Location: San Mateo, California

SuccessFactors was a relatively quiet and „under the radar‟ SaaS company. However,

with an increase in revenue by around 95 percent in between the financial years of

2006-2007, SuccessFactors are looking like they will be a force to be reckoned with in

the SaaS market area.

SuccessFactors deal specifically with performance and talent management software

services, in other words, human resources (HR) software services. They can offer

software services to a wide range of business, from the small (1-500 employees), to the

very large (20,000 plus employees). Due to their impressive growth, SuccessFactors

are also looking to increase their workforce from around 600 employees to 1000

employees.

Human resources are usually a standalone department of a business and do not need

to communicate or integrate with applications from other departments. The great thing

about SuccessFactors software services (and other HR software SaaS solutions for

that matter), is that they allow HR managers to easily manage their workforce, without

having to purchase expensive applications that are designed to communicate with all

other areas of a business.

Website: http://www.successfactors.com/

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 40

freya.dixon
BLANK

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 41

7 Technologies that Incorporate SaaS

There are various different SaaS companies and various different SaaS services.

However, each SaaS-related technology has the same basic fundamentals. Google

and Microsoft are major IT companies that now provide their own SaaS solutions, while

SaaS specific companies such as Salesforce provide their own services. Regardless of

this, detailed below are the fundamental SaaS-related technologies that are common to

most (if not all) software as a service providers.

7.1 Software as a Service

In general terms, SaaS is a software distribution model in which software applications

are hosted externally by a software vendor or service provider and are then accessed

by an organization, via a network (which is most commonly the Internet).

SaaS is more popular than ever before and this is partly due to a shift in thinking along

with the acceptance, as well as the implementation of web services and service

orientated architectures. New developments such as Ajax (Asynchronous JavaScript

and XML) for example, have also helped SaaS to become more popular and more

widely deployed.

Ajax is a method for creating web-based interactive applications that can immediately

process a user‟s input. As its name suggests, Ajax uses a number of different

programming languages and tools making it fairly versatile. The good thing about Ajax

applications is that they are independent of normal HTTP (hypertext transfer protocol)

requests. This means that they can dynamically and instantly process a users request

but an entire web page does not have to be reloaded for this to be carried out. One of

the most well known web-based applications that use Ajax is Google Maps.

SaaS is also very closely linked with ASP (Application Service Provider) and on

demand computing software application delivery methods. Simply put, an ASP is a

company that offers software applications and services to individual users or

businesses via the Internet.

On demand (OD) computing is a little different. An OD software solution can either be

maintained by a business from within or externally using a software service provider.

Using an on demand model, software services are only made available when they are

needed or „on demand‟. On demand applications are quickly becoming popular

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 42

because they provide businesses with the flexibility and ability to adapt and not remain

static, in the way that a traditional licensed software solution would keep them.

Of course, both of these service providing models are linked to SaaS and provide

businesses with similar benefits such as:

Simpler administration of software applications.

Automatic software updates and easier management of software updates.

Worldwide accessibility.

Easier deployment of software services, because a single instance of a software

service can be use by multiple users on multiple machines.

SaaS is a software delivery model that is here to stay and as other related technologies

and methodologies (such as Ajax, on demand delivery, etc.) mature over time, SaaS

can only be improved and advance over time as well.

7.2 SaaS hosting

SaaS hosting simply refers to the method in which software vendors offer their software

solutions to customers in the form of a service, as opposed to a product. No one knows

more about a software application than that software application‟s own vendor.

Therefore it makes sense for them to host and mange their own software solutions.

This also takes away the expense and stress of managing and maintaining a software

application from a software vendor‟s clients, while allowing them to receive maximum

benefits from that particular software application.

For software vendors (especially smaller independent ones), shifting from a product-

orientated model, to a service-orientated model is no easy feat. Not only do software

vendors have to completely change their payment models in order to support SaaS but

they also have to ensure that their services can be accessed by a wide range of users

all across the globe and that their software services provide 24/7 availability (or as

close as possible to 24/7 availability).

On top of all this, software vendors have to deal with new Service Level Agreements

(SLAs), ensuring that they are delivering to their customers exactly what they paid for.

If a software vendor does not measure up to these Service Level Agreements in any

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 43

way, then a SaaS delivery model can end up costing them more than it is actually

worth.

For software vendors who want to avoid all of these problems but still want to change

their software delivery model to a SaaS-based one, then they should consider using a

SaaS hosting company. A SaaS hosting company can take a lot of the strain of away

from software vendors by dealing with the migration process from a product-based

delivery model to a service-based delivery model.

Often SaaS hosting companies will help software vendor‟s fine tune their software

applications so that they are optimized for Internet access, while also providing them

with the hardware infrastructure and dedicated servers for their customers new hosted

software delivery model. Using a SaaS hosting company instead of offering software

solutions in the traditional way, provides software vendors with many benefits. The

main benefits of using a SaaS hosting company are detailed below.

Most SaaS hosting companies will offer multi-tenant hosting or shared hosting,

meaning that many users can access a single instance of a software application.

This is much cheaper than traditional software product-based delivery models,

where a software vendor often has to pay for storage mediums such as CDs or

DVDs and packaging.

Selling software products or software services online, is much more convenient

than selling software products in retail outlets. This is because online, software

vendors can often allow potential clients to try out or sample their software for

free. This makes them much more likely to actually purchase or subscribe to a

software service. Also, it is cheaper for a business to make their software

available online. Therefore they can also pass these savings on to their

customers.

Marketing software services on the Internet is much cheaper and easier than

marketing software applications in the traditional way. For example a software

vendor can use Pay-Per-Click (PPC), Google Adwords and many other

innovative web-based marketing methods. Pay-Per-Click is where a client only

pays their advertiser, each time their ad is clicked. This is obviously very efficient

and cost effective because clients are only paying for when someone actually

clicks on their advertisement and views their software service. Google Adwords

is similar to Pay-Per-Click but is Google‟s own advertising service.

Software services are hosted on a SaaS hosting companies‟ servers and data

centre. This means that software vendors do not have to purchase any new

machines or upgrade their existing infrastructure in any way, when offering their

software services as part of a hosted solution. Management costs are also

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 44

reduced because a business does not have to manage or maintain these

servers and this means that they can concentrate fully on business-related

processes.

As you can see, software vendors can benefit greatly by using a SaaS hosting

company. For larger companies (such as Microsoft, Google, etc.), hosting software

services from within their own data centers and using their own servers is no problem,

simply because of the almost limitless resources that they possess.

However, for smaller software vendors, it can often be very expensive and time

consuming to completely change their business model from a product-based software

model to a service-based software model. It is indeed smaller businesses or even

medium sized businesses that can benefit the most from using a SaaS hosting

company, to host their software services and is something that they should seriously

consider using.

7.3 SaaS platform

A SaaS platform is a software program (which can be thought of as a layer of

software), that is used to host other software applications. It deals with all the SaaS-

related management processes such as offering software services on demand, making

a software service accessible to multiple users and so on.

When traditional software applications are coded, they are usually coded in such a way

that they can only work or function properly when accessed by a single user. Of course

when a software vendor changes their business model to a SaaS software distribution

model, it is usually in their best interest to allow as many users as possible to access a

single instance of a particular software application.

It is the SaaS platform that takes care of this and manages a software application so

that it can be accessed by multiple users across the Internet. A SaaS platform can be

thought of as being similar to a traditional operating system, the only difference being

that it runs and manages applications which are designed to be accessed over a

network or the Internet, rather than being accessed locally.

Of course, aside from making a single software service or application available to many

users, a SaaS platform also has other responsibilities and carries out a number of other

tasks. The main tasks that a SaaS platform carries out are detailed below.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 45

7.4 Tenancy Partitioning

Most SaaS platforms (if not all), will usually perform tenancy partitioning processes if

they are hosting multi-tenant software services. Software applications that were coded

to only serve a single user will often work in a way that conflicts with the multi-tenant

way of doing things. For example, an application may store all of its user data in a

single database which means that multiple users may overwrite each other‟s

application data or an application could accidentally show one users data to another

user.

Tenancy partitioning solves this problem, because a SaaS platform will separate each

individual user‟s data into separate „partitions‟. Each user is still using the same

instance of a software service or application but they now have their own application

database (thanks to the SaaS platform) and their data is separated from every other

user‟s data, preventing conflicts.

7.5 Monitoring and Metering

A SaaS platform should be able to both monitor and measure usage of software

services from a number of different standpoints and perspectives. For example a SaaS

platform should be able to measure data usage, bandwidth usage, hardware usage and

so on.

There are two reasons why this is important. Firstly it allows a software vendor to

determine if their existing hardware infrastructure can handle the load of multiple users

accessing a particular software service and if so, how many users can access this

service.

Using the above information, a software vendor can then fine tune the efficiency of their

software service delivery solutions. For example if they find out that when five users

access a particular software service, the server load on which these applications reside

is at fifty percent, then they can allow more users to access this single software service

without a drop in performance.

Secondly, by monitoring and metering the usage of software applications, a software

vendor has some sort of basis which they can use to charge their clients. For example

a software vendor could charge users based on how much storage capacity they use,

how much bandwidth they use or even how much processing power they use.

By using a SaaS platform, the process of monitoring and metering the usage of

software applications becomes much easier for software vendors to carry out, because

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 46

a SaaS platform makes it an automated process. This saves software vendors a lot of

time and resources, which they can then use more effectively elsewhere.

7.6 Scaling

Scaling involves aggregating the demand from multiple users into one physical or

virtual location. This makes things much simpler to manage from a software vendor‟s

point of view. Most SaaS platforms should be designed in such a way so that they can

offer support for software scaling, making the whole process a simple and automated

one. By doing this, SaaS platforms can offer software vendors all the benefits of

scaling, without putting much effort into this area, allowing them to concentrate on more

important business-related processes.

These days there are a number of software vendors that offer their own SaaS

platforms. For example Microsoft and Oracle, among many other software vendors,

offer their very own SaaS platforms.

7.7 Google Apps

Google Apps refers to Google‟s own collection of software services. Google offers a

number of different software services. Their main services are briefly mentioned below.

7.8 Gmail

This is Google‟s own web-based email service. It is a fairly recent application, having

first been introduced for invitation only beta use in 2004. Initially Google provided 1 GB

of storage capacity with their Gmail accounts (which at that time was much larger than

other web-based email services, including Hotmail and Yahoo mail).

These days, Google provide over 7 GB of free storage with their Gmail accounts and

can provide more even storage for users at varying subscription rates. Gmail is Ajax

(Asynchronous JavaScript and XML) based and offers users the ability to quickly

search through their emails, while also reducing spam.

7.8.1 Google Talk

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 47

Google Talk is Google‟s instant messaging and VOIP (voice over Internet protocol)

software solution. It was first made available in 2005 as a beta application. At first,

Google talk was only available to Windows-based users and for certain handheld

devices such as the Blackberry, iPhone and WinCE (Windows Embedded Compact)

devices. However, recently Google Talk has been made available on the Internet and

anyone who can run Adobe Flash Player on their system can access Google Talk

online.

7.8.2 Google Calendar

This application service is fairly self explanatory. It is Google‟s own online calendar

service. Google calendar is marketed as a free contact and time management web-

based application. Using Google calendar, users can integrate their existing Gmail

contacts data with the Google Calendar application service.

7.8.3 Google Docs

Google Docs is a complete web-based application suite that is made available to users

for free. It consists of a word processor application, a spreadsheet application and a

presentation application. The great thing about Google Docs is not only does it allow

users to create and edit documents online for free but it also allows users to share their

documents or even collaborate with other users in real time.

By default Google Doc applications are saved onto Google‟s servers. However a user

can save documents onto their own machine. Also, Google Docs offers support for a

number of different file formats including the ISO standard ODF (OpenDocument

format), the .doc (Word Document file format) and the .xls (Excel file format).

Google Docs can even be accessed by users using their mobile phones. However,

currently users can only view documents but not edit them. Also, at the moment mobile

phone users can only view word processing documents and spreadsheets but not

presentations. Of course there is a possibility that this is changed in the future, in fact

the iPhone is actually able to view presentations using a specific version of Google

Docs. However the iPhone is currently the only mobile phone device that can view

presentations using Google Apps (accurate up until October 2008).

7.8.4 Google Sites

Google Sites is Google‟s own website creation application service and it can be used to

create websites or secure wikis (a shared whiteboard which users can create, add or

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 48

remove content from). Google Sites is a fairly recent software service and was first

released as a beta application in February 2008. It directly replaces Google‟s previous

webpage creation service which was known as Google Page Creator.

As of October 2008, Google offered the following with their Google Sites service:

A unique address in the form of http://sites.google.com/site/username/

23 web design themes.

Limited use of HTML. At the moment CSS (Cascading Style Sheets) cannot be

used to change the design or layout web pages created with Google Sites.

There are also a number of limitations but Google Sites is still in its beta testing stage,

meaning that many of these limitations could be overcome once the application

completes its beta testing cycle.

Some of these limitations include not being able to add HTML from other sources to

create your pages (only the Google Sites web page editor can currently be used). Once

a site has been created it cannot easily be copied or cloned. For people to edit wikis,

they must first be invited by the proprietor of the Google wiki they created. This means

that users cannot just come along and edit pages if they spot any inaccuracies.

However, this can also be a good thing because by requiring permission from a wikis

creator to edit web pages, abuse can be eliminated or at least limited. The final

limitation is the fact that all sites must currently use Google‟s own set of themes and

layouts, making all pages and sites created by the Google Site application, appear

similar.

Currently, Google Sites offers its users up to 100Mb of storage space for free. However

once again, more space is available (up to 10 GB) if required.

7.9 Google Maps

Google Maps is a web-based mapping application that is currently offered by Google

for free. It provides a number of useful services for users including street maps, route

planning for both cyclists (including walking pedestrians) and users in vehicles. Google

Maps also allows users to find building, stores, landmarks, etc. all over the world.

High resolution images are provided for most urban areas across the entire globe,

allowing users to make themselves more familiar with foreign locations without having

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 49

to even visit them. The current technology behind Google Maps includes JavaScript, as

well as Ajax.

Google Maps is also available on mobile devices using a Java-based application called

“Google Maps for Mobile”. If a mobile device supports GPS, then users can also use

the “Google Maps for Mobile” software service to provide their mobile device with

mapping information in conjunction with their GPS service.

7.10 Windows Live

Before Microsoft introduced their Windows Live software service solution, most of their

software services such as Hotmail (for web-based email) and MSN messenger (for

instant messaging) were completely separate from one another. Windows Live (which

was first announced in November 2005) brings together all of Microsoft‟s core software

services and integrates them into a single package.

There are numerous software services that Windows Live offers to its users. A few of

the most popular software services offered by Windows Live are briefly detailed below.

7.10.1 Windows Live Messenger

Formerly known as MSN messenger, Windows Live Messenger is Microsoft‟s premiere

instant messaging application and is a part of the Windows Live software service suite

(although it is also offered as a standalone application). It is currently able to work on

all of Microsoft‟s major desktop operating systems (including server editions) as well as

on Windows Mobile operating systems.

The current version of Windows Live Messenger (version 8.5 as of October 2008)

offers its users with a number of features which complement the basic instant

messaging service that is on offer. The most popular features offered by Windows Live

Messenger in addition to the basic instant messaging service include, “Sharing

Folders”, “Windows Live Call”, Offline messaging, as well as games and applications.

Sharing Folders is as its name suggests, a way to share files and folders. In the past,

Windows Live Messenger (when it was known as MSN messenger) did allow users to

share files, but only single files could be transferred between users at any moment

time.

Because Internet speeds were relatively slow during this time period, most users were

never going to send or receive more than one file at a time and therefore this was not a

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 50

problem. However as Internet speeds increased, the amount of data that users could

send and receive at any moment in time also increased. The “Sharing Folders” feature

was introduced so that users could share multiple files or entire directories in one go.

Windows Live Call is a service that allows users to make calls from PC-to-PC (which

older versions of MSN messenger were also capable of) and more recently PC-to-

Phone calls (which older versions of MSN messenger were not capable of). VOIP

(Voice over Internet Protocol) is used by Microsoft so that users are able to make

inexpensive calls to both local and international telephone devices. There is no charge

for PC-to-PC phone calls, however users are charged for PC-to-Phone, phone calls.

Microsoft has also released a handset known as the Windows Live Messenger Phone.

This device is capable of acting as an extension to the Windows Live Call service or

can be used as any other normal telephone would be (by plugging into any regular

telephone wall jack).

Offline messaging is a relatively new feature that a lot of older versions of Microsoft‟s

instant messaging software did not have. In the past, when a user was offline, instant

messages could not be sent to them. However, these days‟ instant messages can still

be sent to a user, even when they are offline. The user who the message was sent to,

will receive the message as soon as they are online.

Finally we have the games and applications service for Windows Live Messenger.

Again, this service enhances a user‟s overall instant messaging experience by not only

allowing them to send text based messages to one another, but by allowing them to

also share applications and collaborate with each other in ways that were not made

possible in the past.

Using the games and applications service, users can easily offer remote assistance to

one another or they can share applications with one another. For example, users can

browse the web together, share a whiteboard and share other desktop-based

applications with each other.

The above mentioned features are available in the Windows Live Messenger, desktop-

based application. A web-based instant messaging software service (which omits some

of the above features) is also offered by Microsoft and is known as Windows Live Web

Messenger (formerly known as MSN Web Messenger).

Windows Live Messenger can be accessed by anyone who is connected to the

Internet, via their web browser without having to install anything (although certain plug-

ins may be required in order for certain features to work correctly).

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 51

7.10.2 Windows Live Hotmail

Formerly referred to as just Hotmail or MSN Hotmail, this is Microsoft‟s web-based

email service and is one of the most well known web-based email services in the world

today. These days, Microsoft offers up to 5GB for free, with their hotmail accounts.

Microsoft also offers a number of unique features with their Windows Live Hotmail

service. For example they include an integrated audio player with all accounts, allowing

audio attachments to be listened to right away. They offer color schemes, which means

that users can customize their web-based email accounts. A spell checker is also

integrated into accounts, as well as a search feature which allows users to quickly and

easily find and keep track of their emails.

Users can also create their own folders to organize and archive their emails or even

store photos for example. Microsoft also offer a number of security features with their

web-based email service. For example each Hotmail or Windows Live account comes

with its own Trend Micro virus scanner. Each time an attachment is going to be

downloaded, it is automatically scanned for any viruses. Emails that may appear

unsafe are also blocked until a user verifies that they are safe or were sent from a

known user.

7.10.3 Windows Live Calendar

This is a time management web-based application that is by default, provided with all

Windows Live Hotmail accounts. It is an Ajax-based web application which means that

users can add or remove calendar entries without having to reload their entire web

page. Users can create multiple calendars if necessary and each calendar can have

different levels of access permissions set.

For example a user can privately share web based calendar with other users who can

add, remove and edit entries or a user can set a view-only permission level, where only

certain users can view the calendar but cannot modify it in any way. Finally a calendar

can be publicly shared which means that it is available for viewing by anyone.

7.10.4 Windows Live Spaces

This is Microsoft‟s own blogging and social networking service. Windows Live Spaces

offers users with a number of different features. Support for blogs is offered, as well as

support for photo sharing.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 52

Users can create their own photo albums and share photos (in a similar way to other

popular social networking sites). Users also have their own personal profile, where they

can provide information about themselves (by default these profiles are made non-

public).

7.10.5 Windows Live ID

Formerly known as Microsoft Passport and then .Net Passport, Windows Live ID is

Microsoft‟s single sign-on service which allows users to log-on into many websites and

services using one account. It is mainly Microsoft-related sites that use the Windows

Live ID service (such as Hotmail, MSN, MSNBC, etc). However, there are other

companies that are affiliated with Microsoft who also use the Windows Live ID service.

The Windows XP operating system currently allows users to link a Windows Live ID to

their desktop based account. This means that whenever a user logs-on into their

desktop-based account, they are automatically logged-on into their Windows Live ID

account that is associated with that particular desktop-based account (if they allow their

applications and services that use Windows Live ID to log-on automatically).

7.11 Microsoft Office Live Small Business

Microsoft Office Live Small Business is a suite of web-based services that are offered

by Microsoft, which are specifically aimed towards small businesses. The entire suite is

designed in such a way so that small businesses can easily create a solid online

presence.

This is achieved by providing small businesses with their own domain name and

hosting space so that they can create and host their own website. By carrying out

marketing so that businesses can have a constant flow of potential customers visiting

their website and finally by allowing businesses to manage their business activities

online by using free web based business applications.

Currently Microsoft offers a core set of services for free with their Microsoft Office Live

Small Business solution, along with other add-on services that users can pay for on a

subscription basis or on a single payment basis. The core services that Microsoft offers

with their Microsoft Office Live Small Business solution are briefly detailed below.

7.11.1 Web site design tool and hosting space

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 53

Microsoft provides its users with access to a free online website design tool. This

design tool allows users to create a website using customizable templates or by

allowing users to upload their own HTML code. Currently Microsoft provides it users

with 2GB of free hosting space. However, more space can be purchased if it is

required.

7.11.2 Domain name registration and business email creation tools

If a business does not have their own domain name, Microsoft also allows them to

select and create their own domain name. The domain that a business registers is free

of charge for the first 12 months after registering. However, after this period, there is a

charge at the rate of $14.95 per year (as of October 2008).

Alternatively, if a business does have an existing domain name, then Microsoft allows

its users to direct this domain name towards their Office Live Small Business solution.

Included as part of their core service, Microsoft also allows its users to create up to 100

domain based email accounts free of charge. If it is necessary, additional email

accounts can be purchased.

7.11.3 Contact Manager

This is a web-based service that allows small businesses to manage their customer

information online. For example sales information, customer history and customer

information can all be stored in a single location online, making it easier for entire

organizations to access their customer or contact information using nothing but a web

browser.

7.11.4 Document Manager

Similar in function to contact manager, Document Manager allows documents to be

stored in a single location online. Users from within an organization can then easily

access these documents using just their web browsers.

7.11.5 Workspaces

Workspaces allow small business to share work-related information and data with

customers, employees and other businesses for example. A workspace is basically a

website which a number of users can access remotely. Large work related files (for

example video, images, etc.) can then be posted onto this workspace website. This is

much more convenient than having to transfer large work-related files via email.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 54

7.11.6 Project Manager

As the name suggests, this is a project management tool. Accessible online, project

manager allows small businesses to track the progress of their projects monitor their

projects and also easily keep track of which groups or employee‟s tasks have been

allocated to.

7.11.7 Resources as well as support

This is Microsoft‟s 24/7 support service that is available as part of its Office Live Small

Business core service (meaning it is free). Online resources such as how to articles,

community boards and FAQs (frequently asked questions) are also offered by

Microsoft, free of charge.

Microsoft currently offers the above mentioned web-based services for free as a part of

their Office Live Small Business software solution. However, there are a few software

services that users must purchase as add-ons or subscribe to, if these services are

required. A few of these add-on services are briefly mentioned below.

7.11.8 Store Manager

This is an e-commerce software service that allows small businesses to create a list of

products on their free Office Live Small Business website. There are many different

features and ways for a business to customize their products using Store Manager. For

example, a business can customize the way that their products are displayed on their

website, it allows businesses to create their own postage or tax terms and an online

shopping cart can even be created to make it easier for customers to buy multiple

products.

Store Manager is also compatible with eBay which means that a business can also

easily market their products on eBay, reaching a wider range of customers. Currently,

store Manager is available as an add-on, at the rate of $14.95 a month. However,

Microsoft do give their customers one month for free, which means that businesses can

get a feel for using Store Manager before having to make any payments.

7.11.9 E-Mail Marketing

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 55

This is a software service that makes it easy for a small business to market their

website, products or services via email. Using the E-Mail Marketing tool, a business

can easily create a newsletter or a promotional email for example. They can then use

the Contact Manager tool, to determine which particular emails will be sent to which

group of customers or clients.

As well as allowing businesses to easily create marketing emails, the E-Mail Marketing

tool also allows businesses to easily monitor how successful a particular email is. For

example a business can keep track of the number of subscribers to a particular

newsletter. They can keep track of the number of unsubscribed users to a particular

newsletter and they can even keep track of the open percentage for a particular email.

Using all this information, a business can then fine tune their email marketing

strategies, to ensure that they are as successful as possible.

Currently there are three pricing levels for the E-Mail Marketing service which consist of

a standard, plus and premium subscription level.

7.11.10 adManager

This is an advertising service that allows small businesses to advertise in search

engine results. A number of popular search engines are affiliated with adManager

including, MSN Live Search, Ask.com, Facebook and various other search engine

websites (or websites that have a search facility). Businesses can choose to pay either

by setting a monthly budget, which basically means once their budget has been

reached then their ads are no longer displayed in search engine results or by using a

pay-per-click payment model.

As you can see, Office Live Small Business is an entire suite of web-based software

services that are designed in such a way, so that is easy for an offline-based business

to easily migrate online or at least integrate the use of web-based technologies into

their everyday business activities. The Office Live Small Business suite consists of a

number of different services, some of these services may be used alone as standalone

services (such as Office Live Workspaces), while other services are only made

available as a part of the Office Live Business suite (for example, website design tools).

7.12 A Brief Comparison between Technologies

There are many different companies that now offer a number of different software

services. Most desktop-based applications that are used for everyday use (such as

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 56

word processing applications, calendar applications, etc.) can now be made available

online as a service, in one form or another.

Microsoft and Google are two major companies that are involved with SaaS and they

have released various different web-based software services. Some of which directly

compete with each other. For example Hotmail (now known as Windows Live Hotmail)

was one of the most widely used web-based email services but when Google made

their Gmail service available to users (which provided a much larger storage capacity

than Hotmail) many users began using Google‟s email service.

Currently, Google offers 7 Gigabytes of storage space with their Gmail email service for

free and allow users to send attachments of up to 20 Megabytes in size. Microsoft

currently offers its users with 5 Gigabytes of storage space for free and attachment

sizes of up to 10 Megabytes in size. It is obvious why Gmail is favored by many users.

However, Hotmail still remains the dominant web-based email service, simply because

of its popularity and history and because it provides an interface that many people are

familiar with (Hotmail‟s interface is very similar to the interface that Outlook has, which

is a very well known and widely used POP3 email application).

Of course, web-based email is not the only software service area in which Google and

Microsoft directly compete in with one another. In fact, both Google Apps Premiere

(Google‟s subscription-based application suite) and Microsoft Office Live Essentials

(Microsoft‟s first tier subscription level for their Office Live suite) offer similar services at

around the same price. Below is a comparison between the two sets of suites.

Google Apps

Premiere

Microsoft Office Live

Essentials

Domain Name

Included

Yes Yes

Website Design Tool

Included

Yes Yes

Email Storage

Capacity

10 Gigabytes of storage

capacity per user.

2 Gigabytes of storage

capacity per user.

Workspace Storage

Capacity

Currently no limit on

document storage.

1 Gigabyte of workspace

storage.

Number of Email

Accounts Included

Unlimited domain

based email accounts.

A limit of 50 domain-based

email accounts (more can be

purchased if necessary).

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 57

Additional Services

or Features

Google Docs and

Spreadsheet document

collaboration services.

A contact manager as well as

workspaces for up to 10 users

and a calendar application.

Cost

$50.00 per year, per

user.

$19.95 per month for up to a

maximum of 10 users (which

adds up to $239.40 per year).

As you can see, both companies offer a very similar set of services with their

subscription based software suites. It is once again Google that provide a much larger

storage capacity for both email and workspaces, than Microsoft currently do. However,

despite this, Microsoft‟s service is actually cheaper for an organization in the long run, if

they consist of 5-10 employees. Google‟s service on the other hand, is only cheaper if

an organization consists of less than 5 employees.

Microsoft‟s Office Live Essentials software service is best utilized by businesses that do

not already have a website or an online presence and want to create one in a quick,

easy and cost-effective manner. It is also best utilized by businesses that use

Windows-based operating systems or by businesses that primarily work in a Windows-

based operating environment. Finally, Microsoft‟s Office Live Essentials software

service is best utilized by businesses that have a model based around a traditional

business model, i.e. attracting customers, interacting with them and then keeping them.

On the other hand, the Google Apps Premier software service is best utilized by

businesses that already have an online presence or website and want to improve their

web-based business through the use of email tools and workspace collaboration tools.

Google‟s software service also supports a wide range of operating systems which

means that the service would still work for businesses even if they primarily used Linux-

based distributions or Mac OS X operating systems, instead of Windows-based

operating systems for example. Finally, if a business, for whatever reason did not use a

traditional based business model and did not need to keep track of customers or

customer transactions, then Google‟s software service could be an ideal service for

them to use.

Google and Microsoft are the major „players‟ in the SaaS market area, however there

are various other independent software service vendors such as Axentis, Salesforce

and NetSuite for example, that each offer their own unique set of software services.

The software service vendor that a business or client chooses all depends on the

software service (or set of services) that they require and on their own unique business

needs.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 58

7.13 Introduction Review Questions

1. What service includes software on the computer, as well as additional services via

the Internet?

a) SaaS

b) Utility Computing

c) Software + Service

d) ASP

TRUE or FALSE

2. SaaS is Software as a Service

3. What are the two main categories of SaaS?

a) Customer and Business orientated

b) Private and Business orientated

c) Pay-as-you-go and Subscription

d) ASP and Software + Service

4. If JavaScript and Perl are scripting languages, what is Ajax?

a) A scripting language b) Object-orient programming language c) Web development technique d) Web application framework

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 59

8 How to Accomplish SaaS

When a business migrates from a traditional on-premises software application model,

to Software as a Service software delivery model, there are a few changes that a

business will need to make to their existing software environment, along with a few

tasks and processes that they will need to carry out, to ensure that they have a smooth

transition. However, these processes will be of benefit to them in the long term,

because they will eliminate the unnecessary loads that on-premises software

applications place on their data centers and will greatly reduce software management

related issues.

8.1 Migrating from a standard software environment to a SaaS one (before and after)

The great thing about migrating from a traditional on-premises software application

model, to a hosted SaaS application delivery model, is that most of the work is already

done for you. In other words, software applications are already installed, secured and

are up and running, ready to be used. Customers do not have to purchase additional

hardware or new servers, they do not need to install operating systems onto these

servers and they do not have to waste time configuring these servers.

However this does not mean that a migration from a standard software environment to

a SaaS-based software environment entails no work. Businesses still have to clearly

define what their business processes are and get their workforce behind the new

software environment, among a host of other things.

8.1.1 Things to do and consider before migration

The first thing that a business will want to do, before even weighing up whether their

existing hardware infrastructure will meet the requirements of their new SaaS

application services, is clearly define what their actual business processes are.

Using any type of new technology or software can easily confuse a business and its

employees about which business processes this new software application deals with

and which employees will deal with this new software. By clearly defining each one of

their processes and assigning roles to each one of their employees for their new SaaS

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 60

infrastructure before it is actually rolled out, a business can avoid confusion at a later

stage.

As well as clearly defining the roles of their new SaaS applications and employees in

the larger scheme of things, a business should also be able to answer a number of

important questions before they actually implement SaaS within their business

environment. These questions are briefly detailed below.

Why are they implementing SaaS?

A business should be clear about why they are implementing SaaS and they should be

able to justify its implementation by listing the benefits that it will provide (by carrying

out a cost benefit analysis for example). If the benefits of implementing SaaS outweigh

the costs of implementing it (including upfront costs, subscription costs, costs related to

changes in their own infrastructure, etc.), then a business can go ahead and implement

SaaS within their business environment, if they wish.

Do they know what they want to get out of implementing SaaS?

It is no good implementing SaaS but then not knowing what you are going to get out of

it. Businesses should have a number of aims and objectives that they want to

accomplish, through the use of their new software services. For example a business

may want their SaaS software applications to reduce their software management costs

or to improve data collaboration between various different business sites of theirs that

they may have. A business should be clear on what they want to get out of using their

software applications, regardless of what this may actually be.

Have they considered the true cost of implementing SaaS?

Although it may not initially seem like it, when SaaS is implemented, businesses have

more costs than just their upfront subscription costs. For example, they may need to

consider licensing issues, depending on how many instances of a particular software

service that they require and depending on how many users that a SaaS service

provider allows, to access a single instance of that software service.

They need to consider internal costs such as the labor costs of implementing SaaS or

any costs due to a change in their infrastructure (for example they may require quicker

network connections to support their SaaS services). They need to think about training

costs and finally how their users are going to access these software services (for

example will they require new laptops to access these services remotely), as well as

storage related costs. Clearly there are various different costs that a business is faced

with when implementing SaaS and they should try their best not to overlook any of

these costs.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 61

Do their SaaS software service providers provide them with a solid SLA?

Without a solid SLA (Service Level Agreement) in place, SaaS software service

providers are not bound to provide customers with the service that they paid for. Yes, a

software vendor will still offer their software services to their customers but the quality

and availability of these software services is not guaranteed. Businesses should

choose a SaaS service provider that has a solid Service Level Agreement in place,

which defines the exact quality and availability of the software services that they will

deliver to their clients, along with any repercussions that they will face if they fail to

meet these requirements.

It is clear that most of the tasks that a business carries out, before implementing SaaS

as a part of their infrastructure, are planning-based tasks. A business needs to carefully

plan and figure out why they are implementing SaaS. Only when their reasons justify

the costs of implementing SaaS and highlight the benefits that a business will receive

when SaaS is implemented, should they then actually incorporate SaaS as a part of

their infrastructure.

8.1.2 Things to do after migration

When implementing traditional on-premises software applications, a business first has

to set up their hardware, and then install the software applications onto their hardware

platforms. They then have to configure the software applications and finally secure

them and test run them.

Implementing SaaS is much simpler than this and is very quick. The only real trade off

is that SaaS software applications currently do not offer the same level of

customizability that traditional on-premises software applications do. However, most

software vendors can live with this fact.

Most SaaS service providers do provide their customers with „point and click‟

customizability options. Customization is the main thing that a business should do once

their SaaS software services have been rolled out, so that these software application

services can meet their own specific set of needs and more efficiently help a business.

Lastly, the business should test these software application services. For example,

testing their default Internet browser‟s compatibility, how efficiently it works on mobile

devices such as laptops, and general load testing.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 62

8.2 A simple how to guide

The actual implementation and rollout of SaaS software applications is a relatively

quick and easy process. In fact, businesses will spend more time on processes that are

related to planning and determining why and whether it is worth being implemented,

rather than the actual implementation. There are a number of different ways that a

business can go about implementing SaaS but most methods will include the stages

detailed below.

1. Justify the implementation of SaaS using a wide range of criteria

There are two main software implementation models for businesses and these consist

of an on-premises software implementation model and a hosted SaaS software

implementation model. When a business decides that they want to implement SaaS,

they should carry out extensive research, determining whether SaaS will be of benefit

to them or not.

Not only should a business match SaaS software services against their research

criteria but they should also match traditional on-premises software applications against

their research criteria. By doing this, a business can then compare and contrast both

software implementation models, which will then put them in a better position to justify

which will be the of the most benefit to them.

Cost is an obvious research criterion, and the software implementation model with the

cheapest upfront costs will be favored by most businesses. However, businesses

should not just base their final selection on cost alone. Other research criteria should

also be considered, including:

The flexibility that each software implementation model offers. On-premises

software applications generally offer businesses with more flexibility but they

usually have higher upfront costs than SaaS applications.

Potential risks that each software implementation model may pose. For example

a SaaS implementation model may potentially threaten a businesses‟ privacy,

because their business-related data is being transferred across the Internet, and

in most cases is being stored within a software vendors data centers.

Licensing-related issues. For example, how many users can access a single

instance of a particular software application if SaaS is being used, and will a

SaaS service provider charge extra if more users than what are allowed use a

single instance of a particular software service?

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 63

How much storage capacity will SaaS service providers give to their customers

and what are the costs for additional storage?

What kind of support is offered by the software vendor and is this support free?

Additional costs which may not be as obvious, for example, the cost of an IT

professional to manage on-premises software applications, or the costs of

providing training to teach employees how to connect to and use SaaS software

application services.

A business should compare both software implementation models (where applicable) to

the research criteria above. Once this is done, a business will be able to see more

clearly, which software implementation model is best for them. Two other research

criteria that a business can use (which are applicable to SaaS), is whether they will be

able to easily migrate back to an on-premises software implementation model in the

future, once SaaS has been implemented and what the long-term prospects of their

SaaS service provider are.

2. Negotiate a contract that is right for them

So a business has now justified their reason for implementing SaaS. The next step for

them involves negotiating a suitable contract with their SaaS service provider.

Most SaaS service providers often do not provide formal Service Level Agreements

(SLAs) to their clients. The reason for this is because they do not want to take up the

additional responsibility that a Service Level Agreement provides them with. Instead

SaaS service providers will often have best effort delivery clauses in their contracts, but

this guarantees nothing to a client and can be easily abused by a software vendor. In

order to protect themselves and ensure that they get exactly what they pay for, a

business should request a reasonable Service Level Agreement contract from their

SaaS service provider.

Businesses will also want to ensure that there are no hidden costs in their contract. For

example, is there a clause which states that their subscription only includes a certain

number of transactions per month and that additional transactions will incur charges?

Will customer support remain free or will a business be charged after a certain number

of support tickets have been used up (if a ticket-based support system is used)?

Finally, a business will want to confirm what recovery and security related clauses are

in their contract. For example, what backup procedures does a SaaS service provider

have in place, if any? Will the service provider be liable for the breach or corruption of

their client‟s data when it is stored within their own data centers (after all it should be

the service providers own responsibility to secure their own data centers).

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 64

These are all important considerations for a business to make when they are

negotiating their SaaS contract and if they are unhappy with anything then they should

request the changes that they require.

3. Use best practice implementation methods

Once a business has justified their reason for implementing SaaS and have negotiated

a suitable contract, they can then actually implement SaaS as a part of their software

infrastructure. The actual implementation of SaaS software services is a relatively

straightforward process. However, businesses should still follow generalized best

practice procedures that they would follow when implementing on-premises software

(or any other new technology for that matter), in order to help minimize the chances of

any problems occurring.

Some of these best practice procedures are briefly detailed on the following page.

Re-confirming the aims and objectives that the new SaaS solution will help them

to achieve

A business should already have a good idea right at the very beginning, about what

their new SaaS software services will help them to achieve and accomplish. However,

after negotiating a suitable contract, a business should once again confirm that the

SaaS services will still help them in meeting their goals and objectives. If this is still the

case, then a business can go ahead and implement SaaS as a part of their software

infrastructure.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 65

Building a suitable team

Once SaaS has been implemented, a business will require a number of IT

professionals to manage and maintain their new software services. A business should

define roles within their organization and a business should also create a team (or

group of teams) that will look after their new SaaS offerings, before their SaaS software

services have actually been implemented.

Some of the roles within a business that has a SaaS-based software infrastructure,

include a SaaS software administrator (who will look after SaaS software services), a

user group committee (who will suggest changes in order to fine tune software services

for a business), as well as a SaaS software developer (who will be able to make the

changes that the user group committee suggests).

Defining a clear timeline

Even though implementing SaaS is a relatively quick and straightforward procedure, a

business should still define a clear timeline for their actual implementation procedure

(they could use a work break down structure in order to do this, for example). A

business should clearly define milestone dates as well as dates for when important

tasks should be completed, so that they can avoid being sidetracked when

implementing SaaS and making the required changes to their existing infrastructure.

Configuring the SaaS solution to meet their specific needs

Once a business has implemented their SaaS software services, they will want to

configure these software services to meet their own specific needs (just as they would

configure any other new software application or technology). A business may also need

to carry out configurations to their existing infrastructure before implementing the new

SaaS software services.

\Some of these configurations and changes might consist of hardware-based changes,

network-based changes or even software-based changes. No matter what changes

and configurations a business has to make to their infrastructure, both before and after

the implementation of SaaS, they should always plan for these changes beforehand by

carrying out research in order to avoid any unforeseen problems.

Again, it is not the actual implementation of SaaS that is a challenge to businesses (the

SaaS software services that they are going to use are already in place and ready to

use). Instead, the challenge that a business faces, is making sure that the SaaS

software services are the right software services for them and will easily integrate into

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 66

their existing business infrastructure. If this is not the case, then as detailed before, a

business should make the necessary changes, either to their own existing

infrastructure or to their new SaaS software services (using whichever method is the

most practical and the most cost-effective).

Adopting solid data security practices

Once SaaS has been implemented, it doesn‟t mean that a business‟s work stops there.

Security is the next thing that a business should be thinking about. Although the

security of a business‟s software services and the data that these software services

use, are in the hands of a business‟ SaaS service provider, this doesn‟t meant that a

business has no power at all when it comes to security.

Some of the things that a business can do to help ensure that their software services

and data is secure, include ensuring that their SaaS service provider, provides them

with a data protection guarantee, and also ensuring the provider complies with industry

standards. Businesses should look into their SaaS service provider‟s background and

find out what levels of security they have in place to protect their data centers, what

backup and disaster recovery procedures they have in place, if any, and how they go

about securing each one of their client‟s data.

Finally a business should clearly define roles and access rights within their own

organization (again this is a process that would also be carried for on-premises

software solutions). For example, no users without the correct credentials should be

able to access more than what they are allowed access. Workstation users may only

have access to restricted versions of a software service, while administrators would

have access to the full versions of these software services.

Adopting a solid support structure

The final task that a business wants to do when implementing SaaS is to adopt a solid

support structure for their SaaS services. For example a business will want to decide

how they are going to support their SaaS software services, which employees will

support these SaaS software services (i.e. existing employees or additional IT

professionals) and how these SaaS services will integrate with software from third-party

software vendors.

One mistake that businesses can easily make when adopting SaaS is to think that they

no longer have to carry out software support and maintenance related procedures. This

is not entirely true. Although SaaS service providers will carry out software upgrade

procedures, data management procedures and support-related tasks, it is still down to

the end-user of these software services, to ensure that they provide any additional

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 67

support for these software services, in order to make sure that these software services

meet their exact needs (rather than just vaguely meeting them).

Finally, businesses that are implementing SaaS should always have a second or third

choice SaaS service provider in their mind. This is because when changes affect their

SaaS service provider, then they will also be affected by these changes. The SaaS

software market is still maturing and it is very likely that a SaaS service provider could

merge with another company or even be taken over. By having a second or third SaaS

service provider in the wings, businesses are ready to shift service providers if any

changes do occur or if their existing SaaS service provider can no longer deliver the

software services.

8.3 Top 10 things to do and consider when implementing SaaS

There are a number of processes and tasks that a business must complete in order for

them to successfully implement SaaS as a part of their infrastructure. Ten of these

considerations and processes are detailed below.

1. Ensure that you understand exactly why you are implementing SaaS

Whether it is a hardware-based technology or in this case a software service-based

technology, there is always a reason (or number of reasons) exactly why a business is

implementing SaaS. Some business might want to improve their efficiency by being

able to concentrate more on business-related processes rather than on software

management processes, while others may want to improve the collaboration of

geographically separated business sites.

No matter what reason a business has for wanting to implement SaaS, they should be

clear about exactly what this reason is. A business should also have a very good

understanding about how their existing processes and infrastructure work. This

information is required so that SaaS software services can be integrated into their

existing infrastructure at a later stage but with an absolute minimum of problems.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 68

2. Note down exactly what you need in order to know why you are implementing

SaaS in the first place

Once a business knows why they are implementing SaaS, they can then go about

finding exactly what they need in order to accomplish this. Firstly, a business should be

able to answer exactly what their SaaS software services need to be able to do.

Secondly, a business should be able to answer exactly what kind of features these

software services will need to have.

For example if a business wanted to improve data collaboration between various

business sites, they would want a SaaS software solution that could be accessed by

many users. However, if a business wanted a highly efficient software solution, similar

in performance to traditional on-premises software solutions, then they would probably

want a SaaS software service that could only be accessed by a few users at a time

(more efficient than software solutions which are offered by many different users at the

same time).

3. Request a Service Level Agreement before signing any contracts

The Service Level Agreement is an important agreement document because it clearly

defines what a SaaS service provider is offering, and also what consequences they will

face if they fail to deliver these services to the agreed standard. To avoid problems at a

later time and to ensure they are getting exactly what they paid for, a business should

request a Service Level Agreement before actually signing any contracts. Only when a

business is happy with the terms in their Service Level Agreement, should they

continue with the implementation process of SaaS.

4. Make sure that agreement clauses meet your needs and not just the software

vendors needs

Because SaaS software vendors can be located anywhere in the world, their customs

and agreements may be differ from what a business (located elsewhere) thinks that

these terms mean. For example, if a business was located in the US and their SaaS

service provider was located in the UK (or any other part of the world other than the

US), then there will be a time difference (among other differences) between the two

organizations.

This has a number of consequences when dealing with availability agreements or any

other types of agreement clauses for that matter. For example, a SaaS service provider

may have a clause stating that they guarantee the availability of software services

during business hours. However, a business should be clear about what exactly is

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 69

meant by phrase „business hours‟. For example, does it mean that these software

services will be available during the SaaS service provider‟s business hours or during

their client‟s business hours (which may differ due to geographical differences)?

Also, still using the same example above, a SaaS service provider may have a different

interpretation of what the term „business hours‟ means, when compared to what their

client actually needs. For example a SaaS service provider may define the term

business hours meaning nine till five. However if a business operated 24/7, then

obviously this clause is unsuited to them.

If a SaaS service provider has any vaguely written agreement clauses, then a business

should clarify exactly what these clauses mean. If they are not happy with these

clauses, then they should negotiate their own agreement clauses or select another

service provider that better matches their needs.

5. Consider IT support requirements

Businesses should consider what level of IT professionals they will need, as well as

what the expectations of their SaaS service provider actually are. For example, will a

business be able to continue operating with their existing workforce once SaaS has

been implemented or will they need to bring in additional IT professionals? Will a

business‟ SaaS service provider expect a business to have technical geniuses on

hand, or will anyone with a basic knowledge of IT be able to use their software

services?

The level of support that a business will have to provide for SaaS software services

depends on what level of support their SaaS software vendor can provide them with. If

a SaaS software vendor just delivers their software services but with very little support

or documentation, then a business will need to employ a solid IT support workforce.

However, if a SaaS software vendor provides clear instructions and documentation in

clear English (with very little technical jargon) then a business should be able to

continue operating without the need to bring in additional IT support professionals.

6. Find out if anything has to be done if your service provider fails to deliver the

standard of services that they promised

A business should have already negotiated the consequences that a SaaS service

provider will face if they fail to deliver the standard of software services that they

promised.

Businesses should be clear about whether the process is an automated one or not. If it

is not an automated process, then a business should be clear about exactly what action

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 70

they have to take when their SaaS service provider fails to deliver their services up to

the standard that was guaranteed by them in their Service Level Agreement contract.

7. Make sure that employees are properly trained

Because implementing SaaS is such a relatively straightforward procedure, businesses

can easily forget to train their staff. To avoid problems once SaaS software services

have been implemented, a business should train its staff on how to access and use

these new software services, during their initial setup stage. Once SaaS has been

implemented, additional training should be available.

8. Consider what exit strategies you have

Is a business able to leave their SaaS service provider at any time? Will they easily be

able to migrate to another SaaS service provider or return back to an on-premises

software infrastructure?

A business should also consider the fate of their data that was stored on their SaaS

service provider‟s data centers. Will they be able to easily restore this data back on to

their own data centers or will some of their data remain on their SaaS service provider‟s

data centers? Some SaaS service providers may choose to keep certain amounts of a

client‟s data on their own data centers (for a limited period of time), should they return

in the future. If a business is not happy with this policy, then they should request that all

of their data is erased from their SaaS service provider‟s data centers.

9. Decrease the number of existing machines within your internal infrastructure

The great thing about SaaS is that a business doesn‟t need to host their software

applications. This means that a business no longer requires as many physical servers

or software licenses for their on-premises software applications or operating systems

as they did before.

By decreasing the number of physical and licensed software operating systems or

licensed software applications that a business is running within its internal

infrastructure, a business can save money in the long run. Not only will they save

money on buying new hardware for their servers or paying for additional software

licenses but they will also save money on the administration of these machines, in

power consumption and cooling requirements, as well as many other aspects.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 71

10. Know exactly what you will be paying

With traditional software applications, businesses pay a single upfront cost for and for

any licenses that they require, depending on how many instances of that particular

software application they need to run. With SaaS software services, when it comes to

payment, things are not as straightforward.

For example, businesses may pay a monthly fee to use their SaaS service provider‟s

software services or they may only pay for what they use, by using a pay-as-you-go

payment model. Businesses may also have to deal with licensing-related issues if

multiple users are going to access a single instance of a software application and they

may also have to pay for storage space within their software vendor‟s data centers.

In order to save money a business should clearly know beforehand how frequently they

will be using these data services, what their data storage requirements are and what

payment method would be the best for them (i.e. a monthly fixed rate or a pay-as-you-

go payment model). Finally, businesses should not forget about other costs, including

costs that relate to staffing requirements, training, backing up requirements and any

other process that are not in their software vendors hands.

8.4 Top 10 SaaS pitfalls

Although SaaS has many advantages, just like any other technology, it is not perfect

and there are a number of pitfalls that businesses can face, both before and after

implementing SaaS. Detailed below are ten of the most common pitfalls that

businesses can face when implementing SaaS and what they can do to avoid these

problems.

1. Not knowing what they are agreeing to

In most cases, SaaS service providers will provide clients with an agreement „button‟

allowing them to sign up for a SaaS service provider‟s software services with very little

hassle. A SaaS service provider will provide terms and conditions to their potential

customers, however most of the time, people don‟t bother reading it and usually end up

clicking agree, without actually thinking about what they are agreeing to.

A business that is not properly controlled and does not allow information to be easily

passed on between departments could end up agreeing to something they aren‟t happy

with or something that would affect them negatively in the future.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 72

To ensure that this does not occur, businesses should make sure that a representative

from each one their affected departments reads their potential SaaS software vendor‟s

terms and conditions carefully. If all of the individual departments of a business are

happy with these terms and conditions and are not affected negatively by these terms

and conditions in any way, then a business can agree because they now have a better

idea of what they are agreeing to as a whole.

2. Paying more than they should be, for their software services

One of the great things about SaaS is that a business does not have to pay massive

upfront costs in order to start using software services or SaaS-based applications. Most

SaaS service providers will offer various different payment plans to their clients,

including monthly, quarterly or annual payment options.

Although the monthly plan seems like the best option (because it gives more freedom

than the other payment options), a business can actually end up paying more in the

long term. If a business knows that they are going to be using a software application for

a year or longer, and have the budget to pay for their software services annually, then

they should select this payment option because, when compared to paying for their

software services using the monthly payment option, they can save up to 15 percent

per year.

Sometimes businesses end up paying more than they should because they do not

research enough what software service or what payment option would be the best for

them. For example if a business chose a pay-as-you-go payment model but used their

SaaS software services frequently, then they could be paying a lot more than if they

had chosen a monthly payment option.

3. Not having a Service Level Agreement

Service Level Agreements are very important to a business because they define

exactly what level and quality of service is acceptable and what is not. Some software

vendors will provide Service Level Agreements as a part of their main contract, while

others will not. If a software vendor does not initially provide a Service Level

Agreement, then the business should request a Service Level Agreement from their

software vendor. If necessary, businesses should modify any clauses that they are not

happy with or even create their own clauses, so that a software vendor can better meet

their requirements.

Businesses should also ensure that the Service Level Agreement states what penalties

a SaaS service provider will face if they fail to deliver their software services to the

agreed standard. Will a SaaS service provider reduce the subscription rate of their

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 73

client for the next month, or will they give credits their clients in some other form? If this

information is not present in the Service Level Agreement document, then a business

should request it.

4. Not knowing how their SaaS service provider performs and what state they are

in

Again this ties into the not having a Service Level Agreement with any performance-

related clauses. However, clients should also request information about their SaaS

service provider‟s past levels of performance, uptime, etc. By researching into a SaaS

service providers, a business can get a better idea of their service provider can provide

them with (rather than just having a vague estimate).

Businesses should also try to find out what state their SaaS service provider will be in,

both in the short term and in the long term. For example is their SaaS service provider

going to be making any investments within the next year, merging with another

business anytime soon or are they going to be enhancing the software services that

they currently have on offer. All of these activities could affect a SaaS service providers

clients, one way or another, therefore it is important that a SaaS service providers

clients know what state their service provider is in and also know what activities or

tasks they will be carrying (at least one year in advance).

Clients should also find out how they will be contacted if the performance or delivery of

their software services is affected in any way and whether they will have to take any

actions in order to receive the credits that they are entitled to. Finally a client should

find out how long their SaaS service provider will have to fix any problems that do

occur. For a business that needs to operate close to 24/7, a few days to fix a problem

can seem like a very long time. Therefore, once again a business should ensure that

their SaaS service provider can meet their needs, by fixing any service delivery

problems within a few hours, rather than a few days (if they are a business that

requires maximum uptime).

5. Not taking into account hidden costs

Although SaaS service providers do have cheaper upfront costs, they usually make up

for these cheaper costs in other ways. Businesses can end up paying more than they

should have to, defeating the purpose of implementing SaaS in the first place. To avoid

having to pay unforeseen costs in the future, a business should ensure that they

carefully read their SaaS service provider‟s fine print, and terms and conditions.

There are various hidden costs that a SaaS service provider could charge their clients.

For example, some SaaS software vendors may end up charging their clients for

configuring and setting up their software services. Other software vendors may charge

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 74

extra based on what types of device a client will access their software services from,

such as a mobile device. Software vendors may also charge their clients extra if they

go over their agreed storage limit and they may even charge them for technical

support.

When buying SaaS software services, a lot of businesses only look at the upfront

subscription rate that and forget to take into account the cost of additional features or

add-ons. To avoid this pitfall, businesses should make sure that they carefully research

how much their SaaS software services will cost, taking into account all of their needs,

as well as the purchase of any add-ons to meet these needs.

6. Not taking into account integration costs

In most cases, when a business implements SaaS, they will still have some of their

existing on-premises software applications running in parallel with their new SaaS

software services. This means that it is very likely a business will want to integrate

these two software services and applications, so that they can work together.

Of course this may not be a straightforward process and can end up costing a business

more then they initially thought it would (another hidden cost). Although a business‟

SaaS service provider usually can deal with integration-related issues, they charge

extra for this type of work. It may be more feasible for a business to use a third-party

company that can carry out this type of work.

7. Not knowing what their data rights are

Whenever a business uses SaaS-based software services, at least some of their data

will be stored on their SaaS service provider‟s data centers. Customers should ensure

that the rights to access their own data remains with them and they should also make

sure that their data can still be recovered or restored if their SaaS service provider went

out of business (or if any other similar scenario occurred where a client would be at risk

of losing their data).

Finally, a SaaS service provider‟s clients should also confirm how their data will be

secured by their service provider, from a privacy standpoint and a disaster recovery

standpoint. Again, this links into the Service Level Agreement document and a client

should ensure that both data security and data backup related clauses are included in

their Service Level Agreement.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 75

8. The lack of control that businesses have over SaaS software services

The great thing about SaaS is that it takes away the hassle of having to configure,

maintain and upgrade software applications. However, this can also be a pitfall,

because businesses no longer have the same level of control over their software

applications and data, as they do with their on-premises software applications.

For example a business now has to go through their SaaS service provider in order to

access their data and the level of customizability for these software services also

varies, depending on what their SaaS service provider allows.

Businesses should make sure that they know exactly what level of customizability their

SaaS service provider will allow them to have.

9. Having to rely on the Internet

Due to the fact that SaaS software services are delivered over the Internet, a business

has to ensure that their Internet Service Provider (ISP) provides them with an

uninterrupted and high quality Internet connection. The amount of available bandwidth

that ISPs have also varies depending on the time of the day. For example, during peak

hours, it is a very real possibility that a business Internet connection will slow down

significantly and this will obviously have an effect on the ability of a business to access

their SaaS software services.

To minimize Internet connection-related problems, a business should ensure that they

have a high speed/high quality link in place. Businesses that use SaaS should also

consider implementing a dedicated Internet connection, so that they don‟t have to

share bandwidth with other users (of course this will require a larger budget). Finally,

businesses should consider implementing a redundant Internet connection, so that if

their initial connection does go down or has a problem, they will be able to continue

operating until their initial link is restored.

10. Not taking into account exit costs

This is another thing that businesses can easily overlook. Before signing their SaaS

software vendor‟s contract, a business should look out for any exit costs or problems

they may face if they choose to back out.

For example, if they signed a contract for one year but backed out half way through,

would they get a partial refund or would they lose the rest of their money for the

remaining six months? Also, would they have any problems retrieving their own data

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 76

that is stored on their SaaS service provider‟s data centers? Some SaaS service

providers have exit charges and will charge their clients before they can actually

retrieve data.

To avoid being stung by exit costs, once again a business should carefully check the

fine print of their SaaS service provider‟s terms and conditions. Businesses should also

try to keep as much control of their own data as possible and keep their data in their

own hands. By doing this, if a business does stop using a SaaS service provider‟s

software services at a later date, they can easily back out without losing too much data.

8.5 Some of the problems that you may encounter with SaaS

SaaS has many advantages but there are still a number of problems that a business

may encounter when dealing with SaaS. Detailed below are some of the most common

problems that business may face when using SaaS.

An Internet connection is required at all times

One of the biggest drawbacks of SaaS is that employees can no longer work offline

when SaaS software services are used. For employees working from within their

businesses headquarters or those who have a dedicated Internet connection at home,

this is not too much of a problem.

However, for employees who work from a mobile device such as a laptop or for

employees who are constantly on the move, this is obviously a problem. For example,

how will an employee who is constantly travelling be able to get any work done? Will

they have to keep paying for single day Internet access in an Internet café or in their

hotel? The costs for single day Internet access can very quickly add up and completely

negate the cost saving benefits of SaaS.

One way for those employees to receive the benefits of SaaS involves using Software

plus Service. This is a compromise between having a complete SaaS solution and

having a complete traditional on-premises software solution, and it gives businesses

the best of both worlds.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 77

The security and control of your data is no longer in your own hands

When using SaaS, some, if not all of the data of a business will be stored on their SaaS

service provider‟s data centers. Although some businesses are happy not to have to

deal with the management of software applications, most businesses will not like the

idea of giving control of their data to someone else.

A business has no idea how their SaaS service provider will secure their data and what

backup procedures will be in place. The only thing that a business can go by is the

word of their service provider confirming that they will ensure that their client‟s data will

be well looked after. To ensure that their data is well looked after, a business must

ensure that their service provider writes down exactly how their clients data will be

secured in their Service Level Agreement contract.

Selecting a well known SaaS vendor or a software service provider with a good

reputation will also give businesses peace of mind. For example a business is much

more likely to feel comfortable allowing a massively popular and well known

organization like Microsoft or Google to look after their data, rather than an obscure

software service provider without any history. Businesses should always try to find out

as much background information about their SaaS service provider that they can before

signing any contracts, to ensure that their SaaS service provider is a good, honest and

reliable company.

You can no longer control what version of a software application that you are

going to use

Although SaaS is great because software applications are constantly up-to-date,

sometimes a business is better off using an older version of a software application but

SaaS just does not allow this. For example businesses may wish to use an older

version of a software application because this older version is stable or because it is

compatible with their existing software applications but with SaaS, businesses only

have access to the most current versions of an application.

The general policy for many businesses when a new software application comes out is

to wait a little while before installing this software application so that any bugs or

„teething problems‟ can be fixed. However, with SaaS, businesses do not have this

option and are stuck with the very latest version of a software application (even though

this may have bugs).

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 78

You lose your freedom and are effectively at the control of your software vendor

The main problem with SaaS is the fact that businesses lose their freedom and are

effectively at the will of their SaaS service provider. For example, with a traditional

software application, a business pays for this software application with a single upfront

payment. After this, the software application is in their control and they can do what

they want with it (as long as they are not breaching their software vendor‟s terms and

conditions, such as copyright, licensing, etc.).

However, with SaaS software services a business must continuously keep paying their

SaaS service provider in order to access the software services that they require. If they

fail to pay their service provider for one month (if they are paying monthly), then they

risk losing their software services.

If their SaaS service provider changes its payment rate, then a business has to pay for

their software services at this revised payment rate. If a SaaS service provider faces

internal problems, then their clients will also be affected by these problems. SaaS is not

perfect and at times it may seem that it is the service provider who benefits the most

out SaaS (because they are the ones who are in control and calling all the „shots‟).

However, businesses can still benefit from implementing SaaS as long as they choose

a reputable SaaS service provider and have a solid Service Level Agreement contract

in place. By having a solid Service Level Agreement contract in place, businesses can

prevent their SaaS service provider, from abusing their position of power.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 79

9 Managing a SaaS Environment

9.1 Support Issues

Most of the time when a business implements SaaS, it is the SaaS service provider that

deals with support-related issues. A business needs to understand what level of

support their SaaS service provider will provide them with, what level of support they

will have to provide themselves and how much support-related issues will cost them.

These three factors are detailed below.

What level of support will their service provider, provide them with

Some SaaS service providers will offer little support (for free), while others will offer full

support to their clients. A business should be clear about what level of support their

SaaS service provider will provide them with. For example, will their service provider

only provide them with support for the initial setup of their software services or

continuous on-going support?

Businesses should also be clear about the type of support technologies that their SaaS

service provider uses, so that they can implement any of these support technologies of

necessary. For example does a SaaS service provider use VOIP to deliver their

support services, will they use email or even instant messaging technology? Most

SaaS service providers will usually offer a basic level of email support, however other

SaaS service providers (with larger budgets), will usually offer more practical support

technologies such as VOIP or even remote assistance.

What level of support will the business provide?

Although support-related issues are mainly in the hands of a business‟ SaaS service

provider, there are processes that a business can carry out on their own. These

support-related processes usually involve a business modifying their own internal

infrastructure so that SaaS software services can be better supported by them.

For example a business may upgrade or update the software that they already have

installed on their existing hardware, such as web browser software (along with the

installation any plug-ins that may be required by them, in order for them to access their

new SaaS software services).

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 80

A business may also make changes to their physical infrastructure, so that SaaS

software services can be better accessed and supported by them. For example a

business may choose to upgrade their existing network connections with one that

provides more bandwidth, or upgrade their existing network-related devices such as

their routers or switches, with ones that can better handle their new stream of SaaS-

related traffic.

Although technical support will usually be offered by a business‟ SaaS service provider,

some businesses may decide to develop their own internal technical support team. The

advantage to this is that a business does not have to always contact their SaaS service

provider whenever they face a problem.

It is not always convenient for a SaaS service provider to answer the support-related

queries of their clients immediately, simply due to the number of requests that they will

usually receive. However, the disadvantage to a business when setting up their own

support team is that in most cases, a business will have to bring in a new set of IT

support professionals, and this is often expensive.

How much will support related issues cost

Businesses should be clear about how much support-related issues will cost them.

Some SaaS service providers charge for technical support, some offer it for free. Will a

business be setting up their own support team and if so, how much will this cost them?

Businesses should also take into account any costs that are related to actually

supporting the running of their new software services. For example, a business should

take into account the costs of installing new hardware or software (if necessary), as

well as the costs for making any changes to their infrastructure.

Although a business may benefit from making changes to their infrastructure now, they

should always take into account how this will affect them in the future. For example if a

business makes changes to their physical infrastructure in order to support their new

SaaS software services, how would this effect them at a later time, if they wished to

revert back to a non-SaaS based software environment?

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 81

9.2 How to measure capacity and performance

The ability for a business to easily manage and monitor the performance levels of their

SaaS software applications is an important factor. It is an important factor because it

allows a business to determine whether performance-related problems are caused by

them or whether they are caused by their SaaS service provider (in which case a

business should invoke the penalty clause in their Service Level Agreement).

However, traditional network troubleshooting and software monitoring tools are not very

effective at monitoring off-site SaaS software services, as they were never designed

and intended to be used to monitor off-site software services.

New technologies are available which can efficiently monitor the performance level of

SaaS software services and these are what businesses should use. The performance

of SaaS software services can be negatively affected by two things, hardware platform-

related bottlenecks and network connection-related bottlenecks.

Hardware platform-related bottlenecks

Hardware platform-related bottlenecks, refers to how the performance levels of SaaS

software services are affected by the machines that they run on, both at the SaaS

service provider‟s end and at a client‟s end.

Sometimes the performance levels of a software service are negatively affected at the

SaaS service provider‟s end. For example, when multiple users are trying to access the

same service causing performance levels for all users to decrease significantly.

At other times, the performance levels of a software service may be negatively affected

at the client‟s end (due to them not having hardware that is powerful enough to support

their new software services).

One way a client can determine whether hardware performance-related issues are at

their end or their SaaS service provider‟s is by running their software services on two

separate machines (one machine being significantly more powerful than the other).

If the performance levels of their SaaS software service are the same on both

machines, then it is clear that the issues are due to the SaaS service provider.

However, if their SaaS software service runs more smoothly and more efficiently on the

more powerful test machine, than it does on the less powerful test machine, then the

hardware bottleneck issue is obviously related to the client.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 82

Network connection-related bottlenecks

The second thing that can affect the performance of a SaaS software service is the

network connection that a business has (or network-related issues). A business should

carry out all hardware performance related tests before testing the network.

Using traditional network monitoring tools, it is hard for a business to determine

whether their SaaS service provider is up and running, if they have direct connectivity

to their SaaS service provider, or if they have direct connectivity to their software

services and so on. However, new tools have been developed specifically for SaaS

performance monitoring purpose, which allow businesses to quickly determine whether

it is network related issues that are affecting the performance levels of their software

services or something else.

Measuring storage capacity

Software vendors will usually provide some kind of indication to their clients, about how

much available storage capacity they have used. However, some businesses may want

more detailed information about the total storage space or the total bandwidth that they

have used up, for a particular month.

As mentioned above, there are tools which have specifically been designed to make

the monitoring of SaaS related services easier and businesses should use these tools if

they want to monitor in detail both their storage capacity usage and their bandwidth

capacity usage.

9.3 Contracts and agreements such as licensing

When dealing with SaaS software services, licensing agreements (as in the traditional

sense) do not really exist. Instead, software vendors provide different subscription

levels and types which businesses can then choose from accordingly, based on how

many users, need to access a single instance of a software service. This differs from

the way in which businesses purchase traditional software applications. When a

business purchases a traditional on-premises software application, they need to buy

licenses depending on how many instances of a particular software application that

they are going to run.

However with SaaS, things are done differently and in most cases, there are no

licensing agreements. SaaS service providers will usually determine in their terms and

conditions for each one their subscription types, how many users will be able to access

a single instance of each one of their software services. For example a SaaS service

provider may only allow five users to access a single instance of their software service

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 83

when a particular subscription type is selected, while they may allow up to ten users,

when another subscription type is selected.

Similar to licensing agreements for traditional software applications, subscription

agreements are negotiable. For example if a business needed twenty different

employees to be able to access a single instance of a software service but no contract

for this existed, then a business could negotiate one with their SaaS service provider.

Also, the more individuals that a business has, who need to all access the same

software service, the cheaper per „head‟ their SaaS subscription rate should be.

Other contract-related issues that businesses need to deal with include the control and

security of their data as well as clauses which allow them to easily end their

relationship with their SaaS service provider if necessary. For example, businesses

should ensure that their SaaS service provider will keep their data secure and will allow

them to easily leave their service provider with all of their data and without having to

pay any additional cost (as long as they have met their minimum contract terms).

9.4 Organizational aspects – such as the Roles & Responsibilities that people have in a SaaS environment

The roles and responsibilities that people have in a SaaS-based environment are not

that much different from the roles and responsibilities that people will have in other

software-based environments. However, it is true that in most cases, businesses can

reduce their workforce and the number of machines that they have running internally

when SaaS is implemented.

One of the major advantages of SaaS is that employees can access their software

services and data related to these software services from any machine (whether it is a

desktop machine, laptop machine or even a PDA type device), as long as they have a

connection to the Internet.

Businesses need to define how users will access these software services and who will

have access to them. Will a business use business-wide access credentials where

every user can access a particular software service using the same login information,

or will each individual user have their own set of login credentials?

It should be noted by businesses, that using business-wide access credentials is

obviously less secure than using individual access credentials, because all it takes is

for one person to accidentally leak their access information and an entire business‟

SaaS software services are compromised.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 84

In most cases, businesses will assign individuals with their own software service

access credentials. This is because not only is this more secure, but it also allows

businesses to more easily monitor their employees data usage and it allows

businesses to more practically assign roles to each one of their employees (by

controlling what employees with different roles can actually access).

Businesses can also assign different access rights to each one of their employees

when each user has their own set of software service access credentials. For example

some employees may only be allowed to access restricted versions of a software

service, while other employees are allowed to access the full versions of these

applications. This means that businesses can control which departments or employees,

can see what data.

SaaS also provides businesses with the option to reduce their workforce if they wish to.

For example, employees who previously dealt with updating and keeping a business‟

traditional on-premises software applications secure would no longer be required.

A business can also cut down on the number of servers and workstations they have

running, when SaaS is implemented. This is simply because a business no longer

needs to run as many application servers as they did before (as their software services

are now being hosted externally). This means that a business can also save money,

both in terms of hardware usage requirements and in terms of power usage

requirements.

The roles of employees and different workgroups that a business will have when

implementing SaaS will be similar to the roles and workgroups that they previously had.

For example, businesses will still have the same sales personnel, IT administrators,

etc., but a business may also want to consider creating a new support group for their

new SaaS-based services.

Although most SaaS service providers will provide their clients with support, this

support can often be labored and time consuming (simply due to the number of clients

that most SaaS service providers have to deal with). By setting up their own on-

premises SaaS support team a business can save a lot of time and hassle and quickly

resolve common problems they may face from time to time.

In the end, when SaaS is implemented, the roles and responsibilities that employees

have within a business are not that much different from the roles and responsibilities

that they had before. A problem that a business faces is whether they should lay off

their employees who have been made redundant or whether they should move them to

other more important business related activities. Depending on how much support that

their SaaS service provider provides them with, a businesses may also want to

consider setting up their own specialized SaaS support team (if they have the budget

for it of course).

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 85

freya.dixon
BLANK

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 86

10 Introducing Applications on the Web

The task of computing has to apply logic to inputs in order to provide a consistent and

acceptable output. Programming code is set up to create a processing method that

can be used and reused. In early days, the code may have been self-contained by

individual machines, where one machine would provide processing for one task while

another machine is used for another task. Eventually, programming code became self-

contained into files called applications.

The advantage to computing was that multiple applications could be found on a single

machine. Use of the application was derived by accessing the file that contains the

desired programming code. The primary focus of applications in these early days was

scientific research and statistical analysis.

Networking allowed programming code to be shared by multiple users. To do this, the

application sat on a single machine that was connected to each of the users. To

access the application, the users simply needed to be connected to the server and

access the file on the single machine, usually called a server. The machine that the

user used to connect to the server was referred to as a dumb terminal. As technology

progressed, many dumb terminals started to have more capacity and processing power

so that applications could be loaded and accessed on the user's terminal. Most

applications were created to provide greater office productivity, manage business sales

and finances, though scientific research was still a priority.

The 1980s brought computing into the home and, as a result, new markets for

applications were instantly available. The introduction of General User Interfaces

(GUIs) and eventually the Internet created even more markets for application

development and use. Graphic Design, gaming, personal office and financial

management, calendaring and email, and publishing became major interests for

business and personal usage.

There are two types of websites. The first type is used to simply publish and

disseminate information in digital format, in the same manner that newspapers and

magazines do the same thing using paper. In fact, many such publications have their

issues presented in both paper and digital formats today. The second type of website

is applications.

The most familiar applications may be calendaring and email features. There are

several key distinctions that define a web application.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 87

The first distinction is that a web application is located in the World Wide Web.

Secondly, the user must have a resident application on their system to access

the World Wide Web, called a browser.

Web applications are portable, meaning they can be used by the same user from

different computers that can access the World Wide Web through a browser.

Web applications are scalable in that they can allow the usage to one user or

multiple users concurrently.

The rising concept of cloud computing and specifically software-as-a-service has also

created a platform for developing more web applications. Historically, the companies

utilized the web as a marketing tool to reach users with information, products, and

surveying. With the advent of cloud computing and Web 2.0, companies are now

embracing the power and flexibility of the web to deliver software packages that used to

be delivered through traditional means as desktop or server applications.

10.1 Started with the Internet

The Internet essentially started on October 4, 1957 when the Soviet Union launched

Sputnik 1, the first artificial satellite orbiting Earth. At the time, the United States was

considered the leader in every technology. As a result of Sputnik, the United States

had to regain their supremacy. In February 1958, the Advanced Research Projects

Agency (ARPA) was created. Through ARPA, the Information Processing Technology

Office (IPTO) was created to continue research started by the Semi Automatic Ground

Environment (SAGE) program. SAGE had already networked the country's radar

systems. The next step of the IPTO was to fulfill the vision of its new head, J. C. R.

Lichleder, to create a universal network solution. Lichleder believed that such a

network would be a potentially unifying human revolution.

October 29, 1969 brought the first interconnectivity between two nodes, specifically

University of California in Los Angeles (UCLA) and SRI International. This

interconnection eventually became known as ARPAnet. ARPAnet used packet

switching as its primary method for communicating data. Before this, such

communication was done through circuit switching where a dedicated circuit was tied

up for the duration of the communication and that communication was only possible

between two dedicated parties, or nodes.

Old telephone systems used to be entirely circuit-based. Packet switching allows data

to be separated in chunks of information, called packets. Each packet is labeled with

an identifier and destination address and then routed through a shared network. When

packets arrive at the desired destination, they are recompiled into its original form. The

use of packet switching allows a single network to support multiple nodes concurrently.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 88

The concept of a universal network fulfilled by ARPAnet also found other solutions by

other countries. Eventually, ARPAnet architects realized the continued success would

require communication with these network solutions. Like human languages are

different and require translations from one to another, some form of translation method

was needed in order to communicate with these networks. Some form of agreement

was required. Up to this time, ARPAnet was already using Network Control Program

(NCP) to establish a reliable, flow-controlled communication link between two nodes.

NCP provided the physical data link, and the network layers of a protocol stack allowing

two nodes with a different interface and different communication specifications to

connect successfully. To communicate between multiple networks, a new suite of

protocols were required. On January 1, 1983, ARPAnet replaced NCP with TCP/IP.

Since ARPAnet was being managed by the U.S. Defense Department, its use was

highly restrictive. In the early 1980s, the U.S. National Science Foundation funded the

creation of an extension to ARPAnet called the Computer Science Network, or CSNET.

It had three primary components: a Phonenet mail system, a name server and a

TCP/IP-over-X.25 tunnel. The purpose of CSNET was to link academic Computer

Science departments together. In 1985, the National Science Foundation decided to

fund the creation of five new supercomputer centers.

The connection between these five centers became known as NSFNET. The purpose

of NSFNET was to open access to all academic researchers, not just computer

science. NSFNET eventually became the backbone for the Internet.

Though the world was already becoming digitally connected in the 1970s, the

introduction of TCP/IP made such connections easier to accomplish and the creation of

NSFNET provided universal motive. One hundred different networks were connected

by 1985. By 1987, the number of networks grew to two hundred networks. In 1989,

over five hundred networks were connected using TCP-IP established by ARPAnet. By

1990, 2,218 networks were connected together according to the Defense Data Net

Network Information Centre (DDN NIC). These interconnections of networks became

what have been commonly referred to as the Internet.

Commercial interest in the Internet began in 1988 when the US Federal Networking

Council approved the connection of NSFNET to the MCI Mail system. Other

commercial electronic email systems were soon connected and by the end of 1989,

three commercial Internet service providers were created: UUNET, PSINET, and

CERFNET. The promise for the Internet's continued presence in our modern age came

August 19, 1991 when the European Organization for Nuclear Research (CERN)

announced its World Wide Web project; a project aimed at facilitating sharing

information among researchers using the concept of hyper texting. Whatever their

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 89

intention, the World Wide Web was the primary driver of Internet usage, driving the

number of connected networks from a little more than 2000 networks in 1990 to over

50,000 networks by the end of the millennium.

10.2 History of World Wide Web

The emergence of the Internet provided the hardware and protocols necessary for

multiple users, systems, and networks to bridge the mass physical distances of a

geographical planet. Such a solution allowed two people separated by thousands of

miles to communicate as if they were enjoying tea in an evening parlor. The services

available to Internet users were still restrictive to today's standards. They included:

E-mail provided an easy, inexpensive way to communicate between Internet

users.

Telnet allowed users to connect into remote systems.

FTP provided a method to transfer almost every file type from one Internet-

connected computer to another.

Usenet managed a distributed bulletin board for news and discussion groups for

thousands of topics.

The use of the Internet exploded with the introduction of hyper texting from CERN's

World Wide Web project in 1991. Hypertext refers a method of dynamically organizing

information through links and connections called hyperlinks. Traditional text required

the use of content tables, indexes, and page references to connect various topics

together. Using hyperlinks, the user simply clicks on the reference and they are

transferred to a new page of information; if they “hover” over the hyperlink they can

have various actions occur including word definitions, the running of video clips, or

even the opening of applications.

Hyper texting is useless without some type of mechanism to the hyperlinks. This

mechanism is fulfilled by a Web browser where the user can view web pages that

contain any variety of text, images, videos, and other multimedia features. CERN

introduced the World Wide Web to the public and indicated that access to the Web was

free. Essentially, they created the first website as we understand the term today. As

new websites were created, new standards were rapidly required to ensure consistent

and reliable use of the project. The international standards for domain names and the

HTML language were formed.

The World Wide Web is really the brainchild of an English scientist, Sir Tim Berners-

Lee. In the early 1980s, Sir Berners-Lee built ENQUIRE, a database of information

with bidirectional hyperlinks and the ability to directly edit content from the server. In

1989, he wrote a proposal referencing ENQUIRE and describing an information

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 90

management system that was much more elaborate than seen before. A more formal

proposal was published on November 12, 1990 to build a “hypertext project” called

“Worldwide Web” or “W3.” The project was to create a web of nodes that stored data.

The data would be viewed in “hypertext pages” by line-mode or full screen browsers on

the computer network. The breakthrough obtained by Berners-Lee was the marriage of

hypertext and the Internet.

The World Wide Web project was not the first hypertext system available at the time

but it had some significant differences that set it apart from the rest. Berners-Lee

developed a system of unique identifiers for resources on the Web and elsewhere

called the Uniform Resource Identifier (URI). While other hypertext systems required

bidirectional links, the Web required only unidirectional links. Such a requirement

allows someone to link to a specific resource with any action needed by the owner of

that resource. As a result, the difficulty of implementing additional web servers and

browsers were greatly reduced. Additionally, the World Wide Web was non-proprietary

which allowed servers and clients to be developed independently without any licensing

restrictions.

Early use of the World Wide Web consisted of pure text documents hyperlinked to each

other. The introduction of the Mosaic web browser brought a new revolution to Web

usage. Mosaic was a result of the efforts by the National Centre for Supercomputing

Applications as led by Marc Andreessen. Mosaic introduced a graphical user interface

to the environment allowing web pages to contain both text and images. Such a

concept exploded the use of the World Wide Web making it the most popular Internet

protocol.

By October 1994, Tim Berners-Lee founded the World Wide Web Consortium (W3C)

with the Massachusetts Institute of Technology (MIT), the Defense Advanced Research

Projects Agency (DARPA), and the European Commission.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 91

10.3 Evolution of the Web Applications

The inclusion of graphics in the Mosaic web browser led to pages that were built and

acted like a magazine. In 1995, Netscape introduced JavaScript which provided client-

side scripting to add more dynamic features to simple web pages. The next year,

Macromedia made available a vector animation player called Flash which allowed

programmers to embed animations on web pages. The breakthrough of JavaScript

and Flash was the use of a scripting language that allowed interactions at the client

without the need for communication with the server.

The concept of “web application” came about in 1999 with the Servlet Specification. By

this time, JavaScript and XML were already in use as web scripting languages. Web

applications at the start simply used the Internet as a tool to communicate with the

server. The idea of “web applications” came about during the height of the dot.com

rush where companies used the Internet to quickly obtain market share, or mind share,

for products and services. With the crash of the dot.com bubble, the promise of the

Internet was tainted and needed a fresh start. In 2004, Web 2.0 was introduced. Its

introduction was the start of using the web as a platform, enhancing the creativity,

communications, security, collaboration, and functionality of the web. Web 2.0 was not

a new version of the World Wide Web, just a different perspective on the part of

software developers and end-users for the usage of the web. The underlying

paradigm of Web 2.0 was to utilize the unique features of the Internet to build

applications and services. It promoted innovation and collaboration by assembling

features from independently distributed developers, creating an “open source” for web

features.

The explanation of Web 2.0 began with a summary by Tim O'Reilly and John Battelle.

Given at the first Web 2.0 conference sponsored by the O'Reilly Media Group, a

hierarchy of web applications was also described:

Level 3 web applications exist only on the Internet. Their effectiveness is based

on the increased interactions of human through the applications. Examples of

popular level 3 applications are eBay, Craiglist, Wikipedia, Skype, and AdSense.

Level 2 applications can operate when offline but work better when connected to

the Internet. Flickr is a level 2 application and its benefits stem from the shared

photo-database and community-generated tag database available through the

web.

Level 1 applications operate offline and gain features when online. One of the

most popular applications at this level is iTunes where users can listen and

categorize their music on their computers, and can go online to purchase music,

games, and books.

Level 0 works equally as well online as well as offline. MapQuest and Yahoo!

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 92

Local are examples of Level 0 applications.

Communication applications like email, instant-messaging clients, and telephony

products are considered non-web applications in that they may utilize the

Internet, but not the World Wide Web.

Building on the interactive facilities of the web, users could do more than retrieve

information within Web 2.0. Now software applications could be run entirely through a

browser and users could own and control data on the website instead of simply using

the data. The growth of a web application requires the participation of its user base to

succeed. This was a simple matter since Web 2.0 applications can provide a richer

experience with dynamic content, metadata, standards, and scalability. Users find

more freedom with Web 2.0 applications. One of the markets greatly impacted by the

Web 2.0 concept is social networking websites like YouTube, MySpace, and Facebook.

2005 brought the next major milestone for web application development when the term

Ajax was officially coined to describe a group of interrelated web development

techniques. These techniques opened the possibility of developing websites that can

mimic the features of traditional desktop applications such as word processing,

spreadsheets, and slide-show presentations. The particular advantage of Ajax is the

ability for web applications to retrieve data from the server asynchronously without

interfering with the display and behavior of the existing page.

The technology for developing web applications and the web itself is still relatively

young. The possibilities for future developments are endless. Cloud computing has

provided the motivation for many companies to expose the possibilities available to

them by developing web applications.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 93

11 Expanding on Web 2.0

The introduction of Web 2.0 was a breakthrough milestone for Internet use and web

applications. The concept of Web 2.0 is naturally fluid because it is not some

replacement of a technology, software, or tangible items, but rather a new method of

viewing the resources of the web. As a result, some attempts at defining Web 2.0 have

been difficult to pin down as a solid tool for explaining the concept. The problem exists

in that with the concept of Web 2.0, came an explosion of user features that were not

known before, some Web 2.0 and some not.

The revolution could be viewed analogously to what may have happened when

Columbus found the New World, therefore changing the world view of the earth from

flat to round. The mere discovery of the New World permanently changed the

economy, political, and social context of the world. But for a few years after Columbus

announced his discovery, many did not know what to do with the discovery. The

introduction of Web 2.0 has a similar problem in that many are still attempting to identify

what is really possible.

Ultimately, Web 2.0 is a grouping of principles and practices that can be found in place

around a core purpose, namely utilizing the web as a platform. Inside this core purpose

is several competencies that make up the Web 2.0 concept, including:

Cost-effective scalability by creating services, not packaged software.

Data sources that are unique and difficult to recreate, but become richer as more

people use them.

Users as trusted co-developers.

Harnessing the collective intelligence of the sites‟ participants.

Leveraging customer self-service.

The creation of software that is not limited by a single device.

The creation of user interfaces, development models, and business models that

are lightweight and easily manageable.

The idea of treating the web as a platform existed before Web 2.0; in fact it was the

battle cry for Netscape. The strategy of Netscape was to use their web browser as a

springboard to control web standards over content and applications as well as providing

a number of costly server products. The idea was to replace the desktop environment

controlled by Microsoft through its Windows operating system with the “webtop”

provided by the browser provided by Netscape. Unfortunately, the web browser and

web servers simply became commodities. The true value of a web platform was

realized as services delivered over the web, such as realized by a competing company

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 94

Google. Unlike Netscape, Google did not have a desktop application, but a native web

application. Instead of selling server components, Google offered services that were

not sold or packaged as commodities. Ultimately, Google success is derived not by

owning any data, but by managing the data provided by its customers and is a prime

example of one of the key principles of Web 2.0 – the value of software is proportional

to the scale and dynamics of the data that it manages.

In the new era of web applications brought on by Web 2.0, the need for greater data

management has become a critical component. DoubleClick has a great competency

for data management and was a pioneer in providing web services to its customers.

However, its business model focused on publication, not participation. The company

felt that the advertisers control web content and not the customers; it also considered

that the size of the website was a major determiner of success. However, their efforts

were ultimately found to be restrictive and other companies like Yahoo! Search

Marketing and Google AdSense used the Web 2.0 concept to break open those

limitations. The key was the exploitation of the “long tail.” Referenced by Chris

Anderson, the long tail speaks to the power of a collection of small sites that make up

the bulk of web content. The idea behind the long tail is to leverage customer self-

service and data management to reach out to the entire web, the edges of the web as

well as the centre, to the long tail and not just the head on web content.

The final principle behind the transformation of the web as a platform is that the service

automatically gets better as more people start using it. The driver of this principle is the

creation of an “architecture of participation” where each web user brings to the table

their own resources for use by other users. Some users may participate more than

others, while others have contributions that have greater value than their neighbors.

These facts don't matter because the participants are the final decision makers on

participation and contribution. As a result the application becomes a richer field of

possibilities than traditional applications that are controlled and managed through the

limited imagination of its developers.

Websites that are designed within the concept of Web 2.0 typically include several

features or techniques that set them apart. Andrew McAfee, Associate Professor of the

Harvard Business School and author of Enterprise 2.0: the Dawn of Emergent

Collaboration, used the acronym SLATES to refer to most of these:

SEARCH: finding information easily using keywords.

LINKS: provision of guides to the most important pieces of information. The

best pages would be the ones most frequently visited.

AUTHORING: shifting the creation of content from the few to the many, allowing

a single work to become a series of interlinked work that is constantly being

updated. Wikis and blogs are just two examples of Web 2.0 implementations that

changed authorship rules.

TAGS: the creation of simple, one-word descriptions to assist in searching and

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 95

the categorization of content.

EXTENSIONS: the use of algorithms to match patterns or automate redundant

work.

SIGNALS: Notification to users of any changes to content. Usually done

through RSS (Real Simple Syndication) technology which sends an email to the

user.

11.1 Harness the Collective Intelligence of the Community

The survival of most major websites that existed before Web 2.0 depended on

reinvention to exploit the intelligence of their collective users. At the centre of this effort

were hyper linking and a need to control. The unique driver of the World Wide Web by

Berners-Lee was the use of hyperlinks, a method of connecting two bits of information

directly without the use of indexing or external referencing. As new content and sites

are added, there is also a need for users to discover the content and link to it. Like a

living organism, associations created by hyperlinks become stronger through repetition

and intensity. The connections grow organically because of the activity of all web

users.

Different companies have become the models for harnessing collective intelligence.

Yahoo! may be a simple directory of links, but its existence was the combined

efforts of millions of web users.

Google's search breakthrough used PageRank which focuses on the link

structure of the web rather than interpreting the characteristics of documents as

a way to obtain better search results.

EBay provides a product that is highly dependent on the collective activity of all

its users. The product itself grows organically in response to user activity. All

the company has to do is enable an appropriate context for the user activity.

The advantage of collective intelligence for establishing market share is

demonstrated very well by the success of eBay. The critical mass of buyers and

sellers on eBay make the introduction of any other provider of similar services

very difficult.

There are several Internet companies that sell almost any form of media found,

such as books, CDs, and movies, but Amazon is clearly a leader in the market.

The reason for their leadership is their focus for engaging the user. Nearly every

page has an invitation for the user to participate in reviewing, collecting, and

providing better search results.

Collaboration and trust is probably demonstrated best with the online

encyclopedia, Wikipedia. An article in this website can be added to by any web

user and edited by any other. Wikipedia has always been an experiment in the

dictum, “with enough eyeballs, all bugs are shallow, attributed to the open

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 96

source advocate Eric S Raymond.

Taxonomy is the science of classification; in computers, it refers to classifying

information. Folksonomy goes beyond taxonomy to establish and manage

collaboratively created tags attached to websites. Flickr and del.icio.us are two

pioneers of the folksonomy concepts. Tagging is based on the associations that

are natural since they are created by the user, instead of a preset grouping of

keywords created by the programmer.

Cloudmark utilize the decisions of email users to determine what is considered

spam and what is not. Such collaboration has allowed this spam filtering product

to outperform other systems that rely on analysis of the messages to make the

decision.

Collective intelligence is apparent in the success of many of the prominent Internet

companies today simply because most did not advertise their products – their

popularity was the result of “viral marketing” where recommendations were made from

one user to the next. Additionally, much of the infrastructure of the web is a product of

collective intelligence using the peer-production methods of open source. Over

100,000 open source software products can be found on the web and are listed on

SourceForge.net. Any product relying on Linux, Apache, MySql, Perl, PHP, or Python

could be a product of collective intelligence.

For enterprises looking for the advantages of the web, the exploitation of collective

intelligence is a highly prized motivator, whether the intelligence they are seeking to tap

into is their internal personnel, suppliers, partners, or their customers. Many

companies are already using the web to obtain invaluable information from several

communities seeking market advantage. Amazon.com, which is a pioneer in cloud

computing technologies, has been able to leverage the collective intelligence of their

users and publishers. Their ability to exploit the knowledge found within the

communities they work with has made them a key resource in the market to the point

where they have added their own identification method for books and media.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 97

11.2 The Advancement of Blogging

In the early years of the World Wide Web, web pages were static: that is, they were

created once and were typically not updated for long periods of time. One of the

prominent features of Web 2.0 is the creation of dynamic web pages; the ability to

generate content without limits. The most common application is the weblog, or blog,

which turned personal home pages into personal diaries and daily opinion columns.

More importantly, blogging drives “an entirely different delivery, advertising and value

chain” as noted by the distinguished computer programmer Rich Skrenta.

At the centre of the blogging feature is the technology Really Simple Syndication

(RSS). This technology allows a user to not just link to a web page but subscribe to it

so that any time the web page changes, the user is notified of the change. Many refer

this as “live web.” The importance of blogging is not the dynamics of the web page, but

the links themselves. A link to a weblog is a point to a constantly changing page with

permanent links available for individual entries. An RSS feed allows these links to exist

with notifications made when the page the link points to is changed and as such, the

feed becomes a stronger link than individual bookmarks originally found on the Internet.

Because of the RSS technology, viewing web pages is not restricted to web browsers

only. Desktop clients are available as well as programs on portable devices which

deliver RSS notifications to the users. Personal diaries and opinion columns are not

the only sites that utilize RSS: any data that is constantly changing can use the

technology, such as stock quotes, weather information, news headlines, and photos.

RSS is not a new technology, but Web 2.0 has built on the concept to deliver on its

promise.

Another significant contribution from blogging is the permanent link, or permalink. The

traditional Usenet used NNTP (Network News Transfer Protocol) which allowed articles

to be read, posted, and transferred among multiple servers. The benefits of this

protocol allowed quick communication to multiple sources. Newsreaders became

available to users so that they can view these articles on their desktop. Through

permalinks and RSS, the benefits of NNTP are transferable to the web protocol, HTTP,

creating a new equivalent of Usenet, commonly referred to as the “blogosphere.” The

technology allows users to subscribe to other user‟s websites, link to individual

comments on a page, use “trackbacks” to links to the page by other users, and respond

to those other links. Thus the creation of two-way links within the Internet. There are

two methods that these links are managed. The first method is to require

acknowledgment of the return link as found in many social networking systems like

Friendster, Orkut, and LinkedIn. The second method allows notification, but not

necessarily approval of the return link as found in use by Flickr.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 98

Analogously if collective intelligence is considered the growth of a global brain, the

blogosphere is the constant mental effort of the forebrain, the conscious voice of the

global body. As the consciousness of man is a powerful force to the perception of daily

life, the blogosphere is a powerful force for global life. Search engines use link

structures to predict useful pages; bloggers establishing links have an impact on

shaping results within search engines.

Through the two-way linkages promoted by the blogging community, individuals

essentially “amplify” their visibility and power within the blogosphere. Where PageRank

analyses the value of an individual document, the collectiveness of the blogosphere

creates the value of thought. Essentially blogging is another filter to harness collective

intelligence, creating a condition that American journalist, James Suriowecki, calls the

“wisdom of crowds.” The world of blogging has created a new competition – value is no

longer decided by a few people, but by a collection of users.

For enterprises, blogging technologies provide a mechanism for immediate interaction

between communities. Specifically in instances where information from the enterprise

needs to be pushed out into interested parties, subscriptions to relevant blogs

sponsored by the enterprise can contain valuable information to those parties. This

distribution can provide real-time value in relaying any level of data from any sector

within the company. The feedback capabilities of a blog also open immediate reaction

to any number of topics providing a solid communication path for doing business.

11.3 A New Central Intelligence

The 20th century brought out the importance of information and the data that supported

it. The more information available provided the opportunity for better analysis, better

decision making, and greater idea of impact and value. Because of its importance, the

value of a business or government entity was often attributed to amount of information

“owned” by the entity. This power of information has not disseminated with the new

century. Every major Internet application has proven the value of information. Each

application is backed with a database managing the information, whether talking about

Google, Yahoo!, Amazon, eBay, Mapquest, Napster, iTunes, or similar products.

Database management is a core competency required for Web 2.0 companies.

Ownership of information on the Internet can led to market control. The government

initially granted Network Solutions control over the registry of domain names. This

grant became a huge moneymaker for the company. MapQuest has the market on web

maps since 1995, but their data originally came from NavTeq, TeleAtlas, and Digital

Globe. But by licensing these data sources, Yahoo!, Microsoft, and Google have been

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide 99

able to take a bite out of MapQuest's share of the market. Sometimes, the ownership

of the data isn't as important as how the data is presented. Amazon's original database

was sourced by R.R. Bowker, an ISBN registry provider, who was sharing the same

data with competitors, like Barnesandnoble.com. Amazon, however, enhanced the

data by adding data supplied by publishers and users. After over a decade's effort,

Amazon is now the go-to provider of information about books and media rather than

Bowker, so much so, that they have introduced their own identifier, the ASIN.

Information is so important and can be found in various sources, some web

applications have been created to simply compile data from multiple sources into a

single integrated tool. These applications are referred to as “mashups.” Mashups can

assist in switching market share from one presenter to another presenter as in the case

of Google and MapQuest. Google's software model is lightweight which allows it to be

easily linked to other applications, such as housingmaps.com. This site combines

Google Maps with Craiglist apartment rental and home purchase listing to create a

better housing search tool. Using MapQuest to do the same thing is more complex,

allowing Google to gain greater presence on the web. Also like the situation with

Amazon and Bowker, the presenter of the data may gain a greater market presence

than the source of the data itself. Still, the value of owning certain classes of core data

such as location, identity, calendaring, product identifiers, and namespaces is clearly

understood and object of competition.

The competition for owning specific data can be a costly endeavor. Of course, some

data, like maps, requires significant investment in simply obtaining the data. However

like Amazon, information on books and media can be obtained by collecting and

managing data from their user base. The winner of the competition for data is the

product that reaches critical mass because of the contributions of their user base and

turning that data into a demanded service. The rise of cloud computing allows

companies to apply the investments that would normally be earmarked for technology

maintenance and improvement to the core of the business: competitive knowledge in

the industry the business resides.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

100

11.4 Obtaining Dynamic Continuous Improvement

The advent of Web 2.0 brings the need to provide services instead of products. With

every company already mentioned that has a significant Internet presence, the growth

of their product is considerably dependent on the efforts of the users of that product.

The growth of traditional software products is dependent on the imagination and efforts

of the developers, not the users. Because web applications rely on user contribution,

the offering provided these companies must transcend from product into a service for

their users. This requirement forces some fundamental changes to the business model

of Internet companies.

The first change is the requirement for making operations a core competency.

Traditionally, software companies had to have a competency in product development.

Though this is important, product development must be equally managed with expertise

in daily operations. The change is so prominent that there is a belief that software will

cease to perform if it is not maintained daily. This belief is backed by processes of

many companies who have a significant Web presence, like Google which has to crawl

the web and update indexes, filtering out spam and other undesired influences, and

respond appropriately to user queries in the millions. How these businesses manage

their processes are their fundamental advantage in the market place.

Another change brought on by the Web 2.0 model is the treatment of users as co-

developers. As products become services and growth determined by user participation,

most will find themselves in “perpetual beta.” Most products on the web are being

openly developed while users are using the product: the users are even becoming key

developers themselves. Monitoring of user activity in real time allow companies to

identify what features are being used and how those features are being used. Most

web developers are deploying new features every day. If users start immediately using

the feature, the new feature is transferred throughout the application; if the feature is

not used, it is removed. Companies like Microsoft which provide software updates

every two to three years will have difficulty competing against companies who provide

updates every day.

The advantages to these changes provided by Web 2.0 is the opportunity to provide

true continuous improvement to the products and services found on the web. Whether

the improvement is in response to providing greater functionality or in additional

participation from the user base doesn't matter – it is still improvement of the overall

system. Though they may still exist, the question by some whether a particular

improvement can be considered to hold any quality also doesn't matter, since the value

and quality of the improvement is determined by the participation of the user. All a

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

101

company has to be concerned with is implementing and enforcing process and

procedures that establish the controls required by any regulatory agencies, including

those focused on quality management. However, most of these regulations fully

support the principles of open source innovation.

The speed and dynamics of continuous improvement is further accelerated when

companies start relying on the web for services other than the simple distribution of

web applications. Simply developing and maintaining web applications in methods that

have traditionally been seen supporting legacy applications, a few advantages are

obtained. However, by fully exploiting the technologies and services of cloud

computing, the advantages are exponentially multiplied in favor of the enterprise. A

small business can obtain high shares of the market simply by applying diligent

attention to the web technologies that they utilize. They have an advantage over the

big enterprises of the industry; they are not encumbered by the traditional viewpoint.

The apt metaphor here is the comparison of turning a large ship in the ocean to the

turning of a rowboat. The rowboat will always win.

11.5 Creating Programming Models that are Lightweight

The success of web development is dependent on simplicity; using services, protocols,

and data that are easily deployable and interconnected. The use of RSS, Simple

Object Access Protocol (SOAP), and Representational State Transfer (REST) are just

some of the technologies that have been promoted by the concept of Web 2.0. Several

points are validated in the need for simplicity.

Loosely coupled systems can only be reached through the support of lightweight

programming models. Corporate-sponsored web services are designed to have

systems tightly coupled to manage security, confidentiality, reliability, and availability. In

many cases, these designs establish controls over the entire system creating a number

of complexities to maintain control while providing access that is dynamically growing.

While this level of control may be necessary in many cases, establishing controls in the

lower levels of a system can provide greater flexibility and adaptability to an application.

Paradigms around traditional software development have to change in this era of web

services. Most development was concerned with determining and controlling what the

user can and cannot do. However, the power of the web provides a vehicle in which

development simply needs to concentrate on getting the data into the hands of the user

and providing an environment for them to do whatever they wish to do. The ability to

syndicate data outwards is now the focus of most web applications and the idea is a

fundamental value to the Internet itself.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

102

The systems found on the web and within web applications have a common theme:

there is very little in place to prevent re-usability. Much of the construction of these

products is in fact open source. When the construction is not open source, there is

very little in intellectual property to warrant significant protection from re-use. From the

beginnings of the World Wide Web, the ability to re-use each other‟s creations has

been a key growth advantage: from the “View Source” option in most browsers, to RSS

feeds that allow users to view information they want to see when they want to see it

without any protection from the information provider. Success in the web is typically

obtained by providing the greatest adaptability of the services by the user. Instead of

seeing the protection phrase “all rights reserved,” the future of web services will provide

more control towards the user with the accompanying phrase “some rights reserved.”

The rise of Web 2.0 is providing another interesting change to business: finding

innovation within the assembly of the product instead of the development of the

product. Traditionally, the business model of most companies would be to create a

product prototype and create same marketing around the prototype to encourage a

revenue stream. The focus on innovation is found within development. Now that

development is closer to the customer through open source technologies, innovation is

being found in the assembly of a product instead of the development. The change is

another reason why companies are being forced to change their business models in the

new era of web applications.

11.6 No Longer Bound to a Single Customer

For years, business and personal computer owners have been bound to the computer

and operating systems they have selected to fulfill their computer needs. For home

users, the choice between Windows and Apple has been an interesting feat with most

users choosing Windows simply because of the number of third-party products

available for the system. Businesses have had the same choice for their desktop

operations, but clearly more choices for their server selections. The inclusion of Web

2.0 as a standard for creating web applications is creating a new paradigm in choices

for computer ad operating system; simply put, the operations of the application is no

longer bound to the operating system as the platform but the web as the platform.

To be a web application naturally insinuates that there are two computer devices in

operation: the device hosting the application and the device using the application

through a browser. However similar to the times when applications were found on

servers and operated through dumb terminals, using the web as a platform allows the

ability to allowing the application to be utilized on multiple devices which have a

browser. In today's technology, those devices are no longer restricted to the desktop

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

103

and laptops, but include PDAs, cell phones, gaming consoles, and other Internet ready

devices. The web allows the user to no longer be bound to a single operating system

or for the application to a single device.

The greatest innovator for breaking the bounds is Apple with the introduction of iTunes.

The relationship between the handheld device, iPod, the personal computer and the

growing web database shows what‟s possible when the web platform is used to operate

across multiple devices as well as the importance of the personal computer in the

future. The personal computer used by the workhorse, but for iTunes it is simply a

cache and control station for music, books, and video. The workhorse is the handheld

device and, of course, the iTunes application. In 2009, Netflix will provide another great

innovation. Netflix started as an online renter of movies that could be sent to a

homeowner's location through the mail. Eventually, they provided a way for users to

instantly view a movie on a personal computer. Their newest innovation is to enable

the instant viewing of a movie directly onto a television without the need of a personal

computer; though a special device that can connect to the Internet is required. ITunes

and Netflix are just a couple of the innovative technologies that have been enabled by

the Web 2.0 revolution; though they are not web applications, they are taking full

advantage of the web platform.

11.7 Striving for a Better Experience

Since the commercialization of the Internet began, the technology of the web has

grown primarily to provide a better, richer, experience to the user. Active content, such

as applets, were available as early as 1992 with the introduction of the Viola browser.

In 1995, Java was introduced to provide the framework for delivering these applets.

Soon after, JavaScript and DHTML provided lightweight programming ability on the

client side. However, the web didn't produce any full scale web applications until

Google introduced Gmail and Google Maps. The technologies used by Google to

deliver these applications were coined AJAX by Jesse James Garrett of the web design

firm Adaptive Path.

Now the technologies of AJAX are being used to deliver more web applications to the

user. But the wall that prevented web applications from being delivered wasn't broken

down simply by the AJAX technologies. Many of the capabilities being found in web

applications have been around for many years. However, the struggle between

Microsoft and Netscape over web standards kept many of the capabilities from being

fully realized. The dot.com bubble scared many companies and users from trusting the

benefits of the web, but also showed the advantage of managing growth within the web

platform. But with new technologies, greater control on the standards, and a new

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

104

willingness to explore what's possible, the promise of applications built to operate on

the web platform is finally being realized with richer, more robust applications.

The current focus is to provide a richer experience to the user while providing novel, yet

practical, applications to market. Web applications may be as simple and small as

managing address book contacts to providing a word processor that allows for wiki-like

collaborative editing to enterprise scale applications like CRM. Web 2.0 provides an

opportunity for companies to provide products that are used by their customers, as well

as developed and marketed by their customers.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

105

12 Distinguishing Web Applications

The Servlet Specification version 2.2 first introduced the concept of a web application,

or webapp. The definition from this document of a web application is “a collection of

servlets, html pages, classes, and other resources that can be bundled and run on

multiple containers from multiple users. A web application is rooted at a specific path

within a web server.” Though this may be the technical definition of a web application,

the more practical definition is provided by Hagan Rivers, a pioneer in Web Application

Design and a partner at Two Rivers Consulting: “web-based applications are web sites

with interactivity – the user is interacting...a web application is everything a website is,

and more.”

Most people would suspect that web applications can only be found within the confines

of a web browser and this is only partially true. Web applications do work within the

framework of web browser, but do not necessarily require opening a web browser

before accessing the application. A more truthful statement is that a web application

uses the web as its platform, as opposed to a traditional desktop application that uses

the operating system as the platform.

Applications found within the web platform can be either standalone or browser-

oriented. Standalone applications use the web as a platform but do not require a

browser to access the application. These applications typically are very simple and

have all the required components needed to perform. Most require some level of

communication with the web to provide or extract information from the platform and are

essentially simple interfaces for providing information. Some require a constant

connection to the Internet when being run.

The most basic web applications are interview applications, hub and spoke

applications, or hybrids of both. Interview type applications request information from

the participating user which is then processed and returned as some desired output to

the user. Hub and spoke applications provide the user with a hierarchy of the product.

The core web page, the hub, has a list from which the user is to choose a function. The

choice then goes to an area of the application for the user to attach to; the design

similar to the hub and spokes of a wheel. Still some applications are a combination of

both interview and hub and spoke designs. All these designs require the interaction of

the user to have the application perform.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

106

But as the more technical definition of a web application hints at, the concept of

application utilizing the web platform is a collection of resources that are designed to

provide a definitive experience and result for the user. In many cases, these resources

are not inherent to the application itself but are borrowed from other locations within the

web. These resources are typically sharable between multiple applications, as they

may range from anything like protocols, applets, APIs, or even other web applications

or the results of other web applications. Some web applications are essentially a

combination of two of more other applications and are commonly referred to as a

“mashup.”

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

107

13 Introduction Web Application Framework

When choosing to develop a web application, the first step that an enterprise must take

is choosing an appropriate web application framework. Used to create and manage

web applications, a framework for web applications includes all the necessary

components required to accomplish any development task. Because all the

components already exist inside the framework, there is no need to procure any

additional tools for developing and maintaining the application. The framework can

include designing and launching web pages as well as making available any number of

applications to provide web services to their customers.

The software library is probably the key distinction of the web application framework.

Software libraries are central repository for every type of software utilized in the

creation and ongoing function of web services that can exist within the framework.

These software entries may provide security to web pages, help manage the creation

and maintenance of databases and provide mapping of pages.

Several features are inherent in a web application framework. Security is one of the

most important features for a framework to resolve any concern about the

confidentiality and reliability of the information that is used and distributed by the

application. Therefore, most frameworks provide proven methods for authenticating

and authorizing requests, through the server providing the appropriate restrictions

based on the user and the activity which the user is undertaking. Different frameworks

provide different methods for securing access to data and web pages. For applications

found within a cloud computing environment, the service provider of the web platform

may restrict the framework used to build the application so that the controls of security

are consistent between the platform and the application.

Nearly all applications used on the web today have a database which needs to be

connected to. In many cases, an application may need to access more than one

database to fulfill their computing purpose. Like applications, databases may be found

in a variety of capacities some of which may require a translation function to read and

write data to the database. Fortunately, most frameworks create a unifying API which is

attached to a database backend. Such an API allows applications and databases to

work together without additional code changes. How a framework manages the data

found on the database is a key decision maker for choosing the right framework.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

108

The use of resources on the web focuses the user or application to utilize specific

features of the web. One of the most prevalent features is the URL. Unfortunately,

most URLs are a very complex set of alphanumerical characters and symbols. Web

application frameworks contain a mechanism of interpreting the URLs in the form of a

mapping facility. The purpose of most mapping facilities is to translate complex URLs

into easier ones that can be recognized by the application engine. Such a

simplification makes the URLs easier to read and to provide search engines with better

information around the structural mapping of the site.

Many of the applications created on the web contain a static part composed in HTML

and a dynamic part which is code that generates HTML. The code controlling the

dynamic part is usually based on variables in a template. The web application

framework typically houses a number of templates that can be used to ensure that

information is collected and displayed in a consistent fashion. For instance, a retail

store has 100 new products in for their spring sale. This influx of new products requires

that 100 new pages of text be generated. This can be done by hand with much effort or

by using a template within the framework, the product page simply will need to be

connected to a database with the product information and the product page is

automatically generated when the consumer requests to see the product information.

Every application developer has to be concerned with the performance of the

application and the development of web applications is no different. Most frameworks

handle the caching of web documents to improve bandwidth, server load, and lags

between page changes. A cache stores copies of documents passing through it,

allowing future requests for the same document to be pulled from the cache under the

right conditions rather than being pulled from the original source location. Some

frameworks not only cache documents for have mechanisms in place to bypass some

stages of a page's preparation when dealing with template interpretation or access to

the database.

Configuration of applications is another concern for most development projects.

Therefore, the web application framework must handle some level of configuration to

the application. Some frameworks actually handle such requirements by minimizing

the amount of configuration necessary to get the job done. For example, Java

frameworks use “hibernate” to generate a database scheme by creating business

objects instead.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

109

14 A New Success for Web Applications in AJAX

Of all the features found in web application frameworks, one feature in particular is

growing in popularity and use. Ajax is itself a framework of interconnected web

development techniques that are intended to create interactive web applications. For

the most part, web applications tend to be slow and tedious because every request

made by the application must contact the server and the server has to think about what

needs to be sent back to the application. Ajax is a method of web programming that

greatly reduces the processing time that these requests take. An acronym for

Asynchronous JavaScript and XML, Ajax attempts to merge data, content, and design

into a collective and seamless unit. The result is nearly instant reaction to customer

requests.

Sometimes Ajax is referred to as a technology, but it is not. Instead, it is a new

paradigm for looking at existing technologies. Therefore, developers of existing

applications may be able to adapt the Ajax paradigm with very little effort. Ajax is a

method of developing applications for the web that combines:

XHTML and CSS standards-based presentation

Interaction with data using a Document Object Model (DOM)

Interchange of data with XML and XSLT

Asynchronous data retrieval with XMLHttpRequest

The use of JavaScript to bind everything together.

Since the first introduction of the Ajax paradigm, developments in the area opened

some additional technologies to be used within the Ajax framework. JavaScript can be

replaced with VBScript and EGL Programming Language to implement an Ajax

application. Data interchange does not require XML or XSLT in some conditions.

JavaScript Object Notation (JSON) is often used as a format for data interchange.

The Ajax engine works inside the web browser through JavaScript and the DOM. The

engine handles the customer requests to the server. To do this, most information

retrieved from the server sits within the engine. Subsequent requests for information

are handled asynchronously between the Ajax engine and the customer and are

independent of any interaction with the server. In standard web applications, the

interaction is typically synchronous so that all requests must go to the server, be

processed, and return back with the results. Each step is done one right after another

and repeated with the next request. With Ajax, the JavaScripting found in the loaded

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

110

page is handling the basic tasks required by the customer. While it is handling the

display changes with the customer, data is being sent back and forth to the server

without any need for action from the customer.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

111

15 A Survey of Web Application Frameworks

The following pages are intended to identify some of the major frameworks used to

create web applications. Though these descriptions may provide some distinctions

between the frameworks, most distinctions are found within the technical foundations of

the programming languages themselves and the following descriptions are not intended

to provide too much technical information about the languages themselves.

Almost all of the frameworks mentioned here are general concepts to programming.

Actual implementation is typically managed through defined releases by corporations

and developers looking to provide structure and control to the development process

and libraries. In some instances, these implementations were critical and even

encouraged by the framework because of a desire to put more power into the hands of

the developer.

15.1 ActionScript

Originally developed by Macromedia in 2000, ActionScript is an object-oriented

programming language which is typically used when interactivity is desired in flash

movies found on a website. Initially designed to control 2D vector animations in

Macromedia Flash, which is now Adobe Flash. Improvements to the language allow

functionality used in web-based games and Internet applications with streaming media

capabilities. The programming language is free form and derived from ECMAScript.

The data types found within ActionScript are considered simple or “fundamental” and

are used to create other data types. The basic data types include:

String – a sequence of characters including letters, numbers, and symbol.

Display of the string requires the enclosure of single or double quotation marks.

Number – a display of a single number.

Boolean – a value that is either true or false or 1 and 0 when appropriate.

Object – a collection of properties. Each property requires a name and a value

which represents a Flash data type. Objects can be nested inside other objects.

MovieClip – symbols that play animation inside a Flash application. This data

type is the only one that refers to a graphic element in ActionScript.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

112

Null – represents the lack of data.

Undefined – Has only one value and is automatically assigned to a variable that

does not have a defined value.

Void – Also has only one value and is used when a function does not return a

value.

15.2 ASP.NET

In January 2002, Microsoft introduced ASP.NET as a web application framework for

developing dynamic web sites, web applications, and web services. The framework is

built on the Common Language Runtime (CLR). Programmers can use and support

.NET language to write ASP.NET code. The primary characteristic of ASP.NET is its

pages, officially called “web forms”. These pages are the main constructs for

developing web applications. These pages contain static (S) HTML markup, and server

side web and user controls where all the required static and dynamic content for a web

page is placed.

Microsoft recommends building applications where the presentation and content remain

separate. In this way, the interface is built so that it does not disturb the programming

code of the application itself. Referred to as a “code-behind” model of programming, it

provides an appropriate distinction between the code and how it‟s presented.

User Controls allow programmers to create reusable components in ASP.NET. A User

Control maintains the same structure as a Web Form. Within the User Control,

programmers can add properties, methods, and event handlers to provide proper

actions when user make a request of the application. ASP.NET supports the concept of

“master pages” which are template-like pages. A web application can have more than

one master page. When the template is used, the resulting page is referred to as a

“child page.”

ASP.NET provides for state management functionality within the applications. State

management handles how the application communicates with the server. The various

states for an application are defined as:

Application state defines a collection of user-defined variables which are set and

initialized at the first loading of the application.

During a user session, another collection of user-defined session variables are

in place that is commonly referred to as the session state. These variables are

in place as long as the user is active with the application and may automatically

be destroyed when activity discontinues. There are three modes for session

variables. In Process Mode are the fastest variables but cease to exist when the

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

113

ASP.NET process is shut down or recycled. ASPState Mode is separate from

the application and therefore impacts the performance of the application

negatively, but it allows the supports of multiple ASP.NET instances on the same

server as well as assists in balancing the application load across multiple

servers. SqlServer Mode has variables stored on database server and remains

in place even when a process instance discontinues. This mode also allows for

load balancing on a server cluster.

Page-level state management is available through view states. Its purpose is to

maintain the state of web form controls and widgets.

Despite its ability to handle most of the demands for web application processing, there

is criticism about its ability to maintain features and function across different types and

even versions of web browsers. For greatest benefits derived by ASP.NET

applications, Microsoft encourages the use of the latest version of Internet Explorer.

15.3 ColdFusion

If a programmer is looking to connect any database to dynamic web pages, they may

be looking at ColdFusion as the web application framework. The framework is based

on standard HTML. The advantages of ColdFusion are its ability to create ad hoc

pages based on user input, database lookups, or other criteria defined by the

programmer. ColdFusion is the forerunner of Microsoft ASP.NET, JavaServer Pages, or

PHP. It was first introduced by Allaire in 1996 and is now the intellectual property of

Adobe.

Creating applications in ColdFusion is as simple as creating a static web site. However

with ColdFusion, the programmers have access to functionality not available in a static

web site of even traditional client/server applications. An application built in ColdFusion

is a collection of pages created with HTML tags as well as server side ColdFusion

Markup Language (CFML) to control the behavior of the application, integrate server

technologies, and dynamically generate content.

ColdFusion provides a number of inherent features:

Database access is simplified

Management of client and server caching

Code generation for form widgets and validation

PDK and FlashPaper conversion

Data retrieval form common enterprise systems

File indexing and searching service

Administration of GUI

XML parsing, querying, validation, and transformation

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

114

Server clustering

Task scheduling

File manipulation made simple

Simplified web service implementation.

ColdFusion is a Java EE application, which allows the application code to interact with

Java classes so that a variety of applications can be built utilizing existing Java

libraries. Recent developments in ColdFusion provide native support of .NET.

Developers call a .NET assembly without any recompiling or altering of the assembly.

15.4 Common Lisp

Common Lisp is a framework that standardized the various iterations of Lisp. Originally

published in the ANSI standard document Information Technology – Programming

Language – Common Lisp, the framework serves as a general purpose, multiple

paradigm language supporting procedural, functional and object-oriented programming

simultaneously. Because of its diversification, Common Lisp facilitates rapid

development of efficient run-time applications.

The defining advantage of Common Lisp is the object-oriented programming is the

toolkit, Common Lisp Object System (CLOS). The toolkit started as an add-on

originally and was adopted fully as part of the ANSI standard. CLOS is a dynamic

object system with radical differences from similar facilities found in C++ and Java. The

toolkit allows for multiple dispatches where methods treat multiple arguments

simultaneously and multiple inheritances where programming classes can inherit

behaviors and features form more than one superclass. Methods, classes, and objects

can be added and changed appropriately during runtime.

Common Lisp is generally referred to as a specification and not an implementation.

Therefore, any implementation using Common Lisp may require additional functionality.

Free Software libraries have been created to provide additional features, most notably

Common-Lisp.net and the Common Lisp Open Code Project. Some of the

applications using Common Lisp are the Jak and Daxter video games for Sony

Playstation 2 and the low fare search engine used by Orbits, American Airlines,

Continental Airlines and US Airways.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

115

15.5 Groovy

As an alternative to Java, a programmer can use the object-oriented programming

language called Groovy. It is dynamic with features similar to other languages like

Python, Ruby, Perl, and Smalltalk. Groovy was first conceived by James Strachan in

August 2003, but the final release of the framework did not occur until December 2007.

The framework opens levels of convenience, expedience, and agility over the

exactness and extensiveness required by Java. The language was created from the

ground up to utilize the existing code written in Java and Java-compatible languages.

The focus of Groovy is to create an agile development framework. Groovy attempts to

provide a wide range of tasks and be applicable in many ways by:

Removing any extensive requirements for compilation

Allowing dynamic data types to exist

Removing the constraints using found in the syntax

Creating compatibility with existing Java and Java-compatible applications

Providing an interpreter for programming shells.

For developers familiar with Java or inexperienced programmers hoping to program on

the Java platform, Groovy may the framework for creating new applications with relative

ease and flexibility.

15.6 Java

The term “Java” refers to the combination of the Java programming language, the Java

Virtual Machine (JVM), and the Java platform. The language is a high level, object-

oriented programming language. The JVM executes bytecodes on a computing

platform: the intention is to interpret native code for the host. The platform, Java, is

essentially a set of standard libraries. There are two libraries available from Sun

Microsystems, the developer of Java: The Standard Edition (SE) and the Enterprise

Edition (EE).

Java is probably the most well known of web languages; it popularity shown through

the number of programming languages that attempt to work with or emulate. It was

developed in 1995 and has derived most of its syntax from C and C++ with a simpler

object model. The creation was founded on five main goals:

The language has to be simple, object oriented, and familiar

The language has to be robust and secure

The language has to be architecturally neutral and portable

The language should allow high performance execution

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

116

The language has to be interpreted, threaded, and dynamic.

When Java was first introduced it was used to create applets within web pages,

required simple bytecode interpretation, was slow in performance, and had a few die

hard programmers tooting the benefits of the framework. Today, Java is used to create

a variety of web applications and web services, dynamically compiles code, provides

the basis for high performance, and involves a large independent open source

community.

The promise of Java is the ability to write the code once and run it on any supported

hardware or operating system. This flexibility is obtained by compiling the code to the

Java bytecode instead of the machine code. End-users can run Java applications

within a web browser or on their desktop using a Java Runtime Environment (JRE).

Standardized libraries provide simple access to host specific features like graphics,

threading, and networking.

In truth, using bytecode provides a generous porting benefit. Unfortunately, the

overhead system requirements to compile the code into something useful can result

into poor performance. Several advancements in optimization have allowed the

performance to increase. Typically, compilation is static, or ahead-of-time (AOT),

where the code bytecode is translated directly into native code like a traditional

compiler. One optimization technique is called just-in-time compilation (JIT). The

technique creates native code from the Java bytecode when the code is first executed

and then the code is cached for future use. As Virtual Machines became more

sophisticated, dynamic recompilation was accomplished where the VM monitors the

behavior of the program and recompiles and optimizes only parts of the program. The

result is greater performance for the overall Java application.

Most applications are built to be compatible with specified operating systems and

sometimes, the hardware that it sits on. As a result, developers who desire to have

their products reach a larger market, must develop different versions of the same

application for each operating system. This can be a very costly effort. The Java

Virtual Machine provides an environment where code can run independent of the

operating system and hardware. Essentially, converting code into something usable on

a platform is a two step process. The first step requires the developer to compile the

source into bytecode. The second step has the JVM converting the bytecode into

native code for the host platform. The step performed by the JVM used to be done

through interpretation: taking each instruction and converting it when needed. JIT

compilers later did the compiling when the program started up.

Many attempts have been made to find a language to succeed Java. Fortunately,

because of tips popularity and design, many of the principles and innovations remain

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

117

intact; primarily the JVM, especially since a VM approach provides security, portability,

interoperability, and extensibility. Since the JVM has already solved many of the

problems of traditional software design effectively, many of the successors of Java still

use the JVM instead of creating their own.

15.7 JavaScript

Scripting languages are programming languages that have only some control over a

software application. Where programs are executed independently from other

applications, scripts, are normally extensions to existing applications. The script is

separate from the source code of the application, usually written in a different language,

and change the behavior of the application to meet the user‟s needs. A script is

typically interpreted from the source code, rather than being compiled like the

application they are associated with. The more well-known of scripting languages is

JavaScript. Originally a dialect of the ECMAScript standard, it is a dynamic, prototype-

based language with first-class functions. JavaScript was designed to look like Java,

but was actually influenced by several languages. Though JavaScript can be used to

extend the functionality of any application, it is best known for its prolific use in

websites.

15.8 Lua

Another scripting language is Lua. Because of its characteristics to be lightweight,

reflective, imperative, and functional, it has become popular with the development of

video games, like World of Warcraft. The language is best known for its powerful C

API.

The language was created as a political and cultural resolution to Brazil's national

identity in 1993. For decades, the country restricted the trade of hardware and

software within its borders. The motivation was the sense that Brazil could and should

sustain its own technological leadership. As a result, customized software had to be

developed within the country and not obtained from third-party developers outside

Brazil. Added to the geographical isolation of the country, this forced three members of

the Computer Graphics Technology Group (Tecgraf) of the Pontifical University in Rio

De Janeiro to create a scripting language for use in customized software being created

for Brazilian companies.

The languages were based on Simple Object Language (SOL) and Data-Entry

Language (DEL), both also developed at Tecgraf independently of each other and Lua.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

118

Later versions of the language gained semantics from Scheme and as a result is very

similar to JavaScript. Lua is a “multi-paradigm” language that provides a small set of

features that can be applied to different problem types. It is lightweight simply because

it allows flexible meta-features that can be extended when needed, rather than a

feature-set specification to one paradigm. The programming allows for first-class

functions, garbage collection, closures, coercion and co-routines.

15.9 Perl

In 1987, a system administrator for NASA created a scripting language based in Unix to

make reporting easier. The result was a high-level, dynamic, general purpose

programming language called Perl. The system administrator, Larry Wall, is still

involved in the development of future versions of Perl. The language borrows features

from several other programming languages but is most powerful at manipulating text

files. Its flexibility and adaptability has encouraged its use in graphics programming,

system administration, network programming and applications requiring data access

and CGI on the web.

The structure for Perl is borrowed from C and is procedural in design. It takes on

features from shell programming. Perl takes lists from Lisp, associative arrays from

AWK, and regular expressions from sed. In essence, the language is a potpourri of

several languages with its own spin on things to make it practical and supportive of the

developer. This may be one of the reasons that it is commonly referred to as either the

“Swiss Army Chainsaw of Programming Languages” or “The Duct Tape of the Internet.”

Perl is often used to tie together systems and interfaces that are not designed to

interoperate and for “data munging” which processes large amounts of data for tasks

like creating reports. Many high-traffic websites use Perl in their coding, including

Amazon.com, Ticketmaster, IMDb, and Craigslist.

15.10 PHP

Though it now has the capacity to handle command line interfaces and to be used for

standalone graphical applications, PHP was originally designed in 1995 to be a

scripting language for creating dynamic web pages. It is a widely used suited for web

development and can be embedded within any HTML code. PHP typically runs on a

web server and is used to create web pages on the fly. It can be deployed on any

operating system or platform.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

119

The scripting language acts as a filter by taking data from a file containing text or PHP

instructions and creates an output in the form of another stream of data, commonly

HTML. The primary context of PHP is server-side scripting and is similar to other such

scripting languages like Microsoft's ASP.NET and Sun Microsystems' JavaServer

Pages. Many development platforms are attracted to PHP because of its building

blocks and structure that promote rapid application development. PHP can be found on

many of the most popular web sites including Facebook, Wikipedia, Yahoo!, Digg, and

Tagged.

15.11 Python

Python is a general purpose programming language that emphasizes programmer

productivity and code readability. The framework minimizes its core syntax and

semantics, while providing a large and comprehensive standard library. Multiple

programming paradigms are supported, namely object oriented, imperative, functional.

It also provides features similar to Perl, Ruby, Scheme, and Tcl-like dynamic-type

systems and automatic memory management. Python was released in 1991.

One can find Python being used as a scripting language for web applications. It has

seen extensive use in the information security industry. Several software products

embed Python into their product as a scripting language, specifically 3D animation

packages. Products like Houdini, TrueSpace, Poser, Blender, Paint Shop Pro,

Civilization IV, and Eve Online all use Python. Python ships as a standard component

in most Linux distributions and the Mac OS X, and NetBSD and OpenBSD. Python is

even used on YouTube, and by large organizations like Google, Yahoo!, CERN, and

NASA.

Python strives to be a readable language with an uncluttered layout visibly. By using

English keywords instead of punctuation or using whitespace indentation instead of

curly braces or keywords, the language delivers on its promise.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

120

15.12 Ruby

Ruby is a general purpose object-oriented programming language with a syntax

inspired by Perl and features similar to those found in Smalltalk. It originally came out

of Japan in the mid-1990s. The framework supports multiple programming paradigms,

the primary ones being functional, object-oriented, imperative, and reflection.

The creator of Ruby, Yukihiro Matsumoto, said that language was designed for

programmer productivity and fun. The primary deliverer of this promise is the fulfillment

of principles for a good user interface design. Therefore, the framework attempts to put

the needs of the developer before the needs of the computer. It follows the principle of

least surprise (POLS); translated as the language behaves so that it creates the least

amount of confusion for experienced users. This POLS philosophy is not supported by

the creator.

15.13 Scheme

Scheme is a dialect of Lisp. Though it can be used in any number of programming

paradigms it is popularly used for functional programming. It was developed in the

1970s. The framework provides the minimal number of notions as possible, relying on

programming libraries.

Scheme is used by a number of schools for their introductory Computer Science

courses. There are relatively sparse examples where Scheme is used elsewhere.

15.14 SmallTalk

The 1970s brought an object-oriented reflective programming language called Smalltalk

out of the famed Xerox PARC. This new language was designed for constructionist

learning: an educational methodology that stands on the proposal that learning is an

active problem where students actively construct mental models and theories around

those models.

Smalltalk has influenced the world of computer programming in four main places.

It was the major inspiration behind the syntax and semantics of other

programming languages.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

121

It introduced a model of computation known as message passing.

The WIMP GUI inspired the current personal computing operating systems. In

fact, the first Macintosh desktop looked like the MVC windows of Smalltalk-80.

The visual programming tools used today are modeled after the Smalltalk

integrated development environment.

Smalltalk laid the groundwork for the commercial success of Java, as well as providing

ideas and inspiration to Python, Ruby and Perl. As such, many of the computer

advancements found in today's society have some roots within Smalltalk.

15.15 Conclusion to Web Applications Frameworks

After identifying the major web application frameworks found on the web, some

common characteristics can be ascertained. The first characteristic is the level of

influence from one framework to the next. Except for cases where certain restrictions

originally prevented influence, such as the Brazilian creation Lua, almost every

framework borrows directly or emulates properties and ideas from other programming

languages. Of course, timelines and popularity also impact the level of influence

provided. Smalltalk was one of the first frameworks and Java one of the most popular.

As such, many of the frameworks are designed to work with the most prominent code

found on the web. Fortunately, influence is not defined in one direction but is rather

multi-directional, allowing influences to persist backwards to the original concept or

across programming languages.

The influences lend themselves to another characteristic: the motivation behind most

frameworks. Essentially, most developments were completed in order to make

programming and development easier for the developer or to create richer applications.

Some of the frameworks were created in parallel with each other by different

development groups. Others strove to comply with other frameworks as a way to

ensure universal use.

One of the general distinctions between the frameworks is the programming paradigms

utilized. Many attempted to support multiple paradigms while others supported one or

two. A programming paradigm is simple a fundamental style of programming. There is

a long list of styles that a programmer may focus on; the most common are listed here:

Functional – used primarily in mathematically-based applications because it

emphasizes the use of functions. Also used when states needed to be avoided

as well as mutable data, which is data that cannot be modified after it is created.

Imperative – focuses on the management of state changes.

Object-orient – uses defined classes and instances, inheritance, encapsulation,

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

122

polymorphism, and other specialized programming features.

Reflective - a special case of meta-programming where the program modifies or

extends itself.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

123

16 Introduction to Markup Languages

Publishing companies and editors have for centuries used a specialized language to

provide instructions for handling the structure and display of text and graphics. With

the computer age and the World Wide Web, that language has become much more

sophisticated. The same concept persists and markup languages are the foundation of

every web page and site found on the web. The most well known markup language is

the HyperText Markup Language, or HTML. But it was not the first.

16.1 SGML/HTML

In the 1960s, IBM developed a metalanguage for computers that was referred to as

General Markup Language (GML). By 1986, this creation was standardized by the

International Standards Organization (ISO) and the name changed slightly to reflect the

move: now being called the Standardized General Markup Language (SGML). The

hook for SGML was its ability to provide an abstract syntax that can be used by several

concrete syntaxes. With this implemented, many aspects of SCML can be customized

by a programmer.

The original use for SGML was to allow machine-readable documents to be shared in

large projects in government, law and industry. Each of these business sectors

requires documents to be maintained and accessible for several decades. The printing

and publishing industries have also used SGML. Unfortunately, SGML is far too

complex for small-scale use.

SGML inspired the design of HTML, specifically in tagging. HTML is sometimes

referred to as an application of SGML but critics would argue that most HTML

documents are not considered proper SGML. When Tim Berners-Lee introduced the

Worldwide Web project in 1991, he introduced a hypertext language. He called it

HTML Tags.

HTML consists of several key components:

The basic structure of HTML is elements and consists of two basic properties:

attributes and content. Restrictions are in place for each of the properties in

order for the HTML document to be valid. An element has to have a start tag

and an end tag. The attribute has to be located in the start tag and the content

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

124

is located between tags.

Element content can consist of several data types, including IDs, names, URIs,

numbers, and the like.

HTML defines 252 character entity references and 1,114,050 numeric entity

references which allow multiple annotations to be added to HTML documents.

The document type of a HTML document is required to be declared at the

beginning of the page in order to allow proper rendering on a website.

16.2 XML/XHTML

When SGML was first created, its purpose was to provide a way to share large

deposits of documents. At the time of its introduction the Internet was not

commercialized and the World Wide Web was not existence. When the popularity of

these technologies rose, SGML was faced with a problem, fuelling the need to handle

documents on the Internet. To resolve the problem, The World Wide Web Consortium

created a new meta markup language called Extensible Markup Language, or XML.

Fortunately, adoption was easy since every XML document was also a SGML

document.

The language also resolved some international issues that were present with SGML.

There are two correctness levels for XML documents. If a document conforms to XML

syntax rules, it is considered well formed. If a document conforms to semantic rules, it

is valid. The importance of these conformities provides the reliability for the XML

document to be shared between information systems; therefore parsers, both

conforming and validating, will disallow any processing of the document if conformity

fails.

XML works best in semi-structured environments where documentation and publication

are the focus. However because of its balance between simplicity and flexibility, XML

has been adopted for other uses including communicating data between applications.

There are quite a few advantages for using XML, the least of which is its simplicity and

efficiency. The language supports Unicode allowing information written in any human

language to be communicated. It can represent common computer science structures,

such as records, lists and trees. XML can be used for document storage and

processing on and offline and is platform independent.

Businesses have adopted XML in the publishing arena as a single source of creating

and updating document content. The move significantly reduces the time and cost for

companies that need to print the same documents that are published on the web.

Governments use XML for large documentation and printing maps. Manufacturers in

the airplane and car manufacturers use the technology to print maintenance booklets.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

125

XML has been modified to create eXtensible Business Reporting Language (XBRL)

which assists in facilitating the transferral of data and reporting financial results in the

financial world.

When XML was adopted over SGML, HTML had to be revisited to ensure compatibility.

The result was XHTML. There's not much difference between XHTML and HTML, the

former is just an effort to conform to the rising interest in XML.

16.3 Conclusion to Markup Languages

An essential foundation to any web-based product is the ability to display and share

text, graphics, and pictures. Markup languages allow this to happen without extensive

programming requirements. Additional features can be added by using scripting

languages to add dynamic content to an existing web page. The combined uses of a

markup language and a programming language can provide exciting new and dynamic

creations for users of the Internet and even standalone web-based products.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

126

17 Benefits for Web Applications

The world is evolving and with it a demand for greater ease, accessibility, and

innovation. The Internet and World Wide Web have had a tremendous influence on

personal computing. Web 2.0 and cloud computing technologies have already

impacted business computing in various directions. Creating a web application within

this environment has numerous benefits to the developer and the user.

Scalability on the web is highly desirable. Traditionally, an application being distributed

to the business organization had to have license agreements for every instance of the

application in the environment. The more instances found, the more expensive the

application. Additionally, in order to support a server-based application in multiple

locations, a different server had to be in place that was geographically convenient.

Utilizing the web, scalability is much easier. First, an additional desktop application is

not required since all that is needed is a web browser which is usually already available

on a machine. Second, by using a web platform as a service, the use of servers is

based on use, not the entire machine; therefore, if only a tenth of the server is used,

the customer only pays for a tenth of its use. Most services already handle any

concerns for redundancy and duplicate instances, though some service providers will

even allow a company to instruct how many primary instances and their locations

should be supported. The use of a web service also covers the occasions where

usage spikes appear: the service simply reroutes the additional use to free resources

within the environment. Since most spikes are temporary, the impact is not

tremendous; however, if the increase persists then the resources are promised to be

there.

The primary technology behind web implementation is virtualization; that is, an abstract

rendering of the resources used. So instead of several dozen storage volumes, one

large storage volume is rendered. Out of one instance of an application, several

instances can be rendered. The benefit of virtualization is the reliability that it brings to

the environment. Along with workload balancing, redundancies, and any other

technologies, the ability to ensure that when a user wants to connect to a web

application, the more likely that will happen.

Security is one of the basic concerns for any business and having their applications

and databases hosted on a platform as public as the Internet and World Wide Web

increase the concerns. However, the Internet has not proven to be any more or less

secure than traditional networks connected to the Internet. Some proponents stand by

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

127

claims that the Internet is actually more secure than communication inside a business

network. This may be true since the majority of security threats experienced by IT

departments are from internal sources, mostly unintentional. If the application is placed

on the web, the application is now accessible from outside the network, thus increasing

the security.

Security on the web has proven the most secure of IT solutions. With the number of

businesses requiring account information, financial information, and the like, the

controls and protection placed into individual websites make them more secure than

many of the traditional networks a decade ago. And the technology around security is

only going to improve.

Availability on the web is another major concern. Fortunately, the web is available at

any time, in any location, with only a browser and a connection to the Internet. The

system controls on web platforms provide additional assurances that the applications

will remain available to the user.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

128

17.1 Progress Review Questions

1. In Microsoft acquired Hotmail.

a) 1996

b) 1997

c) 1998

d) 1999

TRUE or FALSE 2. Google Sites service offers only a limited use of XML.

3. What has helped SaaS become more popular and widely developed in recent years?

a) ASP b) Ajax c) OD Computing d) None of the above

4. When cloud computing is used, control may be lost over:

a) Security

b) Storage

c) Privacy

d) All of the above

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

129

18 Service Management Processes

There are a number of service management processes from the ITIL framework that

can play a role in SaaS and Web Application development, support and delivery. This

chapter will explore some of those key processes. You will be familiar with some of

these processes from the Cloud Computing Foundation program. The most relevant

processes for SaaS and Web Applications have been selected to provide a refined

overview.

18.1 IT Financial Management

Objective: To provide cost-effective stewardship of the IT assets and the financial

resources used in providing IT services.

IT Financial Management enables an organization to fully account for the amount spent

on IT Services, and to attribute these costs to the services delivered to the

organization‟s customers.

Using IT Financial Management to provide services with cost transparency clearly

understood by the business and then rolled into the planning process for demand

modeling and funding is a powerful benefit for the organization. It enables the best

balance to be struck between the opportunities available for the business against the

capability levels of the IT organization.

Business Impact Analysis (BIA)

A BIA seeks to identify a company‟s most critical business services through analysis of

outage severity translated into a financial value, coupled with operational risk. This

information can help shape and enhance operational performance by enabling better

decision-making regarding prioritization of incident handling, problem management

focus, change and release management operations, project priority, and so on. It is a

beneficial tool for identifying the cost of service outage to a company, and the relative

worth of a service. These two concepts are not identical.

The cost of service outage is a financial value placed on a specific service, and is

meant to reflect the value of lost productivity and revenue over a specific period of time.

The worth of a service relative to other services in a portfolio may not result exclusively

from financial characteristics. Service Value, as discussed earlier, is derived from

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

130

characteristics that may go beyond Financial Management, and represent aspects such

as the ability to complete work or communicate with clients that may not be directly

related to revenue generation. Both of these elements can be identified to a very

adequate degree by the use of BIA. While this section will discuss and illustrate the

approach to creating a BIA format and output, these are not the only options and

alternative formats are visible throughout industry.

A number of steps need to be completed while generating a BIA. Some of the high-

level activities are as follows:

1. Arrange resources from the business and IT that will work together on the

analysis.

2. Identify all of the top candidate services for designation as critical, secondary or

tertiary (you do not need to designate them at this point).

3. Identify the core analysis points for use in assessing risk and impact, such as:

Lost sales revenue

Fines

Failure risk

Lost productivity

Lost opportunity

Number of users impacted

Visibility to shareholders, management, etc.

Risk of service obsolescence

Harm to reputation among customers, shareholders and regulatory

authorities.

4. With the business, weigh the identified elements of risk and impact.

5. Score the candidate services against the weighted elements of risk and impact,

and total their individual risk scores (you can utilize a FMEA for additional input

here).

6. Generate a list of services in order of risk profile.

7. Decide on a universal time period with which to standardize the translation of

service outage to financial cost (1minute, 1 hour, 1 day, etc.).

8. Calculate the financial impact of each service being analyzed within the BIA

using agreed methods, formulas and assumptions.

9. Generate a list of services in order of financial impact.

10. Utilize the risk and financial impact data generated to create charts that illustrate

the company‟s highest risk applications that also carry the greatest financial

impact.

A „chargeback‟ model for IT can provide accountability and transparency. However,

if the operating model currently provides for a more simplistic annual replenishment

of funds, then charging is often not necessary to provide accountability or

transparency.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

131

Charging should be done to encourage behavioral changes related to steering

demand for IT services. Charging must add value to the business and be in

business terms, and it should have a degree of simplicity appropriate to the

business culture. The most difficult and critical requirement of the model is its

perceived fairness, which can be imparted if the model provides a level of

predictability that the business typically desires, coupled with the mutual

identification of services and service values.

Chargeback models vary based on the simplicity of the calculations and the ability

for the business to understand them. Some sample chargeback models and

components include:

Notational charging;

Tiered subscription;

Metered usage;

Direct Plus; and

Fixed or user cost.

No matter which methodology is used, or none at all, it is more important to make

certain that the overriding substantiation comes from providing value to the business.

18.1.1 IT Financial Management and SaaS

Financial Management for IT Services is used for the following:

ROI as part of the business case for the development of a Software Service

From a marketing point of view you will need to be able to communicate your

VOI or Value On Investment, which not only includes the monetary return but

also additional benefits to the clients.

Actual costing of the ongoing management and maintenance of the service

Based on this you will be able to create a pricelist for your services that

enables you to predict your profitability per product, region of client.

Make sure the total cost in delivering the service, including all variable costs for

maintenance and unplanned events, is known. Once the pricelist is set, it can‟t be

changed easily and ultimately, the business wants to make a profit.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

132

18.2 Information Security Management

Objective: To align IT security with business security and ensure that information

security is effectively managed in all service and Service Management activities.

ISM needs to be considered within the overall corporate governance framework.

Corporate governance is the set of responsibilities and practices exercised by the

board and executive management with the goal of providing strategic direction,

ensuring the objectives are achieved, ascertaining the risks are being managed

appropriately and verifying that the enterprise‟s resources are used effectively.

Information security is a management activity within the corporate governance

framework, which provides the strategic direction for security activities and ensures

objectives are achieved. It further ensures that the information security risks are

appropriately managed and that enterprise information resources are used responsibly.

The purpose of ISM is to provide a focus for all aspects of IT security and manage all IT

security activities.

The term „information‟ is used as a general term and includes data stores, databases

and metadata. The objective of information security is to protect the interests of those

relying on information, and the systems and communications that deliver the

information, from harm resulting from failures of availability, confidentiality and integrity.

For most organizations, the security objective is met when:

Information is available and usable when required, and the systems that provide

it can appropriately resist attacks and recover from or prevent failures

(availability)

Information is observed by or disclosed to only those who have the right to know

(confidentiality)

Information is complete, accurate and protected against unauthorized

modification (integrity)

Business transactions, as well as information exchanges between enterprises,

or with partners, can be trusted (authenticity and non-repudiation).

Prioritization of confidentiality, integrity and availability must be considered in the

context of business and business process. The primary guide to defining what must be

protected and the level of protection has to come from the business. To be effective,

security must address entire business processes from end-to-end and cover the

physical and technical aspects. Only within the context of business needs and risks can

management define security.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

133

freya.dixon
BLANK

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

134

Policies/principles/basic concepts

Prudent business practices require that IT processes and initiatives align with the

business processes and objectives. This is critical when it comes to information

security, which must be closely aligned with business security and business needs.

Additionally all processes within the IT organization must include security

considerations.

Executive management is ultimately responsible for the organization‟s information and

is tasked with responding to issues that affect its protection. In addition, boards of

directors are expected to make information security an integral part of corporate

governance. All IT service provider organizations must therefore ensure that they have

a comprehensive ISM policy(s) and the necessary security controls in place to monitor

and enforce the policies.

The Information Security Management process and framework will generally consist of:

An Information Security Policy and specific security policies that address each

aspect of strategy, controls and regulation

An Information Security Management System (ISMS), containing the standards,

management procedures and guidelines supporting the information security

policies

A comprehensive security strategy, closely linked to the business objectives,

strategies and plans

An effective security organizational structure

A set of security controls to support the policy

The management of security risks

Monitoring processes to ensure compliance and provide feedback on

effectiveness;

Communications strategy and plan for security

Training and awareness strategy and plan.

The Information Security Policy

Information Security Management activities should be focused on and driven by an

overall Information Security Policy and a set of underpinning specific security policies.

The ITP should have the full support of top executive IT management and ideally the

support and commitment of top executive business management. The policy should

cover all areas of security, be appropriate, meet the needs of the business and should

include:

An overall Information Security Policy

Use and misuse of IT assets policy

An access control policy

A password control policy

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

135

An email policy

An Internet policy

An anti-virus policy

An information classification policy

A document classification policy

A remote access policy

A policy with regard to supplier access of IT service information and components

An asset disposal policy.

These policies should be widely available to all customers and users, and their

compliance should be referred to in all SLRs, SLAs, contracts and agreements. The

policies should be authorized by top executive management within the business and IT,

and compliance to them should be endorsed on a regular basis. All security policies

should be reviewed – and, where necessary, revised – on at least an annual basis.

The Information Security Management Systems (ISMS)

The framework or the ISMS in turn provides a basis for the development of a cost-

effective information security program that supports the business objectives. It will

involve the Four Ps of People, Process, Products and technology as well as Partners

and suppliers to ensure high levels of security are in place.

ISO 27001 is the formal standard against which organizations may seek independent

certification of their ISMS (meaning their frameworks to design, implement, manage,

maintain and enforce information security processes and controls systematically and

consistently throughout the organizations). The ISMS in the following diagram shows

an approach that is widely used and is based on the advice and guidance described in

many sources, including ISO 27001.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

136

Framework for managing IT security

18.2.1 Information Security Management and SaaS

This is a very important process for SaaS delivery. Not only do systems need to be secure to ensure the guaranteed availability of the service, but the business has the responsibility for the content, the information of the clients. As an example, when you provide a CRM solution, your clients want to make sure that nobody outside of their organization has access to their clients and sales records. So you need to keep your data centers, systems and software secure enough to be able to guarantee this.

This extends beyond the technical security of passwords and user IDs. This includes physical security at the data center or server room, it also includes organizational and procedural security measures.

Every time before you make a major change you will need to make a snapshot of the current security measures. You need to do this to enable a rollback scenario for Release and Deployment Management.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

137

18.3 Release & Deployment Management

Objective: To deliver, distribute and track one or more changes in a release into the

live environment.

Often forgotten about or ignored in many IT Service Management implementations or

initiatives, Release and Deployment can be mistakenly seen as the poor cousin of

Change Management, being of less importance and priority to both the business and IT

organizations.

Much of the confusion and misunderstanding is perpetuated by the idea that Release

and Deployment only focuses on the actual distribution of changes to the live

environment. While timely and accurate distribution is indeed a goal of the process, the

actual scope includes all of the activities, systems and functions required to build, test

and deploy a release and enable effective handover to Service Operations.

In conjunction with Change Management, Release and Deployment will enhance an

organization‟s capabilities to develop, compile, reuse, distribute and rollback releases

in accordance with defined policies that improve efficiency and reduce business

disruption.

To deploy new releases into production, transition support to service operation, and

enable its effective use in order to deliver value to the customer.

Other objectives of Release and Deployment are:

To define and agree upon release policies, and Release and Deployment plans

with customers and stakeholders

Ensure the integrity of constructed release packages and that they are recorded

accurately in the Configuration Management System (CMS)

Ensure that all release packages can be tracked, installed, verified, uninstalled

or backed out if necessary

Ensure the required skills and knowledge is transferred to support staff,

customers, end-users, suppliers and any other relevant stakeholders

There is minimal unpredicted impact on the production services, customers and

service operations.

Release and Deployment works closely in conjunction with the other RCV processes to

enable the quality transition of services. The role played specifically by Release and

Deployment is to build, package, validate and distribute authorized service changes to

the target systems or users. A release is a collection of authorized changes to an IT

service.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

138

When identifying the benefits that Release and Deployment provides, it is important to

remember that it should be utilized in conjunction with the other Service Transition

processes. As a result, improvements in the metrics defined for Release and

Deployment may be at the expense of the other transition processes. Typical benefits

seen as a result of improved Release and Deployment are:

Delivering change, faster, at optimum cost and minimized risk

Assuring customers and users they can use the new or changed service in a

way that supports the business goals

Improving consistency in implementation approach across the business change,

service teams, suppliers and customers

Contributing to meeting auditable requirements for traceability through Service

Transition.

Well planned and implemented release and deployment will make a significant

difference to an organization's service costs. A poorly designed release and

deployment will, at best, force IT personnel to spend significant amounts of time

troubleshooting problems and managing complexity. At worst, it can cripple the

environment and degrade the live services.

Release Unit:

A „release unit‟ describes the portion of a service or IT infrastructure that is normally

released together according to the organization‟s release policy. When defining the

most appropriate release unit structure, the following factors should be taken into

account:

The ease and amount of change necessary to release and deploy the release

unit

The amount of resources needed to build, test and distribute a release unit

The complexity of interfaces between the proposed unit and the rest of the

services and IT infrastructure

The storage and resources available in the build, test, distribution and live

environments.

Based on these factors, it may mean that for critical applications the release unit is the

complete set of application components, and for optional features or add-ons, only the

single component itself.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

139

Release Package:

A release package may be a single release unit or a structured set of release units,

including the associated user or support documentation that is required. Like the

definition of release units, factors such as the modularity of components, the amount of

change occurring and resources required will be considered when formulating a

complete Release Package.

Release Identification:

The unique release identification scheme which is normally defined in the Release

Policy and conforms to any standards defined by Service Asset and Configuration

Management. Typical identification schemes include the following examples:

Major Release: Banking_System v1, v2, v3 etc.

o Major roll-out of new hardware and/or software.

Minor Release: Banking_System v1.1, v1.2, v1.3 etc.

o A few minor improvements and fixes to Known Errors.

Emergency Fix: Banking_System v1.1.1, v1.1.2 etc.

o A temporary or permanent Quick Fix for a Problem or Known Error.

Definitive Media Library (DML):

DML is the secure library where the definitive authorized versions of all media CIs

(typically software) are stored and protected. The DML should include definitive copies

of purchased software (along with license documents and any controlled information)

as well as software developed on site.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

140

The DML includes both electronic and physical copies of definitive software releases,

with Release and Deployment being responsible for any additions, modifications,

removals or maintenance that needs to be performed.

Definitive Spares:

Physical storage of all spare IT components and assemblies maintained at the

same level as within the live environment. New IT assemblies are stored here until

ready for use, and additional components can be used when needed for additional

systems or in the recovery from incidents. Like the DML, details of these assemblies

are recorded in the CMDB, and their management and deployment the responsibility of

the Release and Deployment process.

Build Management:

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

141

The software, hardware and documentation that comprise a release unit should be

assembled in a controlled manner to ensure a repeatable process. This should include

automation where possible for its compilation and distribution, which for large

organizations can significantly reduce the Total Cost of Ownership (TCO) for the

services involved.

18.3.1 Release and Deployment and SaaS

Every piece of software goes through a lifecycle that is more or less predictable.

Especially with SaaS services, a business continually learns from its clients who use

the software within their own business processes. New patches, emergency releases,

security fixes or major upgrades will have to be implemented.

Release and Deployment Management in a SaaS environment is not easy, especially

since clients can be spread across every time zone so there is no good time to stop the

service to run an update or upgrade. Most important for the success of this process is

communication. Let the customer know what is going to happen and when it is going to

take place.

Example from our experience on how not to do Release and Deployment Management:

A SaaS provider decided to do a server upgrade over the weekend; however, they

failed to communicate this to their clients. On Monday morning the boss received a

phone call from the Sales Department complaining that the system was unavailable.

After a phone call to the SaaS provider, it turns out that the server upgrade had failed

and they were trying to roll back to the previous version. It was now after 10am on

Monday morning and the sales team still didn‟t have access to the data.

This incident was the start of a snowball effect that eventually resulted in cancellation of

the contract with the SaaS provider. A loss of revenue that could (and should) have

been avoided by proper Release and Deployment Management and proactive

communication with the clients.

Clients understand when things happen that are not supposed to, happen... but they

don‟t understand why a business can‟t proactively manage this!

18.3.2 Release Management and Web Applications

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

142

Release Management covers the distribution of software without limitation on platform

or other methods of distribution. The discipline concerns itself with ensuring that the

software is properly developed and tested before being introduced to the production

environment. Release Management also manages quality control over development

and implementation.

For purposes already mentioned, the definition of a release is ambiguous and may not

be resolved for quite some time. In reference to web applications, there might be a

significant number of functional changes to the application before the recognition of a

new release is even made. The trend is that new releases are announced when a new

standard, such as changing from HTML-based documentation to XML-based

documentation, is applied to the application code. For now, this may be the most

sufficient definition for major releases. An alternate solution is the tracking of mini-

releases in the form of new functions and features. In this situation, releases may

happen every day or once a month.

However the term release is defined, the goals of release management are the same:

Effectively planning the rollout of software

Establishing well designed procedures for distributing and installing changes to

the application, especially the core components

Managing the expectations of customers effectively including appropriate

communication

Controlling the distribution and installation of changes to ensure the change is

properly executed.

18.4 Knowledge Management

Objective: To enable organizations to improve the quality of management decision

making by ensuring that reliable and secure information and data is available

throughout the service lifecycle.

The primary purpose of Knowledge Management is to improve efficiency by reducing

the need to rediscover knowledge. This requires accessible, quality and relevant data

and information to be available to staff.

The goals of Knowledge Management are to:

Enable the service provider to be more efficient and improve quality of service,

increase satisfaction and reduce the cost of service

Ensure staff have a clear and common understanding of the value that their

services provide to customers, and the ways on which benefits are realized for

the use of those services

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

143

Ensure that, at a given time and location, service provider staff have adequate

information on:

o Who is currently using their services

o The current states of consumption

o Service delivery constraints

o Difficulties faced by the customer in fully realizing the benefits expected

from the service.

The quality of decision making within the Service Lifecycle depends on the ability and

understanding of those parties involved, the understanding of the benefits and

consequences of actions taken, and the analysis of any of the surrounding issues

involved. All of this, in turn, depends on the availability of accurate and timely

knowledge, information and data provided in a way that can be easily accessed and

interpreted by the appropriate parties.

Knowledge rests on the management of the information and data that underpins it. To

be efficient this process requires an understanding and maintenance of the following

key activities:

• Establishing data and information requirements

• Define the information architecture

• Establishing data and information management procedures.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

144

Data, Information, Knowledge, Wisdom (DIKW)

Knowledge Management is usually seen within the context of the DIKW structure seen

below.

Data

Conte

xt

Understanding

Wisdom

Why?

Knowledge

How?

Information

Who, what,

when, where?

Data

Conte

xt

Understanding

Wisdom

Why?

Knowledge

How?

Information

Who, what,

when, where?

Data

Data is a set of discrete facts. Most organizations capture significant amounts of data

every day. Knowledge Management activities seek to improve the capabilities for

capturing, analyzing, synthesizing data and transforming it into information.

Information

Information comes from providing context to data. This usually requires capturing

various sources of data and applying some meaning or relevance to the set of facts.

Knowledge Management focuses on measures for capturing, finding and reusing

information so that work is not duplicated.

Knowledge

Knowledge is composed of the experiences, ideas, insights and judgments from

individuals and from their peers. This usually requires the analysis of information, and

is applied in such a way to facilitate decision making.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

145

Wisdom

The ability to ultimately discern material and having the application and contextual

awareness to provide a strong common sense judgment. The use of wisdom ultimately

enables an organization to direct its strategy and growth in competitive market spaces.

We can use tools and databases to capture data, information and knowledge, but

wisdom cannot be captured this way, as wisdom is a concept relating to abilities to use

knowledge to make correct judgments and decisions.

The Service Knowledge Management System (SKMS)

The SKMS describes the complete set of tools and databases that are used to manage

knowledge and information, including the Configuration Management System as well

as other tools and databases. The SKMS stores, manages, updates and presents all

information that an IT service provider needs to manage the full lifecycle of its services.

The main purpose of the SKMS is to provide quality information so that informed

decisions can be made by the IT service provider.

Where the CMS focuses on providing information relating to the configuration of the IT

infrastructure, the SKMS has a broader scope (as implied by the diagram) which

includes anything pertaining to the needs of service management, including:

Experience of staff

Records of peripherals

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

146

Supplier and partner requirements and abilities

Typical and anticipated user skill levels.

18.4.1 Knowledge Management and SaaS

The ITIL process of Knowledge Management plays an important role in the capturing

and utilization of data, information and knowledge about systems, solutions, services,

processes and resources (including people). This process helps to understand how the

various IT components work together to deliver the solution or software as a service.

The knowledge extends beyond the software application and covers all support and

maintenance issues.

Knowledge Management also extends to client data and information. What type of

services do they use, why did they subscribe to it? It is important to keep a clear and

complete overview of all incidents relating to the customer so the right type of customer

service can be delivered. The knowledge base should ideally also be linked to your

Known Error and standard solutions database. This will help with the timeliness of

incident resolution and improved customer satisfaction.

Based on historical data of your customer (or customer group), a business can make

decisions on product development or marketing campaigns.

Ultimately the integration of various sources of information (from technical data to

customer satisfaction data) will give a business the opportunity to show a more human

face to customers and to tailor service delivery to various client groups.

18.5 Incident Management

Objective: To restore normal service operation as quickly as possible and minimize the

adverse impact on business operations, thus ensuring that the best possible levels of

service quality and availability are maintained.

In ITIL terminology, an „incident‟ is defined as an unplanned interruption to an IT

service or reduction in the quality of an IT service. Failure of a configuration item that

has not yet impacted service is also an incident. Incident Management is the process

for dealing with all incidents; this can include failures, questions or queries reported by

the users (usually via a telephone call to the Service Desk), by technical staff, or

automatically detected and reported by event monitoring tools.

The value of Incident Management includes:

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

147

The ability to detect and resolve incidents, which results in lower downtime to

the business, which in turn means higher availability of the service. This means

that the business is able to exploit the functionality of the service as designed.

The ability to align IT activity to real-time business priorities. This is because

Incident Management includes the capability to identify business priorities and

dynamically allocate resources as necessary.

The ability to identify potential improvements to services. This happens as a

result of understanding what constitutes an incident and also from being in

contact with the activities of business operational staff.

The Service Desk can, during its handling of incidents, identify additional service

or training requirements found in IT or the business.

Incident Management is highly visible to the business, and it is therefore easier to

demonstrate its value than most areas in Service Operation. For this reason, Incident

Management is often one of the first processes to be implemented in Service

Management projects. The added benefit of doing this is that Incident Management can

be used to highlight other areas that need attention – thereby providing a justification

for expenditure on implementing other processes.

Timescales

Timescales must be agreed for all incident-handling stages (these will differ depending

upon the priority level of the incident) – based upon the overall incident response and

resolution targets with the SLAs – and captured as targets within OLAs and

Underpinning Contracts (UCs). All support groups should be made fully aware of these

timescales. Service Management tools should be used to automate timescales and

escalate the incident as required based on pre-defined rules.

Incident Models

Many incidents are not new – they involve dealing with something that has happened

before and may well happen again. For this reason, many organizations will find it

helpful to pre-define „standard‟ Incident Models – and apply them to appropriate

incidents when they occur.

An Incident Model is a way of pre-defining the steps that should be taken to handle a

process (in this case a process for dealing with a particular type of incident) in an

agreed way. Support tools can then be used to manage the required process. This will

ensure that „standard‟ incidents are handled in a pre-defined path and within pre-

defined timescales.

Incidents which would require specialized handling can be treated in this way (for

example, security-related incidents can be routed to Information Security Management

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

148

and capacity- or performance-related incidents that would be routed to Capacity

Management).

The Incident Model should include:

The steps that should be taken to handle the incident

The chronological order these steps should be taken in, with any dependences

or co-processing defined

Responsibilities; who should do what

Timescales and thresholds for completion of the actions

Escalation procedures; who should be contacted and when

Any necessary evidence-preservation activities (particularly relevant for security-

and capacity-related incidents).

The models should be input to the incident-handling support tools in use and the tools

should then automate the handling, management and escalation of the process.

Major Incidents

A separate procedure, with shorter timescales and greater urgency, must be used for

„major‟ incidents. A definition of what constitutes a major incident must be agreed and

ideally mapped on to the overall incident prioritization system – such that they will be

dealt with through the major incident process.

Note: People sometimes use loose terminology and/or confuse major incident with a

problem. In reality, an incident remains an incident forever – it may grow in impact or

priority to become a major incident, but an incident never „becomes‟ a problem. A

problem is the underlying cause of one or more incidents and remains a separate entity

always!

Some lower-priority incidents may also have to be handled through this procedure –

due to potential business impact – and some major incidents may not need to be

handled in this way if the cause and resolutions are obvious and the normal incident

process can easily cope within agreed target resolution times – provided the impact

remains low!

Where necessary, the major incident procedure should include the dynamic

establishment of a separate major incident team under the direct leadership of the

Incident Manager, formulated to concentrate on this incident alone to ensure that

adequate resources and focus are provided to finding a swift resolution. If the Service

Desk Manager is also fulfilling the role of Incident Manager (say in a small

organization), then a separate person may need to be designated to lead the major

incident investigation team – so as to avoid conflict of time or priorities - but should

ultimately report back to the Incident Manager.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

149

If the cause of the incident needs to be investigated at the same time, then the Problem

Manager would be involved as well but the Incident Manager must ensure that the

service restoration and underlying cause are kept separate. Throughout, the Service

Desk would ensure that all activities are recorded and users are kept fully informed of

progress.

18.5.1 Incident Management and SaaS

Incident Management for SaaS is an interesting process as a number of angles need to

be covered:

Incidents that occur in the internal organization. The IT group (both development

and support) as well as the internal business process groups will have incidents

(unplanned events that cause or may cause disruption or degradation of

service). Processes and procedures to deal with these incidents must be in

place.

Incidents that occur because external clients use those software services.

Both types of incidents are important to capture and manage, and you will need

to design your process to cater for both groups of incidents.

Also, how are external clients going to contact the business with their incidents?

Is there a helpdesk number or email address for support? Or are they expected

to contact their internal service desk which has access to your knowledge base?

18.5.2 Incident Management and Web Applications

The purpose of Incident Management is to restore service operations to normal

conditions are quickly as possible and to minimize the impact of interruptions on the

business. Normal conditions are defined by the Service Level Agreements. Incidents

beyond the capabilities of the Help Desk are assigned to a specialist support group to

be resolved quickly. Incidents end when a resolution or a work around to the problem

is in place.

Incidents and problems are distinguishable from each other. Incidents are a disruption

to service and are most often already associated with a known error. Because of this,

resolutions can be found easily and quickly. Unfortunately, there are times when the

source of the disruption is unknown and resolution is not in sight. In these situations, a

bypass is identified and implemented so that the service is no longer disrupted. The

use of redundant system is a simple method of bypassing incidents. Unfortunately, the

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

150

original problem still exists. This is where Problem Management takes over to identify

the root cause of the problem and find a resolution to prevent it from recurring.

18.6 Change Management

Objective: To ensure all changes are assessed, approved, implemented and reviewed

in a controlled manner.

The ability to control and manage changes to defined IT services and their supporting

elements is viewed as fundamental to quality service management. When reviewing

the typical strategic objectives defined for an IT service provider, most of these are

underpinned by the requirement of effective change control. These include strategies

focusing on time-to-market, increased market share or high availability and security

platforms, all of which require a controlled process by which to assess, control and

manage changes with varying levels of rigor.

Changes arise for a number of reasons, including:

Requests of the business or customers, seeking to improve services, reduce

costs or increasing ease and effectiveness of delivery and support

From internal IT groups looking to proactively improve services or to resolve

errors and correct service disruption.

The process of Change Management typically exists in order to:

Optimize risk exposure (defined from both business and IT perspectives)

Minimize the severity of any impact and disruption

Deliver successful changes at the first attempt.

To deliver these benefits it is important to consider the diverse types of changes that

will be assessed and how a balance can be maintained in regards to the varying needs

and potential impacts of changes. In light of this, it is important to interpret the following

Change Management guidance with the understanding that is intended to be scaled to

suit the organization and the size, complexity and risk of changes being assessed.

To ensure that standardized methods and procedures are used for controlled,

efficient and prompt handling of all changes, in order to minimize the impact of

change-related incidents upon service quality, and consequently to improve the day-to-

day operations of the organization.

“Remember: Not every change is an improvement, but every improvement is a

change!”

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

151

Change Management‟s purpose is also to ensure that:

All changes to service assets and configuration items (CIs) are recorded in the

Configuration Management Systems (CMS).

Overall business risk is optimized.

The term change is often defined in varying ways, however the best definition of a

service change is: “Any alteration in the state of a Configuration Item (CI). This includes

the addition, modification or removal of approved, supported or baselined hardware,

network, software, application, environment, system, desktop build or associated

documentation.”

It is important, however, that every organization defines those changes which lie

outside the scope of their service change process (such as operational or business

process and policy changes).

The figure above demonstrates the typical scope of the Change Management process

for an IT Service Provider and how it interfaces with the business and suppliers at

strategic, tactical and operational levels. As discussed in 4.1.4, Service Portfolios

provide the clear definition of all planned, current and retired services.

Designing and Planning

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

152

It is generally advised that the Change Management process should be planned in

conjunction with Release & Deployment, and Service Asset & Configuration

Management. These processes together will help in the evaluation of impact, needs,

timings and overall risk for changes being assessed.

The checklist of typical requirements when designing the Change Management

process includes:

Regulatory, policy or other compliance requirements

Documentation requirements

Identification of impact, urgency and priority codes for changes

Roles and responsibilities involved

Procedures required

Interfaces to other Service Management processes (e.g. Problem Management)

Toolset requirements to support Change Management

Configuration Management interfaces.

Change Management Activities

The following diagram represents the typical activities involved for normal changes that

have been identified. The actual steps and procedures need to be further refined

depending on any specific Change Models that have been created.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

153

Overview of Important Steps

1. The RFC is recorded.

2. Review the RFC for classification and prioritization.

3. Assess and evaluate the change – may require involvement of CAB or ECAB.

4. Authorization or rejection of the change.

5. The change is scheduled.

6. Work orders are issued for the build of the change (but carried out by other

groups).

7. Change Management coordinates the work performed.

8. The change is reviewed.

9. The change is closed.

scheduled

Create

RFC

Change

proposal

(optional)

Record the RFC

Review RFC

Assess and evaluate

change

Authorize Change

Plan updates

Co-ordinate change*

Initiator requested

Change Management

Ready for evaluation

Change authority

Change Management

Change Management

Evaluation

report

implemented

Review and close

Work orders

Work orders

authorized

Ready for decision

Up

date

ch

an

ge a

nd

co

nfig

uratio

n in

form

atio

n in

CM

S

Authorize Change proposal

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

154

1. The RFC is recorded

The change is raised by a request from the initiator. The level of information recorded

for a change depends largely on the size and impact of the change. Some information

is recorded initially and some information updated as the change document progresses

through its lifecycle. This may be recorded directly on the RFC form and details of the

change and actions may be recorded in other documents and referenced from the RFC

such as business cases.

For a major change with significant organizational and/or financial applications, a

change proposal may be required, which will contain a full description of the change

together with a business and financial justification for the proposed change. The

change proposal will include sign off by appropriate levels of business management.

2. Review the RFC for classification and prioritization

To ensure Change Management is using an appropriate level of control based on

factors of risk, cost and complexity, an initial review should act as a filtering mechanism

to apply the correct Change Model (classification), identify the relative priority of the

change, and to ensure that the required details are supplied. Procedures should

stipulate that, as changes are logged, Change Management reviews each change

request and return any that are:

Totally impractical

Repeats of earlier RFCs

Incomplete submissions.

These requests will be returned to the initiator, together with brief details of the reason

for the rejection, and the log should record this fact. There should be an opportunity to

appeal, via normal management channels, and should be incorporated within the

procedures.

3. Assess and evaluate the change

All changes will be assessed for their relative potential impact, risk and resource

requirements. Depending on the Change Model that has been applied, this assessment

may require involvement from:

The Change Manager and Change Owner for local authorization

The Change Advisory Board (representing all key stakeholders)

The IT Management (Steering) Board

Business Executive Board.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

155

The scope of potential impacts on services for failed changes is wide, so the

assessment needs to identify potential for:

Impact on customer‟s business operation

Effect on SLAs, baselines, service models, security etc.

Impact on other services

Impact on non-IT infrastructures

Effect of not implementing

Cost and staffing implications

Current Change Schedule

Ongoing resources required after implementation

Impact on continuity plan, capacity plan, security plan, test environments, and

any Service Operation practices.

The following table describes the type of hierarchical structures that may be used for

different levels of change authorization. A degree of delegated authority may also exist

within an authorization level. Formal authorization is obtained for each change from a

change authority that may be a role, person or a group of people. The levels of

authorization for a change should be judged by:

• Type

• Size

• Risk

• Financial implications

• Scope.

Level

Change Authority Potential Impact/Risk

1 Business Executive Board.

High cost/risk change

- Executive decision

2 The IT Management (Steering) Board

Change impacts multiple

services/ organizational divisions

3 Change Advisory Board (CAB) or

Emergency CAB (ECAB)

Change impacts only local/

service group

4 Change Manager Change to a specific component

of an IT Service

5 Local Authorization Standard Change

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

156

The 7 Rs of Change Management provides a set of guiding questions that need to be

answered as part of the overall assessment for changes. These questions are:

1. Who RAISED the change?

2. What is the REASON for the change?

3. What is the RETURN required from the change?

4. What are the RISKS involved in the change?

5. What RESOURCES are required to deliver the change?

6. Who is RESPONSIBLE for the build, test and implementation of the change?

7. What is the RELATIONSHIP between this change and other changes?

4. Authorization or rejection of the change

While the responsibility for authorization of changes lies with the Change Manager,

they in turn will ensure they have the approval of three main areas.

Financial Approval - What‟s it going to cost? And what‟s the cost of not doing it?

Business Approval - What are the consequences to the business? And not doing

it?

Technology Approval - What are the consequences to the infrastructure? And

not doing it?

When authorizing changes, it is important to consider both the implications of

performing the change, as well as the impacts of NOT implementing the change. This

also requires empowering the Change Manager with an appropriate level of authority,

as their primary role is to protect the integrity of the IT infrastructure and the services

provided to customers.

5. The Change is scheduled

The assessment of the change will have provided an estimation of the resource

requirements for delivering a successful change. Change Management will need to

coordinate with Release and Deployment Management so that any activities required

for the build, test or implementation of the change will be scheduled when resources

are available and when they least impact on live services or business critical times.

The timing of events and eventual implementation will be communicated via the

Change Schedule, and visible to the appropriate IT staff members, customers and end-

users. Any service disruption is documented in with the Projected Service Outage

(PSO). This details any revised Service Level Agreement and service availability

targets because of the events in the Change Schedule, in addition to any planned

downtime from other causes such as planned maintenance and data backups.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

157

6. Work orders are issued for the build of the change (but carried out by

other groups)

Change Management will coordinate with Release and Deployment to identify the

groups or individuals responsible for the implementation of the various elements

making up the change. This will be greatly influenced by the availability of staff and any

Release policies defining how and when changes are released to the live environment.

7. Change Management coordinates the work performed

Change Management plays a co-ordination role as implementation is the responsibility

of others (under the direction of Release and Deployment management or from Project

Management groups).

This is an oversight role to ensure that all changes that can be and are thoroughly

tested. Special care needs to be taken during implementation in all cases involving

changes that have not been fully tested.

Remediation Planning is a critical element during the coordination of changes. Ideally,

no change should be approved without having explicitly addressed the question of what

to do if it is not successful. There should be a back-out plan that will restore the

organization to its initial situation, through reloading a baselined set of Configuration

Items.

Only by considering what remediation options are available before instigating a change,

and by establishing that the remediation is viable, can the risk of the proposed change

be determined and the appropriate actions taken.

8. The change is reviewed

On completion of the change, the results should be reported for evaluation to those

responsible for managing changes, and then presented as a completed change for

stakeholder agreement. Major changes will require more customer and stakeholder

input throughout the entire process.

The review should confirm that the change has met the defined objectives, the initiator

and stakeholders are happy with the results and there have been no unexpected side-

effects. Lessons learned should be embedded into future changes as part of

continuous improvement. This includes whether the request should be developed as a

standard change or whether another Change Model is more appropriate for future

management of similar requests.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

158

Two types of reviews are performed for normal changes:

The review of a service change – immediately visible to the customer and

scheduled for discussion at the next service level management review meeting

An infrastructure change – concerned with how IT delivers rather that what IT

delivers, which will be (almost) invisible to the customer.

Change Management must review new or changed services after a predefined period

has elapsed. This process will involve Change Advisory Board (CAB) members, since

change reviews are a standard CAB agenda item. When a change has not achieved

its objectives, Change Management (or CAB) will decide what follow-up action is

required.

9. The change is closed

If the change review was satisfactory or the original change is abandoned (e.g. the

needs for the change is decreased or disappears) the RFC should be formally closed in

the logging system. These records will be kept for a period of time based on business,

compliance, archiving or other policy requirements that have been defined.

18.6.1 Change Management and SaaS

Change Management is one of the most important processes for a SaaS provider. All

changes must be managed with a global audience in mind.

For example, a supplier based in Europe might roll out their changes and releases over

night, not taking into consideration that overnight in Europe is during business hours in

Australia. During the Change Management process, client representatives should be

consulted to assess the risk to service continuity when the change is going ahead.

The Change Management process doesn‟t only cover changes to the source code of

the application, but also to critical documents like SLAs, Disaster Recovery Plans, and

the Service Catalogue. The process also covers changes to the delivery process as

this may impact the user experience.

With implementing Change Management, experience shows that it is important to put

a lot of emphasis on the early stages of the process – the information gathering and

decision making part of the process. Once the authorization criteria are crystal clear

and the early stages of the processes flow, attention can move towards the

coordination role of the process and the improved interaction with Release and

Deployment Management, Evaluation and Knowledge Management.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

159

These processes together will ultimately deliver a positive experience for the clients

and end-users and encourage positive feedback. This supports the viral marketing

efforts which most SaaS providers utilize... and ultimately benefits the entire company!

18.6.2 Change Management and Web Applications

The purpose of change management is to ensure standardized methods and

procedures are used to handle changes effectively and efficiently. A change is defined

as any event that results in a new status of one or more configuration items. Change

Management is focused on:

Minimal disruption of services

Reduction in any activities requiring backing out of change

Efficient utilization of resources during the change.

18.7 Capacity Management

Objective: The goal of the Capacity Management process is to ensure that cost-

justifiable IT capacity in all areas of IT always exists and is matched to the current and

future agreed needs of the business, in a timely manner.

Capacity Management is an extremely technical, complex and demanding process, and

in order to achieve results, it requires three supporting sub-processes. One of the key

activities of Capacity Management is to produce a plan that documents the current

levels of resource utilization and service performance and, after consideration of the

Service Strategy and plans, forecasts the future requirements for new IT resources to

support the IT services that underpin the business activities. The plan should indicate

clearly any assumptions made. It should also include any recommendations quantified

in terms of resource required, cost, benefits, impact, etc.

The production and maintenance of a Capacity Plan should occur at pre-defined

intervals. It is, essentially, an investment plan and should therefore be published

annually, in line with the business or budget lifecycle, and completed before the start of

negotiations on future budgets. A quarterly re-issue of the updated plan may be

necessary to take into account changes in service plans, to report on the accuracy of

forecasts and to make or refine recommendations. This takes extra effort but, if it is

regularly updated, the Capacity Plan is more likely to be accurate and to reflect the

changing business need.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

160

Business Capacity Management

This sub-process translates business needs and plans into requirements for service

and IT infrastructure, ensuring that the future business requirements for IT services are

quantified, designed, planned and implemented in a timely fashion. This can be

achieved by using the existing data on the current resource utilization by the various

services and resources to trend, forecast, model or predict future requirements. These

future requirements come from the Service Strategy and Service Portfolio detailing new

processes and service requirements, changes, improvements, and also the growth in

the existing services.

Service Capacity Management

The focus of this sub-process is the management, control and prediction of the end-to-

end performance and capacity of the live, operational IT service usage and workloads.

It ensures that the performance of all services, as detailed in the service targets within

SLAs and SLRs, is monitored and measured, and the collected data is recorded and

analyzed and reported. Wherever necessary, proactive and reactive action should be

instigated, to ensure that the performance of all services meets their agreed business

targets. This is performed by staff with knowledge of all the areas of technology used in

the delivery of end-to-end service, and often involves seeking advice from the

specialists involved in Component Capacity Management. Wherever possible,

automated thresholds should be used to manage all operational services, to ensure

that situations where service targets are breached or threatened are rapidly identified

and cost-effective actions to reduce or avoid their potential impact implemented.

Component Capacity Management

The focus in this sub-process is the management, control and prediction of the

performance, utilization and capacity of individual IT technology components. It

ensures that all components within the IT infrastructure that have finite resource are

monitored and measured, and that the collected data is recorded, analyzed and

reported. Again, wherever possible, automated thresholds should be implemented to

manage all components, to ensure that situations where service targets are breached

or threatened by component usage or performance are rapidly identified, and cost-

effective actions to reduce or avoid their potential impact are implemented.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

161

Capacity Management sub-processes diagram

18.7.1 Capacity Management and SaaS

This process can make or break a SaaS organization. When a business doesn‟t

proactively forecast and manage the capacity requirements for a software service, it will

run the risk that customers will be unhappy with the services. The program might be too

slow, time out, or drop out.

Especially when dealing with a global client base, load balancing needs to take place

over a 24 hour period, as there is no downtime. Also when internal organizations use

the evening and night for batch processing, clients are using the system 24 hours per

day.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

162

The connection between Demand Management – where the client demand is managed

at a strategic level – and Capacity Management is very important. Regular meetings

with the sales and customer teams need to be held to identify where the capacity

demand will come from and what the absolute need is going to be.

Your capacity planning should include the capacity needs for the disaster recovery site.

18.7.2 Capacity Management and Web Applications

For ensuring that resources are properly optimized and provisioned according to the

organization‟s requirements in a manner that provide a high level of performance and is

cost-effective, the process of Capacity Management is used. The high level activities

define how applications are sized, workloads are managed, capacity is planned, and

resources are managed, as well as performance.

18.8 Availability Management

Objectives: The goal of Availability Management process is to ensure that the level of

service availability delivered in all services is matched to or exceeds the current and

future agreed needs of the business, in a cost-effective manner.

The Availability Management process is continually trying to ensure that all operational

services meet their agreed availability targets, and that new or changed services are

designed appropriately to meet their intended targets, without compromising the

performance of existing services. In order to achieve this, Availability Management

should perform the reactive and proactive activities.

The reactive activities of Availability Management consist of monitoring, measuring,

analyzing, reporting and reviewing all aspects of component and service availability.

This is to ensure that all agreed service targets are measured and achieved. Wherever

deviations or breaches are detected, these are investigated and remedial action

instigated. Most of these activities are conducted within the Operations stage of the

lifecycle and are linked into the monitoring and control activities, Event and Incident

Management processes.

The proactive activities consist of producing recommendations, plans and documents

on design guidelines and criteria for new and changed services, and the continual

improvement of service and reduction of risk in existing services wherever it can be

cost-justified. These are key aspects to be considered within Service Design activities.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

163

An effective Availability Management process, consisting of both the reactive and

proactive activities, can make a big difference and will be recognized as such by the

business, if the deployment of Availability Management within an IT organization has a

strong emphasis on the needs of the business and customers. To reinforce this

emphasis, there are several guiding principles that should underpin the Availability

Management process and its focus:

Service availability is at the core of customer satisfaction and business success:

there is a direct correlation in most organizations between the service availability

and customer and user satisfaction, where poor service performance is defined

as being unavailable.

Recognizing that when services fail, it is still possible to achieve business,

customer and user satisfaction and recognition: the way a service provider

reacts in a failure situation has a major influence on customer and user

perception and expectation.

Improving availability can only begin after understanding how the IT services

support the operation of the business.

Service availability is only as good as the weakest link on the chain: it can be

greatly increased by the elimination of Single Points of Failure (SPoFs) or an

unreliable or weak component.

Availability is not just a reactive process; the more proactive the process, the

better service availability will be. Availability should not purely react to service

and component failure. The more events and failures are predicted, pre-empted

and prevented, the higher the level of service availability.

It is cheaper to design the right level of service availability into a service from the

start rather than try and „bolt it on‟ subsequently. Adding resilience into a service

or component is invariably more expensive than designing it in from the start.

Also, once a service gets a name for unreliability, it becomes very difficult to

change the image. Resilience is a key consideration if ITSCM, and this should

be considered at the same time.

The scope of Availability Management covers the design, implementation,

measurement and management of IT service and infrastructure availability.

The Availability Management process has two key elements:

1. Reactive activities: the reactive aspect of Availability Management involves the

monitoring, measuring, analysis and management of all events, incidents and

problems involving unavailability. These activities are principally involved with

within operational roles.

2. Proactive activities: the proactive activities of Availability Management involve

the proactive planning, design and improvement of availability. These activities

are principally involved within design and planning roles.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

164

The Availability Management process diagram

18.8.1 Availability Management and SaaS

When somebody purchases SaaS services, there is the unwritten expectation that the

software will be available 24x7. Most SaaS organizations don‟t proactively market or

communicate realistic availability targets or achievements.

Use this process for the clarification of definitions, terminology and understanding.

Make sure everybody is „on the same page‟ when it comes to Availability Management.

Where does a business‟ accountability stop, and where does the ISP take over? With

SaaS a business is always at the mercy of an Internet connection... in some countries

this is very reliable, in others it is not!

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

165

As discussed with Information Security Management, the security policies are within

the process of Availability Management. This is when security boundaries and limits are

created. How can ID/password policies be implemented in such a way that customers

feel that a business is doing the right thing?

What redundancy policies are in place? Especially when dealing with a virtualization

model, fail-over systems may need to be considered.

It is never acceptable to lose a customer‟s data, and this scenario needs to be covered

in your SLAs or OLAs that are in place to safeguard agreements and promises made to

customers.

The required reliability and resilience of a business‟ technical infrastructure must be

considered, as well as the quality of the internal (maintenance) processes and

qualifications / skill levels of IT staff members.

All of these components work towards high levels of availability in a complex SaaS

environment.

18.8.2 Availability Management and Web Applications

Availability Management is concerned with the delivery of the highest level of systems

availability at a justifiable cost. In particular, the process attempts to ensure that an IT

component performs at a specific level over a period of time as agreed between

customer and supplier. To maintain availability, the IT department needs to monitor the

following points:

Reliability – how well does the component function under normal and described

conditions?

Maintainability – how well can the component remain in or be restored to its

operational state?

Serviceability – how well can a component be maintained by an external supplier

under a third party contract?

Resilience – how well can the component resist operational failure?

Security – how well can the component maintain confidentiality, integrity, and

availability?

19 Using the Web to Promote ITIL

The technology of the web is very conducive for implementing and monitoring the

disciplines of ITIL. Three types of applications can be built to support the processes:

Monitoring

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

166

Workflow

Documentation Libraries.

ITIL is a standard which manages the IT environment effectively and efficiently. Being

evaluated for ITIL compliance adds a certain assurance that the disciplines will be

properly implemented. As a standard, some guarantees are in place. The first

guarantee is that data is available to show how the different aspects of the IT solution

are working to meet the service requirements placed on them. The second guarantee

is that the processes and its components are clearly defined, including roles and

responsibilities and cross process relationships. The third guarantee is that the

required databases are in place to support the IT service. These guarantees all

mention the existence of the components that make up the requirement framework for

effective ITIL implementation, but their existence does not guarantee that the

components are being used effectively.

Fortunately, with these guarantees in place, the foundation for creating a web

application around ITIL is also in place. The first type of application possible is

monitoring the services required by the customer. One of the web technologies for

applications is the mashup. With this technology, three possibilities can be fulfilled: the

ability to monitor two or more distinct functions in parallel; the ability to combine the

data for two or more distinct functions together to do trend analysis, for instance,

combining measurements for availability and capacity to identify the relationship

between the two; and the ability to combine the data of two of more distinct functions in

a cause and effect relationship, for instance the number of changes that are the result

of problems.

The advantage of the mashup for monitoring the IT infrastructure lies in the user

interface. In mashups, the user defines what they want to see in the interface and,

ultimately, the interface can be different for each user. This promotes supporting the

diverse responsibilities in business. For instance, a system administrator will want to

see more detail in what they are monitoring than the overview statistics appropriate to

an executive manager. It the same comparison, the system administrator is wants to

map data to ensure that the operation is intact, while the executive is looking to map

the data to finances. For each user, how the information is interpreted is just as

important as having the information available and the ability to build their own interface

only serves to have the data interpreted in the desire way.

Additionally, if the mashup component that allows the data to be interpreted in the

desired way does not exist, the development of such a component is made simpler

using web technologies. Even if the system from which the data is retrieved is a

traditional non-web implementation, the technologies of the web hold the keys for

tapping into these applications and retrieving the data necessary for monitoring. And

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

167

the web technologies do not stop there. If they can be used to retrieve information,

they can also be used to enter information into the system. One of the problems faced

in any IT organization is the diverse range of applications in place to ensure that

operations are maintained.

These applications are diverse in the languages they use, their handling of data, and

their functional purposes. Previously, to have two or more of these applications

communicating with each other required a bridge that was extensively developed and

acted as a third application. Web development can create this bridge as an add-on to

both applications or even all applications used within the environment. In creating

these “bridges,” the possibility of creating applications that contribute to workflow

management is realized.

Workflow management specifically focuses on moving work through several processes

and in doing so identifying bottlenecks for work and improvements to the support

infrastructure or processes. For IT support, workflow opportunities are everywhere.

For instance, when an incident happens, a “ticket” is created and routed to the first

level of support. If a resolution cannot be applied at this level, the ticket is routed to the

next level of support. This routing usually involves moving the ticket from one support

team's queue to the next. Depending on the context of the incident and its severity,

further notification may be required. Furthermore, if the incident is caused by a known

error, the resolution may be attached to the ticket for purposes of understanding how

often a particular resolution is utilized.

If the incident is not caused by a known error, then the resolution or workaround will be

placed in the ticket when it is found, allowing the database holding all known errors and

resolutions to be populated with the new information. But the workflow doesn't

necessarily end at this point. If an incident is unresolved, it is now taken over by the

problem management process where the problem is diagnosed and a resolution sought

out. Once a resolution is found, the change management process is now initiated to

implement the resolution accordingly. Since all changes are essentially changes to one

or more configuration items, the configuration management process is not evoked to

complete the change. The work can continue depending on the impact of the problem

and resolution, but this short description will suffice. Essentially, a single ticket can

move through the incident management, the problem management, the change

management, and the configuration processes. Unfortunately since the processes are

different, the likelihood exists that the databases supporting the processes are different

and may not communicate between each other. Using web technologies, a ticket can

be created, and based on sufficient checkpoints, be automatically routed through the

processes, updating the appropriate databases along the way.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

168

Every ticket has specific information that can act as triggers for how it should be

handled. Severity, which describes the potential impact on the business from critical to

minor, will require that ticket be handled as a major event, even a disaster, if the

severity is considered critical. The normal processes for handling incidents are not

bypassed, but additional processes are invoked that run parallel. In a critical disruption

of service, the technical support teams are still attempting to resolve the incident and

potential problem and, at the same time, business management is attempting to

minimize the impact of the disruption. Tracking the activities of both groups may be

necessary for ensuring that everything is communicated and the results can be

analyzed at a later time. Web applications have already shown some success in build

components that allow successful collaboration.

Finally, a number of databases exist within the IT support environment with the goal of

supporting the processes. Each of these databases serves a specific purpose and is

typically assigned to a specific process. For instance, the Configuration Management

Database is assigned to the process called configuration management. Change

records are housed in a change management database that is assigned to Change

Management. Known errors are stored in their own database and assign to both the

incident management and problem management processes. These databases usually

consist of information that is similar and as such have relationships that are not usually

exploited by a service organization. Web application development can create a

solution that can assist in establishing their relationships, retrieving the information from

several databases to compile into a single record and updating the databases when

new information is created.

However, simply connecting databases and displaying the results is not the only

advantage to using the web for documentation purposes. First of all, the web has

always been a documentation-centric technology, using hyperlinks as a way to

holistically apply relationships inherent with information. With the advent of Web 2.0

technologies, the area of document management is advanced with blogs and wikis. A

combination of the two provides a method to distribute technical support information

through subscriptions and encourage obtaining technical information from every person

supporting IT. What if change management was essentially a blog with forms and the

reviewers and approvers could cater their subscriptions to allow only different types of

changes? What if the Known Error database was a wiki that fed the problem

management database and vice versa; so that resolutions would be readily available

depending on the problem description or the wiki could be updated and refined where

no resolution was found?

The benefits attributed to any web application are present with applications designed to

promote ITIL. Tapping into the collective intelligence of the entire technical support

group provides the foundation for collaboration during and in between incidents. In

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

169

traditional support architectures, the different levels of support are distinct and often

uncommunicative. This is typically due to the skill set difference and the organization

of the department. Tapping into the collective intelligence provides an opportunity to

not only communicate information but seek out information when knowledge is not

known or published. The objective is to create a richer set of support knowledge to

understand the application and the customer better.

19.1 IT Service Continuity Management (ITSCM)

Objective: The goal of ITSCM is to support the overall Business Continuity

Management process by ensuring that the required IT technical and service facilities

(including computer systems, networks, applications, data repositories,

telecommunications, environment, technical support and Service Desk) can be

resumed within required, and agreed, business timescales.

A lifecycle approach should be adopted to the setting up and operation of an ITSCM

process. ITSCM is a cyclic process through the lifecycle to ensure that once service

continuity and recovery plans have been developed they are kept aligned with the

Business Continuity Plans (BCPs) and business priorities.

Initiation and requirements stages are principally BCM activities. ITSCM should only be

involved in these stages to support the BCM activities and to understand the

relationship between the business processes and the impacts caused on them by loss

of IT service. As a result of these initial BIA and Risk Analysis activities, BCM should

produce a Business Continuity Strategy, and the first real ITSCM task is to produce an

ITSCM strategy that underpins the BCM strategy and its needs.

The Business Continuity Strategy should principally focus on business processes and

associated issues (e.g. business process continuity, staff continuity, buildings

continuity). Once the Business Continuity Strategy has been produced, and the role

that IT services has to provide within the strategy has been determined, an ITSCM

strategy can be produced that supports and enables the Business Continuity Strategy.

This ensures that cost-effective decisions can be made, considering all the „resources‟

to deliver a business process. Failure to do this tends to encourage ITSCM options that

are faster, more elaborate and expensive than are actually needed.

The activities to be considered during initiation depend on the extent to which continuity

facilities have been applied within the organization. Some parts of the business may

have established individual Business Continuity Plans based around manual work-

arounds, and IT may have developed continuity plans for systems perceived to be

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

170

critical. This is a good input to the process. However, effective ITSCM depends on

supporting critical business functions. The only way of implementing effective ITSCM is

through the identification of critical business processes and the analysis and

coordination of the required technology and supporting IT services.

The situation may be even more complicated in outsourcing situations where an ITSCM

process within an external service provider or outsourcer organization has to meet the

needs not only of the customer‟s BCM process and strategy, but also of the

outsourcer‟s own BCM process and strategy. These needs may be in conflict of with

one another, or may conflict with the BCM needs of one of the other outsourcing

organization‟s customers.

However, in many organizations BCM is absent or has very little focus, and often

ITSCM is required to fulfill many of the requirements and activities of BCM. The rest of

this section has assumed that ITSCM has had to perform many of the activities

required by BCM. Where a BCM process is established with Business Continuity

Strategies and Plans in place, these documents should provide the focus and drive for

establishing ITSCM.

IT Service Management diagram

19.1.1 IT Service Continuity Management and SaaS

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

171

In theory everybody understands that there are situations that are unusual and out of a

business‟ control. However, when these situations take place, your customers are not

as understanding as they could be. And that‟s their right. They subscribe to a business‟

software services because they trust that it‟s doing the right things. They don‟t want to

carry the cost and risk of managing & operating the software in-house – that‟s why they

pay the premium for the service. But this doesn‟t mean that they will accept everything!

SaaS clients are usually locked into a „pay as you go‟ contract or another relatively

short-term contract. So when the service is below par, it is easy for them to go

elsewhere.

This needs to be considered when designing and implementing the ITSCM processes,

plans and policies.

And don‟t forget that communication steps need to be built into the process. The client

is often the first to find out that something is wrong, so they must be given the courtesy

of proactive communication to let them know what is happening and how long it is

going to repair. The only way this can be achieved is by testing the procedures on a

regular basis.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

172

20 Applying Cloud Computing to Project

Management

20.1 Benefiting from Cloud Computing

The benefits of cloud computing include quicker implementations and lower costs while

providing greater scalability, adaptability, and reliability to the environment. Especially

in terms of web applications, a solution can be available at any time, in any location, by

any person. As use of the application increases or decreases, the cloud solution

adjusts accordingly.

The previous pages attempted to show the benefits of project management applied to

cloud computing. The following pages will explore the benefits of cloud computing to

project management. Some of the ideas explored here have solutions found within the

cloud environment, especially in Independent Software Environments (IDEs) used for

software development. Cloud computing solutions exploit a number of distinct

technologies.

Virtualization is a technique used to create an abstract rendering of a physical

component. For instance, storage volumes can be virtualized. With a virtual

volume, the storage capacity can be increased, partitioned without partitioning

the physical drive, or merging the volume with other storage devices to create a

single large volume. Virtualization allows for increased scalability, reliability, and

portability to occur.

Web 2.0 is a perspective change for how to use the web. Often referred to as a

technology, Web 2.0 provides a number of options that make web applications

just as rich as desktop applications.

Open source is a concept supporting total collaboration between developer and

user. Often attributed to application development, the concept is also applicable

to any number of solutions where user knowledge is utilized extensively to

generate the product that the user is concurrently using. The idea ultimately

encourages development in production.

Seven benefits are available to project management when adapting cloud computing

capabilities:

The ability to interlink distinct components together as a complete whole. For

instance, linking activity with cost, time, risks, quality, and resources. Many

project management solutions already do this to some extent; however, with

cloud computing the options can be expanded to include historical information,

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

173

feedback, and particular notes.

To support communication specifically with stakeholders requiring performance

reports, the use of subscription services allow distribution of information to have

greater potential and customizable by the stakeholders themselves.

Many aspects of project management can be present at any given time and with

an application, the possibility of an interface that allows each aspect to deliver is

highly probable with web applications.

One of the risks to project management is ensuring that all the right players are

involved in the project to ensure that everything that needs to be done on the

project has been planned. With cloud computing, participation by all parties is

possible.

The core tenet of cloud computing is the ability to focus on components as parts

of the whole allowing an individual component to be added, removed, expanded,

and reused without impact the whole.

The capabilities of the web allow portability. First of all, a web application can be

accessed anywhere, at anytime, by anyone with only a browser and a

connection to the Internet. Second, with the business logic of the application on

an Internet server, nothing is lost between multiple users.

A main drive of web applications and cloud computing is improved, richer user

experience. Improving the experience of individuals on a project will encourage

communication, productivity, and morale.

20.2 The Ease of Linking (Hyperlinks)

Looking at the construction of the web, one will see a series of documents in place,

basically organized through the URL hierarchy, and with some programming scripts to

provide some interest. Though all of these components make up an effective website

and web application, the one construct that makes the web, the web has always been

the ability to hyperlink. Hyperlinks are connections from an original page to a source

document. By clinking on a hyperlink, a user can be moved from one page to another.

By hovering over the link, information can be made available to the user. Through

searches, multiple hyperlinks can be generated on a single page based on relevancy

for users to peruse.

Hyperlinks can be used to transform basic pieces of data into rich volumes of

information by creating relationships. A database is usually found in the back end of an

application that holds data and created relationships, such as a person's name and

their job position. Using the web and hyperlinks, relationships can be expanded to

incorporate multiple databases. So in addition to a name and a job position, the

person's personal profile and the job description for the position can be connected.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

174

This connection can be presented as links in a single page or the full or partial

renderings of the sources can be presented.

There are several perspectives that are prevalent in project management, each with

some level of importance to the users. But the perspectives all rely on the need to

understand the relationships with different pieces of data. Most project management

solutions handle the basic relationships, such as the relationship between activity, cost,

schedule, and resources. Some solutions even provide notes for referencing.

However with hyper linking, any document or parts of a document can be referenced

allowing risks and risk responses. Contractual terms, historical information,

procurement proposals and supplier information, quality requirements and the like can

be linked to a single activity. By having the activity show all related information

pertaining to it, all participants on the project can better understand and manage the

work expected. The greatest aspect of this solution is that the information can exist in

multiple databases and separate locations.

Even connections with existing and past projects can be made. In situations where

similar project are performed, like building a house with similar designs, connections

can be made very easily. Why make these connections? Each constructed building

can have its unique attributes: location, features, options, even contractors can be

different. Using the designs as the starting point, a construction company can identify

and compare the differences between buildings using the same design. The

opportunities available are to assist in understanding requirements, risks, and

unplanned threats to a particular project. For instance by referencing contractors

familiar with the design, a replacement contractor can be found quickly if the original

supplier is unable to do the job.

What is linked and to what extent the linkages are made is left only to the imagination

of the performing organization.

20.3 Subscribing to Success (Blogging)

Imagine compiling information into the next status report, categorizing it and posting it

out to the web. Without any extra effort, a notification of the report is sent to every

stakeholder interested in the project. Within minutes, responses to the report start to

show up in the next day, all the responses are compiled for the project team meeting to

review and answer. The situation just provided is just one of the ways blogs can assist

in project management. Blogs utilize a subscription web service to ensure that people,

who want to be informed, are. Used by many columnists, professional and amateur, on

the web, a blog is a mechanism used to post information; with logic to identify who is

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

175

interested in the information for a notice to be sent. The identity of interested parties

was provided by the people themselves when they “subscribed” to the blog. Since a

blog is basically a web page, the format of the report can include anything that a typical

web page can include.

Imagine again that the project is going along nicely. Coming into work early, the

computer is turned on, and waiting for you is a list of all the project activities that are

currently being performed, the ones that were completed the previous day, and the

ones that are late are highlighted. As a project manager, the list includes all the

activities of the project. As a project team member, the list includes only those which

are assigned to them or have a dependency on. The mechanism used to compile this

information from a project plan is the same used by blogs.

At the heart of the blogging feature is the RSS technology. Really Simple Syndication

(RSS) allow a person to subscribe to a web page so that when it changes, they are

notified. The technology is not attached to the webpage though, but to the link between

the user and the web page. A RSS feed allows these links to exist. Aside from

blogging, the RSS technology has made another significant contribution: permalinks,

or permanent links. With the permalink feature, users can link to other user‟s websites,

link to individual comments on a page, use “trackbacks” to other links to the page by

other others, or respond to those other links, thus creating a two-way link. In project

management, permalinks can provided a variety of associations between items. For

instance, dependencies within a project can use permalinks to make two way

associations possible, so that the project team can identify the activities and their

dependencies, both dependent upon as well as depended for.

Hyperlinks provided a way to show one way relationships between two items. RSS has

allowed two way associations to be made. The use of RSS in blogging solutions has

provided a new platform for gaining information within business. For project

management, it‟s a simple way of keeping stakeholders informed of what is going on

with the project.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

176

20.4 Interfacing with the Project (Mashups)

During project management, the number of items to be monitored and controlled is

considerable. For the project manager, the concerns include:

Is the scope of the project intact? What are the current issues impacting scope?

Are we on schedule? What's late? What is about to start? What is about to

finish? What issues are impacting the schedule?

Are we in budget? Where are we about to go over? What threats are present

impacting project costs?

Who is supposed to be performing activities on the project today? Are all the

equipment and materials required available? What issues do we have against

resources?

What is the next milestone? How close are we?

When the next meeting? What information needs to be communicated?

What risks are important to monitor today?

This is just a sampling of what the project manager is looking at for the day, or the

week. And they are not alone. Though the focus of the information may be different,

the project team members and the stakeholders are looking at similar information.

Unfortunately, the information that any person is looking at is typically located in

several locations. In order to get the information, the source needs to be retrieved and

scanned to find the information.

Using a project management engine as a web application, the information from these

multiple sources can be retrieved, compiled, and presented to the user in a single

interface. The technique used to make this possible is commonly referred to as

“mashups.” They are web applications designed to allow the user to customize their

web interface to allow multiple sources of information to be presented at the same time.

With the ability to customize the interface, the user can determine what information

needs to be displayed at any given time. Each user could have a different interface to

the project, one specifically designed by them to meet their information concerns.

To allow mashups to work, the application developer simply needs to link the source of

the information to the application. Some translation may be required to build

relationships and associations, but once the information is readable and the criteria is

set for how it is read it is ready. At that point, the source becomes a component in the

list of components available for the user, like a catalogue. The developer can also

create relationships between multiple sets of data; for instance, mapping the project

plans to the risk responses to change requests. Each piece of data is found in different

sources, but is combined to show in the user's interface of the project.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

177

20.5 Everyone is a Project Manager (Open Source)

One of the constraints of the tools used for project management is that they are built for

use by project managers. Though nothing is wrong in this, it does alienate other

people who are not familiar with project management needs and concerns. In some

cases, these people are simply involved to provide resources to the project.

Unfortunately, they are being asked to use these tools. And even with project

managers, one characteristic starts coming into play: the behaviors of the individual

start to change to accommodate the tool. This characteristic always becomes a

problem. Extreme adversity towards changing behaviors will result in the tool not being

used at all. Modest adversity often leads to not using it to its fullest capabilities or

incorrectly.

Though the initial focus is on a project management tool, the same characteristic can

be found inside a project. Many projects claim to fail because of lack of teamwork,

communication, and understanding. Though these reasons are valid, the more likely

source of failed projects is forced behavior changes. When an individual or group is

forced to behave contrary to their nature or experience, resistance starts to appear. If

the resistance is coming from one or two individuals on a project because they are new

to project management, concerns with project failure will not come up, though a risk

may be present. When the entire team are being asked to change their behavior, the

probability of failure increases.

An easy solution to this problem is readily available: encouraged participation in every

aspect of the project and the project management tool. The philosophy behind this

solution is “open sourcing” the project or tool. How is this done? Starting with the

project, it means making the project plan a truly living project. In many project

management situations, the individual contributions to the project plan are made and

compiled by the project manager. The organization of the project plan is completed by

the project manager and reviewed with the project team during a meeting when the

plan is distributed. Collaboration is controlled and input to the plan before, during, and

after. This is the traditional method of project planning. However, what if the project

plan is located in a central location that everyone updates? As people update,

feedback is provided on specific entries detailing requirements, dependencies, risks, or

questions. The critical components of the plan are quickly identified and agreed upon

by the team. The organization of the plan may be directed by the project manager, but

everyone has a say in its construction. And when the plan is complete, the

collaboration continues with change controls in place. Eventually, the project plan will

be complete and have a richer quality to them than available through traditional means.

And the trend of open sources has shown that the work is done in far less time than the

traditional method because the collaborative component has improved.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

178

The same method can be applied to the project management tool. By allowing users to

input their needs into the project management tool, eventually a tool is available for use

by all users, not just project managers. The core of the tool or the project does not

change, but the behavior changes to match that of the project management team.

Such changes to behavior characteristics within an application required extensive

budgets to build and maintain customized applications, some of which were never fully

used by the users. In the cloud, the application is developed as it‟s being used as and

at a far less investment than traditionally required.

The underlining theme behind open sourcing is collaboration, at any time, for anything.

The theme continues during project execution. Traditionally, when a problem arises

during the performance of an activity, the performing party notifies the project manager

and the two may attempt to find a resolution. Other team members may get involved at

the request of the performing party or the project manager, but the group looking at the

problem is still restricted. In a collaborative environment, everyone has the opportunity

to be involved. In most cases, the problem will be resolved faster with a better, more

creative solution and in project management; the risks involved are minimized to the

greatest extent. Some people may claim that the old adage “too many cooks in the

kitchen...” but the truth is, in the largest, most prestigious kitchens of the world, there

are always more than one cook.

20.6 Treating the Project as Parts, not the Whole (Reuse)

With mashups, different components could be used to create a user interface. The

constructs of these components had to be designed and developed, but once done

could be used by anyone. Variables set in the components could be changed by the

user to allow for further focus on the information retrieved. With blogs and other RSS

feeds, users can identify the parts of the project that they want to be regularly informed.

The number of feeds available may reach the hundreds, but the user only wants one or

two that suit their needs. The concept of reusing predefined components is prevalent

in web design and cloud computing. It provides the development of a particular product

to be completed much quicker, at far less cost, and fewer risks.

Especially for organizations that perform projects of a similar nature repeatedly, such

as building a house, or application, or a prototype, the concept of reusing project plans

is an attractive notion. PMBOK even encourages the use of historical information and

templates to create the necessary documentation on a project. But every project is

unique, so some care has to be made to ensure that adoption of historical information

is not made blindly. This does not mean that reuse capabilities cannot be encouraged.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

179

By separating a project into its core deliverables, a project can be split into

components. Each component will have its basic relationships, requirements,

dependencies, and risks defined. These interactions will exist internally to the

components as well as the external interactions identified. By having multiple

components available, a project team can identify the components that are required for

the project and add it. Changes to the component for a specific project can be noted

and used as historical data for the next project without changing the core component.

Thinking of the project as a product, the ability to reuse components provides a

cheaper, quicker product to market than recreation from scratch. By breaking projects

down into reusable components, the technique is now more scalable, flexible, and

reliable than traditional methods.

How does cloud computing support this endeavor? By using links, entire components

can be added to a project plan with the click of a mouse. In minutes, the majority of a

project can be created with all the relationships and pertinent information intact. At this

time, cloud computing solutions allow business applications to be built in a matter of

minutes using components already available. The concept is the same, using the

project as the basis for the application. Referring to the relationships is not restricted to

the relationships between information, and also the processes of project management.

The different components can include the various tools used by project management,

like a change control system, or risk response system, or project monitoring systems,

or performance reporting. Normally these systems are not interrelated. In web

applications, the business logic can stay where it exists, however the presentation layer

can show information, workflow, and indicators to be used actively by the project team

and stakeholders.

20.7 Testing the Limits (Portability)

Portability is a great advantage to any endeavor. Using the web as the basis for

building, monitoring, and executing a project, portability is automatically provided.

Using a browser and a connection to the Internet, a user can access a project from any

location in the world, at any time. In many situations, the performing party is executing

several tasks defined by a project at any given time. Many tasks, especially in

manufacturing and construction, require not being readily accessible to the project plan

to update the situation. So the performing party waits to the end of the day to update

the project plan and any related materials. This is particularly valid when the software

used to update the project plan is sitting on the computer at the office. However if the

performing party had a hand held device able to connect to the Internet like a phone,

they could make an update to the project plan on the spot.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

180

The concept of portability is a simple one. More importantly are the benefits that

appear by using a web-based project management. Many project management

programs are very expensive and providing a license to every member of a project

management team may not be a cost-effective solution. Many project managers have

filled the gap by taking status updates from members and updating the plan

themselves. However, everyone typically has access to a browser allowing them to

update the plan as members of the project team. This potentially reduces the

administrative work performed by the project manager while also significantly reducing

the cost of licensing of the tools. In cloud computing solutions, the usage is typically

monitored and charged, so a company may have several full time project members with

a couple of dozen part time members. Traditionally, everyone had one full license

despite the usage. With a cloud solution, the usage of the members can be added up

and charged, so inactive members would not prove to be an additional cost to license

for the company.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

181

20.8 Final Review Questions

1. Ensuring that cost-justifiable IT capacity in all areas of IT always exists and is

matched to the current and future agreed needs of the business, in a timely

manner is the goal of .

a) ITSCM

b) Financial Management

c) Capacity Management

d) Availability Management

TRUE or FALSE

2. Cloud costs are driven by processors and utilization of disk storage.

3. A Business Impact Analysis is performed during which process?

a) Capacity Management

b) IT Service Continuity Management

c) Service Level Management

d) IT Financial Management

4. Which of the following programming paradigms focuses on the management of

state changes?

a) Functional

b) Object-orient

c) Reflective

d) Imperative

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

182

21 Answers

Introduction Review Questions

ANSWERS

1c, 2T, 3a, 4c

Progress Review Questions

ANSWERS

1a, 2F, 3b, 4d

Final Review Questions

ANSWERS

1c, 2T, 3d, 4d

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

183

22 Certification

22.1 Cloud Computing Certification Pathways

IT professionals need to know a whole lot more about the various ways of delivering

services to the customers and end-users. It is no longer sufficient just to know the

differences between Windows-based or Linux-based architecture. These days, most

services will utilize some form of cloud computing, be it virtualization or SaaS offerings.

So with the change in computing and IT Service Delivery comes a whole new series of

qualifications and certification. The Cloud Computing Certification Scheme has been

created to support the IT Professional who needs to be a „niche generalist‟, especially

in a rapidly changing area like cloud computing.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

184

How does the certification pathway work?

First, you need to create the foundation – The Cloud Computing Foundation

Program focuses on the fundamentals, general knowledge, terminology and BASIC

concepts used in cloud computing. This program earns you 2 points toward your Cloud

Computing Executive Level Certificate.

After this come the Cloud Computing Specialization options. The prerequisite for these

programs is that you have the Cloud Computing Foundation certificate.

We appreciate that you don‟t need to know everything about each area of the IT

organization so this is where the programs become more specialized:

Virtualization

Software as a Service and Web Applications

Platform and Storage Management

Each program in this series earns 3 points towards the Cloud Computing Executive

Certificate.

The next level is „Managing Services in the Cloud‟ and this program is specifically

aimed at Service Managers and IT Service Delivery Managers who wish to add cloud

computing as an option in their organization‟s delivery model. The program is worth 5

points.

How do I achieve my Executive level?

You must have a minimum of 16 points to achieve your executive certification. The

Foundation level, all Specialist level programs and Managing services in the cloud must

be completed in order to gain Executive level certification.

Each course provides preparation for the exam and successful candidates receive a

certificate results sheet.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

185

ITIL® Certification Pathways

There are many pathway options that are available to you once you have acquired your

ITIL® Foundation Certification. Below illustrates the possible pathways that are

available to you. Currently it is intended that the highest certification is the ITIL® V3

Expert, considered to be equal to that of Diploma Status.

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

186

22.2 ISO/IEC 20000 Certification Pathways

ISO/IEC 20000 Standard is becoming a basic requirement for IT Service Providers and

is fast becoming the most recognized symbol of quality regarding IT Service

Management processes. ISO/IEC 20000 programs aim to assist IT professionals to

master and understand the standard and the issues relating to earning actual standard

compliance.

For more information on certification and available programs please visit our website

http://www.artofservice.com.au

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

187

23 SaaS and Web Applications Specialist Exam Tips

Exam Details

20 multiple-choice questions

The correct answer is only one of the four

30 minutes duration

16 out of 20 is a pass

Closed-book

No notes.

Practical Suggestions

Read the question CAREFULLY.

At this level of exam the obvious answer is often the correct answer (if you have

read the question carefully!!).

Beware of being misled by the preliminary text for the question.

If you think there should be another choice that would be the right answer, then

you have to choose the “most right”.

Use strategies such as “What comes first?” or “What doesn’t belong?” to help

with the more difficult questions.

Organizing your Exam

The Art of Service facilitates the SaaS and Web Applications Specialist exam. Please

contact us on +61 (7) 3252 2055 or email mail to: [email protected]

to arrange your examination.

Make sure that you prepare adequately in the lead up to your exam by reviewing your

notes, reading any available material and attempting the sample exams.

We wish you luck in your exam and future cloud computing, SaaS and Web

Applications career!

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

188

24 References

SaaS

http://www.csc.com/mms/saas/en/mcs/mcs1924/index.jsp

http://networks.silicon.com/webwatch/0,39024667,39167326,00.htm

http://sqi-inc.com/ic/Glossary/SaaS#head-

da2efc9170ea2f5cf604fdd5331e00779bab4fb8

http://www.crn.com/software/18831096

http://www.microsoft.com/serviceproviders/saas/default.mspx

http://itmanagement.earthweb.com/entdev/article.php/3729966/The+Top+Five+Vendor

s+Using+SaaS.htm

http://www.deitel.com/ResourceCenters/Web20/SoftwareasaServiceSaaS/Softwareasa

ServiceSaaSGoogleAppsPremier/tabid/1673/Default.aspx

http://www.connectria.com/saas.html

http://www.intrahost.co.uk/saas-hosting.html

http://www.microsoft.com/serviceproviders/saas/services.mspx

http://arstechnica.com/journals/microsoft.ars/2008/02/11/office-live-small-business-

gets-a-revamp-and-loses-price-tag

http://www.microsoft.com/presspass/press/2006/oct06/10-312007OfficeLivePR.mspx

http://msdn.microsoft.com/en-us/architecture/aa699384.aspx

http://ent.smallbusinessnewz.com/2008/1029.html

http://thinkitservices.blogspot.com/2008/10/securing-and-managing-saas-apps.html

http://www.redmonk.com/cote/2007/03/20/saas-it-management/

http://buildingsaas.typepad.com/blog/2006/08/software_suppor.html

http://seekingalpha.com/article/66151-the-complexities-of-selling-saas

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

189

http://searchcio-midmarket.techtarget.com/tip/0,,sid183_gci1318991,00.html#

http://articles.bplans.com/index.php/business-articles/starting-a-business/top-10-tips-to-

know-before-you-buy-software-as-a-service-or-saas/244

http://www.extranetevolution.com/extranet_evolution/2008/10/a-saas-code-of-

conduct.html

http://www.worldtrademag.com/Articles/Software_and_Technology/BNP_GUID_9-5-

2006_A_10000000000000327137

http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=

9042620

http://www.aspnews.com/news/weekly/article.php/3693571

http://www.saasblogs.com/2007/10/16/saas-101-the-drawbacks/

http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=

9117322

http://wsuccess.typepad.com/webinarblog/2006/09/the_problem_wit.html

http://blogs.technet.com/matt_deacon/archive/2007/02/06/2-saas-licensing.aspx

http://msdn.microsoft.com/en-us/library/aa905332.aspx

http://en.wikipedia.org/wiki/Wiki (Various pages)

Web Applications

Group, Butler. Rich Web Applications: the business benefits of Web-enabled

application development. Software World: November 2007.

http://www.entrepreneur.com/tradejournals/article/172560689.html

Winer, Dave. What is a Web Application? March 12, 2000.

http://www.scripting.com/davenet/2000/03/12/whatIsAWebApplication.html

Indiana University Information Technology Services. What is the Internet?

http://kb.iu.edu/data/aasa.html.

O'Reilly, Tim. What is Web 2.0?: Design Patterns and Business Models for the Next

Generation of the Software. September 30, 2005.

http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html?page=1

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

190

Porter, Joshua. UIConf: Web Application Types: Interview, Hub & Spoke, Hybrid.

http://bokardo.com/archives/uiconf-web-application-types/

Perfetti, Christine. Deconstructing Web Applications. August 11, 2005; User Interface

Engineering. http://www.uie.com/articles/deconstructing_web_applications/

Adamson, Chris. What is Java ? March, 08, 2006.

http://www.onjava.com/pub/a/onjava/2006/03/08/what-is-java.html?page=1

Proto. Mashups: Understanding Mashup Building Platforms for Business Applications.

June 2007. www.protosw.com/static/pdf/proto-mashup-whitepaper.pdf

JackBe Corporation. Introduction to Enterprise Mashups. June 2007.

http://www.jackbe.com/downloads/An%20Introduction%20to%20Enterprise%20Mashups.pdf

wiseGeek. What is a Web Application Framework? http://www.wisegeek.com/what-is-a-

web-application-framework.htm

Smith, Michael. What is ColdFusion? http://www.fusionauthority.com/cfintro.cfm

Glover, Andrew. Feeling Groovy: Introducing a new standard language for the Java

platform. http://www-128.ibm.com/developerworks/java/library/j-alj08034.html

Collins, Chris. Adapting ITIL to Distributed Web Applications. December 6, 2007.

http://ccollins.wordpress.com/2007/12/06/adapting-itil-to-distributed-web-applications/

Wily Technology. How to Adapt ITIL to Distributed Web Applications. May 1, 2006.

http://securitypark.bitpipe.com/detail/RES/1154707956_630.html

Wikipedia. Packet Switching. http://en.wikipedia.org/wiki/Packet_switching

Wikipedia. Web Application Framework.

http://en.wikipedia.org/wiki/Web_application_framework

Wikipedia. ARPANET. http://en.wikipedia.org/wiki/ARPANET

Wikipedia. Network Control Program.

http://en.wikipedia.org/wiki/Network_Control_Program

Wikipedia. Space Race. http://en.wikipedia.org/wiki/Space_Race

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

191

Wikipedia. CSNET. http://en.wikipedia.org/wiki/CSNET

Wikipedia. NSFNET. http://en.wikipedia.org/wiki/NSFNET

Wikipedia. CERN. http://en.wikipedia.org/wiki/CERN

Wikipedia. Hypertext. http://en.wikipedia.org/wiki/Hypertext

Wikipedia. World Wide Web. http://en.wikipedia.org/wiki/World_Wide_Web

Wikipedia. Dot-com bubble. http://en.wikipedia.org/wiki/Dot-com_bubble

Wikipedia. Web 2.0. http://en.wikipedia.org/wiki/Web_2.0

Wikipedia. Web Application. http://en.wikipedia.org/wiki/Web_application

Wikipedia. AJAX. http://en.wikipedia.org/wiki/AJAX

Wikipedia. ITIL. http://en.wikipedia.org/wiki/ITIL

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

192

INDEX*

66151-the-complexities-of-selling-saas 186 A access SaaS 85 Accomplish SaaS 58 account 2, 4, 50-1, 72-3, 79, 128, 136 desktop-based 51

accountability 129 Acrobat Connect and Adobe Document Centre Applications 36 ActionScript 110 activities, proactive 160-1 Adapt ITIL to Distributed Web Applications 188 Adapting ITIL to Distributed Web Applications 188 add-ons 14, 53, 73, 113, 136, 165

adManager 7, 54

Adobe 36, 112 Advanced Research Projects Agency (ARPA) 86 Ajax 8, 40-1, 45, 48, 57, 91, 102, 108, 127, 189 Ajax applications 40, 108 Ajax-based web application 50

Ajax engine 108 Ajax paradigm 108 AJAX technologies 102 allocations 35 Amazon 2, 94, 97-8 ANSI 113 answer, correct 185

Apache 21, 23, 95 APIs 105-6, 116 Apple 101-2 applets 102, 105, 115 application code 113, 140

running core 26 application components 136

application data 25-6 other‟s 44 application database 44 application developer 107, 174 application development 85, 170 rapid 118

application engine 107 Application Host 21 application load 112 application servers 22, 83 application service 46 website creation 46 Application Service Providers 21, 27-8, 40

applications 15-16, 21-2, 25, 27-9, 43-5, 47-8, 85, 90-3, 97-108, 111-13, 115-17, 125-6, 163-7, 170-1, 176-7, 188-9 [17]

beta 46-7

building 111 client‟s 27 common 96 customer relations 15

customized 176 default Google Doc 46 demand 40 desktop-based 49

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

193

developing 108 efficient run-time 113

enterprise scale 103 expensive 39

financial 152 graphical 117 highest risk 129 install 17 integrated 22 interview 104 iTunes 102

legacy 100 local backup 25 manages 43 mathematically-based 120 multiple 85, 105 new 114

non-web 91 open source 21

popular 36, 38, 90 presentation 46 resident 85 robust 103 server 86

server-based 125 share 49 spreadsheet 46 subscription-based 55 third 165 traditional 93 traditional client/server 112

web-based interactive 40 web-based mapping 47 word processing 55 word processor 46 Communication 90 applications service 49

ARPA (Advanced Research Projects Agency) 86 ARPAnet 86-7 Art of Service 3, 185 ASP software applications 28 ASP software delivery model 27-8 ASP software services 29 ASP.NET 9, 111

ASP.NET applications 112 ASPs 6, 21, 27-9, 40, 57, 127 aspx 186-7 assemblies 101, 113, 138 assessment 152-4 associations 94-5, 173-4 attributes 122, 128

authorization 151, 153-4 automated process 45, 68 availability 18, 41, 60, 67, 100, 126, 131, 141, 144-5, 155, 161, 163-4

Availability Management 11, 160-3, 179 Availability Management and SaaS 11, 162 Availability Management and Web Applications 11, 163

Availability Management process 160-1, 163 Axentis 6, 36-7, 56 B bandwidth 17-18, 44, 74, 79, 107

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

194

Banking 137 BCM 167-8

BCM activities 167-8 BCM process 168

customer‟s 168 BCPs (Business Continuity Plans) 167 belief 99 benefits 2, 10, 13, 16-17, 25-32, 41-3, 45, 58-61, 77, 79, 96, 125, 136, 140-1, 157, 170 [8] Benefits for Web Applications 125 Benefits of SaaS 30 BENEFITS of SAAS 6

Berners-Lee 89, 94 beta 37, 47 BIA (Business Impact Analysis) 128-9, 179 blogging 8, 11, 50, 96-7, 172-3 blogosphere 96-7 blogs 50, 93, 96-7, 166, 172-3, 176

boards 131-2, 153 board business executive 152

Bowker 98 Brazil 116 bridge 88, 165 browser 4-5, 86, 89, 91-2, 101, 104, 126, 171, 177-8 budget 6, 30-2, 54, 71, 74, 78, 83, 157, 174, 176

bugs 76, 94 building 47, 64, 91, 172, 176-7 business activities 145, 157 everyday 54 business applications 177, 188 based 51 business benefits 187

business can‟t 139 Business Capacity Management 158 business cases 152 business change 136 Business Continuity Management process 167 Business Continuity Plans (BCPs) 167

Business Continuity Strategies and Plans 168 Business Continuity Strategy 167 business core service 53 business culture 130 business disruption 135 business doesn‟t 69, 159 business environment 59

Business Executive Board 153 business faces 64, 83 business functions 168 business goals Improving consistency 136 business hours 67, 156 business hours‟ 67-8 business impact, potential 146

Business Impact Analysis, see BIA business infrastructure 64 business installs software 32

business Internet connection 74 business logic 171, 177 business management 152, 166

executive 132 business models 43, 92-3, 99, 101, 187 traditional 56 traditional based 56 business network 125

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

195

business objectives 132-3 business objects 107

business operations 144 business organization 125

business priorities 145, 167 real-time 145 business process continuity 167 business processes 15, 30, 58, 131-2, 139, 149, 167-8 core 32 business purchases 81 business registers 52

business-related data 61 business-related processes 32, 43, 45, 66 business requirements 158 business risk 149 business sales 85 business sectors 122

business security 131-2 business sites 59, 67

separated 66 business solution 51-2 business success 161 business targets 158 business terms 130

business timescales 167 business website 53 business-wide access credentials 82 businesses 6-7, 17-19, 21-2, 25-7, 29-33, 39-43, 51-4, 56-83, 97-9, 101, 125-6, 128-35, 144-5,

147-9, 156-8, 160-4 [9] changing 157 context of 131

example 76 most 26-7, 61, 76 offline-based 54 save 31 sized 43 small 51-4, 100

unique 56 web-based 56 businesses access 6, 32 businesses headquarters 75 businesses lose 77 businesses peace 76 businesses purchase 81

businesses‟ privacy 61 business‟ 83, 163 business‟ accountability stop 162 business‟s data 26 business‟s work stops 65 bytecodes 114-15

C CAB (Change Advisory Board) 151-3, 156 calendar 50

calendar applications 37, 55-6 calendaring 85, 98 California 36-9

capabilities 102, 142, 145, 147, 171 capacity 85, 106, 117, 146, 157-8, 160, 164, 179 Capacity Management 11, 146, 157, 160, 179 Capacity Management and SaaS 11, 159 Capacity Management and Web Applications 11, 160

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

196

Capacity Management process 157, 160 capacity plan 153, 157

catalogue 2, 174 Categories of SaaS SaaS and Web Applications Specialist 14

centre 93-4, 96 CERN 87-8, 118, 189 certification 12, 181, 184 certification kits 3-4 Certification Pathways 12, 183-4 CFML (ColdFusion Markup Language) 112 Change Advisory Board, see CAB

change authority 151, 153 Change Management 10, 135, 148, 151-2, 154-7, 165-6 Change Management and SaaS 10, 156 Change Management and Web Applications 10, 157 Change Management process 148-50, 156, 165 Change Manager 153-4

Change Models 150, 152, 155 change proposal 151-2

Change Schedule 154 charge 24, 44, 49, 52-3, 62, 72-3, 75 Chris 188 CI, see Configuration Item CIs (configuration items) 149, 155, 157, 165

classification 94, 151-2 clauses 62, 67-8, 71, 73, 82 agreement 67-8 clients 16-20, 27-8, 30-2, 38-9, 42, 44, 54, 56, 62, 70-3, 77-81, 83, 89-90, 129-30, 134, 139 [7] service provider‟s 29 software vendor‟s 41 client‟s 28

client‟s business hours 68 client‟s data 62, 65, 69, 76 CLOS (Common Lisp Object System) 113 cloud 34, 170, 176, 182 cloud computing 3, 6, 11, 34-5, 86, 91, 98, 100, 127, 170-1, 176, 181-2, 185 benefits of 170

cloud computing solutions 177-8 CLR (Common Language Runtime) 111 CMS (Configuration Management System) 135, 143, 149, 151 code 52, 85, 107, 111, 114-15, 117, 120 native 114-15 programming 85, 111 ColdFusion 112-13, 188

ColdFusion Markup Language (CFML) 112 collaboration 66, 90, 95, 166, 175-6 collective intelligence 8, 92, 94-5, 97, 166-7 product of 95 Columbus 92 command 187 commodities 92-3

Common Language Runtime (CLR) 111 Common Lisp 9, 113 Common Lisp Object System (CLOS) 113

communication 86-7, 90, 96, 104, 125, 131, 139-40, 171, 175 communications software service offerings 38 communities 95, 97

companies 6, 13, 15, 20, 36, 38-40, 42-3, 51, 54-6, 66, 86, 90-1, 93-5, 97-9, 101-3, 178 [4] software-related 36 company‟s 128-9 competencies 92-3, 99 competition 38, 97-8

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

197

complementing 25 complexity 100, 136, 148, 152

compliance 37, 132-3, 156 Component Capacity Management 158

components 93, 106, 130, 137-8, 153, 158, 160-1, 163-4, 166, 171, 174-7 components work 144, 163 compromise 25-6, 75 computers 57, 86, 90, 94, 101, 119, 122, 173, 177 personal 102 single 35 computing 34-5, 40, 85, 181

grid 6, 21, 35 impacted business 125 concept 17, 25, 86-7, 89-93, 96, 100, 104, 110-11, 120, 122, 128, 143, 170, 176-8 Conclusion to Web Applications Frameworks 120 conditions 15, 18, 70-2, 75, 77, 81, 97, 108 normal 147

confidentiality 100, 106, 131, 163 Configuration Item (CI) 149, 155, 157, 165

configuration items (CIs) 149, 155, 157, 165 Configuration Management System, see CMS Configuration of applications 107 configurations 64, 107, 143 configure 60, 64, 74

conflict 44, 146, 168 conformities 123 conjunction 48, 135-6, 150 connect 26, 62, 85, 87-8, 102, 112, 125, 177 connections 20, 82, 87-8, 94, 126, 160, 171-2, 177 connectivity, direct 81 consequences 32, 67-8, 141, 154

consider 7-8, 42-3, 58-9, 66, 68-9, 74, 83, 148, 154 constraints, service delivery 141 construction 100-1, 171, 175, 177 consumers 15-16, 18-20 contact 5, 21, 37, 79, 108, 145, 147, 185 contact information 52

contact manager 7, 52, 54, 56 content 23, 47, 92-4, 96, 108, 111-12, 122, 134 content software service offerings 38 context 94, 142, 165 continuous improvement 99-100, 155 contracts 8, 62-3, 67, 71, 74, 76, 81-2, 133, 139 solid Service Level Agreement 77

contributions 93, 96, 98, 173, 175 control 16, 19-20, 34, 74-7, 82-3, 94, 99-102, 110, 112, 116, 126-7, 132-3, 148, 152, 158, 188 business‟ 169 copies‟ 21 Corporate-sponsored web services 100 cost-effective actions 158 costs 27-8, 30, 42, 56, 59-62, 70, 72-3, 75, 78-9, 82, 123, 128, 140, 154, 169-70, 178 [4]

exit 74-5 extra 30, 32 hidden 30, 32, 62, 72-3

countries 87, 116, 162 Creating applications in ColdFusion 112 creation 87, 92-3, 96, 106, 114, 122

creator 119 credits 23, 71-2 CRM (customer relationship management) 21, 38-9, 103 CRM software services 39 CRM software services and CRM 21

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

198

CSNET 87, 188 customer group 54, 144

customer relationship management, see CRM customers 15, 21, 23-4, 38-9, 41-2, 52-4, 56-8, 60-1, 93, 108-9, 135-6, 139-41, 144, 154-6, 161,

163-4 [17] potential 51, 70 customer‟s business operation xf0b7 Effect 153 customizability 26, 60, 74 customize 26, 50, 53, 174 D

DARPA (Defense Advanced Research Projects Agency) 89 data, collected 158 Data, Information, Knowledge, Wisdom (DIKW) 142 data centers 27-8, 33, 43, 58, 62, 65, 69, 134 Data-Entry Language (DEL) 116 data interchange 24, 108

data management 93 data services 70

data types 110, 122 databases 21, 88, 97-8, 106-7, 112, 125, 131, 143, 165-6, 171 multiple 171-2 days, early 85 Deconstructing Web Applications 188

Defense Advanced Research Projects Agency (DARPA) 89 Defense Data Net Network Information Centre 87 definition, technical 104 Definitive Media Library, see DML degree 129-30, 153 DEL (Data-Entry Language) 116 delivery 22-3, 27, 72, 96, 128, 148, 158, 163

tailor service 144 departments 39, 70-1, 83, 126, 163, 167 dependencies 173, 175, 177 deploy 135-6 deployment 10, 19-20, 41, 135-6, 138-9, 155, 161 Deployment Management 134, 139, 154-6

design 47, 100, 104, 108, 115, 117, 122, 133, 147, 161, 172 Design Patterns and Business Models 187 designations 13, 129 desktop applications 92, 125, 170 traditional 91, 104 developers 93, 99, 108, 110, 114-15, 117, 119-20, 125, 170, 174 devices 46, 49, 72, 101-2, 177

handheld 46, 102 mobile 48, 60, 73, 75 multiple 101-2 DIKW (Data, Information, Knowledge, Wisdom) 142 direction, strategic 131 disciplines 140, 163-4 discovery 92

display 91, 110, 122, 124 disruption 147, 166 Distinguishing Web Applications 8, 104

distribute 135-6, 166 distribution 97, 100, 135-6, 139-40, 171 DML (Definitive Media Library) 137-8

Document Manager 7, 52 Document Object Model (DOM) 108 documentation 27-8, 68, 123, 139, 176 documents 46, 52, 94, 97, 104, 107, 122-3, 152, 156-7, 160, 168, 171-2 doesn‟t 65, 169

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

199

DOM (Document Object Model) 108 domain 52

don‟t 14, 74, 139, 169, 182 dot 17

dynamic part 107 E E-Mail Marketing 7, 54 E-Mail Marketing SaaS and Web Applications Specialist 53 eBay 53, 90, 94, 97 eBook 2

ECAB (Emergency CAB) 151, 153 EE (Enterprise Edition) 114 eLearning Programs 5 Emergency CAB (ECAB) 151, 153 employees 39, 52, 56, 58-9, 65, 69, 75, 82-3 emulation 35

end-users 14, 22, 65, 90, 115, 135, 154, 157, 181 engine 108

Enterprise Edition (EE) 114 enterprises 15, 93, 95, 97, 100, 106, 131 ent.smallbusinessnewz.com 186 environment 8, 35, 89, 100, 115, 125, 136, 149, 164-5, 167, 170 live 135-6, 138, 155

operating 32-3 en.wikipedia.org/wiki/Web 188-9 errors, known 137, 144, 147, 165-6 Establishing data 141 Europe 156 evaluation 150-1, 155 Event and Incident Management processes 160

exam 3, 182, 185 experience 8, 91, 102-3, 139, 142, 156, 171, 175 exploit 94-5, 145 eXtensible Business Reporting Language 123 F

failures 131, 144, 161, 167, 175 fee, one-off 15 files 34, 48, 52, 85, 117 Final Review Questions 11-12, 179-80 financial impact 129 Financial Management 10, 85, 128, 130, 179 Financial Management and SaaS 10, 130

Flash 90 Flash application 110 flexibility 18, 20, 26, 41, 61, 86, 100, 114-15, 117, 123 Flickr 90, 95-6 forecasts 157-9 format, digital 85 foundation 122, 124, 164, 166, 182

frameworks 102, 104, 106-8, 110-15, 118-20, 132-4, 188 corporate governance 131 most 106-7, 120

freedom 71, 77, 91 function 29, 32, 43, 52, 104, 106, 111-12, 120, 135, 140 distinct 164

first-class 116-17 functionality 90, 110, 112-13, 116, 145 G games 48-9, 90

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

200

General Markup Language (GML) 122 General User Interfaces (GUIs) 85, 112

Gigabytes of storage capacity 55 Gigabytes of storage space 55

Gmail 7, 14, 37, 45, 55 Gmail accounts 45 Gmail email service 55 Gmail service 55 GML (General Markup Language) 122 Goals and Objectives of SaaS 19 Google 6, 19, 37-8, 40, 43, 45-7, 55-6, 76, 92, 97-9, 102, 118

Google Adwords 42 Google Apps 7, 37, 45-6 Google Apps Premiere 55 Google Calendar application service 46 Google Docs 7, 46 Google Docs and Spreadsheet document collaboration services 56

Google Maps 7, 40, 47-8, 98 Google SaaS and Web Applications Specialist 92

Google Site application 47 Google Sites 7, 46-7, 127 Google Talk SaaS and Web Applications Specialist 45 Google's software model 98 Google‟s 42, 45-7, 55

Google‟s email service 55 Google‟s service 56 Google‟s software service 56 governance, corporate 131-2 government 97, 122-3 GPS service 48 graphics 16, 90, 115, 122, 124

Groovy 9, 114, 188 groups 53, 64, 88, 91, 147-8, 151, 153, 155, 166, 175-6, 187 business process 147 growth 91, 97, 99, 143, 158 guarantees 23, 67, 134, 164 GUIs (General User Interfaces) 85, 112

H hardware 30, 35, 58, 60, 69, 78-80, 88, 115-16, 137, 139 Harvard Business School 93 History of SaaS 17 HISTORY of SAAS 6 host 21, 30, 41, 43, 51, 58, 69, 114-15

host machine 14 Hotmail 14, 37, 48, 50-1, 55 HR (human resources) 39 HR software SaaS solutions 39 hub 104, 187 human resources (HR) 39 hyper texting 87-8

hyperlinks 11, 88, 94, 166, 171, 173 hypertext 88-9, 189

I IM (instant messaging) 37, 48 images 52, 88-9, 161

impacting project costs 174 Imperative SaaS and Web Applications Specialist 179 implementation 40, 59, 93, 110, 113, 140, 154-5, 161 actual 61, 63-4, 110 service management 135

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

201

implementing 59, 64, 74, 99, 145, 153-4, 163, 169 implementing SaaS 59-67, 69-70, 72, 77, 83

Implementing Saas 8 Implementing SaaS 60

Incident Management 10, 144-5, 147, 165-6 Incident Management and SaaS 10, 147 Incident Management and Web Applications 10, 147 Incident Management for SaaS 147 incident management processes 160 Incident Manager 146-7 Incident Models 145-6

incident process 146 normal 146 incidents 138-9, 144-7, 161, 165-6 major 146 Indiana University Information Technology Services 187 individuals 82, 97, 142, 155, 171, 175

industry 98, 100, 122, 129 information 13-14, 36, 44, 51, 54, 86, 88, 93-5, 97-8, 106-8, 131, 140-4, 152, 164-7, 171-4, 176-

7 [10] background 76 compiling 172 configuration 151 controlled 137

customer 52 disseminate 85 example sales 52 extract 104 financial 126 historical 170, 172, 176 invaluable 95

login 82 mapping 48 organization‟s 132 pertinent 177 post 172 product 107

retrieve 91, 165 reusing 142 sharing 87 supplier 172 technical support 166 weather 96 work-related 52

information architecture 141 information exchanges 131 information gathering 156 information management procedures 141 information management system 88 Information Processing Technology Office (IPTO) 86 information provider 101

information security 131-2 information security industry 118 Information Security Management 10, 131, 163

Information Security Management activities 132 Information Security Management and SaaS 10, 134 Information Security Management process 132

Information Security Management SaaS and Web Applications Specialist 145 Information Security Management System, see ISMS Information Security Management Systems 132-3 information security policies 132 Information Security Policy 132

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

202

information security processes 133 information security risks 131

information‟ 131 infrastructure 25, 33, 59-60, 64-6, 69, 78-9, 95, 136, 143, 154, 158, 164

existing 32, 42, 64, 66 physical 78-9 initiation 167 initiator 151-2, 155 innovation 101-2, 115, 125 input 85, 129, 146, 168, 175-6 install 14, 25, 29, 31, 49, 58, 60

installation 30-1, 78, 140 instances 20, 44, 59, 70, 81, 97, 107, 110, 120, 125, 164-6, 170, 172-4 instant messaging (IM) 37, 48 integrity 131, 135, 154, 163 intelligence 8, 94-5 interfaces 55, 87, 104, 111, 117, 136, 149-50, 164, 171, 174

International Standards Organization (ISO) 46, 122, 133 Internet 8, 14, 16-19, 21-2, 25-7, 34, 37, 40, 42-3, 46, 74, 85-92, 96-7, 99-102, 123-6, 177 [8]

Internet access, single day 75 Internet and World Wide Web 125 Internet applications 97, 110 Internet-based services 18 Internet companies 19, 94-5, 99

Internet connection 17, 34, 75, 162 dedicated 74-5 Internet Explorer 5, 112 Internet SaaS and Web Applications Specialist 19 Internet Service Provider (ISPs) 74, 162 Internet speeds 17-19, 48-9 Internet users 88

introduction 37, 85, 87-90, 94, 102, 108, 123 Introduction Web Application 106 Introduction Web Application Framework 8 investments 72, 98, 130 iPhone 46 IPTO (Information Processing Technology Office) 86

ISM 131 ISMS (Information Security Management System) 132-3 ISO (International Standards Organization) 46, 122, 133 ISO/IEC 12, 184 ISPs (Internet Service Provider) 74, 162 IT SERVICE CONTINUITY MANAGEMENT, see ITSCM ITIL 11-12, 163-4, 166, 183, 189

ITSCM (IT SERVICE CONTINUITY MANAGEMENT) 11, 161, 167-8, 179 ITSCM processes 167-9 ITSCM strategy 167 iTunes 90, 97, 102 J Java 9, 23, 102, 113-16, 120, 188

Java applications 115 Java-based application 48 Java bytecode 115

Java-compatible applications Providing 114 Java EE application 113 Java platform 114, 188

Java Runtime Environment (JRE) 115 Java Virtual Machine, see JVM JavaScript 48, 57, 90, 102, 108, 116 JavaScript Object Notation (JSON) 108 job position 171

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

203

JRE (Java Runtime Environment) 115 JSON (JavaScript Object Notation) 108

judgments 142-3 JVM (Java Virtual Machine) 114-16

K keywords 93, 95, 118 knowledge 34, 95, 135, 141-4, 158, 167, 182 Knowledge Management 10, 140, 142, 144, 156 Knowledge Management and SaaS 10, 144

L language 21, 24, 88, 110, 114-19, 122-3, 165 laptops 59-60, 75, 101 leverage customer self-service 93 liability 13 licenses 15-16, 30, 70, 81, 178

licensing agreements 81-2 Lichleder 86

lightweight 8, 92, 98, 100, 116-17 limitations 47, 93, 140 links 2, 5, 51, 73, 87-9, 94, 96, 171, 173-4, 177 permanent 96, 173 return 96

Linux 21, 23, 95 Lisp 113, 117, 119 list 53, 104, 173-4 location 36-9, 98, 105, 125-6, 141, 170, 172, 174-5, 177 log-on 51 Lua 9, 116

M machines 17, 20-1, 25, 30-1, 42, 46, 69, 80, 82, 85, 125 maintenance 65, 106, 130, 138, 141, 157, 163 Managed Service Provider 22, 24 management 19, 22, 41, 76, 129-32, 138, 141, 146, 152-3, 155, 158, 161, 170 customer relationship 21, 38-9

executive 131-3 workflow 165 management strains 19-20 Managing Services 182 mapping facilities 107 MapQuest 90, 97-8 market 18, 53-4, 85, 91, 94-5, 97-8, 100, 103, 115, 162, 177

markup languages 9-10, 24, 122, 124 extensible 23-4, 123 mashups 11, 98, 105, 164, 174, 176, 188 Massachusetts Institute of Technology (MIT) 89 matter 39, 63-4, 66-7, 91, 93, 99, 130, 177 mechanism 88, 97, 107, 172-3 media 94-5, 98

meeting 63, 65, 136, 174-5 service level management review 156 Megabytes 55

members 116, 156, 178 Microsoft 6, 14, 17, 19, 37-8, 40, 43, 48-53, 55-6, 76, 92, 97, 99, 102, 111-12, 127 Microsoft Office Live Essentials 55

Microsoft‟s 23, 48, 50-1, 53, 55 Microsoft‟s core software services 48 Microsoft‟s instant messaging software 49 Microsoft‟s Office Live Essentials 56 Microsoft‟s premiere instant messaging application 48

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

204

Microsoft‟s service 56 migrating 7, 58

migration 7-8, 58, 60 millennium 17-18, 88

Minimal disruption of services Reduction 157 MIT (Massachusetts Institute of Technology) 89 Mobile 48 mobile phone users 46 models 24, 41, 56, 94, 99, 119, 130, 146, 158 hosted SaaS application delivery 58 pay-as-you-go payment 20, 70-1

product-based delivery 42 product-based software 43 service-based delivery 42 service-based software 43 service-orientated 41 subscription-based 17-19, 21

modes 111-12 Monday morning 139

money 16, 18-20, 28, 30-1, 74 save businesses 30 monitor 44, 54, 80-2, 132, 163-4, 174 monitoring 7, 44, 81, 160-1, 163-4, 177 Mosaic 89

Mosaic web browser 89-90 Most applications 85, 115 Most desktop-based applications 54 Most SaaS 42, 44-5, 60, 62, 71, 78 Most SaaS organizations don‟t 162 movies 94, 102 MSN messenger 48

older versions of 49 MSP 22, 24 mspx 38, 186 multiple computers, role of 35 multiple users 20, 30, 41, 43-5, 70, 80, 85-6, 88, 104, 171 multiple users accessing 44

N name, domain 51-2, 55, 88, 97 National Centre for Supercomputing Applications 89 National Science Foundation 87 NCP (Network Control Program) 87, 188 Net-Native 22

Net-Native software applications 22 Netflix 102 Netscape 90, 92, 102 NetSuite 17, 38, 56 network connections 79, 81 Network Control Program (NCP) 87, 188 networks 40, 43, 80-1, 86-8, 126, 149, 167

hundred 87 traditional 125-6 New Success for Web Applications in AJAX 108

New World 92 newsletter 54 NNTP 96

nodes 86-7, 89 non-SaaS 79 notification 94, 96, 165, 172 NSFNET 87, 189

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

205

O objectives 20, 59, 63, 131-2, 135, 156, 160

Objectives of SaaS 19 OBJECTIVES of SAAS 6

objects 98, 110, 113-14, 118 OD, see On demand Office Live Business 54 offline 18, 22, 25, 49, 90, 123 offline messaging 48-9 On demand (OD) 21-2, 40-1, 43 On-Premise Software 22

online 2, 36, 38, 42, 49, 55-6, 90 business activities 51 customer information 52 popular desktop applications 36 popular software applications 36 single location 52

users connect 26 open source software products 95

operating systems 21, 48, 51, 56, 58, 69, 92, 101, 104, 115, 117, 119 operations 99, 101, 148, 161, 164-5, 167 organizations 35, 40, 52, 56, 64-5, 67, 76, 128, 131-5, 140, 142-3, 145-9, 155, 161, 167, 175-6

[2] organization's service costs 136

organization‟s customers 128 outsourcing 168 outsource 27, 29 ownership 15 Ownership of information 97 ownership SaaS 97 owning 93, 98

P packets 86 pages 4, 47, 63, 88, 90-1, 94, 96-7, 104, 106-7, 110-12, 123, 170-1, 173, 187-8 master 111 single 171

participation 91, 93, 99, 171 particular software application 16, 29, 32, 41, 43, 61, 70, 81 parties 19, 97, 141, 171-2 partners 95, 104, 131, 133 party, performing 176-7 Pay-Per-Click (PPC) 42 paying 15, 27, 31, 42, 69-72, 75, 77

payment options 71 monthly 71 performance 8, 39, 44, 67, 72, 80-1, 107, 111, 115, 158, 160, 176-7 performance levels 80-1 performance SaaS 170 Perl 9, 57, 95, 114, 117-20 permalinks 96, 173

permission 13, 15, 47 person 13, 82, 146, 153, 166, 170-1, 173-4 personal diaries 96

perspectives 18, 44, 90, 148, 172 phone calls 49, 139 photos 50, 96

PHP 9, 95, 112, 117-18 phrase 22, 67, 101 pioneer 93, 95, 104 piracy 16, 19 pitfalls 70, 73-4

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

206

Planning SaaS and Web Applications Specialist 149 plans 36, 60, 64, 132, 157-8, 160, 168-9, 175, 178

platform 23, 39, 86, 90, 92-3, 101, 104, 106, 114-15, 117, 123, 125, 140, 173 platform-as-a-service 39

platform-related bottlenecks 80 policies 69, 76, 132-3, 150, 169 policy , information classification 133 POP3 email application 55 Popular web-based email service providers 14 popularity 55, 95, 108, 114, 120, 123 portability 11, 115, 170-1, 177-8

power 35, 65, 77, 86, 93, 97, 100, 110 PPC (Pay-Per-Click) 42 prediction 158 presentations 46, 91, 111 presenter 98 price 18-19, 55

pricelist 130 prioritization 128, 151-2

priority 85, 135, 146 problem management 148, 150, 165 problem management processes 165-6 problems 5, 8, 27-8, 32, 42-4, 63-4, 66-7, 69-70, 72, 74-5, 77, 92, 123, 146-8, 164-5, 175-6 [7] common 75, 83

processes 21, 23, 31, 40, 44-5, 58, 61, 65-6, 99, 128, 132-3, 139, 144-7, 155-9, 161-6, 168-9 [9] controlled 148 important 134, 156 straightforward 63, 73 support-related 78 processing power 21, 44, 85 productivity, lost 128-9

products 13, 15, 19, 41, 53-4, 86, 90-1, 94-5, 97-9, 101, 103-4, 107, 115, 118, 130, 176-7 [2] web-based 124 professionals 30, 64-5, 68, 181, 184 profits 16, 18, 28, 130 programmer productivity 118-19 programmers 90, 95, 111-12, 114, 120, 122

programming 110-11, 117, 120 object-oriented 113 programming languages 40, 110, 113-14, 116-17, 119-20, 124 object-oriented 110, 114, 119 programming paradigms 119-20, 179 multiple 118-19 programs 4, 14, 86, 96, 114-16, 159, 182, 184, 188

cost-effective information security 133 Progress Review Questions 10, 12, 127, 180 project 11, 53, 87-9, 170-7 project management 11, 155, 170-7 project management team 176, 178 project management tool 53, 175-6 project manager 7, 11, 53, 173-6, 178

project plan 173-5, 177 project team 173, 175, 177-8 project team members 173-4

Projected Service Outage (PSO) 154 promise 23, 87, 90, 96, 103, 115, 118-19, 163 properties 15, 110-11, 122

proposal 88-9, 119 protection 101, 126, 131-2 protocols 87-8, 96, 100, 105 providers 27, 60, 62, 71, 75, 78, 94 commercial Internet service 87

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

207

external service 168 shift service 66

third party service 26 Prudent business practices 132

PSO (Projected Service Outage) 154 publishers 13, 95, 98 purpose, core 92 purpose programming language 117-18 Python 9, 95, 114, 118, 120 Q

quality 60, 99, 140-1, 144, 163, 170, 175, 184 quality service management 148 R Really Simple Syndication, see RSS reason 18, 27, 56, 62-3, 66, 94, 101, 145, 152, 154

recommendations 95, 157 reduction 16, 144, 160

redundancies 125 rejection 151-2, 154 relationships 82, 102, 154, 164, 166-7, 171-2, 174, 177 release 32, 135-6, 140, 156 Release and Deployment 135-6, 138, 155

Release and Deployment and SaaS 10, 139 Release and Deployment Management 134, 139, 154, 156 Release Management 140 Release Management and Web Applications 10 Release Management and Web Applications SaaS 139 release packages 135, 137 release units 136-7, 139

reliability 100, 106, 123, 125, 170 request information 72 interview type applications 104 research, scientific 85 research criteria 61-2 resilience 161, 163

resistance 175 resolution 146-8, 165-6, 176 resource requirements 152, 154 resource utilization 157-8 resources 7, 20-1, 24, 31, 35-6, 45, 89, 92-3, 104-6, 125, 136-7, 144-6, 153-4, 157-8, 160, 174-5

[4] enterprise information 131

human 39 resources SaaS 104 responsibilities 43, 62, 82-3, 131, 134, 138, 150, 154-5, 164 restore service operations 147 restrictions 106, 120, 122 results 35, 85-6, 89, 92-3, 95, 104-5, 108, 115-17, 124, 128, 136, 145, 155, 157, 164, 166-7 [1] return 69, 108, 111, 152, 154

review 2, 151-2, 155-6, 172 RFC 151-2, 156 risks 37, 73, 77, 129, 131, 148, 150, 152-6, 159-60, 169-72, 174-7

roles 38, 59, 64-5, 82-3, 128, 135, 144, 146, 153, 155, 164, 167 rowboat 100 RSS (Really Simple Syndication) 94, 96, 100-1, 173, 176

RSS technology 96, 173 Ruby 9, 114, 118-20 S Saas 14

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

208

SaaS 14-21, 25-8, 30, 32, 36-8, 40-1, 55, 57-71, 73-8, 81-3, 102, 112, 162, 186 SAAS 6-8, 12

benefits of 30, 75 classifying 94

connection-related bottlenecks 80 eLearn Component 3 email policy 132 en.wikipedia.org/wiki/CSNET 188 formal 88 guide 60 helped 40, 127

hosting space 51 ignored 17 multiple users 30 orientated 15 popular 40 redundant 93

server 108 telephony 90

using 19, 31-2, 39, 75-6 www.artofservice.com.au 184 Monitoring 163 SaaS and Web Application development 128 SaaS and Web Applications 128, 185

SaaS and Web Applications Specialist 4-13, 15-18, 20-7, 31-4, 41-4, 46-50, 68-73, 75-9, 81-4, 98-101, 113-31, 133-8, 141-4, 150-62, 171-8, 180-9 [18]

SaaS application services 58 SaaS applications 59, 61 SaaS applications services 25 SaaS-based applications 25, 71 SaaS-based environment 82

SaaS-based services 83 SaaS-based software delivery model 25-6 SaaS-based software environment 58 SaaS-based software infrastructure 64 SaaS-based software services 73 SaaS changes 14, 32

SaaS clients 169 SaaS companies 36, 38 decent 38 radar‟ 39 SaaS contract 63 SaaS delivery 134 SaaS delivery model 42

Saas Environment 8 SaaS environment 82, 139 SaaS Environment 78 SaaS environment, complex 163 SaaS hosting 41 SAAS HOSTING 7 SaaS hosting companies‟ servers 42

SaaS hosting company 42-3 SaaS implementation model 61 SaaS implementations 14, 61, 64

SaaS infrastructure 58 SaaS market area 37-9, 56 SaaS offerings 64, 181

largest 38 SaaS organizations 21, 159 SaaS performance monitoring purpose 81 SaaS pitfalls 70 SAAS PITFALLS 8

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

209

SaaS platform 43-5 SAAS PLATFORM 7

SaaS provider 28, 139, 156-7 SaaS SaaS and Web Applications Specialist 35, 168

SaaS service provider 26, 28-9, 59-62, 65-74, 76-83 business‟ 65, 68, 73, 78-9 reputable 77 third 66 third choice 66 SaaS service provider changes 77 SaaS service provider charge 61

SaaS service provider faces 77 SaaS service providers charge 79 SaaS service providers clients 72 SaaS service provider‟s 72, 80 SaaS service provider‟s background 65 SaaS service provider‟s business hours 68

SaaS service provider‟s clients 28, 73 SaaS service provider‟s data centers 69, 73-4, 76

SaaS service provider‟s software services 70, 75 SaaS service provider‟s terms 75 SaaS service SaaS and Web Applications Specialist 74 SaaS services 30, 36, 38, 59, 63, 65, 139 purchases 162

SaaS software administrator 64 SaaS software application services 62 SaaS software applications 26, 28-9, 59-61, 80 SaaS software delivery model 26, 28-9 SaaS software developer 64 SaaS software distribution model 43 SaaS software market 66

SaaS software service providers 59-60 SaaS software services 26, 28, 31, 36, 60, 63-71, 73-5, 77-8, 80-1 business match 61 business‟ 82 monitoring off-site 80 new 63-5, 73, 78-9

SaaS software solutions 31, 38, 67 SaaS software vendors 30, 67-8, 72 SaaS software vendor‟s contract 74 SaaS Solution 15 SaaS solutions 15, 17-19, 22, 37, 40, 63-4 complete 75 SaaS subscription rate 82

SaaS tools 39 SaaS vendors 16, 28, 31, 76 SaaS vendor‟s data centre 31 SaaS.htm 186 [email protected] 4 SAGE (Semi Automatic Ground Environment) 86 Salesforce 6, 17, 38-40, 56

San Mateo 38-9 save 16, 20, 31, 71, 83 save money 30-1, 69-70, 83

scalability 91, 125 scale, economies of 27-9 scale web applications 102

scaling 7, 45 schedule 172, 174 Scheme 116, 118-19 scope 135, 143, 149, 153, 161, 174 scripting languages 57, 90, 116-18, 124

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

210

scripts 116 SE (Standard Edition) 114

search engine results 54 search engines 97, 107, 113

searching service Administration 112 security 62, 65, 76, 82, 90, 100, 106, 115, 125-7, 131-4, 139, 146, 153 security activities 131 security applications 22 security controls 106, 132 security policies 132-3, 163 semantics 116, 118-19

Semi Automatic Ground Environment (SAGE) 86 server upgrade 139 servers 31, 43, 58, 69, 83, 85, 88-91, 101, 106, 108, 111-12, 125 Service and Web Applications 4, 182 Service and Web Applications Special Level 4 Service and Web Applications Specialist 3

Service and Web Applications Specialist Level Exam 4 service approach 26

Service Asset 149 Service Asset & Configuration Management 150 Service Asset and Configuration Management 137 service availability 160-1 service availability targets 154

Service Capacity Management 158 Service Catalogue 156 service change 149, 156 service change process 149 service changes, authorized 135 service continuity 156, 167 Service Continuity Management 167

Service Delivery 181 Service Delivery Managers 182 service delivery problems 72 Service Design activities 160 Service Desk 144-5, 147, 167 Service Desk Manager 146

service disruption 154 correct 148 service facilities 167 service group 153 service information 133 Service Knowledge Management System (SKMS) 143 Service Level Agreement 23, 41, 60, 62, 67-8, 71-3, 76, 80, 147

formal 62 revised 154 solid 60 Service Level Agreement document 72-3 Service Level Agreement states 71 Service Level Agreements, see SLAs Service Level Management 179

service lifecycle 140-1 Service Management 143, 145, 168 service management activities 131

service management processes 10, 128, 150, 184 Service Managers 182 Service model 25, 153

service obsolescence Harm 129 service operation practices 153 service operations 135, 145 normal 144 service organization 166

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

211

Service-Orientated Architecture 23 service outage 129

cost of 128 service performance 23, 157, 161

service plans 157 Service Portfolios 149 service provider 23, 28-9, 36, 40, 62, 68, 72-3, 76-8, 82, 106, 125, 140, 143, 148-9, 161, 184 service provider organizations 132 service provider staff 141 service quality 71, 140, 144, 148 service requirements 158, 164

service restoration 147 service software delivery model 26, 58 service solution 48 Service Strategy 157 Service Strategy and Service Portfolio 158 service targets 158, 160

service teams 136 Service Transition processes 136

service usage 158 Service Value 128, 130 service 130 services 13-15, 22-9, 39-41, 47-9, 51, 53-7, 92-4, 99-101, 128, 130-1, 134-6, 139-41, 143-5, 147-

8, 157-61, 166-9 [17]

add-on 51, 53 advertising 42, 54 basic instant messaging 48 business-orientated 15 business‟ software 169 business‟s software 65 call centre operation 39

candidate 129 changed 136, 156, 160 complex 23 core 51-2 critical business 128 customer 144

customer-orientated 15 demanded 98 dominant software delivery 28 e-commerce software 53 end-to-end 158 free 37 hosting multi-tenant software 44

hosting software 43 ideal 56 impacted 144 list of 129 live 136, 154 maintaining software 32 management software 39

marketing 39 messaging 22 monitor off-site software 80

multiple 153 multiple-tenant software 30 network-based 22

new software 32, 59, 64, 69, 79-80 online calendar 46 operational 158, 160 orientated 15 outdated Microsoft Hotmail web-email 37

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

212

particular software 20, 44, 59, 61, 82 popular software 48

product management 15 production 135

remote 25 retired 149 right software 64 sales 39 single sign-on 51 single software 43-4 social networking 50

software application 25, 60 standalone 54 subscription 171 subscription-based 37 technology-enabled 34 telephony 22

tune software 64 updating software 32

web-based 51-3 web-based instant messaging software 49 web-based software 54-5 webpage creation 47 Marketing software 42

Software 42 services SaaS 140 services support 161 services Reduction 157 services‟ 34 service‟ 34 set 14, 23, 27-9, 37, 47, 50, 55-6, 60, 79, 82-3, 85, 89, 93, 111, 130-2, 142 [5]

setbacks 25 severity 148, 165-6 SGML (Standardized General Markup Language) 122-4 share files 48 shareholders 129 Sharing Folders 48

signing 67, 74, 76 Simple Object Access Protocol (SOAP) 100 Simple Object Language (SOL) 116 simplicity 100, 123, 130 Simplified web service implementation 113 Single Customer 8, 101 single instance 20, 22, 41-3, 59, 61, 70, 81-2

single machine 85 Single Points of Failure (SPoFs) 161 sites 5, 37, 47, 51, 93-4, 96, 98, 107, 122, 137 static web 112 situations 98, 140, 147, 158, 168-9, 172, 177 SKMS (Service Knowledge Management System) 143 SLAs (Service Level Agreements) 23, 41, 62, 71, 133, 145, 147, 153, 156, 158, 163

SLAs, solid 59-60 Smalltalk 9, 114, 119-20 SOA 23

SOAP (Simple Object Access Protocol) 100 software 3-4, 6-7, 14-15, 18-20, 22, 25-7, 30, 40, 42-3, 57-8, 65-6, 78-9, 92-3, 137, 139-40, 186-

7 [9]

software application model 25 traditional on-premises 58 software application/service 31 software applications 14, 16-23, 25, 27-32, 36, 40-4, 58-60, 64, 69-71, 74, 76-7, 91, 116, 144 business purchases 30

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

213

clients‟ 27 expensive 16

external hosted 25 host 27

hosting 14 implementing traditional on-premises 60 install 31 licensed 69 marketing 42 on-premises 61-2, 69, 73-4 outsourced 27

ownership of 15-16 third party client/server 27 traditional 25-6, 32, 43, 70, 77, 81-2 traditional on-premises 60-1, 81, 83 updating 31 upgrade 74

usage of 44 software applications in-house 27

software application‟s 19, 41 software-as-a-service 86 software clients 16 software companies 17, 99 software delivery model 26-7, 41-2

software environment 58 standard 7, 58 software experience, unique 26, 28 software implementation models 61-2 hosted SaaS 61 on-premises 61-2 software infrastructure 63

software libraries 106 software licenses 69 software management 30, 58 software management costs 59 software management processes 66 software problems 17

software products 15, 118 selling 42 traditional 99 Selling 42 software SaaS 28, 67 software service access credentials 82-3 software service area 55

software service provider 40, 76 obscure 76 software service provider‟s servers 26 software service vendor 56 software services 15, 17-20, 22-3, 25-6, 28-31, 33, 36, 38-45, 47-8, 53-4, 56, 59-60, 64-8, 71-4,

77-8, 80-3 [3] software services in-house 31

software services online 42 software solutions 15-17, 19, 37, 41-2, 46, 67 software support 15, 65

software updates 41, 99 software users 16 desktop-based 36

web-based 36 software vendors 16-20, 31-2, 40-5, 60, 62, 67, 71-3, 77, 81 software vendor‟s terms 18, 77 potential SaaS 71 SoftwareasaServiceSaaS/Softwareasa ServiceSaaSGoogleAppsPremier/tabid 186

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

214

SOL (Simple Object Language) 116 solutions 53, 87-8, 126, 140, 144, 164, 166, 170, 172, 175

software service delivery 44 source code 116, 156

sources 47, 98, 115, 126, 133, 142, 144, 147, 171, 174 multiple 96, 98, 174 open 11, 90, 94-5, 101, 170, 175 sourcing, open 175-6 space, hard drive 16 Specialist level programs and Managing services 182 SPoFs (Single Points of Failure) 161

sqi-inc.com/ic/Glossary/SaaS 186 staff 69, 140, 143, 155, 158 stages, early 156 stakeholders 135, 155, 170-4, 177 Standalone applications 48, 104 Standard Edition (SE) 114

Standardized General Markup Language, see SGML standards 23, 88, 91, 102, 132, 137

start 71, 90, 139, 157, 161, 174-5 start tag 122 storage 34, 45, 59, 61, 127, 136 storage capacity 21, 44-5, 55-6, 61, 81, 170 storage space 47, 55, 70

Store Manager 7, 53 structure 64, 110-11, 117-18, 122 solid support 65 subject 3 subscribe 17, 42, 53, 96, 144, 169, 173 subscription basis 15, 51 subscription types 81

subscription web service 172 subscriptions 15-17, 19, 35, 56-7, 62, 97, 166 success 11, 36-7, 87, 93-5, 100-1, 139, 166, 172 SuccessFactors 39 SuccessFactors software services 39 suppliers 95, 133, 135-6, 149, 156, 163, 172

support 5, 7, 31, 45-6, 50, 53, 62, 65, 68, 78-80, 83, 100, 132, 147-8, 163-5, 167 [9] little 68, 78 technical 73, 79, 167 support groups 83, 145 support professionals 68, 79 support-related issues 78-9 support SaaS 41

support services 53, 78 support team 79 on-premises SaaS 83 specialized SaaS 83 support technologies 78 support Web Services 23 Survey of Web Application 110

SURVEY of WEB APPLICATION FRAMEWORKS 9 symbols 107, 110 syntax 114, 119

system administrator 117, 164 systems 46, 85, 88-9, 95, 99-101, 117, 131, 134-5, 137-9, 144, 149, 159, 163-5, 167, 177 hypertext 89

T tags 112, 122 tail, long 93 tapping 164, 166-7

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

215

tasks 31, 43, 58, 60, 64, 66, 72, 85, 114, 117, 177 TCO (Total Cost of Ownership) 139

TCP/IP 87 team 64, 175

Tecgraf 116 technical information 110 obtaining 166 technical support teams 79, 166 technologies 7, 17, 19, 22, 36, 40-1, 48, 63-4, 85-6, 91-2, 96, 100-2, 108, 123, 125-6, 163-4 [10] service-based 66 standard document Information 113

templates 107, 111, 176 terms 15, 21-3, 27, 40, 67-8, 70-2, 81, 83, 88, 114, 131, 157, 170 test 60, 81, 135-6, 154 test machine 80 that‟s 169 theartofservice.net/index.php 34

themes 47, 176 thinkitservices.blogspot.com 186

thresholds, automated 158 ticket 165-6 timeline, clear 64 timescales 145-6 toolkit 113

tools 38, 40, 81, 90, 106, 128, 143, 146, 175-8 business email creation 7, 52 top 4, 8, 41, 66, 70, 132-3, 186 top candidate services 129 topics 88, 97 Total Cost of Ownership (TCO) 139 track 50, 53-4, 56, 135

trademarks 13 train 69 [email protected] 185 transactions 62 Business 131 transparency 129

U UCLA (University of California in Los Angeles) 86 UCs (Underpinning Contracts) 145 Underpinning Contracts (UCs) 145 Understanding Mashup Building Platforms for Business Applications 188 Uniform Resource Identifier (URIs) 89, 122

United States 86 University of California in Los Angeles (UCLA) 86 updates 78, 99, 139, 143, 175, 177-8 updating 19, 83, 165-6, 178 upfront costs, cheaper 28, 72 upgrade 15, 32, 42, 78-9, 139 URIs (Uniform Resource Identifier) 89, 122

URLs 106-7 usage 35, 86, 90, 178 user activity 94, 99

user base 91, 98-9 User Control 111 user group committee 64

user satisfaction 161 users 14-17, 20, 25-6, 34-5, 40-53, 55-6, 67, 80-3, 85-6, 88, 90-1, 93-104, 106, 124-6, 170-4,

176-7 [16] associated 137 charge 44

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

216

collective 94 email 95

home 19, 101 potential 17

remote 14 single 43-4 unsubscribed 54 users access 44 users data 44 users machines 22 users request 40

users start 99 user‟s data 20, 44 Using SaaS 20 using SaaS software solutions 16, 30-1 Utility Computing 6, 24, 35, 57

V value 2, 92-3, 97-9, 110-11, 128, 130, 135, 140, 144-5

financial 128 variables 107, 110-12 vendors 15-17, 41, 186 independent software service 56 vendor‟s hands 15

versions 32, 46, 48, 65, 76, 83, 90, 112, 115-17, 139 latest software 6, 32 older 49, 76 vice-or-saas 187 viewArticleBasic&articleId 187 virtualization 6, 35, 125, 170, 181 VOIP 49, 78

W wasn‟t 17-18 way software applications 14 web 8, 11, 21, 49, 85-6, 88-108, 111, 117, 120, 122-3, 125-6, 163-4, 166, 170-2, 177, 187-9 introduction of 92

Web Application Design 104 web application development 91, 107, 128, 166 Web application framework SaaS and Web Applications Specialist 57 web application frameworks 9, 106-8, 111-12, 120, 188 web application hints 104 web application processing 112 Web Application Types 187

web applications 4, 8, 10-11, 85-6, 90-2, 98-108, 110-11, 115, 118, 125, 163-4, 166, 170-1, 174, 185, 187 [8]

basic 104 developing 91, 111 interactive 108 maintaining 100 native 92

new era of 93, 101 prevented 102 standard 108

Web Applications Frameworks 9 Web Applications SaaS and Web Applications Specialist 139 Web Applications Special Level 4

Web Applications Specialist Exam Tips 12 Web Applications Specialist Level Complete Certification 2-38, 40-189 Web Applications Specialist Level Exam 4 web-based applications 23, 40, 46, 50, 104 complete 46

SaaS and Web Applications Specialist Level Complete Certification Kit - Study Guide

217

web-based email services 14, 37-8, 45, 50, 55 dominant 55

web browser 5, 14, 16, 22, 25, 49, 52, 88, 92, 96, 104, 108, 112, 115, 125 web content 93

Web-enabled application development 187 Web Form 111 web pages 40, 50, 88-90, 96, 106, 111, 115, 117, 122, 124, 173 web platform 92, 102-4, 106, 125-6 web service processes 23 web services 23-4, 40, 93, 100-1, 106, 111, 115, 125 web technologies 100, 164-5

web users 93-4 weblog 96 website 36-9, 46, 51-4, 56, 85, 88, 91, 93-5, 104, 110, 116, 123, 126, 184 Website Design Tool 54-5 what‟s 102, 154 Wikipedia 90, 94, 118, 188-9

wikis 46, 93, 166 Windows 5, 92, 101

Windows-based operating systems 56 Windows-based users 46 Windows Live 7, 37, 48, 51 Windows Live Call 48-9 Windows Live Hotmail 7, 37, 50, 55

Windows Live Messenger 7, 48-9 Windows Live Spaces 7, 50 wisdom 142-3 work 2-3, 18, 25-6, 32, 43-4, 48-9, 56, 58, 73, 75, 90, 94-5, 104, 106, 165, 172-5 [7] work offline 25-6, 75 work orders 151, 155 workforce 39, 58, 68, 82-3

business‟s 32 workgroups 83 workhorse 102 workloads 125, 158, 160 workspaces 7, 52, 56 Workstation users 65

World Wide Web 8, 14, 85-91, 94, 96, 101, 122-3, 189 worry 16, 30 www.computerworld.com/action/article.do 187 www.emereo.org 2 www.theartofservice.org 4