A Service-Oriented Approach to Implementing an Adaptive User Interface
-
Citations (0)
-
Cited In (0)
Page 1
A Service-Oriented Approach to
Implementing an Adaptive User Interface
Emile Senga
Supervisors: Prof. André Calitz and Prof. Jeàn Greyling
January 2010
Submitted in partial fulfilment of the requirements for the degree of
Magister Commercii in the Faculty of Business and Economic Sciences
at the Nelson Mandela Metropolitan University
Page 2
Acknowledgements
I would like to thank my supervisors, Prof. André Calitz and Prof. Jeàn Greyling, for their
invaluable guidance and continuous support for the duration of this research. I wish to express
my gratitude for the many hours that were spent reading through this document and the
suggestions that were made to improve the content and structure. I would also like to thank them
for their encouragement when problems felt insurmountable.
I would also like to thank those that played a part in assisting me with the completion of this
dissertation:
Mr Danie Venter, Senior lecturer and NMMU Research Statistician in the Department of
Statistics for his help and advice.
Dr. Lester Cowley and Prof. Janet Wesson for their invaluable discussions that helped me
understand the concepts and ideas with which I had to work.
Dr. Patrick Goldstone for assisting with the proof reading of this dissertation.
My friends Alyssa Viduya, Bradley van Tonder, Felix Ntawanga and Juan Meyer for
their technical assistance and moral support.
My family and friends whose continued support and confidence helped me complete this
work.
I would also like to thank the Department of Computing Sciences for enabling me to conduct my
research through the resources they provided. I would especially like to thank Telkom and the
NMMU Centre of Excellence programme for providing the necessary finance for this research.
Page 3
Summary
Service-oriented architectures (SOA) are being adopted by organisations in order to integrate
disparate computational assets. A major hurdle they face is the decision on how to integrate the
UI in an SOA. In addition, technological advances have allowed complex applications and
complex user interfaces (UIs) to be realised and the increase in accessibility to computers
enables a diverse population of users with different characteristics, preferences and needs to use
these complex computer applications. Adaptive user interfaces (AUIs) have been proposed as a
solution to cater for the differences in user traits by adapting the UI to meet the diverse needs of
users. AUIs have, however, traditionally been developed using client/server architectures This
research, therefore, set out to investigate how to develop an AUI using a service-oriented
architecture (SOA).
In order to successfully achieve the goal of this research, literature concerning SOAs was
investigated to gain an understanding of SOAs. A literature review of AUIs was also undertaken
to gain an understanding of AUIs. A model-based approach was used to develop a model for UI
adaptation using knowledge gained in the literature reviews. The model generates different UIs
depending on various users‘ inferred level of expertise. The model describes the interaction
between AUI services that use design-time documents and run-time user-interaction to adapt the
UI. A prototype of the model was implemented and evaluated using an evolution strategy
devised to assess different aspects of the research. The evaluation strategy proved the following:
The service components of the prototype adhere to SOA design principles;
The implementation was effective based on software engineering metrics; and
The implementation was usable and did not negatively affect the performance of users.
The successful implementation of the prototype provides evidence that the design of AUIs using
SOA is feasible. This dissertation therefore makes a contribution to the development of AUIs
using SOAs. The model could be used to provide UI adaptation for business software
applications.
Keywords: Service-oriented architectures, adaptive user interfaces, web services user interfaces,
user interface generation.
Page 4
Table of Contents
Acknowledgements ........................................................................................................................ i
Summary ....................................................................................................................................... ii
Table of Contents ......................................................................................................................... iii
List of Figures .............................................................................................................................. ix
List of Tables ............................................................................................................................... xii
List of Abbreviations ................................................................................................................. xiii
Chapter 1: Introduction ................................................................................................................1
1.1 Background ................................................................................................................................... 1
1.2 Previous research at NMMU ........................................................................................................ 3
1.3 Relevance of research ................................................................................................................... 4
1.4 Research outline............................................................................................................................ 5
1.4.1 Problem statement ........................................................................................................... 5
1.4.2 Thesis statement .............................................................................................................. 5
1.4.3 Research objectives ......................................................................................................... 5
1.4.4 Research questions .......................................................................................................... 6
1.4.5 Research method ............................................................................................................. 6
1.4.5.1 Literature review ................................................................................................ 7
1.4.5.2 Model design ...................................................................................................... 7
1.4.5.3 Prototype ............................................................................................................ 7
1.4.5.4 Evaluation .......................................................................................................... 7
1.4.6 Scope and constraints ...................................................................................................... 8
1.5 Dissertation structure .................................................................................................................... 9
Chapter 2: Service-Oriented Architecture ................................................................................11
2.1 Introduction ................................................................................................................................ 11
2.1.1 Enterprise architectures ................................................................................................. 12
2.1.2 Distributed architectures ................................................................................................ 13
2.2 Service-oriented architecture ...................................................................................................... 17
2.2.1 Definition of SOA ......................................................................................................... 20
2.2.2 Service orientation ......................................................................................................... 20
2.2.3 Principles for SOA Design ............................................................................................ 22
2.3 Components of SOA ................................................................................................................... 23
Page 5
iv
Table of Contents
2.3.1 Web services .................................................................................................................. 24
2.3.1.1 Task services .................................................................................................... 26
2.3.1.2 Entity services .................................................................................................. 27
2.3.1.3 Utility services ................................................................................................. 27
2.3.2 Web services architecture .............................................................................................. 28
2.3.2.1 Web service description language (WSDL) ..................................................... 30
2.3.2.2 Universal discovery description integration (UDDI) ...................................... 32
2.3.2.3 Simple object access protocol (SOAP) ............................................................ 32
2.4 Related standards ........................................................................................................................ 33
2.4.1 Rest web services .......................................................................................................... 33
2.4.2 Business process execution language ............................................................................ 35
2.5 SOA integration approaches ....................................................................................................... 36
2.6 Service-oriented applications ...................................................................................................... 39
2.6.1 Cloud computing ........................................................................................................... 40
2.6.2 Software as a service ..................................................................................................... 41
2.7 Existing systems and related work.............................................................................................. 42
2.7.1 Web service user interface generation ........................................................................... 43
2.7.2 WSGUI .......................................................................................................................... 44
2.7.3 Servface ......................................................................................................................... 44
2.7.4 Web service user interface generation using XForms ................................................... 45
2.7.5 Mash-ups ....................................................................................................................... 46
2.8 Summary ..................................................................................................................................... 46
Chapter 3: Adaptive User Interfaces and User Expertise .......................................................48
3.1 Introduction ................................................................................................................................ 48
3.2 Adaptive user interfaces ............................................................................................................. 49
3.2.1 Definition of AUI .......................................................................................................... 50
3.2.2 Benefits of AUIs ............................................................................................................ 52
3.2.3 Functions of AUIs ......................................................................................................... 53
3.2.3.1 Interface adaptation .......................................................................................... 53
3.2.3.2 Task assistance and adaptive help .................................................................... 54
3.2.3.3 Recommender systems and information filtering ............................................ 54
3.2.3.4 Information presentation .................................................................................. 55
3.2.3.5 Adaptive learning ............................................................................................. 55