A Survey on User Involvement in Software Development ... - IEEE Xplore

7 downloads 2622 Views 439KB Size Report
user involvement in software development lifecycle (SDLC) process can contributes to the software usability. Although practitioners have agreed that user ...
A Survey on User Involvement in Software Development Life Cycle from Practitioner’s Perspectives Rogayah A. Majid1, Nor Laila M. Noor, Wan Adilah Wan Adnan, Suria Mansor Faculty of Computing & Mathematical Science, Universiti Teknologi MARA, Malaysia

AbstractUser involvement is an important issue that is currently discuss in software development industry. This is due to the incidence of user frustration when using a software product. The literature on software development reflected that the involvement of users in all stages of user involvement in software development lifecycle (SDLC) process can contributes to the software usability. Although practitioners have agreed that user involvement in software development is very important but the extent of user involvement in practice is still unknown. This paper reports on a study that was conducted to investigate user involvement in the SDLC process. The objective of the study is to investigate the degree of user involvement in SDLC process. In the study the Human Centered System Development Life Cycle (HCSDLC) model was used as the research model. In the study a survey was carried out and 32 software practitioners has responded to the survey. The result of this survey indicated that user involvement is mainly concentrated in the functional requirement gathering rather than non-functional requirement gathering. This paper then concludes that practitioners do not involve users in the non-functional requirements gathering which then implies that users are not involved in determining the kind of software used during the SDLC process. Categories and Subject Descriptors H.[Information System] – Models and Principles Keywords HCI, SDLC, User involvement, Functional, Non-functional.

(HCI) concur with the notion that users should be involved in the development of interactive systems [19]. Within the field of HCI, the researchers have promoted usability engineering (UE), user-centered design (UCD) and participatory design (PD) as an approach which addresses the same concern in integrating usability and user involvement in software development lifecycle (SDLC). However, research that reports on the practice of SDLC that pays attention to HCI issues such as usability issues is still lacking [7, 9]. Studies on HCI practices were focused on user needs and the demand of HCI from user perspective [3, 4, 5], and on HCI consideration in the SDLC process [6]. However, studies on the HCI practices which focus on user involvement approach in software development practices are still unknown. Although practitioners agreed that user involvement is very important and user should be involved in software development process [6], several questions pertaining to it remain vague. For instance, to what extent is the users’ involvement in the development process remains indefinite. Thus, this study is conducted to investigate to what extent the user involvement that has been addressed in SDLC process in software development is being practiced. To investigate the user involvement, the Human Centered System Development Life cycle (HCSDLC) proposed by Zhang et al. [2] which emphasized on user involvement at all stages of SDLC is used.

II. LITERATURE REVIEW I. INTRODUCTION Software systems that do not satisfy the users are often accorded to poor and incomplete design. The poor and incomplete design can be due to systems designers and developers failure to involve users in the development. The importance of user involvement in software development is realized with widespread user frustration when using a software product. Evidence of this issue is seen in the findings from human computer interaction (HCI) studies on the users’ perception and satisfaction with the usability of the software product they experienced [28, 8, 18]. The literature in information system (IS) and human computer interaction

A.

User involvement and HCI

HCI is a discipline that emphasizes on the usability of a software product. Usability is one of the six characteristics of software quality which concerns on understandability, learnability, operability, attractiveness and compliance of the software system. UCD [22], UE [20] and PD [21] are usability methods that focus on user involvement in software development process. The importance of HCI, which emphasize on human-centeredness, usability, human factors, user experience, design issues, as well as concerns on the

- 240 -

success of businesses, management, and also organizations, has been accepted to some extent by practitioners [2]. Since user interacts with information, technology and task from various contexts [2], each design of software development must consider user involvement to ensure user satisfaction of the product. Therefore, it is important to involve users at all stages in system development lifecycle. User involvement is a process where users play their roles at every stage of SDLC to produce usable software that satisfies their needs. The role of user involvement can be scrutiny from different perspectives such as pragmatic, theoretical and political [17]. Ives and Olson [16] suggest that user involvement can be divided into several degrees such as “symbolic participation, participation by weak control, participation by doing, and participation by strong control”. Olsson [26] suggests several categories of user involvement in design stage namely user as co-operation partner, user as informants or user as subjects. The degree of user involvement is different from one stage to another. Mike Bryant [25] argues that user involvement has often taken place at a very later stage of the process where major decision has been made and users are already invited to prove the system. On the other hand, Gasson [23] argues that user involvement at design stage is lesser because it involves technical or functional matters. Due to this reason, system developer commonly avoids involving user in the stage. Olsson [26] in his study argues that “we declare repeatedly that users should be involved in the design and development of computer systems, without questioning the reasons and motives behind this declaration”. Users involved in the software development process have a major responsibility towards the outcome of the software product [27].

