maintenance and performance of web applications

28
5/21/2013 1 © Copyright 2013 Ioan Toma & Srdjan Komazec Web Engineering Maintenance and Performance of Web Applications 2 Where we are? # Date Title 1 5 th March Web Engineering Introduction and Overview 2 12 th March Requirements Engineering for Web Applications 3 19 th March Web Application Modeling 4 9 th April Web Application Architectures 5 16 th April Developing Applications with WebML 6 23 rd April Testing and Usability of Web Applications 7 30 th April Maintenance and Performance of Web Applications 8 7 th May Web Technologies I 9 14 th May Web Technologies II 10 21 st May Web Application Development Process 11 28 th May Project Management for Web Applications 12 4 th June Web Application Security 13 11 th June Mobile Application Development I 14 18 th June Mobile Application Development II 14 25 th June Final Exam

Upload: others

Post on 13-Mar-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

5/21/2013

1

1© Copyright 2013   Ioan Toma & Srdjan Komazec

Web Engineering

Maintenance and Performance of Web Applications

2

Where we are?

# Date Title

1 5th March Web Engineering Introduction and Overview

2 12th March Requirements Engineering for Web Applications

3 19th March Web Application Modeling

4 9th April Web Application Architectures

5 16th April Developing Applications with WebML

6 23rd April Testing and Usability of Web Applications

7 30th April Maintenance and Performance of Web Applications 

8 7th May Web Technologies I

9 14th May Web Technologies II

10 21st May Web Application Development Process

11 28th May Project Management for Web Applications

12 4th June Web Application Security

13 11th June Mobile Application Development I

14 18th June Mobile Application Development II

14 25th June Final Exam

5/21/2013

2

3

Overview

• Maintenance of Web applications– Marketing of Web Applications

– Content Maintenance

– Access Statistics

• Performance of Web applications– Definition of Performance

– Evaluation Techniques

• Summary

4

MAINTENANCE OF WEB APPLICATIONS

5/21/2013

3

5

Motivation

• Tasks of Maintenance– Correct, adapt, improve

– Ensure that the application is up and running

• In conventional applications, there is clear distinction to development.

• In Web applications, there is a merge: – Some maintenance activities can not be done de-coupled but influence development.

– Time-to-market pressure leads to a reduced development time some development tasks are delegated to maintenance.

6

Motivation

• There no methodological, comprehensive approach to the maintenance of Web applications yes.

• Focus on 3 central topics:– Marketing of Web applications

• Strong influence on development of app;

• Adding meta tags or adapting link structures;

• Search engines and partner sites

– Content maintenance• Quality demands

• On the fly generation of Web sites

• Reuse of content (content syndication)

– Access statistics• User behavior

• Measuring success

• Potential for improvement

5/21/2013

4

7

Marketing of Web Applications

• How do my users find my app and its information?– Often not considered!

• Traditional means:– News ads, TV / Radio ads, posters, direct marketing

• Webvertising – Newsletter

– Affiliate marketing

– Search engine marketing

– Content-related marketing

– Domain management

8

Newsletter

• Get new customers / users and maintain old ones

• Via e-Mail

• News, new products, features etc.

• Rules for newsletters:– Neutral content (added value, information about products)

– Links to detailed information

– Clear content focus

– Up to date

– Regularity

– Possibility to cancel the newsletter

– Personalization

5/21/2013

5

9

Affiliate marketing

• Integration of products, services, functionality of Web app into the Web app of a partner

– Constraint: strong topic affinity

– Advantage: efficient, low cost

– Disadvantage: loss of own identity

• Integration options– Simple text link or banner

– Simple product presentation

– Product presentation in look&feel of partner site

• Cost models– Fixfee for integration: day / month / year

– Pay per click: dependency on numbers of visitors

– Pay per lead: fee depending on number of potential clients

– Pay per sale: fee depending on number of de facto clients

10

Search engine marketing

• Marketing by appearing and high positioning– Requirement: knowledge how search engines work

• Index for representation of documents

• Best description of semantics / meaning of contents– Key words

– Unified words

– Weighted (frequency of appearance, etc.)

5/21/2013

6

11

Search engine marketing

• User makes query – Various retrieval models

– Considering keywords (occurrence, importance, etc.)

– Example: Google Page Rank

• Characteristics of the Web– Distribution of documents

– Different protocols

– Data formats

– Changing of existing docs

• Bots– Crawler

– Indexing

12

Search engine marketing

