User Interface Specification for Interactive Software Systems
Total Page:16
File Type:pdf, Size:1020Kb
User Interface Specification for Interactive Software Systems Process-, Method- and Tool-Support for Interdisciplinary and Collaborative Requirements Modelling and Prototyping-Driven User Interface Specification Dissertation zur Erlangung des akademischen Grades des Doktor der Naturwissenschaften (Dr. rer. nat.) Universität Konstanz Mathematisch-Naturwissenschaftliche Sektion Fachbereich Informatik und Informationswissenschaft Vorgelegt von Thomas Memmel Betreuer der Dissertation: Prof. Dr. Harald Reiterer Tag der mündlichen Prüfung: 29. April 2009 1. Referent: Prof. Dr. Harald Reiterer 2. Referent: Prof. Dr. Rainer Kuhlen Prof. Dr. Rainer Kuhlen For Cathrin Acknowledgements I thank my advisor, Prof. Dr. Harald Reiterer, for more than 6 years of great Prof. Dr. Harald Reiterer teamwork. Since I joined his work group as a student researcher, his guidance and friendship have helped me to reach high goals and achieve scientific recognition. I thank Harald for his creative contributions and his unfailing support, which made him the best supervisor I could imagine. Every time I read the Dr. in front of my name, I will think about the person who made it possible. It was Harald! Moreover, I thank him for teaching me many skills, of which especially purposefulness and per- suasive power opened up a world of possibilities. Among the other researchers in the human-computer interaction work group, spe- My colleague and friend Fredrik cial thanks are due to my colleague Fredrik Gundelsweiler. Fredrik and I started working for Harald at the same time, and since then we have shared many experi- ences. I worked with Fredrik at Siemens AG in Munich, and we both gained interna- tional work experience during our stay at DaimlerChrysler AG in Singapore. Al- though our work topics diverged after we worked for the electronics division of Mercedes-Benz, being a PhD student without being able to sit face-to-face with Fredrik in the office would not have been nearly so much fun. I wish with all my heart that Fredrik and I will continue to be close friends and comrade-in-arms in the field of human-computer interaction. As one should never change a winning team, I am sure we will be able to profit from mutual advice and candidness. We travelled through various ups and downs in the last decade and I would not have missed a sin- gle experience we shared. I would also like to thank Jens Gerken, who helped me in evaluating the experi- Members of the workgroup HCI mental tool that is presented in my thesis. As a usability expert, Jens‟ expertise in usability evaluation made it possible to enhance both my conceptual and practical work. Moreover, I thank Florian Geyer and Johannes Rinn, who were Master‟s stu- dents and assistant researchers during my time as a PhD student. Their extraordinary engagement and their reliability helped to make the software tool presented in this thesis a successful contribution to research communities all over the world. I am sure that you and all the other students I was able to supervise will have successful careers. Most importantly, I thank my girlfriend Cathrin for her stamina in staying at my My girlfriend Cathrin side and supporting me through six months of hardship and hard work. Without her, my PhD project would have failed. She helped me to stay focused and resolute. Thanks to her love and friendship, I am beginning a new period of life. Having fin- ished my studies and moved to Switzerland, where I have signed a contract with Zuehlke Engineering AG, I look forward to the best possible life with her by my side. For being a remarkable person and companion, I thank Christian Daum, who de- parted this life in spring 2007. Thank you, Christian, for a wonderful time in South East Asia and for being my friend. I would also like to thank my parents, who gave me the opportunity to study and My parents to continue my education after both the Bachelor‟s and Master‟s degrees. Their trust in my willingness and determination always strengthened my drive to contribute value to the field of computer science. I especially thank my father for his belief in my business instincts. As a team, we were a particularly good balance of wise ex- perience with youthful „get up and go‟. I am proud that you let me contribute to the success of our family business during my studies. I thank all the people mentioned here for having an interest in my profession and General acknowledgement work, for respecting my job and the associated stress and strains, and for supporting me in reaching my goals over and over again. Thank you all. Thomas v vi Abstract Specifying user interfaces (UIs) is a fundamental activity in the UI development life cycle as the specification influences the subsequent steps. When the UI is to be specified, a picture is worth a thousand words, and the worst thing to do is write a natural-language specification for it. In corporate specification processes, Office-like applications dominate the work style of actors. Moving from text-based require- ments and problem-space concepts to a final UI design and then back again is there- fore a challenging task. Particularly for UI specification, actors must frequently switch between high-level descriptions and low-level detailed screens. Good-quality specifications are an essential first step in the development of corporate software systems that satisfy the users‟ needs. But the corporate UI development life cycle typically involves multiple actors, all of whom make their own individual inputs of UI artefacts expressed in their own formats, thus posing new constraints for integrat- ing these inputs into comprehensive and consistent specifications for a future UI. This thesis introduces a UI specification technique in which these actors can in- troduce their artefacts by sketching them in their respective input formats so as to in- tegrate them into one or more output formats. Each artefact can be introduced in a particular level of fidelity (ranging from low to high) and switched to an adjacent level of fidelity after appropriate refining. The resulting advanced format is called an interactive UI specification and is made up of interconnected artefacts that have dis- tinct levels of abstraction. The interactive UI specification is forwarded to the sup- plier, who can utilize its expressiveness to code the final UI in precise accordance with the requirements. The concept of interactive UI specification integrates interdisciplinary and infor- mal modelling languages with different levels of fidelity in UI prototyping. In order to determine the required ingredients of interactive UI specifications in detail, the different disciplines that contribute to corporate UI specification processes are ana- lyzed in similar detail. For each stage in the UI specification process, a set of arte- facts is specified. All stakeholders understand this set, and it can be used as a com- mon vehicle. Consequently, a network of shared artefacts is assembled into a common interdisciplinary denominator for software developers, interaction design- ers and business-process modellers in order to support UI modelling and specifica- tion-level UI design. All means of expression are selected by taking into considera- tion the need for linking and associating different requirements and UI designs. Together, they make up the interactive specification. The UI specification method presented in this thesis is complemented by an in- novative experimental tool known as INSPECTOR. The concept behind INSPECTOR is based on the work style of stakeholders participating in corporate UI specification processes. The tool utilizes a zoom-based design room and white- board metaphor to support the development and safekeeping of artefacts in a shared model repository. With regards to the transparency and traceability of the rationale of the UI specification process, transitions and dependencies can be externalized and traversed much better by using INSPECTOR. Compared to Office applications such as Microsoft Word or PowerPoint, INSPECTOR provides different perspectives on UI specification artefacts, allows the actors to keep track of requirements and sup- ports a smooth progression from the problem-space to the solution-space. In this way, co-evolutionary design of the UI is introduced, defined, and supported by a collaborative UI specification tool allowing multiple inputs and multiple outputs. Finally, the advantages of the approach are illustrated through a case study and by a report on three different empirical studies that reveal how the experts who were interviewed appreciate the approach. The thesis ends with a summary and an out- look on future work directed towards better tool support for multi-stakeholder UI specification. vii Zusammenfassung User Interface (UI) Spezifikationsprozesse involvieren unterschiedliche Akteure mit jeweils eigenen Ausdrucksmitteln. Insbesondere Organisationen, die zwar Soft- wareanwendungen entwickeln möchten, jedoch bei Planung und Umsetzung auf ex- terne Dienstleister angewiesen sind, müssen einen geeigneten Rahmen für die inter- disziplinäre Zusammenarbeit innerhalb und außerhalb des Unternehmens bestimmen. Der Erfolg der UI Entwicklung ist dabei meist von erheblicher Bedeu- tung für die Auftraggeberorganisation. Intern eingesetzte Anwendungen bestimmen die Effizienz und Effektivität softwaregestützter Prozesse maßgeblich. Interaktive Systeme, die in Produkte eingebettet werden oder einen Kommunikationskanal zum Kunden darstellen, müssen Design, Identität und meist auch Qualitätsmerkmale ei-