首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
Traditionally, software development processes have relied on the use of the “Waterfall” and “Vee” models. Later, Agile methodologies were used to handle the challenges of managing complex projects during the development phase. Agile methodologies are a group of incremental and iterative methods that are more effective, and have been used in project management. Kanban and Scrum are two powerful Agile project management approaches in software development. The objective of Scrum and Kanban is achieved by optimizing the development process by identifying the tasks, managing time more effectively, and setting-up teams. A review of the literature reveals that there is a lack of statistical evidence to conclude which methodology is more effective in dealing with the traditional project management factors of budget handling, risk control, quality of the project, available resources, having clear project scope, and schedule handling. This research statistically compares the effectiveness of the Scrum and Kanban methods in terms of their effects on the project management factors for software development projects. Numerical analysis is performed based on survey responses from those with experience in the Scrum and Kanban methods. Results suggest that both Scrum and Kanban lead to the development of successful projects, and that the Kanban method can be better than the Scrum method in terms of managing project schedule.  相似文献   

2.
ContextAgile software development changes the nature of collaboration, coordination, and communication in software projects.ObjectiveOur objective was to understand the challenges of shared decision-making in agile software development teams.MethodWe designed a multiple case study consisting of four projects in two software product companies that recently adopted Scrum. We collected data in semi-structured interviews, through participant observations, and from process artifacts.ResultsWe identified three main challenges to shared decision-making in agile software development: alignment of strategic product plans with iteration plans, allocation of development resources, and performing development and maintenance tasks in teams.ConclusionAgile software development requires alignment of decisions on the strategic, tactical, and operational levels in order to overcome these challenges. Agile development also requires a transition from specialized skills to redundancy of functions and from rational to naturalistic decision-making. This takes time; the case companies needed from one to two years to change from traditional, hierarchical decision-making to shared decision-making in software development projects.  相似文献   

3.
ContextAlthough Agile software development models have been widely used as a base for the software project life-cycle since 1990s, the number of studies that follow a sound empirical method and quantitatively reveal the effect of using these models over Traditional models is scarce.ObjectiveThis article explains the empirical method of and the results from systematic analyses and comparison of development performance and product quality of Incremental Process and Agile Process adapted in two projects of a middle-size, telecommunication software development company. The Incremental Process is an adaption of the Waterfall Model whereas the newly introduced Agile Process is a combination of the Unified Software Development Process, Extreme Programming, and Scrum.MethodThe method followed to perform the analyses and comparison is benefited from the combined use of qualitative and quantitative methods. It utilizes; GQM Approach to set measurement objectives, CMMI as the reference model to map the activities of the software development processes, and a pre-defined assessment approach to verify consistency of process executions and evaluate measure characteristics prior to quantitative analysis.ResultsThe results of the comparison showed that the Agile Process had performed better than the Incremental Process in terms of productivity (79%), defect density (57%), defect resolution effort ratio (26%), Test Execution V&V Effectiveness (21%), and effort prediction capability (4%). These results indicate that development performance and product quality achieved by following the Agile Process was superior to those achieved by following the Incremental Process in the projects compared.ConclusionThe acts of measurement, analysis, and comparison enabled comprehensive review of the two development processes, and resulted in understanding their strengths and weaknesses. The comparison results constituted objective evidence for organization-wide deployment of the Agile Process in the company.  相似文献   

4.

Agile is often associated with a lack of architectural thinking causing technical debt but has the advantage of user centricity and a strong focus on value. Model-driven software engineering (MDSE) strongly performs for building a quality architecture and code, but lacks focus on user requirements and tends to consider development as a monolithic whole. The combination of Agile and MDSE has been explored, but a convincing integrated method has not been proposed yet. This paper addresses this gap by exploring the specific combination of MERODE—as an example of a proven MDSE method—with Scrum, a reference agile method offering a concrete (sprint-based) life cycle management on the basis of user stories. The method resulting of this integration is called Agile MERODE; it is driven by user stories, themselves associated with behavior-driven development scenarios. It allows for domain-driven design and permits fast development from domain models by means of code generation. An illustrative example further clarifies the practical application of Agile MERODE, while a case study shows the planning game application in the case’s context. While the approach, in its entirety, allows reducing technical debt by building the architecture in a logical, consistent and complete manner, introducing MDSE involves a trade-off with pure value-driven development. Agile MERODE contributes to the state of the art by showing how to increase user centricity in MDSE, how to align model-driven engineering with the Scrum cycle, and how to reduce the technical debt of agile developments yet remaining value-focused.

  相似文献   

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

