International Conference on Information and Communication Technology and Its Applications (ICTA 2016) Federal University of Technology, Minna, Nigeria November 28 – 30, 2016 A Review on Integration of Usability and Agile Methods in Software Development Practice Nuhu Yusuf and Kamalu A. Marafa Mgt. & Information Technology Department , Abubakar Tafawa Balewa University, Bauchi, Nigeria yusufnuhu99@gmail.com, kamalu4all@gmail.com Abstract—Agile and usability integration is a multi- disciplinary research area that comes across the interest of A. Agile methods many researchers. Many approaches have been proposed in Agile software development methods [4] focus on many research papers with a view to provide better interaction and incremental development where integration. In this paper, we provide an insight into some of the integration approaches that were investigated. Based on requirements and solutions develop through collaboration the review of some related literature we found that scrum and 1) Scrum Extreme programming are the major agile methods adopted. Scrum [5] is an agile method which focuses on how Also communication between teams still needs an people can overcome complex problems while producing improvement. We recommend further studies on on-going high quality software products within specified time frame. It projects and the ways to improve communication between includes scrum team such as producer development team and teams in different geographical areas. scrum master. Scrum master must organize regular teams meeting between development teams. To make scrum better Keywords-Agile; usability; software development; software and simple, few development teams are required. practices 2) Extreme Programming (XP) Extreme programming depends on best practice to I. INTRODUCTION provide quality software. It considered as the most popularly and widely agile practices [6]. In extreme programming, In the recent years, software development industries programmers maintain a constant communication with witnessed the emergence of many methodologies aimed to various users of the products so that any useful observation address the shortcomings of traditional software life cycle. made by them will be made effective. Also, the earlier Agile method [1] is one of these methodologies that come version of software will be made available to customers so across the interest of many researchers and practitioners. It that useful changes would be made. was regarded as the most popular methodologies especially 3) Future Driven Development for small and medium software development companies [2]. Future driven development depends on interaction design This is because agile method can deliver software within to combine the model-driven (best practices) and agile short time with less cost. development through certain process. To avoid end users frustration with the developed 4) Crystal Methodologies software, usability issues must not be ignored by software Crystal methodology [7] is also another agile method developers and must be integrated with agile methods. [3] where emphasis is made on team work communication to Stated that usability focuses on how the customers or end- minimize bureaucracy issues that would arise. As a users would use the software. Mostly in practice, end users lightweight adaptable approach, it was consist of crystal can quickly identify software usage problems. Many clear, crystal yellow, crystal orange based on certain futures research papers attempt to integrate agile methods with like team size and project priorities. usability. Our research paper aims to provide an insight into how 5) Dynamic Software Development Method agile methods and usability integrate. Other sections of the Dynamic software development involves customers in paper are organized as follows: I Introduction, II review of software development by providing frequent software related literature, III Agile and usability integration, IV release. The customer will try the released version and Discussion and V Conclusion and Future works, VI provide suggestions or feedbacks about the products. Copyright. Corrections would be made on the feedbacks before another test would be carried out. 6) Kaban Software Development II. REVIEW OF RELATED LITERATURES Kaban [6] encourages using a good initiative to deliver Agile software development focuses on interaction and software as early as possible but not making members so incremental development where requirements and solutions stressful. It is an incremental and evolutionary method that develop through collaboration. depends on principles such as start with what you do know, 1 International Conference on Information and Communication Technology and Its Applications (ICTA 2016) agree to pursue improvement through evolutionary change as structured approaches to software engineering where well as encourage acts of leadership at every level from the usability engineering has been integrated into an agile individual contributor to senior management. software development method. The research need to be further improving to include best practice B. Usability Methods In [27], a case study was provided on how agile methods 1) Usability Inspection integrate with usability in a large software projects. Three Usability inspection [8], [9] was the most widely different companies involved in the IT projects under usability approach used apart from testing. For many years investigation, thus provide the opportunity for developers now, usability approaches practices comprise heuristic and usability experts to interacts and communicate to users. evaluation, cognitive walkthrough, formal usability At the end of the project analysis, they discovered five inspections, and the pluralistic usability walkthrough. These different tactics which have immensely contributed towards were the most important usability inspection approaches [10] the integration of agile method with usability. These tactics used by usability professionals. Cost-effectives is the factors cannot be suitable for a large IT project with many scrum that consider which approach to used. For example, Heuristic teams as such it is good to have tactics with wider coverage. evaluation uses certain guidelines to examine usability Also, even though it is a large IT pension project, the problems is more cost effective than others companies involve are relatively small not even medium 2) Usability Testing considering the number of employees involved. They further Usability testing [11], [12] carried out by testing teams recommend an investigation into how different teams can with a view to determine the performance of the software. communicate in different geographical areas with a view to Task coverage guides the testing teams to identify areas that integrate agile methods with usability. On the other hand, need improvements. In agile software development project, their analysis was based on already completed IT project. users would be allowed to use the system and the usability Further analysis need to be on project that is undergoing expert [13] will look at whether the system satisfied users instead of relying on case study. need. [28] Considers the integration of agile methods and 3) Usability Inquiry usability with the emphasis on ongoing project rather than Usability inquiry comprises field observation, focus relying on case study. Combining tools and process are the group, interviews and questionnaires. Usability professionals best way of achieving integration in three organizations use field observation to observe the users and their work considered for their studies. They collected the data at the places with a view to determine how the users use the system work place. Participants’ were selected from scrum teams to accomplish their tasks within a time frame. They can also which basically based in United Kingdom. Also based on interview users using questionnaires to obtain information their observation they discovered that acceptable behavior [14] , [15] on the areas that need modifications. and mutual awareness are the keys to integrations. Value and decision making assumptions [29] are the key areas that would help to integrate agile usability in practice. III. AGILE AND USABILITY INTEGRATION Their studies were also carried out in a live (on-going) IT Many researchers in the fields of software development projects that use scrum agile method. The conclusion that and human computer interaction [5], [16],[17] have in the was drawn from the study indicates processes and techniques recent time try to marriage their work by integrating would not be the only alternative for usability and agile usability[18], [19] with agile methods. This is mostly integration as such other alternatives must also be because of their interest satisfying customers or end users. investigated. They suggest further investigation in area of For instance, [20], [21] provided detailed analysis on user- contextual information. centered agile software development. The analysis focused [30] Also used case study to proposed how extreme mainly on certain principles found based on the review of programming (XP) can be integrated with usability. To solve different related literature [22], [23]. They suggest further geographical distance problem, they discovered that phone investigation of their empirically. calls, video-conferencing [31] and by e-mails will be a [24] Identify the tensions between usability and agile good source. They also proposed additional methods. Even though the research is in preliminary stage, it approach to tackle the integration using five different identifies common approach of agile methods and usability instruments. engineering by so many literatures. There is need for the There is difficulty in integrating agile method with user research to provide additional quantitative information to be experience [32] based on the analysis of interview result more convincing. conducted in a telecommunication company. Their finding Agile methods considered usability as implicitly rather suggest that the roles of user experience professionals must than explicitly. This is because of their focused on be taking into consideration so as effective communication communication and customer satisfaction. Adopting with developers. In addition to that, communications usability in agile methods explicitly can provide more between teams in different geographical areas also serve as a benefits to software development companies’ especially setback. Their research paper also specifically focuses on small and medium ones. Agile methods maintain constant case study. customers’ involvement in stages of software development Tiago Silva [33] conducted a field study to determine processes [25] as such early customers’ satisfaction would how the proposed framework would help in integrating agile result. with usability through theory and practices. They focused on The relationship between the practices of agile software on-going project to observed and interview professionals. At development and usability engineering [8] [26] using the end of their investigation, they found that there are no 2 International Conference on Information and Communication Technology and Its Applications (ICTA 2016) collaboration software developers and usability experts also found that usability inspection and inquiry play a major though participates requirement meetings. The requirement role in the integration. Both agile and usability focused on meetings help them to understand some of the system communication between development teams though the functionality. In their suggestions, further studies need to be study is in preliminary stage. In [27] case study approach carried out in different companies with some projects that are was adopted where usability and agile have been integrated undergoing. in large company. The project also adopts scrum agile and usability inquiry methods with clear collaboration between IV. DISCUSSION them. The results of the investigation cannot be generalized because fewer individuals were involved. Also [20] In [34], their study relied on case study obtained from the investigate the integration in completed project that uses both reviewed of previous researches. The papers mostly focused scrum and usability inquiry. on small/medium/ large companies adopting either scrum or extreme programming (XP) in their analysis. Their study was based on experience reports obtained from these companies. V. CONCLUSION AND FUTURE WORK Also, research into the integration of agile and usability are In this paper, we provide an insight into agile and limited. Therefore additional researches need to be carried usability integration in software development practices. The out to identify more areas that need to be integrated. [29] major idea behind our paper is to provide the current and Studies were based on uncompleted project in medium future direction of such integration. We review some related software development companies. They conducted on two literature and the extensive comparisons demonstrate that it scrum teams and usability team. It was observed that both is still an open research area. agile and usability teams focused on customers. Also the However, it is also showed that most of the studies study only considered scrum teams which in practice cannot depended on case study. The communication between teams be possible to generalize the results. [32] Explores agile and in different geographical areas still needs to be addressed. usability practice of software developments in large From Table 1, we can see that most of the relationships were telecommunication company. The studies were based on in the area of communications. The further work considers completed project that carried out by scrum teams with both case study and on-going projects. It will also see how to emphasis customer focused. Issues of either to go improve communication of team members in different centralization or decentralization for usability remained geographical areas. unsolved in this study and therefore difficult to generalize This paper presented review limited research papers on the findings. Integrating extreme programming (XP) with agile and user-centered. Thus, further research will consider usability within projects [32] creates value in software more in-depth review on the topic. development practices. The study focused on few development team members that adopt extreme ACKNOWLEDGMENT programming (XP) approach. Usability approach was based on heuristic and cognitive walkthrough methods of usability The authors wish to acknowledge the support of the inspection. [3] Also adopt a case study approach to study the faculty of management science staffs, Abubakar Tafawa integration of agile and usability. In their study, they found Balewa University (ATBU) Bauchi for advice and guidance that scrum and XP are the major agile methods used. It was towards making this research paper. TABLE I. COMPARISION TABLE Approaches Project study Size of the Agile method Usability method Agile & usability Limitations company relationship? Authors 1. Kurosu M. Case study Large Scrum Inquiry & Customer Focused Generalization (2011) inspection 2. Parsons, et Case study Large Scrum & XP Participatory design User involvements Limited research al. (2007) 3. Sohaib, et Case study Large/medium/small Scrum/XP Inquiry & communication Preliminary study al. (2010) inspection 4. Jennifer et On-going Small/medium Scrum Inquiry Teams, process & tools Generalization al. (2012) arrangement 5. Zahid et al. Case study Small XP Heuristic & Teams communication No clear collaborations (2012) Cognitive between teams Walkthrough 6. Adeola et Case study Large Scrum Inquiry Collaboration Generalization al. (2014) 7. Brhel, et al. Case study Small Scrum Usability inquiry Teams communication Based on completed (2015) (interview) projects 8. Zahid H. et On-going Large Scrum Low-Fidelity Teams communication preliminary results al. (2009) Prototyping 9. Fox et al. Case study Small Scrum/XP Inquiry Collaboration need broader empirical (2008) / On-going basis generalization 3 International Conference on Information and Communication Technology and Its Applications (ICTA 2016) REFERENCES Austrian HCI and Usability Engineering Group (pp. 416-427). Springer Berlin Heidelberg. [1] P. Abrahamsson, J. Warsta, M. T. Siponen, & J. Ronkainen, (2003, May). New directions on agile methods: a comparative analysis. In [20] M. Brhel, H. Meth, & A. Maedcher, (2015). Exploring principles of Software Engineering, 2003. Proceedings. 25th International user-centered agile software development: A. Information and Conference on (pp. 244-254). Ieee. Software Technology, 61(C), 163-181. [2] K. Beck, (2000). Extreme programming explained: embrace change. [21] D. Salah, R. Paige, & P. Cairns, (2014, September). A practitioner addison-wesley professional. perspective on integrating agile and user centred design. In Proceedings of the 28th International BCS Human Computer [3] O. Sohaib, (2010). Integrating Usability Engineering and Agile Interaction Conference on HCI 2014-Sand, Sea and Sky-Holiday HCI Software Development :, 2(Iccda), 32–38. (pp. 100-109). BCS. [4] G. S. Matharu, A. Mishra, H. Singh, & P. Upadhyay, (2015). [22] A. Seffah, J. Gulliksen, & M. C. Desmarais, (Eds.). (2005). Human- Empirical study of agile software development methodologies: A Centered Software Engineering-Integrating Usability in the Software comparative analysis. ACM SIGSOFT Software Engineering Notes, Development Lifecycle (Vol. 8). Springer Science & Business Media. 40(1), 1-6. [23] A. Sharma, (2016). A review of agile methodology in software [5] K. Schwaber, & J. Sutherland, (2013). The Scrum Guide, July 2013. development, 1325–1329. Scrum. org. [24] E. Tensions, B. Usability, & A. S. Development, (n.d.). Towards [6] R. V. Anand, & M. Dinakaran, (2016). Popular Agile Methods in Extremely Usable Software Exploring Tensions between Usability Software Development: Review and Analysis. International Journal Plan. of Applied Engineering Research, 11(5), 3433-3437 [25] Å. Cajander, M. Larusdottir, J. Gulliksen,: Existing but not explicit - [7] N. Sharma, & M. Wadhwa, (2015). eXSRUP: Hybrid Software the user perspective in scrum projects in practice. In: Kotzé, P., Development Model Integrating Extreme Programing, Scrum & Marsden, G., Lindgaard, G., Wesson, J., Winckler, M. (eds.) Rational Unified Process. Indonesian Journal of Electrical INTERACT 2013, Part III. LNCS, vol. 8119, pp. 762–779. Springer, Engineering and Computer Science, 16(2), 377-388. Heidelberg (2013) [8] D. G. Novick, & T. Hollingsed, (2007). Usability inspection methods [26] C. Salvador, A. Nakasone, & J. A. Pow-Sang, (2014, April). A after 15 years of research and practice. systematic review of usability techniques in agile methodologies. In [9] D. Wixon, (2003). Evaluating usability methods: why the current Proceedings of the 7th Euro American Conference on Telematics and literature fails the practitioner. interactions, 10(4), 28-34. Information Systems (p. 17). ACM. [10] M. Isomursu, A. Sirotkin, P. Voltti, & M. Halonen, (2012, August). [27] A. Y. Wale-kolade, (2015). The Journal of Systems and Software User Experience Design Goes Agile in Lean Transformation--A Case Integrating usability work into a large inter-organisational agile Study. In Agile Conference (AGILE), 2012 (pp. 1-10). IEEE. development project: Tactics developed by usability designers. The [11] G. Lindgaard, (2007). Usability Testing : What Have We Overlooked Journal of Systems & Software, 100, 54–66. ?, 1415–1424. http://doi.org/10.1016/j.jss.2014.10.036 [12] D. Wixon, (2003). Evaluating usability methods: why the current [28] A. I. Adamu, T. Mantoro, S. A. Muhammad, ―Dynamic Interactive literature fails the practitioner. interactions, 10(4), 28-34. 3D Mobile Navigation Aid‖, International Journal of Theoretical and Applied Information Technology (JATIT), vol. 37, no. 2, pp. 159 – [13] T. P. Thyvalikakath, V. Monaco, H. Thambuganipalle, & T. Schleyer, 171. 2012.. (2009). Comparative study of heuristic evaluation and usability testing methods. Studies in health technology and informatics, 143, [29] J. Ferreira, H. Sharp, & H. Robinson, (2010, June). Values and 322. assumptions shaping agile development and user experience design in practice. In International Conference on Agile Software Development [14] T. Jokela, & P. Abrahamsson, (2004, April). Usability assessment of (pp. 178-183). Springer Berlin Heidelberg. an extreme programming project: Close co-operation with the customer does not equal to good usability. In International [30] S. R. Humayoun, Y. Dubinsky, & T. Catarci, (2011, July). A three- Conference on Product Focused Software Process Improvement (pp. fold integration framework to incorporate user–centered design into 393-407). Springer Berlin Heidelberg. agile software development. In International Conference on Human Centered Design (pp. 55-64). Springer Berlin Heidelberg. [15] Z. Hussain, H. Milchrahm, S. Shahzad, W. Slany, M. Umgeher, T. Vlk, ... & P. Wolkerstorfer, (2012, January). Practical usability in xp [31] Z. Hussain, H. Milchrahm, S. Shahzad, W. Slany, M. Tscheligi, & P. software development processes. In The Fifth International Wolkerstorfer, (2009, May). Integration of extreme programming Conference on Advances in computer Human Interactions, ACHI and user-centered design: Lessons learned. In International (Vol. 2012). Conference on Agile Processes and Extreme Programming in Software Engineering (pp. 174-179). Springer Berlin Heidelberg. [16] A. Seffah, M. C. Desmarais, & E. Metzker, (2005). HCI, usability and software engineering integration: present and future. In Human- [32] M. Kurosu, (2011). Human Centered Design: Second International Centered Software Engineering—Integrating Usability in the Conference, HCD 2011, Held as Part of HCI International 2011, Software Development Lifecycle (pp. 37-57). Springer Netherlands. Orlando, FL, USA, July 9-14, 2011, Proceedings (Vol. 6776). Springer Science & Business Media. [17] D. Parsons, M. Lange, & M. Lange, (2007). Software Development Methodologies , Agile Development and Usability Engineering. [33] T. S. Da Silva, M. S. Silveira, F. Maurer, & T. Hellmann, (2012). User experience design and agile development: From theory to [18] D. Fox, J. Sillito, & F. Maurer, (2008, August). Agile methods and practice. Journal of Software Engineering and Applications, 5(10), user-centered design: How these two methodologies are being 743. successfully integrated in industry. In Agile, 2008. AGILE'08. Conference (pp. 63-72). IEEE. [34] K. N. Rao, G. K. Naidu, & P. Chakka, (2011). A Study of the Agile Software Development Methods , Applicability and Implications in [19] Z. Hussain, W. Slany, & A. Holzinger, (2009, November). Current Industry, 5(2), 35–46. state of agile user-centered design: A survey. In Symposium of the 4