1
SEEK is supported by the National Science Foundation under awards 0225676. 0225665, 0225635, and 0533368. Semantic Mediation System Semantic Mediation System WAVE: A Verifier for Interactive, Data-driven Web Applications WAVE: A Verifier for Interactive, Data-driven Web Applications 3. Verify some desirable properties via WAVE, the verifier we implemented Alin Deutsch, Liying Sui, Victor Vianu, Dayou Zhou Problem Statement Overview 2. Specify Data-driven Web applications using high-level languages. Theoretical Results[PODS’04] Classes of Web application specification languages are introduced and showed automatically verifiable Explore the trade-off between expressiveness of the specification language and the feasibility of verification WAVE—A Verifier for Data-driven Web Applications[SIGMOD’05] WAVE is a sound and complete verifier for a restricted but significant class of data- driven infinite systems Coupling of database and model-checking techniques is extremely effective Database-powered Web applications may be unusually well-suited for automated verification Accomplishments Verify some desirable design requirement via WAVE, the verifier we implemented The workflow specification describing the business logic behind data-driven Web applications are increasingly complex. Static analysis tools for boosting the confidence in their robustness and correctness is required Specification can improve programmer's productivity, moreover, it also makes automatical verification possible. Verification is feasible for a significant class of database-powered (hence infinite-state) Web applications. Verification time are surprisingly good, all within seconds Ti Cr Pr pr Co po pr Ti Cr Pr wi Co po pr Ti Cr Pr in Co to Tit Cre Pre Com pri Ti Cr Pr or Co bu W ebM L Im port sub- M odule Verification M odule C ode G eneration M odule Explanation module ... ... W eb A pplication (JSP/JD B C C ode) Specification M odule W AVE Specification D esign Property W ebM L Specific ation H TM L Style Sheet DB Server Info W AVE Hilda Im port sub- M odule Hilda Specific ation Case study: Dell.com-like computer shopping website This website allows user to browse, put in cart and buy computers The specification uses: 19 page schemas 4 databases tables 10 states tables 6 input relations 5 action tables Property Time Home page is eventually reached.(true) 20 mills Users can’t cancel an order that has already been shipped.(true) 2 s. Whenever Credit Card Page is reached, User Payment Page page will eventually be reached as well.(false) 370 mills Any shipped product is previously be paid.(true) 4 s. If the input on Error Page is never empty, then whenever Error Page is reached, Home Page will eventually be reached. (true) 1 s. Experimental Results [in SIGMOD’05] Experimental Results [in SIGMOD’05] 1. Motivation Desirable Requirement Desirable Requirement Semantic properties: The user cannot cancel an order that has already been shipped Navigation properties: There is a way to reach the home page from any page Soundness properties: The next Web page is unambiguously defined at any point Desired: Verification login cancel desktop laptop RAM: CPU: RAM: CPU: SCREEN: submit submit Matching products Details Confirmation buy print Customer Page(CP) Laptop Search (LSP) Desktop Search (DSP) Product Index (PIP) Product Detail (PDP) Confirmation (CoP) back Message Message Page (MP) state update DB action NAME: PASSWD: An Interactive, Data-driven An Interactive, Data-driven Web Application Web Application Time Sequence of Web pages 6 8 .. . ... 10 9 1 Datab ase Action Time Line 5 8 2 login cancel desktop laptop RAM: CPU: RAM: CPU: SCREEN: submit submit Matching products Details Confirmation buy print Customer Page(CP) Laptop Search (LSP) Desktop Search (DSP) Product Index (PIP) Product Detail (PDP) Confirmation (CoP) back Message Message Page (MP) NAME: PASSWD: Web Application Code

SEEK is supported by the National Science Foundation under awards 0225676. 0225665, 0225635, and 0533368. Semantic Mediation System WAVE: A Verifier for

Embed Size (px)

Citation preview

Page 1: SEEK is supported by the National Science Foundation under awards 0225676. 0225665, 0225635, and 0533368. Semantic Mediation System WAVE: A Verifier for

SEEK is supported by the National Science Foundation under awards 0225676. 0225665, 0225635, and 0533368.

Semantic Mediation SystemSemantic Mediation System WAVE: A Verifier for Interactive, Data-driven Web ApplicationsWAVE: A Verifier for Interactive, Data-driven Web Applications

Semantic Mediation SystemSemantic Mediation System WAVE: A Verifier for Interactive, Data-driven Web ApplicationsWAVE: A Verifier for Interactive, Data-driven Web Applications

3. Verify some desirable properties via WAVE, the verifier we implemented

