Journal of Software Engineering and Applications, 2011, 4, 700-709 doi:10.4 23 6/jse a .20 11 .4 12 08 2 Pu blishe d Onli ne December 2011 (http://www.SciRP.org/journal/jsea) Cop yright © 2011 Sci Res. JSEA Agile Practices: An Assessment of Perception of Value of Professionals on the Quality Criteria in Performance of Projects Mariana de Azevedo Santos1*, Paulo Henrique de Souza Bermejo1, Marcelo Silva de Oliveira2, Adriano O l í m pio Ton e l li1 1Computer Science Department, Federal University of Lavras, Lavras, Brasil; 2Mathematical Sciences Department, Federal Univer- sity of Lavras, Lavras, Brasil. Email: *mariana@bsi.ufla.br Received November 1st, 2011; revised November 25th, 2011; accepted December 8th, 2011. ABSTRACT Deliver high quality software in accordance with deadlines has become a major challenge for the software industry and more organizations adopt agile practices as a mean to achieve quality in their products. This paper analyzes, through a survey, the perception of software professionals, working in different fronts of the development process, the relationship between the use of agile practices and quality of software products. The result shows agile practices that can contribute to quality in three aspects: bigger involvement of the staff, agile management of the requirements proposed and code developed. Keywords: Agile Methodologies, Agile Practices, Perception of Value, Factor Analysis, Software Engineering 1. Introduction Several scientific and popular publications show that the use of agile methods is growing among organizations which work in g in s oftwa re d evelopmen t [ 1 ]. Consolidated in the 2000s through the creation of the Agile Manifesto [2], these methodologies incorporate dis- tinguished principles from tra ditional approaches to soft- ware development, such as iterative and conceptual sim- plicity, aiming at the development and delivery of func- tiona l software quickly, inte nsive collaboration client, high quality, lower costs and dynamism in the face of constant changes in the project [3,4]. By emphasizing such principles, the use of agile me- thodologies are increasingly attracting more interest to or- ganizations seeking for more dynamic approaches to so- lutions to common problems and challenges of software development projects, such as constantly changing user requirements, schedules control, communication and coo- peration with the customer, continuous control of requi- rements, functional testing and delivery of the software product [4-7]. Driven by the growing acceptance and adoption, stud- ies have sought to understand, from empirical evidence, the impacts caused by agile methodologies in software development project. Accordingly, topics studied include the simplification and improvement of team communication with the adop- tion of the XP methodology [8], easing the scope of the project with Agile [9], qualitative increase in communi- cation and commitment, cooperation and adaptability of professionals involved in development projects [5]. Regarding the contributions of agile methods on qua- lity of software products, works such as Chow and Cao [10] and Lee and Xia [11] have highlighted factors that may contribute to quality assurance. Amo ng the feat ure s and a ttri bute s stud ied b y Cho w and Cao [10], the dynamic environment, the choice of an ap- propriate process management techniques and use of agile methods as factors that positively influence the creation of software products with quality. Lee and Xia [11 ] sugge st tha t the exte nt and ef ficie nc y of response time impact the performance of the agility of software development in different ways: the efficiency in response positively affects the co mpletion on time, on bu- dget co mpletion and qualit y of so ftwar e feature s while th e amplitude response only positively affects the quality of software features. Resu lts such as th os e obtai n ed [10,11] can be s t ren g thened by focusing on topics of agile identified as fundamental to
Agile Practices: An Assessment of Perception of Value of Professionals on the 701 Quality Criteria in Performance of Projects the quality of software products, including knowledge sha- ring, active participation of stakeholders, self-organizing teams, and staff training [12]. Although good results have been found in practice, li- ttle is known about which are the main agile practices ado- pted to ensure this benefits in quality of software projects using agile methodologies. Overall, the available studies focus on analyzing fac- tors and attributes is related to agile principles and not on the applicability of practices [4]. To contribute to filling this gap on the applicability of agile practices for quality assurance, this paper aims to analyze, from the perceived value of various stakeholders in the process of software development, the relationship between the use of agile practices and quality of software products. 2. Justificative Deliver high qualit y software in accordance with the sche - dule and scope has become a major challenge for the soft- ware industry and many alternatives has been adopted by develop ment teams in a n attempt to reduce efforts to ful- fill its goals for the client, the user and the project team their own [13,14]. Among the most widely adopted alternatives, increase- ingly these professionals are using agile practices as a means to achieve quality of the final product in an attempt to solve problems that reference the development phase of the software intended [4,15]. This search is justified by the characteristics of the ag- ile software development, which requires innovation and highly responsive, aligning the client’s strengths and skill of the development team to find the right balance be- tween product quality and agility of the processes [16]. This growth can be corroborated by the results of the research of Charette [17], where projects using agile me- thods in comparison with considered traditional method- ologies, obtained better results for the timeliness, quality and costs. In additio n to C harette [17 ], several st udies ha ve inve st- tigated how the principles, values and practices of agile methods are perceived and used b y practitioners using as a parameter the performance criteria and size of projects. However, from these various studies about agile as [5, 8-12,18] , little is known about which main practices ado - pted and which effects are produced on the quality of pro- jects and software products. Another i mportant po int raised is the limita tion of t hese studies to evaluate projects using specific methodologies and more popular, such as XP and Scrum. The magnitude and diversity of practices and agile methodologies it’s disregarded in most of the studies. Therefore, the investigation of the perceived value of the users those agile practices in their software develop- ment environment is presented as an appropriate object- tive since the article proposes to seek understanding of the impact and positive effect of the adoption of agile practices in software projects as a way to get quality on the final software product, filling the gap left by previous studies. 3. Objective This paper aims to analyze, from the perceived value of various stakeholders in the process of software develop- ment, the relationship between the use of agile practices and quality of software products. For both the analysis of results proposes answering the following question: a) Which, of the main agile practices, are being used to achieve quality on software products? Thus, the investigation of the proposed question is to al- low the id entification o f the agile pract ices most valued to fulfill the quality criteria for s oftware produ cts devel oped. 4. Agile Methodologies Agile methodologies are processes that support and im- plement the philosophy of dynamism and agility in soft- ware development [19]. They are constituted of a set of software development and management practices that were consolidated in 2001 by 17 experienced experts in software development proc- esses, establishing common values and principl es [20,21]. Based on these principles and values, was created the Agile Alliance and the establishment of the Agile Mani- festo. The key values proposed in the “Agile Manifesto” are [2]: Individuals and in teracti ons over processes and t ools. Working software over comprehensive documenta- tion. Customer collaboration over contrac t negotiat ion. Responding to change over following a plan. The idea of the “Agile Manifesto” is to redefine the priorities of a software project. Although there are proc- esses and tools, documentation, negotiating contracts, them are reduced and more objective. In short, this paradigm allows the minimization of risks in the development and management of so ftwar e pr oj ects. Among the initials agile methodologies, previously cre- ated of the Agile Manifesto, highlights the Extreme Pro- gramming [22,23] for software development, Scrum [24] for project management, Adaptive Software Development [25], Feature Driven Development [26], Dynamic Sys- tems Development Method [27] and Crystal Methodolo- gies [28]. Later, Test Driven Development [29] was in- corporated into the list of available methodologies. Cop yright © 2011 Sci Res. JSEA
Agile Practices: An Assessment of Perception of Value of Professionals on the Quality Criteria in Performance of Projects Cop yright © 2011 Sci Res. JSEA 702 With several examples in the literature of agile meth- odologies, in general, are based on the set of principles set out in the Agile Manifesto. So even with a variety of agile methodologies presented, they have similar values and prac- tices applied to very similar contexts during the execu- tion phases of a software project, as shown in Table 1. 5. Perception on Software Quality The term quality represents the degree to which a set of inherent characteristics of a product or process meets the needs of a customer or user [30]. Kemerer and Paulk [31] still define the concept of qua- lity as an important success factor to be considered in de- veloping a product. From the perspective of software, quality can be per- ceived as a business objective, and for each aspect of the life cycle of a product, there are various techniques and tools to support the developers [21]. In this work, analy- sis of the impact of agile practices on quality is presented through the concept of perceived value of professionals of software development. In the literature, value is defined as an indicator of the positive contribution of a service, process or product and service as to compliance the desires and needs [32]. According [32], perceptions are based in opinions or reasoned experiences from the impact of information re- ceived and processed by individuals or social groups, which may change or keep their opinions due to the effect that the content analyzed represents on the same. With the increasing complexity of software develop- ment and market pressures, companies are seeking veri- fication and validation practices which ensure greater va- lue for a software product [15,33,34]. Among the main motivations for the development of studies using parameters of perspective and perception of value in Software Engineering is the creation of a unified framework to better target investments in software and the creation of stakeholder principles of conduct of cur- rent situations of the “new Software En gineering” as cha n - ging requirements, emerging requirements, globalized cu l- ture of software development and quality assurance of sys- tems [34]. Table 1. Table su mmary of ag ile practi ces an d the simila riti es of appli catio n thro ughout the stag es of a project ag ile sof tw are development. Agile methodologies practices Project phases XP Scrum ASD FDD DSDM Crystal TDD Planning Increm ental design Spike Solut ions Sprint Planning Adaptative cycleDevelop Overall Model Study of busines s objective Refine feat ures - Requirements Analysis CRC Cards User Story Produ ct Back log Sprint Backlog Mission declaration Features lis t User story Visi on document - Rules 10 minutes Build 2 - 4 weeks cycle - Developm ent by features Regular Builds Pareto principle 80%/20% Reversible changes Fixed iterations Holisti c Diversity Strategy Work rested Teams Small teams Pairs Lead progra m m er Small teams Multi-disciplinary Multi-di scip linaryFeat ures t eams Small teams Several teams working in parallel Solo Pairs Small teams Codification Refactoring Continuous integrati on Pair pr o g r am m ing Collective code ownership - Technical reviewIndividual ownership code Inspections Implement ation of the prototypes - Pairing Refactoring Continuous integration Estimatives Planning games Sprint planning By mission By Features By Features By Features - Meetings Stand up meetings Stand up meetings Sprint review Analysis focused in customer Domain Walkthrough Business review Workshop analysis - Monitoring Project Velocity Burndown Chart Kanban Milestones Milestones Milestones Milestones - Tests Unit tests Screening bugs - Integrated tests Integrated testsIntegrated tests Automated tests Test first Releases Frequent Frequent Frequent Frequent Frequent Frequent Frequent
Agile Practices: An Assessment of Perception of Value of Professionals on the 703 Quality Criteria in Performance of Projects Inserted to the context of “new Software Engineering”, the agile methodologies seek to avoid unfavorable situa- tions in the project and focus on delivering value to cus- tomers by compliance the quality requirements [2]. As a complement to the proposal, Ahmed et al. [12], claims that the adoption of agile development method- ologies has a positive impact not only on the productivity of the team and the velocity at which the product is de- livered to the customer but also over the quality of the software product. Huo et al. [35], contemplates that some agile practices can be used in adaptations made in process models of qua- lity of the traditional approach as a potential solution for quality assurance, especially in early stages of the project. However, that the propose of quality assurance using agile methodologies should focus on identifying prac- tices rather than the comparison between the two approa- ches, because the initial conditions of development are different, which highlights an empirical research unreal- istic [35]. In this context, the present approach constitutes an im- portant assessment tool to support agile software devel- opers, whose experiences are considered as key elements in creating value for its current and future software pro- ducts and, as well as to deliver this value to a customer more profitable and sustainable way possible. 6. Methodology 6.1. Research Methods The study constitutes a quantitative survey conducted by the survey in a sample of 109 participants working in dif- ferent fronts of the process of software. We used two types of samples: expert and propagating geometric or snowball [36]. The use of those sampling methods is justified due to: 1) participation of elements that are experts or have expertise in software develop- ment and 2) the inclusion of elements considered little accessible or with compatible characteristics to the do- main of the research that are difficult to find. This profile of elements is usually best identified by individuals who have close relationship, unknown to the researcher. The survey contained a total of 15 questions, divided into three phases, which as shown in Figure 1: demogra- phics, asses sment of perceptio n of agile p ractices and per- ceived benefits and difficul ties. The agile practices were grouped into three questions, their use in the second stage of a project agile software: practices for organizing teams and feedback; practices te- chniques (rules, coding, testing and versioning); and prac- tices for planning, control and compliance goals. Figure 1. Example of a figure caption. The data were collected for four months through the web tool for creation of surveys called SurveyMonkey, whose perception of the impact of agile practices on the quality of software products were evaluated using a Likert scale of six points, where the practice was evaluated by the values: very high (6), high (5), satisfactory (4), regu- lar (3), low (2) and very low (1). To avoid responses flawed due to lack of knowledge, respondents were asked to evaluate only the agile practices that have used or use. 6.2. Data Analysis The user’s perception of value was analyzed using explo- ratory statistical analysis techniques, which is used when you want to discover trends, relations and patterns hidden from the researcher in a collection analyzed data. In the point of view of Software Engineering, the pros- pect of value provides a good way to look at the process of developing a product, creating strategies to achieve a long-term profitable growth and a sustainable compete- tive advantage for software companies [34]. Among the exploratory techniques used in this work are the Descriptive Analysis and Factor Analysis. Factor analysis is a technique of exploratory data ana- lysis which consists of the data reduction or simplifica- tion of its structure, in order to describe, if possible, the covariance relationship among many variables in terms of a fe w u nder l ying, b ut unob ser vab le, r ando m qua nti tie s called factors [37]. The factor analysis is motivated by the argument which variables can be grouped by correlations. In this research, we will test if exists correlations between agile practices and quality criteria, defining which are this practices and if they could be grouped and represented by factors. In particular, the factor analysis model is represented by the Equa tion (1): Cop yright © 2011 Sci Res. JSEA
Agile Practices: An Assessment of Perception of Value of Professionals on the 704 Quality Criteria in Performance of Projects p 1111122 1 1 2211222 22 112 2 X X X mm mm pp ppmm FF lF FF lF FF lF (1) In this model, the coefficient ℓij is called loading of the ith variable on the jth factor and the F(m × 1) is the matrix of the factor loadings. In this context, the factor analysis model assumes that these variables had linear relation with new random variables Fn, where n = 1, 2, 3,···, n. The vector ε(p × 1) represents the random errors associated at the measures [37]. That initial factor matrix indicates the relation between the variables rarely results in factors that could be inter- preted [38]. However, the analysis becomes feasibly useful in func- tion of their ability to produce factors, through the meth- ods of the rotation matrix, which transforms the factors matrix into an array of rotated maximized, meaningful, simpler and easier to interpret [38,39]. For this study we used the method of orthogonal rota- tion Varimax, which is the most commonly used because it focus in maximu m simplific ation of the columns o f the array factor by maximizing the sum of variances of re- quired charges of the factorial matrix [37,40]. The factors found are defined by the value of its in- dexes, whose consideration is dependent on sample size. For this research, the practices that have factor loadings of 0.55 or higher are co nsidered significant, since the sam- ple size is 109 respondents [36]. The validation tests were made using the methods KMO and calculation of latent root [36,37]. Once the analysis performed with SPSS (Statistical Package for Social Sciences) version 18, it was possible to identify practices correlated that represents the greatest values in the perception of respondents regarding the quality of software products being resized as factors of impact. Only the factors found using as variables the practices with n > 35, were considered for the elaboration of a fac- torial model for quality in agile development. This crite- ria was considered for represent a most representative sample of the study. 7. Results 7.1. Sample Characterization The survey obtained a total of 109 respondents from coun- tries in the world, as represented in Figure 1, with 77 re- spondents from Brazil, 19 from United States and one re- spondent for each of the respective countries: Germany, Arge ntina, Australi a, Belgium, Colo mbia, De nmark France, India, Italy, Poland, Switzerland, Serbia and Venezuela. Regarding the stage of adoption of agile methodolo- gies, represented in Figure 2, 34% responded that the use of agile methods in your company is well defined, but no formal performance measurement practices in relation to quality criteria. About 24% of respondents said that the process of agile methodologies is Partially implemented in your company. The category Defined as formal and con- tinuous improvement measurements obtained 23% of re- sponses. The category Initial/ad hoc obtained 19% of res- ponses. 7.2. Validity and Reliability The first step of the validation phase consists in treat the data collected, separating the variables which had more evaluations of the variables which had few evaluations. This treatment has fundamental to get a more representa- tive sample to the analysis, once the evaluations of the all practices was facultative. Table 2 shows all the practices and the number of evaluations received by each item. For this analysis it’s only considered practices with n > 35 in order to build a more representative sample for the study. The val id a ti on o f d a ta ge ne ra t e d b y the a na l ysis c a n be tested by the KMO method (Kaiser-Meyer-Olkin). The KMO value founded was 0.816, that according to Maroco (2010), corresponds to a test whose analysis generated has good quality, as the demonstration in Table 3. The information described in Table 2 indicate that the KMO index = 0.680, approximately 0.7, validates the ana- lysis with a good recommendation. The Bartlett test shows a significance value p < 0.0001. Therefore we conclude that the variables are significantly correlated. 7.3. Factor Analys i s Regarding the number of factors observed, the factor analysis, represented in Table 4, sho ws a struct ure o f six Figure 2. Example of a figure caption. Cop yright © 2011 Sci Res. JSEA
Agile Practices: An Assessment of Perception of Value of Professionals on the 705 Quality Criteria in Performance of Projects Table 2. Agile practices and the number of evaluations by the quality cri teria. Agile Pr actices Number of An swers about Q uality Small teams 86 Multifunctional teams 59 Solo programmer 44 Product Owner 50 Scrum Master 50 Lead programmer 41 Teams by features 33 Several t eams working in pa rallel 26 Small teams in large teams 30 Daily meeting 58 Stand-up meeting 62 Itera tion planning meeting 60 Retrospective 56 Pro duct backl og 57 Client on-site 58 User cases 47 Scenarios 31 Vision document 40 Evocative document 22 User story 44 Spike solutions 21 Domain model 26 Study of b usin ess objec tive 28 UML Diagrams 41 Refactoring 41 Pair pr o gramm ing 37 Collective ownership code 32 Screening bu gs 40 Tests after development 24 Individual ownership code 24 Funct ional te s ts 44 Development guide by test 35 Unit tests 40 Auto m ated tes ts 33 Continuous integration 39 Fixed iterations 49 Burndown charts 34 Kanban 46 Planning games 31 Velocity 26 Estim at ions by features 34 Progress reports 2 2 Table 3. The KMO coefficient of factor analysis and Bart- lett’s sphericity test for representative sampling of the qual- ity criteria. Validity tests used Results Kaiser-Meyer-Olkin Measure of sampling adequacy 0.680 Bartlet t’s test of sphericit y (Q2 approximation) –1.457 df 300 Sig. 0.000 a. df = degrees of Freedo m; sig = signif i can ce. Table 4. Percentage of explained variance for representati ve analysis for the qualit y criteria. Initial Eigenvalues Factors Total Variance% Cumulative% 1 5.542 39.116 39.116 2 2.234 6.232 45.347 3 2.003 5.314 50.662 4 1.558 4.678 55.340 5 1.329 4.606 59.946 6 1.097 4.389 64.335 factors explaining 64.3%, approximately 64% of the vari- ance of the questionnaire, considering eigenvalues greater than or equals to 1, as recommended the latent root crite- ria [36,40]. With the discovery of six latent factors, the analysis solution is shown in Table 5 which provides the agile prac- tices of higher perceived value of quality professionals in the facto rs ch os en . From the results found in factor analysis, it was possi- ble to extract six factors, as shown in Figure 3. Factor 1—Backlog with continuous integration: this first factor presents high factorial weights in prac- tices related to the phase of planning of the features of the project, where the team sets during the planning meeting of the iterative cycle, the implementations of higher pri- orit y and which deliver customer value. The practices had higher factorial weights justify a positive perception of value from the respondents regarding the creation of a prioritized list of features in the iteration planning meet- ing, that must be worked and integrated in small releases and continuously evaluated qualitatively at the meeting of the Iteration Retrospective, in order to create a impro- ve plan for the next features to be worked. Factor 2—Agile requirements analysis: this se- cond factor has factorial weights high significant in the perception of practices related to the execution and ana- lysis of test of features specified in the users stories. An User story is an agile practice where the requirements are specified from the customer’s point of view, in a simple Cop yright © 2011 Sci Res. JSEA
Agile Practices: An Assessment of Perception of Value of Professionals on the Quality Criteria in Performance of Projects Cop yright © 2011 Sci Res. JSEA 706 Table 5. Solution of t he factorial anal ysis of representative sa mple of agi le practi ces on the quality cri teria. Agile practices F1 F2 F3 F4 F5 F6 Small teams 0.168 0.292 0.099 –0.053 0.146 0.278 Multifunctional teams 0.015 0.378 –0.111 0.053 0.195 0.557 Solo programmer –0.058 –0.156 0.026 0.040 –0.076 0.061 Product owner 0.291 0.224 0.157 0.176 0.028 0.626 Scrum master 0.226 0.104 0.494 0.259 0.264 0.182 Lead programmer 0.096 0.163 0.203 0.253 0.140 –0.003 Daily meeting 0.207 0.174 0.004 –0.001 –0.103 –0.068 Stand-up meeting 0.286 –0.294 0.139 –0.120 –0.037 0.374 Iteration Planning meeting 0.664 0.153 –0.036 0.051 0.081 –0.028 Retrospective 0.784 0.108 –0.102 0.114 0.272 0.147 Product backlog 0.587 0.239 0.244 –0.040 0.032 0.071 Client on-site 0.291 0.692 –0.049 0.245 –0.044 0.070 Use cases –0.076 –0.062 0.636 0.024 0.395 0.235 Vision document 0.279 0.181 0.141 –0.098 0.705 –0.028 User story 0.320 0.623 0.029 0.065 0.404 0.317 UML diagrams 0.032 0.005 0.847 –0.047 –0.021 –0.047 Refactoring 0.196 0.249 –0.042 0.008 –0.115 0.291 Pair pr o gramm ing –0.027 0.11 9 –0.037 0.468 0.118 0.213 Screening bugs 0.285 0.051 0.119 0.783 –0.106 0.026 Functional tests 0.063 0.576 0.556 0.165 –0.116 –0.040 Development guide by test 0.051 0.287 –0.032 0.725 0.035 0.170 Unit Tests 0.168 –0.031 –0.061 0.452 –0.185 0.587 Continuous integration 0.663 0.068 0.010 0.291 –0.184 0.308 Iterations fixed 0.516 0.098 0.191 0.195 0.131 0.321 Kanban 0.039 0.466 0.002 0.125 –0.012 0.155 Potentially Shippable 0.011 0.031 0.157 0.022 0.105 0.149 Figure 3. Agile grouped into factors that represent the user’s percepti on of v a lue and quality. language and description. In this case, the data in- dicate which this practice plays an important and active role in the definitions of the projects and that the features cre- ated from the stories users are properly tested thro ugh the use of functional tests. Factor 3—Modeling the testing process: this third factor has factorial weights high significant in practices related to the modeling of testing phase. The practices had higher weight factor justifying the positive perceived value of the respondents in the generation of use cases and UML diagrams to build test cases adapted to the ag- ile process in their companies. Factor 4—Preventing bugs with test cases: this fourth factor has factorial weights high significant in prac- tices related to the use of test cases for the correction of errors arising from the acceptance tests. The practices that obtained higher factorial weights justifying the posi- tive perception of value of respondents to the develop- ment of test cases to implement the features ill -defined in the planning phase and not properly functional identified in screening of errors of acceptance tests by the user. Factor 5—Vision document: the fifth factor pre- sents factorial weights high significant related to the use of a vision document as an artifact which reports system technical’s perspectives, process preceding the analysis of the domain model. In this case, the Vision Document, despite being built using si mple language, yet has a more technical aspect of a user story. Factor 6—M ultifunctional d evelopment t eams gui- ded by tests: this sixth factor presents factorial weights high significant in practices related to the formation of a
Agile Practices: An Assessment of Perception of Value of Professionals on the 707 Quality Criteria in Performance of Projects cross-functional team which implements unit tests of the more valuable features defined in accordance with the re- presentant of the customers, the Product Owner. A team with different abilities to execute tests could bring posi- tive results because they will search for fail ures in the sys- tem from different aspects. The practices had higher fac- torial weights justifying the positive perception of value of the respondents to practice cross-functional teams in- cluding the customer in a more representative way. 8. Discussion From this conceptualization of perception of value, for the criteria quality of software products, we can construct a possible scenario of use of agile practices: the teams formed are cross-functional teams jointly with a customer representative defines a business model structured in dia- grams and a document client’s vision in relation to bu- siness planning meeting in the cycle. Once carried out the details of planning and architect- ture, the increment is developed through the test cases, followed by the unit tests and functional tests. After cor- recting the errors found in the screening of errors, the codes are integrated continuously. This scenario describes that, from the perspective of using agile practices, the quality of the software product can be worked in three aspects: (a) bigger involvement of the staff, (b) agile management of the requirements pro- posed and (c) code developed. In describing the use of the practices on the factors, we find tha t i n gene ral , the facto r s sho w a b e havio r to war d a use of practices in planning phase, which include the use of practices which value the custo mer needs as documents in a simple language, and in architecture and develop- ment phase, which include modeling and development guided by tests. These practices have a positive view by the practitioner s and users of agile methodologies, the agi- lists and this results aims to approach a better approxi- mation of current scenario of use of agile practices. In a way, it can be said that the employment of these factors in the development cycle of software projects, collectively or individually, can contribute to the impro- vement of quality in software products to be developed using agile methodologies. 9. Conclusions Agility b ecomes incre asingly i mportant in the current sce - nario of software development. And in face of a competi- tive market, it becomes important to search for agile and adaptive solutions can represent a path to deliver soft- ware quickly, with quality, on time, with reduced scope of work and affordable costs. The objective of this study was to analyze the relation- ship between the use of agile practices and the quality of software products. This was achieved once as the results showed the perception of value to practitio ners with agile principles and practices used in the current world market. By combining practices evaluated by the user as posi- tive for succes s in qualit y criteria, t he study showed tha t the focus in choosing the best agile practices and not a speci- fic methodology may be a step of maturity for organiza- tions to adopt the agile culture with less risk and barriers. For researchers, this study contributes to achieving a mapping of agile practices by referencing the plurality of methods on the market and opening up greater possibili- ties in the research of perceived value to the user with ag- ile practi ces. T he result s hows that a gile prac tic es, a nd com- bined into factors used in the various phases of the project, can contribute positively in achieving quality in three as- pects: bigger involvement of the staff, agile management of the requirements propos ed and code developed. For practitioners of agile methodologies, this study su- ggests combinations of widely used agile practices in the software market and, if destined for suitability and com- pliance of quality standards in software projects, consi- dering their needs and strategies, suggests a performance positive for those who adopt . Regarding the statistical analysis, these were used tak- ing care to ensure representativeness of the samples as to its size, and using appropriate methods and statistical as- sumptions required and the data type and purpose of the research. In summary, this study contributes to improve the un- derstanding on the use of agile practices in the context of software development. Research in this area are highly relevant to a better understand and direct the organiza- tions to enhance investme nts in resources, effo rts and agile practices to achieve excellence in processes and software products. Thus, the authors suggest the following future work: An examination of quantitative character, and why not qualitative, in which to should analyze the perceived value of use of developers on agile practices applied in a specific context, just as requirements elicitation practices, practices focused in testing, refactoring or improving of code. Deve lop stat istic al a nalys is usin g ot her t ech nique s of analysis such as confirmatory methods of analysis, using techniques such as PLS (Partial Least Square). 10. Limitations This study aimed to analyze the relationship between agile practices and software quality. To meet the objective of the study, data analysis took care to use descriptive methods Cop yright © 2011 Sci Res. JSEA
Agile Practices: An Assessment of Perception of Value of Professionals on the 708 Quality Criteria in Performance of Projects robust, and to make inferences, conduct them on repre- sentative samples. However, the sample size, the struc- tu re of the questionnaire, and the delineation of self-choice did not allow using other statistical methods that could answer more questions than those specified. 11. Acknowledgements We would like to thank The National Council for Scien- tific and Technological Development (Conselho Nacional de Desenvolvimento Científico e Tecnológico—CNPq), from Brazil, which provided support for the work in this paper. REFERENCES [1] O. Salo and P. Abrahamsson, “Agile Methods in Euro- pean Embedded Software Development Organizations: A Survey Study of Extreme Programming and Scrum,” IET Software, Vol. 2, No. 1, 2008, pp. 58-64. doi:10.1049/iet-sen:20 070038 [2] Beck, et al., “Agile Manifesto,” 2001. http://www.agilemanifesto.org/ [3] L. Cao and B. Ramesh, “Agile Software Development: Ad Hoc Practices or Sound Principles?” IT Professional, Vol. 9, No. 2, 2007, pp. 41-47. do i:10.1109/MITP.2007.27 [4] T. Dybå and T. Dingsøyr, “Empirical Studies of Agile Software Development: A Systematic Review,” Informa- tics, Software Technology, Vol. 50, No. 9-10, 2008, pp. 833-859. [5] C. Mann and F. Maurer, “A Case Study on the Impact of Scrum on Overtime and Customer Satisfaction,” Agile De- velopment Conference, IEEE Computer Society, Washing- ton DC, 2005, pp. 70-79 [6] S. Nerur, R. Mahapatra and G. Mangalara, “Ch allen ges of Migrating to Agile Methodologies,” Communication of the ACM, Vol. 48, No. 5, 2005, pp. 72-78. doi:10.1145/1060710.1060712 [7] P. Abrahamsson, K. Conboy and X. Wang, “‘Lots Done, More to Do’: The Current State of Agile Systems Devel- opment Resear ch,” European Journal of Information Sys- tems, Vol. 18, No. 4, 2009, pp. 281-284. doi:10.1057/ejis.2009.27 [8] H. Svensson and M. Höst, “Views from an Organization on How Agile Development Affects Its Collaboration with a Software De velopmen t Team,” Lecture Notes in Compu- ter Science, Vol. 354 7, 2 005, pp. 4 8-501. doi:10.1007/11497455_38 [9] A. Sillitti, M. Ceschi, B. Russo and G. Succi, “Managing Uncertainty in Requirements: A Survey in Documenta- tion-Driven and Agile Companies,” Proceedings of the 11th International Software Metrics Symposium, Como, 1 September 2005, p. 17. doi:10.1109/METRICS.2005.29 [10] T. Chow and D.-B. Cao, “A Survey Study of Critical Success Fact ors in Agile Software Projects,” The Journal of Systems and Software, Vol. 81, No. 6, 2008, pp. 961- 971. doi:10.1016/j.jss.2007.08.020 [11] G. Lee and W. Xi a, “To ward Agile an Integrated Analysis of Quantitative and Qualitative Field Data on Software Development Agility,” MIS Quarterly, Vol. 34, No. 1, 2010, pp. 87-114. [12] A. Ahmed, S. Ahmad, Dr. N. Ehsan, E. Mirza and S. Z. Sarwar, “Agile Software Development: Impact on Pro- ductivity and Quality,” Proceedings of the 2010 IEEE ICMIT, Singapore, 2-5 June 2010, pp. 287-291. [13] D. Rombach, “The Dilemma of Software Development,” Quality Connection, 2002. [14] A. Sampaio, A. Vasconcelos, R. Pedro and F. Sampaio, “Assessing Agile Methods: An Empirical Study,” Journal of the Brazilian Computer Society, Vol. 10, No. 2, 2004, pp. 22-4 1. doi:10.1007/BF03192357 [15] P. Abrahamsson, O. Salo, J. Ronkainen and J. Warsta, “Agile Software Development Methods Review and Ana- lysis,” VIT Publications, Finlândia, 2002. [16] A. Cockburn, “Agile Software Development: The Coop- erative Game,” 2nd Edition, Addison-Wesley Professional, Boston, 20 06. [17] R. Charette, “Fair Fight? Agile Versus Heavy Methodo- logies,” Agile Methodologies, the Great Debate, Cutter Consortium, Arlington, 2001. [18] L. Cao, K. Mohan, P. Xu and B. Ramesh, “A Framework for Adapting Agile Development Methodologies,” Euro- pean Journal of Information Systems, Vol. 18, 2009, pp. 332-343. doi:10.1057/ejis.2009.26 [19] J. Shore and S. Warden, “The Art of Agile Development,” O’Reilly Me dia , Se bas topol, 2007. [20] P. Ågerfalk and B. Fitzgerald, “Flexible and Distributed Software Processes: Old Petunias in New Bowls?” Com- munications of the ACM, Vol. 49, No. 10, 2006, pp. 27- 34. [21] A. Koscianski an d M. S. Soares, “Qual idade d e Software: Aprenda as Metodologias e Técnicas Mais Modernas Para o Desenvolvimento de Software,” 2nd Edition, Novatec Editora , São Pa ulo, 2007. [22] K. Beck, “Extreme Programming Explained,” Addison- Wesley Professional, Boston, 1999. [23] K. Beck and M. Fowler, “Planning Extreme Program- ming,” Addison-Wesley Professional, Boston, 2000. [24] K. Schwaber and M. Beedle, “Agile Software Develop- ment with Scrum,” Prentice Hall, São Paulo, 2002. [25] J. Highsmith, “Agile Software Development Ecosystems,” Addis on-We s ley Pea rson Educ a tion, Bos ton, 2002. [26] S. R. Palmer and J. M. Felsing, “A Practical Guide to Feature-Dri ven Development (the Coad Seri es),” Prentice Hall PTR, São Paulo, 2002. [27] J. Staplet on, “DSDM Dyna mic S ystems Dev elop ment Me - thod,” A ddis on-Wesley, H a r low , 1997. [28] A. Cockburn, “Agile Software Development,” Addison- Wesley, Reading, 2002. [29] K. Beck, “Test Driven Development: By Example,” Ad- Cop yright © 2011 Sci Res. JSEA
Agile Practices: An Assessment of Perception of Value of Professionals on the Quality Criteria in Performance of Projects Cop yright © 2011 Sci Res. JSEA 709 dison-Wesley Professional, Boston, 2002. [30] Pmbok® Guide, “Project Management Body of Knowledge (PMBOK® Guide),” 4th Edition, Newtow n Square, 2008. [31] C. F. Kemerer and M. C. Paulk, “The Impact of Design and Code Reviews on Software Quality: An Empirical Study Based on PSP Data,” IEEE Transactions on Soft- ware Engineering, Vol. 35, No. 4, 2009, pp. 534-550. doi:10.1109/TSE.2009.27. [32] P. Kötler, “Administração de Marketing,” 10th Edition, Prentice Hall, São Paulo, 2000, p. 764. [33] K. Schwaber, “Agile Project Management with Scrum,” Microsoft Press, Redmond, 2004 . [34] S. Biffl, A. Aurum, B. Boehm, H. Erdogmus and P. Grün- bacher, “Value-Based Software Engineering,” Springer- Verlag, Berlin, 2006, p. 388. doi:10.1007/3-540-29263-2 [35] M. Huo, J. Verner, L. Zhu and M. Babar, “Software Qu al - ity and Agile Methods,” Proceedings of the 28th Annual International Computer Software and Applications Con- ference, IEEE Computer Society, Hong Kong, 2004, pp. 520. [36] J. F. Hair, B. Black, B. Babin, R. E. Anderson and R. L. Tatham, “Análise Multivariada de Dados,” 6th Edition, Bookman, Porto Alegre, 2009, p. 688. [37] R. A. Johnson and D. W. Wichern, “Applied Multivariate Statistical Analysis,” 6th Edition, Prentice Hall, São Paulo, 2007, p. 800. [38] S. A. Mingoti, “Análise de Dados Através de Métodos de Estatística Multivariada: Uma Abordagem Aplicada,” Edi- tora UFMG , Be lo H oriz onte , 2005. [39] N. K. Malhotra, “Pesquisa de Marketing: Uma Orientação Aplica da, ” Editora B ookm an, Porto Alegre, 2001. [40] J. Maroco, “Análise Estatística com a Utilização do SPSS,” 3rd Edition, Silabo, Lisboa, 2007, p. 822.
|