Presentation is loading. Please wait.

Presentation is loading. Please wait.

Submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100 SITE, University of Ottawa ELG 5100 By.

Similar presentations


Presentation on theme: "Submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100 SITE, University of Ottawa ELG 5100 By."— Presentation transcript:

1 submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100 SITE, University of Ottawa ELG 5100 By Yitong Du( ) Tianyu Su ( ) Nov 11,2013 Work Item Tagging ——Communicating Concerns in Collaborative Software Development

2 content  Characteristics of Tag Keywords  Different Kinds of Tag Keywords  The role of tagging  Case study  Adoption of Tagging  Tagging and Software Development  Research Questions  Advice on Tool design  Future Work  Social Aspects in Software Development submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100  Limitation and improvement

3 Social Aspects in Software Development dealing with strategic and cultural issues longer development times when coordinating with remote colleagues dealing with communication breakdowns Unclear dependencies, circular dependencies, schedule changes managing plan failures issue tracking systems visualization tool for task mining and analyzing quantitative data to reveal information predict future behaviors Software development are more than writing source code Earlier researches submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

4 Tagging and Software Development Tags in social networks Facebook, YouTube, Flickr The bottom-up nature of tags Not predefined, # tags per item Tagging System(Informal) Classification mechanisms (Formal) The success of tags submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

5 Tagging and Software Development The Jazz initiative consists of three elements: An open platform for lifecycle tool integration A set of products that support the Jazz platform A vibrant community of Jazz developers, users, and business partners Introducing IBM’s Jazz When software development meets tagging submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

6 Work item interface in IBM’s Jazz submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

7 1. How is the social tagging mechanism adopted by developers for annotating work items 2.What characteristics of tags are prevalent in the tagging of work items 3. What role does the tagging feature play in the work practices of individual and team developers Research questions professional development teams from IBM 1.Jazz development team 2.Enterprise Infrastructure (EI) Case study Research Questions submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

8 Data Collection and Analysis Frequency of New Tag Instances submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100 Quantitative data : Access to relevant information Qualitative data : A series of interviews with developers Only focus on the “head” of the “long tail” data

9 Adoption of Tagging Frequency of New Tag Instances Spikes are mostly related to planning activities submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

10 Characteristics of Tag Keywords Frequency of New Tag Instances Tag keywords has the shape of a “long tail” submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

11 Different Kinds of Tag Keywords submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

12 Different Kinds of Tag Keywords Frequency of New Tag Instances The beauty of tags Architecture : external library Collaboration : non_code Component : presence of other categorization mechanisms Crosscutting Requirements : performance, accessibility Other Keywords : documentation, environment, planning, testing/debugging, tooling HOWWHATWHY submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

13  Why do developers tag work items and how they use?  How are tags managed?  The role of tagging  Are work item tags used for individual or collaborative use?  How does a team reach consensus on the tag vocabulary? submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

14 Tagging Audience: Self, Team Interview with Jazz developer “I don’t personally tag work items for myself that much. But I know when I was doing the testing for others and he had basically a tag for each command, so I would his conventions, cause I figured it would be easier for him. And I’m already on the work item when I’m creating it, so I would add those as I was creating them.” By Jazz Engineer Are work item tags used for individual and/or collaborative use? Some developers tag to service pressing individual needs, but also will use them to support collaboration within the team. tagging is more of a team activity than an individual one. Tags are added by feature owners, team managers, and release managers. submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

15 Tagging Motivation “Organize the work items in a way that is very free form and flexible.I can write queries that fit what is looking for rather than the 1,700 different fields that there are and trying to figure that out tag stuff is nice and free form” by EI developer “If we’re organizing a team and we have a bunch of work items that will span different projects, tag them all together, so that I can make one query for all those types of things. by EI Developer Organization Categorization Predominant reason Useful for capturing varying viewpoints Why do developers tag work items? Organization achieved through tags is different from other categorization mechanisms submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100 “I use [tags] to categorize things basically, so I can have queries and find things. I’m afraid of losing work items if they aren’t tagged.” by Jazz Administrator Finding work items tag keywords played an awareness role in informing others and being informed about work items Information Exchange How do developers use tags?

16 Tag Management Externalized lists of tag keywords to maintaining some consistency around tag used A mechanism by a new team to learn which tags were used in a project How are tags managed? be reluctant to do so when faced with possibilities for removing tags developers consider owners of work items should manage and remove tag instances on those work items “I would only [remove tags] if I attached the tag to the work item or if I owned the work item. I wouldn’t want to mess with—I don’t know—someone else’s categorization” by Jazz- Developer. Not very often happens “If I don’t like the way somebody tagged it or there’s a better tag for one that they used, I’d remove it and add another one. But that doesn’t actually happen terribly often.” by Jazz-Component leader Keeping track of tags Removing tags submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

17 Vocabulary Consensus How does a team reach consensus on the tag vocabulary? Explicit and direct way s, meeting that an explict consensus for the planning tag keywords. Particularly important for the planning tag keywords Don’t use too many acronyms,for example,do not use “perf”, instead use “performance” Tolerance for variation Tolerance for some variation in keywords. Ambiguity of tag keywords,use of synonyms may lead to problems, but interview do not reveal such issues. submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

18 Limitation and improvement of the research method Research Method the Jazz developers might be biased toward their own tool and their usage pattern might be different from other developers ; Analysis only analyzed the “head” of the “long tail” of the tag distribution that accounts for 80 percent of all tag instances. There may have been very important categories in there that should be examined. Small size data pool Jazz is still new and it is one of the first software development environments supporting tags for development tasks Limitations Interpretation interpretation of the tag categories could have potential errors. focus on the most frequently used ones, but considered all tag keywords mentioned during the interviews try to confirm their findings with other development teams(EI) that are much larger than the Jazz team. asking about specific tag keywords and instances in their interviews, reading the summaries and descriptions of the corresponding work items, follow-up s to their participants As more projects adopt Jazz or other development environments adopt tagging, additional studies should be conducted to gain further insights into the use of tags in software development Improvements submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

19 Implications on Tool design Tag property add to other artifacts 1 1 source files, test cases, requirement documents. Display tag authors with tag instances 2 2 The author cannot recognized the tags they built before on the interview. The optional description should be added 3 3 No obvious meaning for some tag keywords. When a new keyword is introduced, a dialogue could ask for an optional description. Offer management for tags on work items. 4 4 For synonymous keyword, folding would be beneficial Add externalizing tags 5 5 Info about tag keywords and instances, their authors, corresponding work items, the time of tag creation Suggest Tags for incoming work items 6 6 Suggest Tag keywords that extensively been used Planning related keywords. Keywords been applied to work items in the same category. submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

20 Analysis tags in informal processes Show how social Computing mechanism of tagging has been adopted Future work lies in the examination of the benefits of social computing mechanisms in other areas of software development Tagging may play an important role beyond work items Concrete suggestion for tool improvement BlueprintRealistic submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100 Future Work

21 Thank you for listening !


Download ppt "Submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100 SITE, University of Ottawa ELG 5100 By."

Similar presentations


Ads by Google