B.

interaction contexts are required to address these problems [10]. Just as it is important to understand systems requirements as early as possible, it is also important to address HCI at the beginning and throughout the entire process of SDLC [11]. In the context of HCSDLC, human needs and interaction are addressed at the beginning and throughout the entire process of SDLC. All these concerns go beyond the current SDLC [12, 13, 14]. According to Jacobson et al. [14], in the requirements analysis stage, a role is the specific behavior of an entity participating. In use case models, actors are used to describe how a system interacts with users and external systems. Here, roles alone may not allow the analyst to gain a deep understanding of the user. Within a given role, there may be many different types of users. This scenario has brought about suggestion to use personas as a design technique to compromise between actor and on-site customer. Carrol et al. [15] supported that user involvement is an important element in the success of a project and is the best option for many projects. The relationship between the user and the system is portrayed in such a scenario as follow: “The scenario identifies the person as having certain motivations toward the system, describes the actions taken and some reasons why these actions were taken, and characterizes the results in terms of the user’s motivations and expectations”

Comparison between Current SDLC and Proposed HCSDLC

Current SDLC which focuses on functionality is different from the proposed HCSDLC [2] in a number of respects as shown in Figure 1. Several studies by Hoffer et al. [1] have revealed that among the many systems development approaches, the SDLC model is a commonly accepted modern structured approach for describing the complex processes and issues in system development. However, current SDLC stressed too much on the organizational needs which focus more on functionalist rather than human needs such as physical and cognitive capabilities, emotional needs, personality traits and situational factors [6]. The human needs much lesser to be considered in SDLC, resulting in a gap between satisfying organizational need and achieving human needs. These issues can be addressed during the HCI development processes. A better understanding of various human ergonomic, cognitive, affective, and behavioral factors involved in user tasks, problem solving processes and

Figure 1: Current SDLC versus Proposed HCSDLC Methodology

C.

Related HCI studies

There are a number of studies conducted in Malaysia that argue the importance of HCI considerations in the IS development. Thiam et al. [3] study on the usability level of the website in terms of content, organization, readability, navigation and links used by Malaysian Online News Website. Hisham et al. [4] study on the ageing and culture in user interface design. In this study, they discuss on the issue faced

- 241 -

by Malaysian older adults who argued that the user interface has been designed out of their culture and thus were struggling with difficulty to use the system e. Balakrishnan et al. [5] study on the effect of thumb sizes on mobile phone texting satisfaction. The study investigated the effect of participants varying thumb sizes in relation to the experience of using mobile phone keypads for sending text message. The study has confirmed that varying thumb sizes have significant effects on users’ texting satisfaction, based on some of the keypad design factors such as keypad layout, key size and space between keys. On the other hand, Majid et al. [6], study on HCI consideration in SDLC from practitioner’s perspectives. This study later suggested that non-functional requirements such as cultural and affective issues have not been emphasized by practitioners.

A.

User involvement in SDLC

Table 1 shows the result of the study on the user involvement in all the SDLC stages. The result of the study shows that majority of respondents (96.77%) has involved users in their SDLC process. However, the percentage of user involvement varies from one stage to the other. The result shows that the Requirement Analysis stage have the highest percentage of user involvement with 77.42%, followed by the Testing & Deployment 64.52%, Project selection & Planning 54.84%, and System Design stage 35.48%. On the other hand, the Development stage has the least involvement percentage with only 16.13%. These findings reveal that in some of the stages, the user involvement is still at the minimal, particularly in the Development and Design stage. Thus, it can be concluded that user involvement are not given emphasis in those stages by the practitioners in Malaysia.

Table 1: User involvement in SDLC stages

III. METHOD Stage

For this research, a survey has been conducted where the respondent are among the practitioners from Klang Valley, Malaysia. A set of questionnaire was developed based on HCSDLC framework.

Sum 17

54.84

Requirement Analysis

24

77.42

System Design

11

35.48

5

16.13

20

64.52

Development

A. Instrument