• Registering with search engines– Manual forms

– Indexing sometimes slow (not for Google though)

• „Good“ embedding in Web– Links to and from other websites

• Most important engines– Obviously Google

– http://searchenginewatch.com

– http://www.searchengineshowdown.com

5/21/2013

7

13

Search engine marketing

• Positioning

• Most users: only 10 – 20 first entries

• No guarantee that our app is in these first 10– Search engine optimization

– Knowledge about function of search engine

– Competition fierce

• Measures– Good URIs! (see „Good URIs dont change“)

– Meta tags, title, key words, description

14

Search engine marketing

• Meta tags

• Keywords and description– At indexing time

– Provide keywords that describe topic of page/app

– Limits in length

– Problemantic• Spamming: one keyword too often

• Spoofing: wrong keywords

• Title– Information in title are added to search results

5/21/2013

8

15

Search engine marketing

• Content of a website

• Some search engines only index the first n bytes of a website.

• Graphics:– Instead of graphics in the beginning: meaningful, semantic textual description!

– Graphics: add textual description

16

Search engine marketing

• Exclusion

• Exclusion of certain pages from search engines– E.g. Visitor counter should only count „real“ visitors, no bots

• Exclusion of search engines of parts of an app– Part doesnt contain relevant information for user

• Methods– Robots.txt

– http://www.robotstxt.org/wc/exclusion.html

5/21/2013

9

17

Content related marketing

• Content is associated with products/services

• AdSense of Google– Suitable, contextual ads

– AdWords: clients buy certain words

• Example:– User looks for weather in Munich and gets ads for hotel and rental car in Munich at

that time.

18

Online advertising

• Still the main revenue model for the Web

• Targetting technology still uses early IR techniques• Keyword and simple category matching

• Old model of advertisers vs. consumers– Consumers view advertising as an interference, an intrusion

– Advertisers want more and more information about the user• Phorm formula: more user data = better targetted ads?

– Advertising has no equivalent of Web 2.0 or read/write web

– User is always the passive recipient; no control over data, inferenced information, no feedback on what is appropriate

• Studies suggest that click revenue is falling• “Natural Born Clickers” : 6% of US Internet users responsible for 50% of all

click-throughs

5/21/2013

10

19

Types of targeting

• Random ads

• Section ads: ads targetted at section of website

• Keyword-based : simple IR-based matching

• Geo-IP: ads based on location of IP address

• Demographic-based: Ads based on age, gender, income, education – Data either explicitly provided or learned

• Mining search and click patterns:– user interest inferred from search queries and click patterns

• Social ads: – products are recommended to you because someone in your social network

bought/rated them

• Collaborative Recommendation: – Amazon’s “people who bought X also bought Y”

20

ProblemInsensitive to topic content and sentiment

5/21/2013

11

21

Homonym problem

22

Intrusive and poorly targetted

5/21/2013

12

23

Politically and demographically insensitive

24

Insensitive to potentially tragic contexts

5/21/2013

13

25

Insensitive to potentially tragic contexts

26

Domain management

• Importance of address of Web application

• Secondary domains are added that lead to master domain

• Buy domains before your competitors can

• Communication to outside: use only one

• Might increase traffic

5/21/2013

14

27

Content maintenance

• Systematic and structured acquisition, creation, preparation, management, presentation, processing, publication and reuse of content

• Organisational issues– Unit for content or outsource to provider

– Definition of processes and roles

– Multilinguality, multi-cultural audience, etc.

• Legal issues– Intellectual property rights

– Rights of usage

– Images, videos, graphics

28

Content maintenance

• Quality of content

• Major importance for acceptance of Web apps– Acquiring new clients

– Stickiness factor (time user stays on site)

• Going live– A critical amount of content must be already available

• Quality aspects– Volume

– Uptodateness

– Consistency

5/21/2013

15

29

Content maintenance

• Frequency of updates depends on app– News site vs. company presentation

– Room availability vs. hotel description

• Content Management Systems for generating websites– On the fly: very up to date

– On update: fast, up to date

30

Content maintenance

• Content syndication

• Rights for using content or a Web app– From an information provider

– Information subscriber

– Contracts

• Cost models– Flat fee

– Depending on page / impressions

5/21/2013

16

31

Access statistics

• Information on users and their behavior

• Web usage mining

• Measuring success of an app

• Methods for data acquisition– Reactive methods (require active participation of user, e.g. Feedback form or poll)

– Non-reactive methdos (user is not aware of monitoring)

