共查询到20条相似文献,搜索用时 31 毫秒
1.
M. Pikkarainen J. Haikara O. Salo P. Abrahamsson J. Still 《Empirical Software Engineering》2008,13(3):303-337
Agile software development practices such as eXtreme Programming (XP) and SCRUM have increasingly been adopted to respond
to the challenges of volatile business environments, where the markets and technologies evolve rapidly and present the unexpected.
In spite of the encouraging results so far, little is known about how agile practices affect communication. This article presents
the results from a study which examined the impact of XP and SCRUM practices on communication within software development
teams and within the focal organization. The research was carried out as a case study in F-Secure where two agile software
development projects were compared from the communication perspective. The goal of the study is to increase the understanding
of communication in the context of agile software development: internally among the developers and project leaders and in
the interface between the development team and stakeholders (i.e. customers, testers, other development teams). The study
shows that agile practices improve both informal and formal communication. However, it further indicates that, in larger development
situations involving multiple external stakeholders, a mismatch of adequate communication mechanisms can sometimes even hinder
the communication. The study highlights the fact that hurdles and improvements in the communication process can both affect
the feature requirements and task subtask dependencies as described in coordination theory. While the use of SCRUM and some
XP practices facilitate team and organizational communication of the dependencies between product features and working tasks,
the use of agile practices requires that the team and organization use also additional plan-driven practices to ensure the
efficiency of external communication between all the actors of software development.
相似文献
J. StillEmail: |
2.
Identifying some important success factors in adopting agile software development practices 总被引:3,自引:0,他引:3
Agile software development (ASD) is an emerging approach in software engineering, initially advocated by a group of 17 software professionals who practice a set of “lightweight” methods, and share a common set of values of software development. In this paper, we advance the state-of-the-art of the research in this area by conducting a survey-based ex-post-facto study for identifying factors from the perspective of the ASD practitioners that will influence the success of projects that adopt ASD practices. In this paper, we describe a hypothetical success factors framework we developed to address our research question, the hypotheses we conjectured, the research methodology, the data analysis techniques we used to validate the hypotheses, and the results we obtained from data analysis. The study was conducted using an unprecedentedly large-scale survey-based methodology, consisting of respondents who practice ASD and who had experience practicing plan-driven software development in the past. The study indicates that nine of the 14 hypothesized factors have statistically significant relationship with “Success”. The important success factors that were found are: customer satisfaction, customer collaboration, customer commitment, decision time, corporate culture, control, personal characteristics, societal culture, and training and learning. 相似文献
3.
《Software, IEEE》2003,20(3):89-91
Water cooler discussions often gravitate to trends-the "latest" software process, programming language, or Web development paradigm. Some of them justly deserve the title "trend" or "fad;" others do not. In this article, two practitioners share their experience with current, yet diverse, software process approaches that are starting to greatly affect the industry. One author describes Science Applications International Corporation's (SAIC) experience with the Personal Software Process. The other author shares Motorola's experience with agile methods, a lighter-weight process approach. It appears that despite their diversity, both approaches have resulted in improved productivity and in similar or even higher-quality levels of the resulting products (from previous releases). 相似文献
4.
The effect of moving from a plan-driven to an incremental software development approach with agile practices 总被引:2,自引:0,他引:2
So far, only few in-depth studies focused on the direct comparison of process models in general, and between plan-driven and incremental/agile approaches in particular. That is, it is not made explicit what the effect is of moving from one model to another model. Furthermore, there is limited evidence on advantages and issues encountered in agile software development, this is specifically true in the context of large-scale development. The objective of the paper is to investigate how the perception of bottlenecks, unnecessary work, and rework (from hereon referred to as issues) changes when migrating from a plan-driven to an incremental software development approach with agile practices (flexible product backlog, face-to-face interaction, and frequent integration), and how commonly perceived these practices are across different systems and development roles. The context in which the objective should be achieved is large-scale development with a market-driven focus. The selection of the context was based on the observation in related work that mostly small software development projects were investigated and that the investigation was focused on one agile model (eXtreme programming). A case study was conducted at a development site of Ericsson AB, located in Sweden in the end of 2007. In total 33 interviews were conducted in order to investigate the perceived change when migrating from plan-driven to incremental and agile software development, the interviews being the primary source of evidence. For triangulation purposes measurements collected by Ericsson were considered, the measurements relating to unnecessary work (amount of discarded requirements) and rework (data on testing efficiency and maintenance effort). Triangulation in this context means that the measurements were used to confirm the perceived changes with an additional data source. In total 64 issues were identified, 24 being of general nature and the remaining 40 being local and therefore unique to individual’s opinions or a specific system. The most common ones were documented and analyzed in detail. The commonality refers to how many persons in different roles and across the systems studied have mentioned the issues for each of the process models. The majority of the most common issues relates to plan-driven development. We also identified common issues remaining for agile after the migration, which were related to testing lead-time, test coverage, software release, and coordination overhead. Improvements were identified as many issues commonly raised for the plan-driven approach were not raised anymore for the incremental and agile approach. It is concluded that the recent introduction (start in 2005 with the study being conducted in the end of 2007) of incremental and agile practices brings added values in comparison to the plan-driven approach, which is evident from the absence of critical issues that are encountered in plan-driven development. 相似文献
5.
Ahmed Sidky James Arthur Shawn Bohner 《Innovations in Systems and Software Engineering》2007,3(3):203-216
Many organizations aspire to adopt agile processes to take advantage of the numerous benefits that they offer to an organization.
Those benefits include, but are not limited to, quicker return on investment, better software quality, and higher customer
satisfaction. To date, however, there is no structured process (at least that is published in the public domain) that guides
organizations in adopting agile practices. To address this situation, we present the agile adoption framework and the innovative
approach we have used to implement it. The framework consists of two components: an agile measurement index, and a four-stage
process, that together guide and assist the agile adoption efforts of organizations. More specifically, the Sidky Agile Measurement
Index (SAMI) encompasses five agile levels that are used to identify the agile potential of projects and organizations. The
four-stage process, on the other hand, helps determine (a) whether or not organizations are ready for agile adoption, and
(b) guided by their potential, what set of agile practices can and should be introduced. To help substantiate the “goodness”
of the Agile Adoption Framework, we presented it to various members of the agile community, and elicited responses through
questionnaires. The results of that substantiation effort are encouraging, and are also presented in this paper. 相似文献
6.
Using agile methods to develop large systems presents a thorny set of issues. If large teams are to produce lots of software functionality quickly, the agile methods involved must scale to meet the task. After all, a small team could create the software if the functionality to be delivered was small and, conversely, could be delivered given we had the time. Scaling agile teams thus becomes an issue if the only option for meeting a system delivery deadline is to have many developers working concurrently. 相似文献
7.
Migrating agile methods to standardized development practice 总被引:1,自引:0,他引:1
Situated process and quality frameworks offer a way to resolve the tensions that arise when introducing agile methods into standardized software development engineering. For these to be successful, however, organizations must grasp the opportunity to reintegrate software development management, theory, and practice. 相似文献
8.
《Computer》2002,35(6):90-92
Two of software's leading practitioners debate the particulars of implementing agile methods or extreme programming in software development. Agile means investing heavily in individual skill-building rather than organizational rule sets 相似文献
9.
敏捷软件开发与计划驱动开发的概述比较 总被引:1,自引:0,他引:1
人们在设想、确定以及创建软件时,身边的环境不断在变更.敏捷是为了在动荡的业务环境中获益而创造变革和响应变革的能力.极限编程是最著名的敏捷软件开发方法.传统的开发侧重于计划和架构,计划驱动开发关注的是软件的质量和过程的可预见性.计划驱动开发最佳范例是能力成熟度模型.两种表面上有不同观点的方法在争夺着软件开发的主导权,对敏捷软件开发与计划驱动开发进行了概述,并就特征、擅长领域和关键要素等进行比较. 相似文献
10.
As distributed organizations increasingly rely on technological innovations to enhance organizational efficiency and competitiveness, interest in agile practices that enable adoption of information technology (IT) based innovations has grown. This study examines the influence of a network organization environment on the ability to develop agile adoption practices. An exploratory case study design was used to investigate the interactions between network structure, social information processing, organizational similarity (homophily), and absorptive capacity during the adoption of a large-scale IT system in two network organization environments within New York State. The data suggest that network organization characteristics and communication processes that reinforced social influence and supported knowledge transfer positively influenced adoption agility. We propose a model of agile adoption practices and discuss implications for the development of theory about network organization characteristics and capabilities to adopt IT-based innovations. 相似文献
11.
Both agile and plan-driven approaches have situation-dependent shortcomings that, if not addressed, can lead to project failure. The challenge is to balance the two approaches to take advantage of their strengths in a given situation while compensating for their weaknesses. The authors present a risk-based approach for structuring projects to incorporate both agile and plan-driven approaches in proportion to a project's needs. 相似文献
12.
Diane E. Strode Sid L. Huff Beverley Hope Sebastian Link 《Journal of Systems and Software》2012,85(6):1222-1238
Agile software development provides a way to organise the complex task of multi-participant software development while accommodating constant project change. Agile software development is well accepted in the practitioner community but there is little understanding of how such projects achieve effective coordination, which is known to be critical in successful software projects. A theoretical model of coordination in the agile software development context is presented based on empirical data from three cases of co-located agile software development. Many practices in these projects act as coordination mechanisms, which together form a coordination strategy. Coordination strategy in this context has three components: synchronisation, structure, and boundary spanning. Coordination effectiveness has two components: implicit and explicit. The theoretical model of coordination in agile software development projects proposes that an agile coordination strategy increases coordination effectiveness. This model has application for practitioners who want to select appropriate practices from agile methods to ensure they achieve coordination coverage in their project. For the field of information systems development, this theory contributes to knowledge of coordination and coordination effectiveness in the context of agile software development. 相似文献
13.
Agile development processes are adaptive rather than predictive. Therefore, agile processes emphasize operational system code rather than its documentation. To overcome the absence of comprehensive documentation artifacts, agile methods require constant interaction between the system stakeholders. Ironically, however, some traditional documentation artifacts come to support this kind of interaction. In this study, we examine the relationship between software and documentation. We develop an approach that enables incorporating domain documentation to agile development, while keeping the processes adaptive. We also provide a system design that actively uses domain knowledge documentation. These ideas have been applied through the implementation and use of agile documentation support components. 相似文献
14.
《Computer》2003,36(6):74-78
The transition from a plan-driven to an agile software development process affects not only the development team members, but also other teams, departments, and management. Any new process will likely attract developers excited to try it while repelling those opposed to change. Thus, how an agile process is introduced into an organization significantly affects its ultimate success. 相似文献
15.
Software Quality Journal - Although extensive research has been conducted on the characteristics of the agile developer, little attention has been given to the features of the software-testing... 相似文献
16.
Diane E. Strode 《Information Systems Frontiers》2016,18(1):23-46
Agile software development is designed to achieve collaborative software development. A supporting pillar of collaboration is effective coordination, which is necessary to manage dependencies in projects. Understanding the dependencies arising in agile software development projects can help practitioners choose appropriate coordinative practices from the large number of practices provided by the various agile methods. To achieve this understanding, this article analyses dependencies in three typical cases of co-located agile software development and presents the dependencies as a taxonomy with decision rules for allocating dependencies into categories. Findings show that knowledge, process, and resource dependencies are present, with knowledge dependencies predominant. In addition, there are agile practices with a coordinative function that address multiple dependencies in these agile software development projects. These practices would be a good choice for coordinating a project and supporting collaboration in agile software projects. 相似文献
17.
敏捷方法在软件项目开发中的实践 总被引:1,自引:0,他引:1
目前很多企业内中小型软件项目面临开发时间紧迫、人手不足、需求不断变化的困难,传统重量级的软件开发方法无法应对这样的挑战.敏捷方法是基于实践的软件开发方法学,为解决这类轻量级项目管理和开发所碰到的问题提供了新的思路.通过分析敏捷方法的主要目标、观点和原则,并结合一个实际的管理信息系统项目开发,从项目计划、项目文档、重构的改进和项目维护的4个方面探讨了敏捷方法的实践应用.实践证明,采用敏捷方法的观点和原则进行必要的改进,能取得项目开发的成功. 相似文献
18.
《Software, IEEE》2003,20(3):106-107
A guiding principle behind agile software development is the idea of keeping things simple. Making life simpler is an admirable goal, but unfortunately many developers have a knack for making one of two errors: oversimplifying something that really is complex; and overcomplicating something that should be easy. The paper considers how Extreme Programming attacks over-embellishment with the YAGNI (you aren't gonna need it) principle. 相似文献
19.
The agile software development paradigm and plan-driven approaches each have their strengths and shortcomings. The former emphasizes rapid, flexible development, while the latter emphasizes project and process infrastructure. Many practitioners, particularly of agile methods, tend-to view software architecture in light of the plan-driven side of the spectrum. They think that architecture-centric methods are too much work, equating them with high-ceremony processes emphasizing document production. But many elements make up a successful development approach, including process, product, technology, people, and tools. Software architecture is part of product quality and isn't tied to a particular process, technology, culture, or tool. This article explores the relationship and synergies between architecture-centric design and analysis methods and the extreme programming framework. We chose to focus on XP because it's one of the most mature and best-known agile practices. 相似文献
20.