Verifying that web pages have accessible layout

Download: PDF, slides (PDF), slides (Keynote), VizAssert and Cassius tools.

“Verifying that web pages have accessible layout” by Pavel Panchekha, Adam Geller, Michael D. Ernst, Zachary Tatlock, and Shoaib Kamil. In PLDI 2018: Proceedings of the ACM SIGPLAN 2016 Conference on Programming Language Design and Implementation, (Philadelphia, PA, USA), June 2018, pp. 1-14.

Abstract

Usability and accessibility guidelines aim to make graphical user interfaces accessible to all users, by, say, requiring that text is sufficiently large, interactive controls are visible, and heading size corresponds to importance. These guidelines must hold on the infinitely many possible renderings of a web page generated by differing screen sizes, fonts, and other user preferences. Today, these guidelines are tested by manual inspection of a few renderings, because 1) the guidelines are not expressed in a formal language, 2) the semantics of browser rendering are not well understood, and 3) no tools exist to check all possible renderings of a web page. VizAssert solves these problems. First, it introduces visual logic to precisely specify accessibility properties. Second, it formalizes a large fragment of the browser rendering algorithm using novel finitization reductions. Third, it provides a sound, automated tool for verifying assertions in visual logic.

We encoded 14 assertions drawn from best-practice accessibility and mobile-usability guidelines in visual logic. VizAssert checked them on 62 professionally designed web pages. It found 64 distinct errors in the web pages, while reporting only 13 false positive warnings.

Download: PDF, slides (PDF), slides (Keynote), VizAssert and Cassius tools.

BibTeX entry:

@inproceedings{PanchekhaGETK2018,
   author = {Pavel Panchekha and Adam Geller and Michael D. Ernst and
	Zachary Tatlock and Shoaib Kamil},
   title = {Verifying that web pages have accessible layout},
   booktitle = {PLDI 2018: Proceedings of the {ACM} {SIGPLAN} 2016
	Conference on Programming Language Design and Implementation},
   pages = {1-14},
   address = {Philadelphia, PA, USA},
   month = jun,
   year = {2018}
}

(This webpage was created with bibtex2web.)

Back to Michael Ernst's publications.