6.
敏捷方法Scrum可有效解决中小型软件实施CMMI时遇到的诸多问题,但难以满足安全关键软件的特殊需要。对Scrum与CMMI结合的可行性和中小型安全关键软件的主要特征进行了深入分析,在此基础上提出了一种适用于中小型安全关键软件的Scrum与CMMI的结合方法。  相似文献   

7.
敏捷开发模式的盛行掀起了自动化测试的一轮热潮,测试和开发合作越来越密切。本文研究的自动化测试框 架,将BDD 的敏捷开发理念与软件测试相融合,通过统一的Gherkin 语言定义验收测试标准,帮助业务人员、测试人员和开发 人员形成对需求明确统一的认识,然后通过web driver 测试代码实现可执行的验收测试,以TDD 的方式实现产品代码。该框 架使用Specflow、Selenium 和MsTest 等测试工具,真正实现了自动化测试,大大减少了手工测试的压力,促进开发测试过程中 软件开发涉众之间的沟通,及时得到用户反馈,满足快速发布产品的需求,提升产品质量。  相似文献   

8.
9.
敏捷软件开发是一种相对传统软件开发方法而言的轻型方法,强调以人为本,尽可能少的约束开人员,利于发挥开发人员的的创造性,也是提高软件质量的根本。开发人员必须遵循敏捷开发实践,提高自身水平,游戏软件的开发是进行实践的好方式,本文以五子棋游戏开发为例,给出敏捷开发的一些关键实践,需求的敏捷获取、代码的重构及测试驱动等响应需求变化的敏捷开发方法。  相似文献   

10.
ContextAgile software development approaches are currently becoming the industry standard for Web Application development. On the other hand, Model-Driven Web Engineering (MDWE) methodologies are known to improve productivity when building this kind of applications. However, current MDWE methodologies tend to ignore important aspects of Web Applications development supported by agile processes, such as constant customer feedback or early design of user interfaces.ObjectiveIn this paper we analyze the difficulties of supporting agile features in MDWE methodologies. Then, we propose an approach that eases the incorporation of well-known agile practices to MDWE.MethodWe propose using User Interface prototypes (usually known as mockups) as a way to start the modeling process in the context of a mixed agile-MDWE process. To assist this process, we defined a lightweight metamodel that allows modeling features over mockups, interacting with end-users and generating MDWE models. Then, we conducted a statistical evaluation of both approaches (traditional vs. mockup-based modeling).ResultsFirst we comment on how agile features can be added to MDWE processes using mockups. Then, we show by means of a quantitative study that the proposed approach is faster, less error-prone and still as complete as traditional MDWE processes.ConclusionThe use of mockups to guide the MDWE process helps in the reduction of the development cycle as well as in the incorporation of agile practices in the model-driven workflow. Complete MDWE models can be built and generated by using lightweight modeling over User Interface mockups, and this process suggests being more efficient, in terms of errors and effort, than traditional modeling in MDWE.  相似文献   

11.
Agile software development techniques are promising to deliver software faster, in better quality, and at a lower cost. Most examples relate to small, co-located teams working on a completely new project, with no legacy. This article focuses on applying Agile methods to a world-wide project with hundreds of developers delivering a market-leading product.In contrast to projects starting from scratch, existing customers have natural demands for support, bug fixes, and new features that focus on their particular needs.This article provides an overview of the most important Agile software development methods in addition to presenting ideas and solutions on how to apply Agile ideas to a large, existing product or solution. Important aspects that should be considered while deciding on what the Agile setup for your next software project should look like are explained.  相似文献   

12.
13.
The Scrum software development process for small teams   总被引:1,自引:0,他引:1  
Rising  L. Janoff  N.S. 《Software, IEEE》2000,17(4):26-32
In today's software development environment, requirements often change during the product development life-cycle to meet shifting business demands, creating endless headaches for development teams. We discuss our experience in implementing the Scrum software development process to address these concerns  相似文献   

14.
In order for an organization to reach SEI level 4 capability, quantitative process management is essential. As a step towards SEI level 4 the GSM BSS software organization has developed a metric analysis programme which is being used during the system test phase. This programme focuses on metrics analysis which allows quantitative metric information to be correlated with non-metric knowledge and used real-time. It has allowed us to take a giant leap from simply collecting pass/fail data during testing to analysing the data, so they can be used by the project. Quantitative information is used to plan and monitor test activities and evaluate the product at the end of testing. Not only has this programme provided a technique for managing the test phase, it has provided a mechanism for improving the quality of our releases and we are beginning to use it as a prediction of the quality of our product as release. The metric analysis programme also provides a mechanism for improving the test process and is also being utilized to indicate areas requiring improvement within development. Our paper is a case study of how we use test metrics. It discusses the corrective actions that resulted from the analysis of the metrics. We have found this approach invaluable as we improve the quality of our processes and product.  相似文献   

