Are Software Developers Just Users of Development Tools? Assessing Developer Experience of a Graphical User Interface De
Software developers use software products to design and develop new software products for others to use. Research has introduced a concept of developer experience inspired by the concept of user experience but appreciating also the special characteristics
- PDF / 573,286 Bytes
- 19 Pages / 439.37 x 666.142 pts Page_size
- 32 Downloads / 150 Views
University of Central Lancashire, Preston, Lancashire PR1 2HE, UK [email protected] 2 Tampere University of Technology, Tampere, Finland
Abstract. Software developers use software products to design and develop new software products for others to use. Research has introduced a concept of developer experience inspired by the concept of user experience but appreciating also the special characteristics of software development context. It is unclear what the experiential components of developer experience are and how it can be measured. In this paper we address developer experience of Vaadin Designer, a graphical user interface designer tool in terms of user experience, intrinsic motivation, and flow state experience. We surveyed 18 developers using AttrakDiff, flow state scale, intrinsic motivation inventory and our own DEXI scale and compare those responses to developers’ overall user experience assessment using Mann-Whitney U test. We found significant differences in motivational and flow state factors between groups who assessed the overall user experience either bad or good. Based on our results we discuss the factors that construe developer experience.
1 Introduction Software development, especially the design and development of the graphical user interface (GUI) strongly benefits from the developers’ ability to emphasize with the user and understand user needs. Simultaneously, it requires numerous technical skills to create GUIs. Traditionally GUI development has been done manually via application programming interfaces (APIs) which generally are interfaces to components often represented as libraries. Thus, when using APIs, developers program the GUI by calling required widgets and components via the API and giving parameters for them manually. The resulting GUI is only visible after it is runnable. Often in such approach, GUI is first designed and drawn by UI (user interface) designers separate from front-end developers. The design is often communicated to developers as ready-made static images of the future GUI, which might not be fully implementable as such [10, 11, 25]. Considering notation, we will use “GUI designer” throughout the paper to refer to software and “UI designer” to refer to a person. Another approach for designing and developing GUIs is to use a GUI designer which often is a WYSIWYG (what you see is what you get) editor that allows the © IFIP International Federation for Information Processing 2016 Published by Springer International Publishing Switzerland 2016. All Rights Reserved C. Bogdan et al. (Eds.): HCSE 2016/HESSD 2016, LNCS 9856, pp. 215–233, 2016. DOI: 10.1007/978-3-319-44902-9_14
216
K. Kuusinen
designer/developer to produce GUIs by dragging and dropping UI elements on screen layout. This approach can, for instance, help those UI designers who are less experienced in programming to produce more implementable design and developers would only need to refactor the produced code [23]. Or it could help a developer somewhat knowledgeable in user experience (UX) issues to produce d
Data Loading...