Quality Attributes of Web Software Applications – Jeff Offutt By Julia Erdman SE 510 October 8,...

Preview:

Citation preview

Quality Attributes of Web Software Applications – Jeff Offutt

By Julia ErdmanSE 510

October 8, 2003

Old time World Wide Web

Originally designed to present information in text documents

Simple framework Became complex very quickly

Modern World Wide Web

Large-scale software applications for: E-commerce Information distribution Entertainment Collaborative working Surveys etc.

Modern World Wide Web cont. Diverse Run on distributed hardware platforms

and heterogeneous computer systems Multiple programming languages and styles Incorporates much reuse and third party

components Cutting edge technologies Must interface with users, other websites,

and databases

Diversity Diverse distribution and

communication Diverse components

Interpreted scripting languages Plain HTML files Mixture of HTML with:

Programs Databases Graphical images Complex user interfaces

Creating a Website Engineering an effective website

requires large teams with diverse skills Programmers Graphics designers Usability engineers Information layout specialists Data communications & network experts Database administrators

This results in Engineering a Website rather than just creating a website

Web Software

Unique aspects Economic changes Criteria for success Technology changes

Unique aspects of Web application software Diverse components

Need to know how to integrate the diverse components

Integrated differently from regular software applications

Source is often times not available Executables may be on remote machine

Data transfer can occur from remote sources

Economic Changes

Quality of attributes No financial motivation for quality

“shrink wrap vendors” Poor quality sooner than high quality

later Now must satisfy customer needs Later but better

Criteria for Success Reliability Usability Security And also,

Availability Scalability Maintainability Time to Market

Reliability

Users expect web applications to work

There’s always another one out there

Usability

Easy Little site loyalty

Security

Must avoid a breach of a company’s website

Secure, secure, secure

Availability

24/7/365 Downtime is costly Diverse browsers

Scalability

Increase number of users Increase number of services Small weakness are exemplified

Reliability problems Usability problems Security breaches

Maintainability

Frequent maintenance cycles Compatibility Reluctant to fix faults before

release

Time to Market

Important, but not as significant with Web software applications

ALL of these attributes have become important

to web software

Technology Changes

First generation Web sites Client-server model Static HTML files

Client-server model

Technology Changes

Growth Commercial use Full-fledged market channel for e-

commerce Interactive, highly functional systems

Early Internet

Client-server model Support only small websites

Little security Cannot support much traffic Limited functionality

Modern Internet

Fully functional software systems Instead of Webmaster, a diverse

team lead by a Web manager is needed

Third-party software components and middleware

Two-tier model not sufficient

N-tier Model

Modern Internet cont.

N-tier model Client-server connection still Most of the software now resides

on separate computers rather than the web server

Client -> web server -> application servers -> database server

Benefits of N-tier Model

New languages are easier to modify and permit more reuse

Enhances maintainability, reliability, and scalability

Additional security layers

Questions???

Works Cited

Offutt, Jeff. "Quality Attributes of Web Software Applications", IEEE Software, Volume 19, Issue 2, Mar/Apr 2002, pp. 25-32.

Recommended