Testing & Deployment

The instrument used for the data collection is questionnaire. The questionnaire for the survey was designed based on the HCSDLC as shown in Figure 1. Similar to the traditional SDLC, the stages identified in the HCSDLC are project selection and planning, analysis, design and implementation. The key differences between these two approaches are in that the HCSDLC adopts the HCI concepts and principle into each stage of SDLC. The questionnaire comprised of 20 Lickert-scale questions (strongly disagree, disagree, neither agrees nor disagrees, agree, strongly agree) to measure user involvement in SDLC stages.

B. Survey Respondents The survey conducted has involved 32 respondents who are the software designer and practitioner consists of IT executive, programmer, web designer, software engineer, IT officer, and system analyst.

IV. ANALYSIS AND RESULTS SPSS software version 13.0 was used to analyze the data. The output of the data analysis would be presented in descriptive statistics.

%

Project Selection & Planning

Previous literature revealed that many software developers have involved users during project selection and planning, and requirement stage. At these stages, user involvement is an input to identify major functionality of the software product. Based on Zhang’s framework, user should involve at these particular stages as it determines user requirement including non-functional requirement such as “usability goal” and “user experience” [6]. This was supported by Anirudha [24] who argues that HCI assessment should take place during requirement stage of the software development process. During the testing and deployment stage, the involvement of the user is to later confirm their requirement for the requirement stage and also to verify the system [25]. At this stage, a user is involved in testing the software prototype. If the user is not satisfied with the prototype system, developer will revise the prototype and make it more effective and efficient in terms of the system functionality. On the other hand, based on framework proposed by Zhang et al. [2], the revision of the prototype not only on the system functionality, but it should also consider revising the usability and usefulness of the system non-functionality. The ease of use, ease to learn and safe to use should be considered during the revision of the prototype system.

- 242 -

From the study, it is found that in the system design stage and development stage, the involvement of the user is very low. This may be due to the nature of the stages that deal with technical knowledge which the practitioners believed user is lacked of. Zhang argues that user involvement in these stages will contribute to non functional requirement of the software product from the perspective of human factors. In these stages, user involvement is important as to provide information regarding their knowledge, skills and working culture.

[9]

[10]

[11] [12]

[13]

V. CONCLUSION

[14]

The findings on user involvement have revealed that practitioners do involve users in the software development process. However, the degree of involvement varies at every stage of the development process. This study suggests that user involvement is not emphasized at all stages of SDLC process. The result shows that the involvement of the user is more focused on providing functional requirement rather than non-functional requirement. Besides that, in HCI, the user involvement is stressed on the user roles and contribution in term of the non-functional requirement which focuses on the development of the software that is useful, usable and satisfies the user. Furthermore, user involvement in HCI is referring to user who is involved directly and indirectly in designing and developing the software product. Thus, it can be concluded that in order to produce a usable software product, the software development process must focused on the real user and their needs from the very beginning until the end of the development process.

[15]

[16]

[17] [18]

[19] [20]

[21]

[22] [23]

REFERENCES [1]

[2]

[3]

[4]

[5]

[6]

[7]

[8]

J. A.Hoffer, J. F. George, and J. S. Valacich, “ Modern Systems Analysis and Design”, (4th ed.), Upper Saddle River, NJ: Prentice Hall, 2005. P. Zhang, J. Carey, D. Te’eni, and M. Tremaine, “Integrating HumanComputer Interaction Development into the Systems Development Life Cycle: A Methodology”, Communications of the Association for Information Systems, Vol.15, pp. 512-543, 2005. K. C. Thiam, and S. S. Siti, “Webuse: Website Usability Evaluation Tool”, Malaysian Journal of Computer Science, Vol. 16, No. 1, pp. 4757, 2003. S. Hisham, and A. D. Edwards, “Incorporating Culture in User-interface: A Case Study of Older Adults in Malaysia”, Proceedings of the Eighteenth Conference on Hypertext and Hypermedia, pp. 145-146, 2005. V. Balakrishnan, and H. P. Paul, “A Study of the Effect of Thumb Sizes on Mobile Phone Texting Satisfaction. Journal of Usability Studies”, Vol. 3, No. 3, pp. 118-128, 2008. R. A. Majid, N.M. Noor, W. A. W. Adnan, and S. Mansor, “A Survey on HCI considerations in the software development Life Cycle: From Practitioner’s Perspectives”. Proceedings of the 2nd International Conference on Interaction Sciences: Information Technology, Culture and Human, Vol.403, pp. 21-24, 2009. I. Boivie, C. Aborg, J. Persson, and M. Lofberg, “Why Usability Gets Lost or Usability in-house Software Development”. Interacting with Computers, Vol. 2, No. 15, pp. 623-639, 2003. J. R. Patrick, ‘The Future of the Internet”, Keynote Speech. Americas Conference on Information Systems, 2003.