15.
文俊浩  田清  李朋 《计算机工程》2011,37(19):35-37
针对某公司互联网产品的开发项目,分析基于Scrum的软件敏捷开发过程,给出其缺陷管理目标,即敏捷地响应缺陷和实时地改进开发过程,设计相应的缺陷管理方法,包括缺陷管理流程模型以及缺陷度量方法。在此基础上,开发缺陷管理工具RQMS并加以应用。应用结果表明,该缺陷管理方法在基于Scrum软件敏捷开发中具有较好的效果。  相似文献   

16.
The increasing trend toward complex software systems has highlighted the need to incorporate quality requirements earlier in the development cycle. We propose a new methodology for monitoring quality in the earliest phases of real-time reactive system (RTRS) development. The targeted quality characteristics are functional complexity, performance, reliability, architectural complexity, maintainability, and test coverage. All these characteristics should be continuously monitored throughout the RTRS development cycle, to provide decision support and detect the first signs of low or decreasing quality as the system design evolves. The ultimate goal of this methodology is to assist developers in dealing with complex user requirements and ensure that the formal development process yields a high-quality application. Each aspect of quality monitoring is formalized mathematically and illustrated using a train-gate-controller case study.  相似文献   

17.
针对依据CMMI模型进行质量管理的组织如何使用敏捷方法的问题,概述CMMI模型和敏捷方法的基本特点,单独使用CMMI或者敏捷方法时遇到的问题,分析了CMMI模型和敏捷方法的互补互利关系,说明依据CMMI建立的质量管理体系引入敏捷方法的可行性。针对组织初次引用敏捷方法时,介绍项目在项目已定义过程中引入Scrum和持续集成等敏捷方法的具体实践。  相似文献   

18.
Scrum是一种兼顾计划性与灵活性的敏捷开发过程,能让软件开发团队具有快速工作和响应变化的能力.软件开发生命周期中每一个环节都会产生大量的数据,如果能记录下这些数据进行分析,并通过可视化等手段展示和反馈,则能进一步促进团队管理、项目管理,提高开发效率.现有的软件开发管理工具中,项目管理和代码管理往往是相互独立的,这导致了数据的分散和未充分利用.为推广以Scrum为核心、以数据为驱动的敏捷软件开发过程,开发了一款基于云服务的Onboard敏捷软件开发协同工具, 利用代码提交和任务的关联,创造性地将敏捷过程管理、源代码管理和项目管理有机地整合到一起,支持端到端的软件全生命周期管理,从而能记录下软件开发过程中产生的所有数据并提取有价值的信息,为中小软件开发团提供一站式的敏捷开发管理与协同服务.1)介绍了Onboard的设计理念;2)围绕着“如何利用软件开发过程中产生的数据更好地支持敏捷开发过程”和“如何评估团队成员贡献度”两大课题,全面介绍了数据可视化和数据分析在Onboard敏捷软件开发协同工具中的应用,并针对一系列相关问题提出了解决方案;3)对值得进一步研究的问题进行了展望.  相似文献   

19.
Agile software development: the business of innovation   总被引:3,自引:0,他引:3  
《Computer》2001,34(9):120-127
The rise and fall of the dotcom-driven Internet economy shouldn't distract us from seeing that the business environment continues to change at a dramatically increasing pace. To thrive in this turbulent environment, we must confront the business need for relentless innovation and forge the future workforce culture. Agile software development approaches, such as extreme programming, Crystal methods, lean development, Scrum, adaptive software development (ASD) and others, view change from a perspective that mirrors today's turbulent business and technology environment  相似文献   

20.
Quality assessment is a critical component in crowdsourcing-based software engineering (CBSE) as software products are developed by the crowd with unknown or varied skills and motivations. In this paper, we propose a novel metric called the project score to measure the performance of projects and the quality of products for competitionbased software crowdsourcing development (CBSCD) activities. To the best of our knowledge, this is the first work to deal with the quality issue of CBSE in the perspective of projects instead of contests. In particular, we develop a hierarchical quality evaluation framework for CBSCD projects and come up with two metric aggregation models for project scores. The first model is a modified squale model that can locate the software modules of poor quality, and the second one is a clustering-based aggregationmodel, which takes different impacts of phases into account. To test the effectiveness of the proposed metrics, we conduct an empirical study on TopCoder, which is a famous CBSCD platform. Results show that the proposed project score is a strong indicator of the performance and product quality of CBSCD projects.We also find that the clustering-based aggregation model outperforms the Squale one by increasing the percentage of the performance evaluation criterion of aggregation models by an additional 29%. Our approach to quality assessment for CBSCD projects could potentially facilitate software managers to assess the overall quality of a crowdsourced project consisting of programming contests.  相似文献   

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

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