首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 28 毫秒
1.
Complex software development projects rely on the contribution of teams of developers, who are required to collaborate and coordinate their efforts. The productivity of such development teams, i.e., how their size is related to the produced output, is an important consideration for project and schedule management as well as for cost estimation. The majority of studies in empirical software engineering suggest that - due to coordination overhead - teams of collaborating developers become less productive as they grow in size. This phenomenon is commonly paraphrased as Brooks’ law of software project management, which states that “adding manpower to a software project makes it later”. Outside software engineering, the non-additive scaling of productivity in teams is often referred to as the Ringelmann effect, which is studied extensively in social psychology and organizational theory. Conversely, a recent study suggested that in Open Source Software (OSS) projects, the productivity of developers increases as the team grows in size. Attributing it to collective synergetic effects, this surprising finding was linked to the Aristotelian quote that “the whole is more than the sum of its parts”. Using a data set of 58 OSS projects with more than 580,000 commits contributed by more than 30,000 developers, in this article we provide a large-scale analysis of the relation between size and productivity of software development teams. Our findings confirm the negative relation between team size and productivity previously suggested by empirical software engineering research, thus providing quantitative evidence for the presence of a strong Ringelmann effect. Using fine-grained data on the association between developers and source code files, we investigate possible explanations for the observed relations between team size and productivity. In particular, we take a network perspective on developer-code associations in software development teams and show that the magnitude of the decrease in productivity is likely to be related to the growth dynamics of co-editing networks which can be interpreted as a first-order approximation of coordination requirements.  相似文献   

2.
This paper analyzes an association of a deviation of the actual cost (measured by person-month) from the estimated cost with the quality and the productivity of software development projects. Although the obtained results themselves may not be new from the academic point of view, they could provide motivation for developers to join process improvement activities in a software company and thus become a driving force for promoting the process improvement.We show that if a project is performed faithfully under a well-organized project plan (i.e. the plan is first constructed according to the standards of good writing, and then a project is managed and controlled to meet the plan), the deviation of the actual cost from the estimated one becomes small. Next we show statistically that projects with small deviation of the cost estimate tend to achieve high quality of final products and high productivity of development teams. In this analysis, the actual project data on 37 projects at a certain company are extensively applied.  相似文献   

3.
This study evaluates a vendor supplied structured software development and maintenance methodology (SDMM) which was implemented in a large manufacturing firm. Thirty project teams using the methodology are measured for contributions to IS productivity compared to teams using no methodology. The performance of these projects is evaluated using both objective metrics and subjective measures taken from stakeholders of the software applications. The performance results of these thirty systems are then contrasted to the performance results of thirty-five applications in the same firm that do not use this SDMM and to one hundred sixteen applications across eleven other organizations. All of these applications had been in operation at least six months when they were studied. The software systems developed and maintained using the SDMM were found to have some significant cost and quality performance gains over the applications that do not use a methodology. However, these systems were found to have lower levels of configuration management, a feature not found within the methodology.  相似文献   

4.
Parrish  A. Smith  R. Hale  D. Hale  J. 《Software, IEEE》2004,21(5):76-79
Pair programming purportedly delivers quality code with little productivity loss. The authors' field study, outside the pair programming environment, shows that two-person teams working independently are more productive than those working concurrently; agile methods may overcome inherent productivity losses of concurrent development. This research contrasts starkly with our field study findings. We decided to reexamine our earlier productivity data from teams of two and ask: Would our previous findings of concurrent-work productivity loss be reversed if we look only at programming pairs rather than teams of all sizes? If so, we could conclude that pairs are naturally more productive than larger teams, regardless of the collaborative process. If not, we could conclude that the collaboration mechanisms prescribed in pair programming might overcome a natural loss of productivity from concurrent work. We offer these findings and their implications as a benchmark against which we might measure the potential of pair programming practices.  相似文献   

5.
Introducing new and specialized technology is often seen as a way of meeting increasing non-functional requirements. An example of such a technology is a software platform that provides high performance and availability. The novelty of such a platform and lack of related experience and competence among the staff may affect initial development productivity. The competence problems should disappear with time. In this paper, we present a study, which we conducted at Ericsson. The purpose of the study was to assess the impact of experience and maturity on productivity in software development on the specialized platform. We quantify the impact by comparing productivity of two projects. One represents an initial development stage while the other represents a subsequent and thus more matured development stage. Both projects resulted in large commercial products. We reveal a factor of four difference in productivity. The difference was caused by a higher code delivery rate and a lower number of code lines per functionality in the latter project. We assess the impact of both these issues on productivity and explain their nature. Based on our findings, we suggest a number of improvement suggestions and guidelines for the process of introducing a new technology.  相似文献   