– Phorm!

32

Web Usage Mining: A Definition

• The process of applying data mining techniques to the discovery of usage patterns from Web data, targeted towards various applications

• Different from content mining & structure mining

(Adamic, L. A., and Adar, E. 2003. Friends and neighbors on the web. Social Networks 25(3):211–230.)

5/21/2013

17

33

Web Usage Mining: Data Source

• Typical data sources for web usage mining are:– Web structure data

(site map, links, etc.)

– Web content data

– User profile (may not be available)

– Web log (web usage data, clickstream data)

34

Web Usage Mining: Procedure

5/21/2013

18

35

Preprocessing: Challenges

• WHO are the users?– IP vs. real people

• HOW LONG did the users stay?– Measuring session time

(L. Catledge and J. Pitkow. Characterizing browsing behaviors on the world wide web. Computer Networks and ISDN Systems, 27(6), 1995)

(Berendt, B. Mobasher, M. Nakagawa, and M. Spiliopoulou. The impact of site structure and user environment on session reconstruction in web usage analysis. In Proceedings of the 4th WebKDD 2002 Workshop, at the ACM-SIGKDD Conference on Knowledge Discovery in Databases (KDD’2002), Edmonton, Alberta, Canada, July 2002.

• WHERE did the users go?– Server side vs. Client side

• WHAT did the users view?

– Content processingMoe, Wendy W. 2003. Buying, searching, or browsing: Differentiating between online shoppers using in-store navigational click-stream. J. Consumer Psych. 13(1, 2) 29–40.

---------------------------------------------------------------------------------------For the best review on preprocessing methods, refer to: R. Cooley, B. Mobasher, J. Srivastava, Data preparation for mining world wide web

browsing patterns, Knowledge and Information Systems 1 (1) (1999) 5–32

36

Measures

• Hits– Counts every single element in a website

• Page impressions– How many users viewed the site

• Visits– Usage by users

– Timelimit

– Problem: unique matching user – IP

5/21/2013

19

37

Measures

• Time of user on site

• Ad impressions

• Ad clicks

• Ad click ratio (clicks vs. impressions)

• Estimation of usefulness of app– Bookmarks

• E-commerce: more complex measures– Product classes

38

PERFORMANCE OF WEB APPLICATIONS

5/21/2013

20

39

Definition

• Webster On-Line– the fulfillment of a claim, promise, or request

• Whatis.com– The speed at which a computer operates, either theoretically … or by counting

operations or instructions performed … during a benchmark test.

– The total effectiveness of a computer system, including throughput, individual response time, and availability. (performance and performability evaluation)

40

Basic measures

• Throughput– Number of requests completed per unit of time

• Response time– Total time elapsed between submitting a request and end of response

• Utilisation– Fraction of time during which the system was busy

• Availability– Fraction of time the system is operational

5/21/2013

21

41

Definitions

42

Impact of bad performance

5/21/2013

22

43

Failure factor

44

Challenges

5/21/2013

23

45

Evaluation techniques

46

Evaluation techniques

5/21/2013

24

47

Modeling

48

Performance tuning

5/21/2013

25

49

Performance tuning

50

WRAP-UPThat’s almost all for day…

5/21/2013

26

51

Things to keep in mind(or summary)

• Maintenance of Web Applications

– Marketing• Webvertising comprises various means to advertise a Web application

• Search engine advertising

– Content maintenance• Systematic and structured approach towards content usage

– Access statistics• Information on users and their behavior

• Web usage mining

52

Things to keep in mind(or summary)

• Performance of Web Applications

5/21/2013

27

53

Bibliography

• Mandatory reading– Kappel, G., Proll, B. Reich, S. & Retschitzegger, W. (2006). Web Engineering, Wiley &

Sons. 8th and 12th Chapter

54

Next Lecture

# Date Title

1 5th March Web Engineering Introduction and Overview

2 12th March Requirements Engineering for Web Applications

3 19th March Web Application Modeling

4 9th April Web Application Architectures

5 16th April Developing Applications with WebML

6 23rd April Testing and Usability of Web Applications

7 30th April Maintenance and Performance of Web Applications 

8 7th May Web Technologies I

9 14th May Web Technologies II

10 21st May Web Application Development Process

11 28th May Project Management for Web Applications

12 4th June Web Application Security

13 11th June Mobile Application Development I

14 18th June Mobile Application Development II

14 25th June Final Exam

5/21/2013

28

55

Questions?