• DocumentCode
    3602206
  • Title

    Facilitating Coordination between Software Developers: A Study and Techniques for Timely and Efficient Recommendations

  • Author

    Blincoe, Kelly ; Valetto, Giuseppe ; Damian, Daniela

  • Author_Institution
    Software Eng. Global Interaction Lab., Univ. of Victoria, Victoria, BC, Canada
  • Volume
    41
  • Issue
    10
  • fYear
    2015
  • Firstpage
    969
  • Lastpage
    985
  • Abstract
    When software developers fail to coordinate, build failures, duplication of work, schedule slips and software defects can result. However, developers are often unaware of when they need to coordinate, and existing methods and tools that help make developers aware of their coordination needs do not provide timely or efficient recommendations. We describe our techniques to identify timely and efficient coordination recommendations, which we developed and evaluated in a study of coordination needs in the Mylyn software project. We describe how data obtained from tools that capture developer actions within their Integrated Development Environment (IDE) as they occur can be used to timely identify coordination needs; we also describe how properties of tasks coupled with machine learning can focus coordination recommendations to those that are more critical to the developers to reduce information overload and provide more efficient recommendations. We motivate our techniques through developer interviews and report on our quantitative analysis of coordination needs in the Mylyn project. Our results suggest that by leveraging IDE logging facilities, properties of tasks and machine learning techniques awareness tools could make developers aware of critical coordination needs in a timely way. We conclude by discussing implications for software engineering research and tool design.
  • Keywords
    groupware; learning (artificial intelligence); programming environments; project management; software tools; IDE logging facilities; Mylyn software project; coordination needs quantitative analysis; coordination recommendation; integrated development environment; machine learning technique awareness tools; software developers; software engineering research; task properties; tool design; Accuracy; Correlation; Encoding; Interviews; Manuals; Software; Statistical analysis; Computer-supported cooperative work; Human Factors in Software Design; Management; Metrics/Measurement; Productivity; Programming Teams; human factors in software design; management; metrics/measurement; productivity; programming teams;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2015.2431680
  • Filename
    7105409