6.
The identification, combination, and interaction of the many factors which influence software development productivity makes the measurement, estimation, comparison and tracking of productivity rates very difficult. Through the analysis of a European Space Agency database consisting of 99 software development projects from 37 companies in a European countries, the paper seeks to provide significant and useful Information about the major factors which influence the productivity of European space, military, and industrial applications, as well as to determine the best metric for measuring the productivity of these projects. Several key findings emerge from the study. The results indicate that some organizations are obtaining significantly higher productivity than others. Some of this variation is due to the differences in the application category and programming language of projects in each company; however, some differences must also be due to the ways in which these companies manage their software development projects. The use of tools and modern programming practices were found to be major controllable factors in productivity improvement. Finally, the lines-of-code productivity metric is shown to be superior to the process productivity metric for projects in the authors' database  相似文献   

7.
Large and middle-sized manufacturers need to carry out multiple development projects simultaneously to serve a variety of products to markets with different customer needs. The purpose of this article is to explore product development project and team organization with respect to technology and design transfer strategy among multiple development projects, as well as their impact on project integrity and performance. The focus is on the strategic and cross-functional integration of product and process generations with distinctive platforms and their derivative projects. First, this study proposes a concept of multilayer development project and team organization, which builds a creative environment through effective information sharing among and within the individual development projects and teams. Second, using analysis results on six product development projects at a large Japanese computer manufacturer, it is concluded that multilayer teams are effective in realizing project integrity through implementing inter- and intraproduct and process generation technology and design transfer strategy. © 1998 John Wiley & Sons, Inc.  相似文献   

8.
Managing global software development teams is not an easy task because of the additional problems and complexities that have to be taken into account. This paper defines VTManager, a methodology that provides a set of efficient practices for global virtual team management in software development projects. These practices integrate software development techniques in global environments with others such as explicit practices for global virtual team management, definition of skills and abilities needed to work in these teams, availability of collaborative work environments and shared knowledge management practices. The results obtained and the lessons learned from implementing VTManager in a pilot project to develop software tools for collaborative work in rural environments are also presented. This project was carried out by geographically distributed teams involving people from seven countries with a high level of virtualness.  相似文献   

9.
Traditionally, the main focus of the information system (IS) literature has been on technical aspects related to system development projects. Furthermore, research in the IS field has mainly focused on co-located project teams. In this respect, social aspects involved in IS projects were neglected or scarcely reported. To fill this gap, this paper studies the contribution of social ties and knowledge sharing to successful collaboration in distributed IS development teams. Data were drawn from two successful globally distributed system development projects at SAP and LeCroy. Data collected were codified using Atlas.ti software. The results suggest that human-related issues, such as rapport and transactive memory, were important for collaborative work in the teams studied. The paper concludes by discussing the implications for theory and suggesting a practical guide to enhance collaborative work in globally distributed teams.  相似文献   

10.
ContextThe management of software development productivity is a key issue in software organizations, where the major drivers are lower cost and shorter time-to-market. Agile methods, including Extreme Programming and Scrum, have evolved as “light” approaches that simplify the software development process, potentially leading to increased team productivity. However, little empirical research has examined which factors do have an impact on productivity and in what way, when using agile methods.ObjectiveOur objective is to provide a better understanding of the factors and mediators that impact agile team productivity.MethodWe have conducted a multiple-case study for 6 months in three large Brazilian companies that have been using agile methods for over 2 years. We have focused on the main productivity factors perceived by team members through interviews, documentation from retrospectives, and non-participant observation.ResultsWe developed a novel conceptual framework, using thematic analysis to understand the possible mechanisms behind such productivity factors. Agile team management was found to be the most influential factor in achieving agile team productivity. At the intra-team level, the main productivity factors were team design (structure and work allocation) and member turnover. At the inter-team level, the main productivity factors were how well teams could be effectively coordinated by proper interfaces and other dependencies and avoiding delays in providing promised software to dependent teams.ConclusionTeams should be aware of the influence and magnitude of turnover, which has been shown negative for agile team productivity. Team design choices remain an important factor impacting team productivity, even more pronounced on agile teams that rely on teamwork and people factors. The intra-team coordination processes must be adjusted to enable productive work by considering priorities and pace between teams. Finally, the revised conceptual framework for agile team productivity supports further tests through confirmatory studies.  相似文献   

11.
This paper provides empirical evidence about how free/libre open source software development teams self-organize their work, specifically, how tasks are assigned to project team members. Following a case study methodology, we examined developer interaction data from three active and successful FLOSS projects using qualitative research methods, specifically inductive content analysis, to identify the task-assignment mechanisms used by the participants. We found that ‘self-assignment’ was the most common mechanism across three FLOSS projects. This mechanism is consistent with expectations for distributed and largely volunteer teams. We conclude by discussing whether these emergent practices can be usefully transferred to mainstream practice and indicating directions for future research.  相似文献   

12.
This paper shows how the concepts of lean manufacturing can be successfully transferred from the manufacture of cars and electrical goods to software development. The key lean concept is to minimize work in progress, so quickly forcing any production problems into the open. Production is then halted to allow each problem with the system producing the goods, to be permanently corrected. While frustrating at first, the end result is very high levels of productivity and quality.Large industrial companies are beginning to transfer their lean production expertise to their in-house software development projects. The two case studies reported here confirm that lean software development can produce rapid quality and productivity gains. A major implementation issue is that lean software development may require deep changes in the way an organization is managed.  相似文献   

