Perceived performance

Performance is a typical hygiene factor. Nobody notices a highly performing system. But when a system is not performing well enough, people start complaining quickly. As an example, a 2006 research by Akamai found that 75% of the 1,058 people asked would not return to websites that took longer than four seconds to load. Five years earlier, in 2001, a similar research revealed that people were willing to wait eight seconds.  

The increase in bandwidth (in 2001 people mostly used modems to dial-in to the Internet), and the positive experience of very fast loading websites (like Google’s lightweight landing page) dropped this figure to four seconds and it would not surprise me that it will drop even more in the forthcoming years.

In general, the performance of a system can be defined as the amount of useful work that is accomplished by a system compared to the time and resources it used. 

Perceived performance refers to how quickly a software feature appears to perform its task. Most people understand that running a very complex report in a BI environment takes longer than let’s say opening an email. But while people have intrinsic expectations about performance, they are seldom expressed in hard figures.

In general people tend to overestimate their own patience. Most people value predictability in performance. When the performance of a system is fluctuating, they get a bad experience, even if the fluctuation is relatively rare.

For instance, even when one gets a bad response time of a system once a week, it will color the perception of the system for a long time. In the mind of the users the system is often slow.

It is therefore important to have a system with a predictable and consistent performance. It is always best to inform the user about how long something will take (when it is not instantaneously of course). When the user knows she has to wait for 40 seconds to get a task performed, and is informed about it (for instance using a progress bar), she accepts it more quickly. On the other hand when the system seems unresponsive without a reason, people get irritated very quickly. Increasing the real performance of a system is one way to increase the perceived performance.

But when real performance cannot be increased (for instance due to physical limitations) or the cost of improving the performance is very high, some techniques can be used to increase perceived performance. Two of those techniques are splash screens and progress bars.

Of course the amount of time an application takes to start up, or the time it takes for a file to download, is not made any faster by showing a splash screen or a progress bar. However, showing these screens satisfies a typical human need: splash screens and progress bars provide visual feedback to inform the users that the system is handling their request and is busy performing work for them.

Drawing and refreshing a progress bar while loading a file satisfies the user who is waiting, but steals time from the process that is actually loading the file. However, usually this is only a very small amount of time and the benefit of a satisfied user is much higher.


This entry was posted on Tuesday 05 April 2011

Earlier articles

Infrastructure as code

My Book

DevOps for infrastructure

Infrastructure as a Service (IaaS)

(Hyper) Converged Infrastructure

Object storage

Software Defined Networking (SDN) and Network Function Virtualization (NFV)

Software Defined Storage (SDS)

What's the point of using Docker containers?

Identity and Access Management

Using user profiles to determine infrastructure load

Public wireless networks

Supercomputer architecture

Desktop virtualization

Stakeholder management

x86 platform architecture

Midrange systems architecture

Mainframe Architecture

Software Defined Data Center - SDDC

The Virtualization Model

What are concurrent users?

Performance and availability monitoring in levels

UX/UI has no business rules

Technical debt: a time related issue

Solution shaping workshops

Architecture life cycle

Project managers and architects

Using ArchiMate for describing infrastructures

Kruchten’s 4+1 views for solution architecture

The SEI stack of solution architecture frameworks

TOGAF and infrastructure architecture

The Zachman framework

An introduction to architecture frameworks

How to handle a Distributed Denial of Service (DDoS) attack

Architecture Principles

Views and viewpoints explained

Stakeholders and their concerns

Skills of a solution architect architect

Solution architects versus enterprise architects

Definition of IT Architecture

What is Big Data?

How to make your IT "Greener"

What is Cloud computing and IaaS?

Purchasing of IT infrastructure technologies and services

IDS/IPS systems

IP Protocol (IPv4) classes and subnets

Infrastructure Architecture - Course materials

Introduction to Bring Your Own Device (BYOD)

IT Infrastructure Architecture model

Fire prevention in the datacenter

Where to build your datacenter

Availability - Fall-back, hot site, warm site

Reliabilty of infrastructure components

Human factors in availability of systems

Business Continuity Management (BCM) and Disaster Recovery Plan (DRP)

Performance - Design for use

Performance concepts - Load balancing

Performance concepts - Scaling

Performance concept - Caching

Perceived performance

Ethical hacking

Computer crime

Introduction to Cryptography

Introduction to Risk management

The history of UNIX and Linux

The history of Microsoft Windows

The history of Novell NetWare

The history of operating systems - MS-DOS

The history of Storage

The history of Networking

The first computers

History of servers

Tips for getting your ITAC certificate

Studying TOGAF

Is your data safe in the cloud?

Proof of concept

Who needs a consistent backup?

Measuring Enterprise Architecture Maturity

Human factors in security

Master Certified IT Architect

ITAC certification

Open group ITAC /Open CA Certification

Human factors in security

Google outage

SAS 70

TOGAF 9 - What's new?

DYA: Development without architecture

Spam is big business

Why IT projects fail

Power and cooling

Let system administrators participate in projects

The 7 Habits of Highly Effective People

Archimate

A meeting with John Zachman

ITAC - IT Architect certification

Personal Information is Personal Property

The Irresistible Forces Meet the Movable Objects

Hardeningscheck and hack testing for new servers

Knowledge management

Information Lifecycle Management - What is ILM

LEAP: The Redmond trip

LEAP: The last Dutch masterclasses

What do system administrators do?

Is software ever finished?

SCADA systems

LEAP - Halfway through the Dutch masterclasses

Securing data: The Castle versus the Tank

Non-functional requirements

LEAP - Microsoft Lead Enterprise Architect Program

Reasons for making backups

Log analysis - Use your logging information

Archivering data - more than backup

Patterns in IT architecture

Layers in IT security

High performance clusters and grids

Zachman architecture model

High Availability clusters

Monitoring by system administrators

What is VMS?

IT Architecture certifications

Storage Area Networks (SAN)

Documentation for system administrators

Rootkits

Presentations: PowerPoint sheets are not enough

99,999% availability

Linux certification: RHCE and LPI

IT Infrastructure model

Sjaak Laan


Recommended links

Ruth Malan
Gaudi site
Esther Barthel's site on virtualization
Eltjo Poort's site on architecture


Feeds

 
XML: RSS Feed 
XML: Atom Feed 


Disclaimer

The postings on this site are my opinions and do not necessarily represent CGI’s strategies, views or opinions.

 

Copyright Sjaak Laan