首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 500 毫秒
1.
In globally distributed software development, does it matter being agile rather than structured? To answer this question, this paper presents an extensive case study that compares agile (Scrum, XP, etc.) vs. structured (RUP, waterfall) processes to determine if the choice of process impacts aspects such as the overall success and economic savings of distributed projects, the motivation of the development teams, the amount of communication required during development, and the emergence of critical issues. The case study includes data from 66 projects developed in Europe, Asia, and the Americas. The results show no significant difference between the outcome of projects following agile processes and structured processes, suggesting that agile and structured processes can be equally effective for globally distributed development. The paper also discusses several qualitative aspects of distributed software development such as the advantages of nearshore vs. offshore, the preferred communication patterns, and the effects on project quality.  相似文献   

2.
Agile Practices Reduce Distance in Global Software Development   总被引:2,自引:0,他引:2  
This article explores how agile practices can reduce three kinds of “distance” - temporal, geographical, and sociocultural - in global software development (GSD). On the basis of two in-depth case studies, specific Scrum and eXtreme Programming (XP) practices are found to be useful for reducing communication, coordination, and control problems that have been associated with GSD.  相似文献   

3.
Agile processes like extreme programming (XP), Scrum, Crystal, and adaptive software development aim to increase a software organization's responsiveness while decreasing development overhead. They focus on delivering executable code and see people as the strongest ingredient of software development. We offer an overview of the philosophy and practice behind XP, which is currently the most popular agile methodology  相似文献   

4.
《Software, IEEE》2007,24(3):74-79
During the last two years, Nokia Networks has started changing much of its product development from a traditional waterfall approach to Scrum, an agile software development process. Besides Scrum, there has been a lot of focus on engineering practices such as test-driven development. We've been involved in creating TDD training at Nokia Networks to support the transition to agile development. This training approach has students write tests that count lines of code. The problems they encounter provide valuable insights into TDD and its benefits  相似文献   

5.
Agile methods have evolved as a bottom-up approach to software development. However, as the software in embedded products is only one part of development projects, agile methods must coexist with project management models typically of the stage-gate type. This paper presents a qualitative case study of two large independent software system projects that have used eXtreme Programming (XP) for software development within contexts of stage-gate project management models. The study is comprised of open ended interviews with managers as well as practitioners, followed by a structured, fully traceable, qualitative analysis. We conclude that it is possible to integrate XP in a gate model context. Key issues for success are the interfaces towards the agile subproject and management attitudes towards the agile approach. Editor: Marvin Zelkowitz  相似文献   

6.
ContextWhile renowned agile methods like XP and Scrum were initially intended for projects with small teams, traditional enterprise environments, i.e. environments where plan-driven development is prevalent, have also become attracted by the promises of a faster time to market through agility. Agile software development methods emphasize lightweight software development. Projects within enterprise environments, however, are typically confronted with a large and complex IT landscape, where mission-critical information is at play whose criticality requires prudence regarding design and development. In many an organization, both approaches are used simultaneously.ObjectiveFind out which challenges the co-existence of agile methods and plan-driven development brings, and how organizations deal with those challenges.MethodWe present a grounded theory of the challenges of using agile methods in traditional enterprise environments, based on a Grounded Theory research involving 21 agile practitioners from two large enterprise organizations in the Netherlands.ResultsWe organized the challenges under two factors: Increased landscape complexity and Lack of business involvement. For both factors, we identify successful mitigation strategies. These mitigation strategies concern the communication between the agile and traditional part of the organization, and the timing of that communication.ConclusionAgile practices can coexist with plan-driven development. One should, however, keep in mind the context and take actions to mitigate the challenges incurred.  相似文献   

