Ensemble: a Recommendation Tool  for Promoting Communications  in Software Teams Annie Ying, IBM Watson Research Ctr with ...
The Ensemble team... <ul><li>Watson, in NY and Cambridge, MA </li></ul><ul><ul><li>Kate Ehrlich (PI) </li></ul></ul><ul><u...
Distributed software teams face coordination challenges <ul><li>Lack of awareness of evolving code dependencies </li></ul>...
Need for communication <ul><li>Software gets developed faster when people working on related code communicate with each ot...
Existing work on improving coordination <ul><li>Collaboration features, such as extended instance messaging capabilities <...
Ensemble <ul><li>Select the right people </li></ul><ul><li>Select the right times to collaborate with them </li></ul><ul><...
Our previous research based on gaps Node Tie Congruence Arc Mirroring Congruence P i P j S Gap G P (P, A P )   G s (S, A s...
Jazz
Recommender
Watch List
Conclusion <ul><li>Brief introduction to Ensemble, a developer Recommender and Watch List that helps developers </li></ul>...
Jazz and Jazz development data <ul><li>A change set that is associated with a Work Item was delivered </li></ul><ul><li>An...
Software development governance (SDG) <ul><li>Businesses need techniques for understanding the  value  provided by softwar...
Tempo <ul><li>Addresses project scheduling risks </li></ul><ul><li>Allowing developers to express uncertainty in task esti...
Upcoming SlideShare
Loading in …5
×

Ensemble: a Recommendation Tool for Promoting Communications in Software Teams

1,449 views

Published on

Presentation by Annie Ying at the RSSE 2008 Workshop.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,449
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Successful software development requires effective coordination among developers. In this talk, we propose Ensemble, an approach and a set of tools that aim to help developers better coordinate their work. Built on IBM Rational Team Concert, Ensemble helps developers select the right people to collaborate with, the right times to collaborate with them, and to stay coordinated with them over time.
  • Ensemble: a Recommendation Tool for Promoting Communications in Software Teams

    1. 1. Ensemble: a Recommendation Tool for Promoting Communications in Software Teams Annie Ying, IBM Watson Research Ctr with colleagues from IBM Research
    2. 2. The Ensemble team... <ul><li>Watson, in NY and Cambridge, MA </li></ul><ul><ul><li>Kate Ehrlich (PI) </li></ul></ul><ul><ul><li>Mary Helander </li></ul></ul><ul><ul><li>Paul Matchen </li></ul></ul><ul><ul><li>Andrew Sempere </li></ul></ul><ul><ul><li>Peri Tarr </li></ul></ul><ul><ul><li>Clay Williams </li></ul></ul><ul><ul><li>Annie Ying </li></ul></ul><ul><li>Beijing, China </li></ul><ul><ul><li>Ping Cheng </li></ul></ul><ul><ul><li>Ya Bin Dang </li></ul></ul><ul><ul><li>Peng Ji </li></ul></ul><ul><ul><li>Pei Feng Xiang (former) </li></ul></ul><ul><ul><li>Shun Xiang Yang </li></ul></ul>
    3. 3. Distributed software teams face coordination challenges <ul><li>Lack of awareness of evolving code dependencies </li></ul><ul><ul><li>de Souza et al, 2007 </li></ul></ul><ul><li>Difficulty in maintaining coordination </li></ul><ul><ul><li>Cheng et al, 2003 </li></ul></ul>
    4. 4. Need for communication <ul><li>Software gets developed faster when people working on related code communicate with each other </li></ul><ul><ul><li>Cataldo et al, 2006 </li></ul></ul>
    5. 5. Existing work on improving coordination <ul><li>Collaboration features, such as extended instance messaging capabilities </li></ul><ul><ul><li>e.g., Cheng et. al. </li></ul></ul><ul><li>Expertise Recommendation Systems </li></ul><ul><ul><li>e.g., Expertise Browser, EEL </li></ul></ul><ul><li>Awareness tools </li></ul><ul><ul><li>e.g., Palantir </li></ul></ul>
    6. 6. Ensemble <ul><li>Select the right people </li></ul><ul><li>Select the right times to collaborate with them </li></ul><ul><li>Stay coordinated with them over time </li></ul><ul><li>2 views built on the Jazz platform and the Rational Team Concert client: </li></ul><ul><ul><li>Recommender </li></ul></ul><ul><ul><li>Watch List </li></ul></ul>
    7. 7. Our previous research based on gaps Node Tie Congruence Arc Mirroring Congruence P i P j S Gap G P (P, A P ) G s (S, A s ) P i P j S Congruence G P (P, A P ) G s (S, A s ) Gap P i P j S a G P (P, A P ) G s (S, A s ) S b Congruence P i P j S a G P (P, A P ) G s (S, A s ) S b
    8. 8. Jazz
    9. 9. Recommender
    10. 10. Watch List
    11. 11. Conclusion <ul><li>Brief introduction to Ensemble, a developer Recommender and Watch List that helps developers </li></ul><ul><ul><li>Select the right people </li></ul></ul><ul><ul><li>Select the right times to collaborate with them </li></ul></ul><ul><ul><li>Stay coordinated with them over time </li></ul></ul><ul><li>Next steps </li></ul><ul><ul><li>validating the tool in distributing development teams </li></ul></ul><ul><li>Visit our website: </li></ul><ul><ul><li>http://softdevgov.net </li></ul></ul>
    12. 12. Jazz and Jazz development data <ul><li>A change set that is associated with a Work Item was delivered </li></ul><ul><li>An iteration plan with an initial deadline is created </li></ul><ul><li>A process rule: “All JUnit tests must be run before code is delivered” is added </li></ul>Web client Rational Team Concert client Jazz development data stored in a Jazz repository
    13. 13. Software development governance (SDG) <ul><li>Businesses need techniques for understanding the value provided by software development and delivery </li></ul><ul><li>Businesses need insights into the risks incurred through software development and delivery activities </li></ul>
    14. 14. Tempo <ul><li>Addresses project scheduling risks </li></ul><ul><li>Allowing developers to express uncertainty in task estimates </li></ul><ul><li>Computes the probability that tasks given estimates that developers provide </li></ul>

    ×