Unified user interface development: the software engineering of universally accessible interactions
In the information society, the notion of computing-platform encompasses, apart from traditional desktop computers, a wide range of devices, such as public-use terminals, phones, TVs, car consoles, and a variety of home appliances. Today, such computing platforms are mainly delivered with embedded operating systems (such as Windows CE, Embedded/ Personal Java, and Psion Symbian), while their operational capabilities and supplied services are controlled through software. The broad use of such computing platforms in everyday life puts virtually anyone in the position of using interactive software applications in order to carry out a variety of tasks in a variety of contexts of use. Therefore, traditional development processes, targeted towards the elusive average case, become clearly inappropriate for the purposes of addressing the new demands for user- and usage-context diversity and for ensuring accessible and high-quality interactions. This paper will introduce the concept of unified user interfaces, which constitutes our theoretical platform for universally accessible interactions, characterized by the capability to self-adapt at run-time, according to the requirements of the individual user and the particular context of use. Then, the unified user interface development process for constructing unified user interfaces will be described, elaborating on the interactive-software engineering strategy to accomplish the run-time self-adaptation behaviour.
unified user interfaces software engineering development processes user-adapted interfaces user interface architectures