Submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the...

21
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(7436571) Tianyu Su (7475378) Nov 11,2013 Work Item Tagging ——Communicating Concerns in Collaborative Software Development

Transcript of Submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the...

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

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(7436571)

Tianyu Su (7475378)

Nov 11,2013

Work Item Tagging

——Communicating Concerns in Collaborative Software Development

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

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 designFuture 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

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

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

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

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

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

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

Dead March Jazz

When software development meets tagging Jazz

submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

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

Work item interface in IBM’s Jazz

submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

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

1. How is the social tagging mechanism adopted by developers for annotating work items2.What characteristics of tags are prevalent in the tagging of work items3. 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 team2. Enterprise Infrastructure (EI)

Case study

Research Questions

submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

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

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

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

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

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

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

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

Different Kinds of Tag Keywords

submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

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

Different Kinds of Tag Keywords

Frequency of New Tag Instances

The beauty of tags

Architecture : external libraryCollaboration : non_codeComponent : presence of other categorization mechanismsCrosscutting Requirements : performance , accessibilityOther Keywords : documentation, environment , planning , testing/debugging , tooling

HOW WHAT WHY

submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

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

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

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

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

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

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 outtag 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

OrganizationCategorization• 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 ExchangeHow do developers use tags?

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

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 thatthey 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

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

Vocabulary ConsensusHow does a team reach consensus on the tag vocabulary?

Explicit and direct way• Emails, 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

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

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 e-mails 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

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

Implications on Tool design

Tag property add to other artifacts1

• source files, test cases, requirement documents.

Display tag authors with tag instances

2

• The author cannot recognized the tags they built before on the interview.

The optional description should be added

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

• For synonymous keyword, folding would be beneficial

Add externalizing tags 5

• Info about tag keywords and instances, their authors, corresponding work items, the time of tag creationSuggest Tags for incoming work items

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

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

Analysis tags in informal processes

Show how socialComputing

mechanism oftagging 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 itemsConcrete suggestion

for toolimprovement

Blueprint Realistic

submitted to Professor Shervin Shirmohammadi in partial fulfillment of the requirements for the course ELG 5100

Future Work

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

Thank you for listening!