13.
The CP-6 operating system and its compilers, databases, communications, and end-user interfaces were designed, developed, tested, and installed at customer sites in three years from the date the project began. This paper describes the history of this project, the methodology used to produce the 4.7 million lines of code, and the metrics covering development productivity and software quality over 18 releases in the last 12 years. The rigorous methodology and standards used throughout the project, which cover the full lifecycle of design, development, and support, include a statistical database covering development manpower, lines of code produced, and error reports covering 12 years in customer installations. The project achieved software development productivity rates twice as high as those of comparable projects, and error rates half those of comparable projects for product software. The key lessons learned may be applied to other software development projects.  相似文献   

14.
Information system (IS) managers have long recognised the need to use project management approaches in the design and delivery of their system development projects. The result has been the widespread use of project teams headed by a project leader or manager. However, given the fact that there has been a low success rate for IS projects, there is a growing need to seek out new methods and controls for projects. One approach involves the practice of altering the project environment prior to the commencement of project tasks. To determine whether such pre-project activities may be effective, a model is proposed and tested relating the activities to the performance of the project manager and characteristics of an effective project team. Data from a sample of 186 project team members indicate that the pre-project activities lead to more effective teams and managers and eventually to project success. Thus, it is important that organisations begin work on projects at an earlier stage.  相似文献   

15.
We present the results of an extensive and substantial case study on pair programming, which was carried out in courses for software development at the University of Dortmund, Germany. Thirteen software development teams with about 100 students took part in the experiments. The groups were divided into two sets with different working conditions. In one set, the group members worked on their projects in pairs. Even though the paired teams could only use half of the workstations the teams of individual workers could use, the paired teams produced nearly as much code as the teams of individual workers at the same time. In addition, the code produced by the paired teams was easier to read and to understand. This facilitates finding errors and maintenance.  相似文献   

16.
Morozoff  Edmund 《Software, IEEE》2010,27(1):72-77
Developers should factor rework into sizing and productivity calculations when estimating software effort. Reworked code is software created during development that doesn't exist in the final build. Using lines of code as a sizing metric is helpful when estimating projects with similar domains, platforms, processes, development teams, and coding constraints. A simple method can measure new effective lines of code (nLOC)—that is, added, changed, or deleted nonblank, noncomment lines of code—during development. Analysis of three projects shows that between 19 and 40 percent of the code written wasn't in the final release, with the nLOC measured biweekly and accumulated over each project's development.  相似文献   

17.
Team development and group processes of virtual learning teams   总被引:2,自引:0,他引:2  
This study describes the community building process of virtual learning teams as they form, establish roles and group norms, and address conflict. Students enrolled in an HRD masters program taught entirely online were studied to determine (1) how virtual learning teams develop their group process, and (2) what process and strategies they use as they work through the stages of group development. Both quantitative and qualitative methods of inquiry were used to capture the dynamic interaction within groups and the underlying factors that guided group process and decision-making. The results show that virtual learning groups can collaborate effectively from a distance to accomplish group tasks. The development of virtual learning teams is closely connected to the timeline for their class projects. Virtual teams are also similar in terms of their task process and the use of communication technologies. In contrast to face-to-face teams, the leadership role of virtual teams is shared among team members. Recommendations are discussed in order to facilitate peak integration of virtual learning teams into Internet-based training courses.  相似文献   

18.
According to proponents, extreme programming creates focused, efficient software development that heavily emphasizes customer involvement. As software developers for mission-critical two-way radio systems in Motorola's commercial, government, and industrial solutions sector, we'd been hearing a lot about XP's benefits. Software development teams constantly battle to increase productivity while maintaining or improving quality . Four Motorola teams piloted extreme programming to see if it would let them satisfy their customers' constantly changing requirements while improving productivity.  相似文献   

19.
Many development teams, especially distributed teams, require process support to adequately coordinate their complex, distributed work practices. Process modeling and enactment tools have been developed to meet this requirement. The authors discuss the Serendipity-II process management environment which supports distributed process modeling and enactment for distributed software development projects. Serendipity-II is based on a decentralized architecture and uses Internet communication facilities  相似文献   

20.
Recent advances in information technology have made Internet-based collaboration much easier. It is now possible for a software team to draw on talented developers from around the world without the need to gather them together physically. However, being able to tap into a large pool of talent does not guarantee success. Software managers have to be able to manage these distributed teams. They need to define sharper processes and ensure that they are followed. They also need to better control project execution. To do so effectively, we have developed a tool that integrates features for both project and process management. Existing project management tools were originally designed for projects on a single site. Many of them do not provide the features necessary to support cooperative multi-site software projects or process management. We have developed a tool, called IPPM, which supports these features. IPPM, which integrates features for process and project management, resolves differences between existing project and process tools, and provides a number of unique features to support multi-site development. IPPM has been implemented and used by several development teams working in different regions in Hong Kong and Mainland China.  相似文献   

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

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