Assertions to better specify the amazon bug

  • Authors:
  • L. Baresi;G. Denaro;L. Mainetti;P. Paolini

  • Affiliations:
  • Politecnico di Milano, Piazza L. da Vinci 32, I-20133 Milano, Italy;Politecnico di Milano, Piazza L. da Vinci 32, I-20133 Milano, Italy;Politecnico di Milano, Piazza L. da Vinci 32, I-20133 Milano, Italy;Politecnico di Milano, Piazza L. da Vinci 32, I-20133 Milano, Italy

  • Venue:
  • SEKE '02 Proceedings of the 14th international conference on Software engineering and knowledge engineering
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Modern Web applications are mainly distributed systems that exploit the Internet as communication means and the Web as neutral interface to access services and data. The addition of services to Web applications poses problems that are usually tackled at the technology level, but that should be addressed during design to deliver quality Web applications. A typical example of these problems is the Amazon bug, an annoying problem that the user could encounter if after adding products to his shopping cart, he rolls back to a page with a previous version of the cart and tries to buy it. This would make the user buy the last version of the cart's contents, which in some subtle cases could be different from what expected.In this paper, we do not want to discuss all design aspects, but only how provided services/operations should jointly be designed with the rest of the system. We propose a new reference model for Web applications: Operations require a more complex model where they are not simply appended to information and navigation elements, but they can cooperate with them. Besides the reference model, the paper proposes the use of assertions to constraint the behavior of designed operations. Assertions do not only predicate on how data should be modified, but must also take into account how presentation and navigation could be affected by the execution of the operation.