7.
Software development organizations that have been employing capability maturity models, such as SW-CMM or CMMI for improving their processes are now increasingly interested in the possibility of adopting agile development methods. In the context of project management, what can we say about Scrum’s alignment with CMMI? The aim of our paper is to present the mapping between CMMI and the agile method Scrum, showing major gaps between them and identifying how organizations are adopting complementary practices in their projects to make these two approaches more compliant. This is useful for organizations that have a plan-driven process based on the CMMI model and are planning to improve the agility of processes or to help organizations to define a new project management framework based on both CMMI and Scrum practices.  相似文献   

8.
敏捷开发:极限编程在管理信息系统开发中的实践探讨   总被引:2,自引:0,他引:2  
邓靖颖  黄穗 《计算机工程》2004,30(24):189-191
极限编程是敏捷的和基于实践的软件开发方法学。通过介绍极限编程的特点及其在一个管理信息系统项目实际开发中的成功实践,探讨研究了极限编程对于中小型需求易变的软件开发项目应用的优势和不足。  相似文献   

9.
极限编程XP(eXtreme Programming)是敏捷开发的代表,是一个混乱而有序的、基于实践的软件开发方法。通过介绍极限编程的特点及其在某信息管理系统中的应用,探讨研究了极限编程在中小型需求易变的信息管理系统开发项目的实际运用和实践总结。  相似文献   

10.
极限编程XP(cXtreme Programming)是敏捷开发的代表,是一个混乱而有序的、基于头践的软件开发方法。通过介绍极限编程的特点及其在某信息管理系统中的应用,探讨研究了极限编程在中小型需求易变的信息管理系统开发项目的实际运用和实践总结。  相似文献   

11.
This paper shows that Extreme Programming (XP) is rooted in the principles of Lean Production. XP drastically slims down the development process, but adds extreme customer orientation and extreme ways of quality assurance to the process. The fact that XP and other agile methods in modern software development are based on lean principles explains why agile methods can produce high-quality software in a cost-effective way. The paper also contains a discussion of problems that come up when using XP in practice, and raises important questions about lean methods in software development; for example, whether lean methods scale to large software projects and large software organizations. When trying to answer such questions, software engineering could draw from experience with lean production and lean development in other fields.  相似文献   

12.
In agile software development, project estimation often depends on group discussion and expert opinions. Literature claims that group discussion in risk analysis helps to identify some of the crucial issues that might affect development, testing, and implementation. However, risk prioritization often relies on individual expert judgment. Therefore, Risk Poker, a lightweight risk-based testing methodology in which risk analysis is performed through group discussion that outperforms the individual analyst’s estimation is introduced in agile methods. Keeping in view aforementioned benefits Risk Poker can offer, unfortunately, no study has been conducted to empirically prove its ability to improve the testing process to date. Therefore, this research is aimed at closing this research gap by (i) deploying Risk Poker technique as a risk-based strategy in the agile development lifecycle, and (ii) empirically evaluating improvement of the proposed test process. For this purpose, Risk Poker technique is coupled with test coverage for an innovated testing process in an agile project following Scrum in order to provide adequate test coverage for testing activity. A case study was conducted with 6 teams of undergraduate students to estimate test coverage using Risk Poker for an e-commerce system. Three teams estimated their user stories using Risk Poker, while the rest estimated individually and used an average to obtain the statistical combination. The results showed that the proposed usage of Risk Poker for risk analysis and estimate test coverage outperformed the averaged statistical estimation of risk analysis for user stories.  相似文献   

