Upload
vanessa-james
View
216
Download
0
Tags:
Embed Size (px)
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.