Wednesday, January 18, 2012

Supervising Controller as Design Pattern for JSF and other View Frameworks with Data Binding Facilities

Design patterns for user interfaces have become numerous and somewhat ambiguous. Precise and up-to-date descriptions and distinct advice are hard to find. But there is a best practice, at least for large enterprise systems based on JSF (and similar view frameworks) if a tool for automated view tests is available: Supervising Controller. The adoption of this pattern leverages the data binding facilities and keeps controller and view very compact. Only the view implementation becomes dependent on view technology. This article will describe all elements of the pattern and the interaction in detail. And I will explain advantages and disadvantages over other patterns.