[24]

[25] [26]

[27]

[28]

- 243 -

P. Zhang, and N. Li, “Love at First Sight or Sustained Effect? The Role of Perceived Affective Quality on Users’ Cognitive Reactions to Information Technology”, Communications of the Association for Computing Machinery (CACM), Vol. 48, No. 9, pp. 105-108, 2006. J. S. Valacich, J. M. George, and J. A. Hoffer, “Essentials of System Analysis and Design”, (2nd ed.), Upper Saddle River, NJ: Prentice Hall, 2004. J. Whitten, L. Bentley, and K. Dittman, “Systems Analysis and Design Methods”, (6th ed.), Boston: McGraw-Hill Irwin, 2004. R. Agarwal, and E. Karahanna, “Time Flies When You’re Having Fun: Cognitive Absorption and Beliefs about Information Technology Usage”. MIS Quarterly, Vol. 4, No. 24, pp. 665-694, 2000. J. Preece, Y. Rogers, and H. Sharp, 2002. “Interaction Design: Beyond Human Computer Interaction, New York”, John Willey & Sons, 2002. I. Jacobson, G. Booch, and J. Rumbaugh, “The Unified Software Development Process”, Addison-Wesley., Vol. 41, No. 14, pp. 10051010, 1999. J. M. Carroll, “Introduction: The Scenario Perspective on System Development in Scenario- Based Design: Envisioning Work and Technology in System Development”, IEEE Transactions on Software Engineering, Vol. 24, No. 12, pp. 1156-1170, 1995. B. Ives, and M. H. Olson, “User Involvement and MIS Success: A Review of Research”, Management Science(30:5), May 1984, pp. 586603 J. P. D. Greenbaum, “A Personal Statement,” Communications of the ACM, Vol.36, No. 4, pp. 47, June 1993. F. Tetard, E. Patokorpi and V. Kadyte, “User-Centered Design of Mobile. Services for Tourist. A Case Study on Student Work on Mobile Design. Institute for Advanced Management Systems Research”, TUCS, Abo Akademi University,Datacity, Finland, 2005. N. Iivari, “Understanding the Work of an HCI Practitioner”. Proceeding of NordiCHI 2006 Conference, 2006. A. Seffah, J. Gulliksen, and M. C. Desmarais, “An Introduction to Human-Centered Software Engineering: Integrating Usability in the Development Process 2005. I. A. Mørch, B. K. Engen, H. R.H. Åsand, C. Brynhildsen, and I. Tødenes, “Introducing E-Learning in a Norwegian Service Company with Participatory Design and Evolutionary Prototyping Techniques”, Conference Proceeding on Workplace Learning, 2004. A. Freriksson and T. Parviainen, “Implementing user-centered devlopment in China,” Uppsala University, 2006. S. Gasson, “User involvement in decision-making in information systems development”. Conference proceeding of 18th IRIS. Gjern Denmark: IRIS Association, 1995. http://iris.informatik.gu.se/conference/iris18/iris1826.htm J. Anirudha. “HCI and SE – The Cultures of the Professions”. Industrial Design Centre, IIT Bombay, Mumbai, India 2007. Available at www.springerlink.com. M. Bryant, “Introduction to user involvement”, The Sainsbury Centre for Mental Health, 2001. E. Ollson, ‘What active users and designers contribute in the design process”, Interacting with Computers Vol. 16, pp. 377–400, 2004. Avaialable online at: www.elsevierComputerScience.com. G. Symon, “The work of IT system developers in context: an organizational case study”, Human–Computer Interaction, vol. 13, No. 1, pp. 37–71, 1998. P. Zhang, J. Carey, D. Te’eni, M. Tremaine, J. Kim, & B. Wildemuth,” The Role of Human-Computer Interaction in Management Information Systems Curricula: A Call to Action”. Communications of the Association for Information Systems,Vol. 13, pp. 357-379, 2004.

Suggest Documents