13.
ContextAgile software development is an alternative software development methodology that originated from practice to encourage collaboration between developers and users, to leverage rapid development cycles, and to respond to changes in a dynamic environment. Although agile practices are widely used in organizations, academics call for more theoretical research to understand the value of agile software development methodologies.ObjectiveThis study uses shared mental models theory as a lens to examine practices from agile software methodologies to understand how agile practices enable software development teams to work together to complete tasks and work together effectively as a team.MethodA conceptual analysis of specific agile practices was conducted using the lens of shared mental models theory. Three agile practices from Xtreme Programming and Scrum are examined in detail, system metaphor, stand-up meeting, and on-site customer, using shared mental models theory.ResultsExamining agile practices using shared mental models theory elucidates how agile practices improve collaboration during the software development process. The results explain how agile practices contribute toward a shared understanding and enhanced collaboration within the software development team.ConclusionsThis conceptual analysis demonstrates the value of agile practices in developing shared mental models (i.e. shared understanding) among developers and customers in software development teams. Some agile practices are useful in developing a shared understanding about the tasks to be completed, while other agile practices create shared mental models about team processes and team interactions. To elicit the desired outcomes of agile software development methods, software development teams should consider whether or not agile practices are used in a manner that enhances the team’s shared understanding. Using three specific agile practices as examples, this research demonstrates how theory, such as shared mental models theory, can enhance our understanding regarding how agile practices are useful in enhancing collaboration in the workplace.  相似文献   

14.
This paper discusses the applicability of agile methods to aircraft embedded software development. It presents the main results of an experiment that combines agile practices from Scrum with model‐based development and distributed development. The experiment consists of the development of an aircraft cockpit display system divided in five distributed teams. Three features are analysed and quantified, using the output artefacts of each team: the artefacts' quality, the adherence to agile methods, and the adherence to standard DO‐178C. The main conclusion of the experiment is that there is a high correlation between the adherence to agile methods and the artefacts' quality, motivating the use of agile methods in aircraft industry. Also, the experiment evinced that agile methods does not specifically address the integration of distributed teams and the hardware/software integration. This lacuna affects the artefacts' quality. The results of the experiment emphasize the importance of concentrating future work in the proposal of specific agile practices for these activities. Copyright © 2017 John Wiley & Sons, Ltd.  相似文献   

15.
对目前国际上流行有效的敏捷项目管理方法之一的Scrum 进行了研究,简要介绍敏捷开发定义、适用场景、管 理工具,以及相应的管理模式。详细介绍Scrum 冲刺流程和定义,以Scrum 为例结合敏捷开发管理模式在互联网及软件行业 实际应用情况,讨论了其存在的优势和可以继续优化的方向。  相似文献   

16.
The impact of agile practices on communication in software development   总被引:2,自引:1,他引:1  
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:
  相似文献   

17.
There is an emerging interest in using agile methodologies in Global Software Development (GSD) to get the mutual benefits of both methods. Scrum is currently admired by many development teams as an agile most known methodology and considered adequate for collocated teams. At the same time, stakeholders in GSD are dispersed by geographical, temporal, and socio-cultural distances. Due to the controversial nature of Scrum and GSD, many significant challenges arise that might restrict the use of Scrum in GSD. We conducted a Systematic Literature Review (SLR) by following Kitchenham guidelines to identify the challenges that limit the use of Scrum in GSD and to explore the mitigation strategies adopted by practitioners to resolve the challenges. To validate our review findings, we conducted an industrial survey of 305 practitioners. The results of our study are consolidated into a research framework. The framework represents current best practices and recommendations to mitigate the identified distributed scrum challenges and is validated by five experts of distributed Scrum. Results of the expert review were found supportive, reflecting that the framework will help the stakeholders deliver sustainable products by effectively mitigating the identified challenges.  相似文献   

18.
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.  相似文献   

19.
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.  相似文献   

20.
This paper describes an empirical study, which addresses the aspect of well being amongst members of the software development teams. The question of interest is whether an agile methodology has any distinct effect on the well being of the software developers. Both quantitative and qualitative methods were utilised, including the participative observation, focus group interviews, close-ended questionnaires and simple statistical tests such as Spearman Correlation and Mann–Whitney test. Initial results showed that an agile methodology (XP) has a positive effect on the level of enthusiasm of the software developers in the most dynamic project. To understand why XP can increase enthusiasm, results are interpreted with references to cognitive, affective and managerial properties of the practices studied. This result needs further investigation on the individual effects of each practice on the wellbeing and attitudes of Software Engineering (SE) teams.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号