Alin Deutsch, Liying Sui, Victor Vianu, Dayou Zhou

Problem Statement

OverviewOverview 2. Specify Data-driven Web applications using high-level languages.

Theoretical Results[PODS’04]Classes of Web application specification languages are introduced and showed automatically verifiable

Explore the trade-off between expressiveness of the specification language and the feasibility of verification

WAVE—A Verifier for Data-driven Web Applications[SIGMOD’05]

WAVE is a sound and complete verifier for a restricted but significant class of data-driven infinite systems

Coupling of database and model-checking techniques is extremely effective

Database-powered Web applications may be unusually well-suited for automated verification

AccomplishmentsAccomplishments

Verify some desirable design requirement via WAVE, the verifier we implemented

The workflow specification describing the business logic behind data-driven Web applications are increasingly complex. Static analysis tools for boosting the confidence in their robustness and correctness is required

• Specification can improve programmer's productivity, moreover, it also makes automatical verification possible.

• Verification is feasible for a significant class of database-powered (hence infinite-state) Web applications.

• Verification time are surprisingly good, all within seconds

Title: (NC-LogoAlt-4C.eps) Creator: Adobe Illustrator(TM) 5.0 Preview: This EPS picture was not saved with a preview (TIFF or PICT) included in it Comment: This EPS picture will print to a postscript printer but not to other types of printers Title: SDSClogo-plusname-black.eps Creator: Adobe Illustrator(R) 11 Preview: This EPS picture was not saved with a preview (TIFF or PICT) included in it Comment: This EPS picture will print to a postscript printer but not to other types of printers Title: (expanded_logo_gold-blue.eps) Creator: Adobe Illustrator(R) 8.0 Preview: This EPS picture was not saved with a preview (TIFF or PICT) included in it Comment: This EPS picture will print to a postscript printer but not to other types of printers Title: (UNC_logo_542.eps) Creator: Adobe Illustrator(R) 8.0 Preview: This EPS picture was not saved with a preview (TIFF or PICT) included in it Comment: This EPS picture will print to a postscript printer but not to other types of printers Title: topbrc.eps Creator: Adobe Illustrator(R) 11 Preview: This EPS picture was not saved with a preview (TIFF or PICT) included in it Comment: This EPS picture will print to a postscript printer but not to other types of printers

WebML Import sub-

Module

Verification Module

Code Generation

Module

Explanation module

... ... ...

Web Application(JSP/JDBC Code)

Specification Module

WAVE Specification

Design Property

WebML Specific

ation

HTML Style Sheet

DB Server

Info

WAVEHilda

Import sub-

Module

Hilda Specific

ationCase study: Dell.com-like computer shopping website

• This website allows

user to browse, put in cart and buy computers

• The specification uses: 19 page schemas 4 databases tables 10 states tables 6 input relations 5 action tables

Property TimeHome page is eventually reached.(true) 20 mills

Users can’t cancel an order that has already been shipped.(true)

2 s.

Whenever Credit Card Page is reached, User Payment Page page will eventually be reached as well.(false)

370 mills

Any shipped product is previously be paid.(true)

4 s.

If the input on Error Page is never empty, then whenever Error Page is reached, Home Page will eventually be reached.(true)

1 s.

Experimental Results [in SIGMOD’05]Experimental Results [in SIGMOD’05]

1. Motivation

Desirable RequirementDesirable Requirement

Semantic properties: The user cannot cancel an order that

has already been shippedNavigation properties:

There is a way to reach the home page from any page

Soundness properties: The next Web page is unambiguously defined at any point

Desired:

Verification

login cancel

desktoplaptop

RAM:CPU:

RAM:CPU:SCREEN:

submit submit

Matching products

Details Confirmationbuy print

Customer Page(CP)

Laptop Search (LSP) Desktop Search (DSP)

Product Index (PIP)

Product Detail (PDP)

Confirmation (CoP)

back

Message

Message Page (MP)

state update

DB

action

NAME:PASSWD:

An Interactive, Data-driven An Interactive, Data-driven

Web ApplicationWeb Application

Time Sequence

of Web pages

68

...

... 10 9 1

Database

Action

Tim

e L

ine

5 8 2

login cancel

desktoplaptop

RAM:CPU:

RAM:CPU:SCREEN:

submit submit

Matching products

Details Confirmationbuy print

Customer Page(CP)

Laptop Search (LSP) Desktop Search (DSP)

Product Index (PIP)

Product Detail (PDP)

Confirmation (CoP)

back

Message

Message Page (MP)

NAME:PASSWD:

Web Application

Code