Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Mylyn/Activity Tracing For Mylyn"

(Mookup)
 
(61 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
This is the wiki page for the [http://www.google-melange.com/gsoc/homepage/google/gsoc2012 GSOC]2012 project [http://www.google-melange.com/gsoc/project/google/gsoc2012/budili/27001 Activity Tracing for Mylyn]. <br><br>
 
This is the wiki page for the [http://www.google-melange.com/gsoc/homepage/google/gsoc2012 GSOC]2012 project [http://www.google-melange.com/gsoc/project/google/gsoc2012/budili/27001 Activity Tracing for Mylyn]. <br><br>
'''Student''': Timur Achmetow <br>
+
'''Student''': Timur A.<br>
 
'''Mentor''': Steffen Pingel <br>
 
'''Mentor''': Steffen Pingel <br>
 
Bug ID: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=376233 BUG 376233] / [https://bugs.eclipse.org/bugs/show_bug.cgi?id=355974 BUG 355974]
 
Bug ID: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=376233 BUG 376233] / [https://bugs.eclipse.org/bugs/show_bug.cgi?id=355974 BUG 355974]
Line 19: Line 19:
 
#Optional: Dashboard, which aggregates data about several tasks.
 
#Optional: Dashboard, which aggregates data about several tasks.
  
== Mookup ==
+
== Mockup ==
  
 
[[Image:Mookup.png]]  
 
[[Image:Mookup.png]]  
  
<br> First implemenation of the TableViewer:<br>  
+
== Prototype  ==
[[Image:TableViewer_In_TaskEditor.png]]
+
 
 +
Current prototype is integrated in the Task Editor. A new tab extend the task editor for the activity tracing informations.<br>  
 +
The TreeViewer shows at the moment the following informations:
 +
#'''commit data''': commit message, author, date, changed files
 +
#'''build data''': build project, build status, test summary, build date
 +
#'''review data''': task id, author, summary, date
 +
[[Image:task_editor_commits_builds_reviews.png]]
 +
 
 +
== Software Architecture / Plugin Structure  ==
 +
For this project I have created two new plugins named '''o.e.m.tasks.activity.core''' and '''o.e.m.tasks.activity.ui''' which have the following dependencies:<br>
 +
[[Image:Plugin_Dependencies.png]]
  
 
== ToDos  ==
 
== ToDos  ==
  
*extend the comment stream for additional informations: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=376233 BUG 376233] <br>- commits<br>- builds<br>- reviews<br>
+
*extend the Task Editor for additional informations: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=376233 BUG 376233] <br>- commits (shows the author, date, message, changed files)<br>- builds (shows the build status, build summary, build timestamp)<br>- reviews (shows the task id, author, date, summary )<br>
  
  
 
*create a mookup for this data: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378001 BUG 378001]  
 
*create a mookup for this data: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378001 BUG 378001]  
*get the additional informations from the workspace: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378002 BUG 378002]<br>- EGit repo model: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378097 BUG 378097]<br>- Gerrit data model: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378101 BUG 378101]<br>- Hudson data model<br><br>
+
*software/plugin design for this project: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=382115 BUG 382115]
 +
*define data model for task activity records: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=382788 BUG 382788] / [https://git.eclipse.org/r/#/c/6910/ Gerrit Review ]
 +
*get the additional informations from the workspace: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378002 BUG 378002]<br>- EGit repo model: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378097 BUG 378097] / [https://bugs.eclipse.org/bugs/show_bug.cgi?id=380584 Bug 380584] / [https://bugs.eclipse.org/bugs/show_bug.cgi?id=380843 Bug 380843] <br>- Gerrit data model: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378101 BUG 378101]<br>- Hudson data model: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=383020 BUG 383020]<br><br>
  
  
*integrate a tableviewer in the comment stream: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378003 BUG 378003]<br>- show the commit informations in the tableviewer: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378005 BUG 378005]<br>- extend the tableviewer for additional build data<br>- extend the tableviewer for additional review data<br>  
+
*integrate a tableviewer in the comment stream: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378003 BUG 378003] / Result: [https://git.eclipse.org/r/#/c/6265/ Gerrit Review1] / [https://git.eclipse.org/r/#/c/6926/ Gerrit Review2]<br>- show the commit informations in the tableviewer: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378005 BUG 378005] / Result: [https://git.eclipse.org/r/#/c/6520/ Gerrit Review]<br>- extend the tableviewer for additional review data [https://bugs.eclipse.org/bugs/show_bug.cgi?id=382100 BUG 382100] / Result: [https://git.eclipse.org/r/#/c/6589/ Gerrit Review] <br>- extend the tableviewer for additional build data [https://bugs.eclipse.org/bugs/show_bug.cgi?id=383023 BUG 383023] / Result: [https://git.eclipse.org/r/#/c/6545/ Gerrit Review]<br>  
*embed the additional data in the comment stream (task editor)
+
*tree viewer enhancements: <br>- sort records chronologically [https://bugs.eclipse.org/bugs/show_bug.cgi?id=384984 BUG 384984] <br>- open selected record in associated view [https://bugs.eclipse.org/bugs/show_bug.cgi?id=384985 BUG 384985]
 +
 
 +
== Contributions  ==
 +
 
 +
Here are my finished contributions, the changes are already in the Mylyn repositories.
 +
 
 +
* extend the Task Editor through a new section which contains an empty tree viewer: [https://git.eclipse.org/r/#/c/6910/ Gerrit review]
 +
* add activity provider for related tasks such as Gerrit reviews: [https://git.eclipse.org/r/#/c/7008/ Gerrit review]
 +
* add activity provider for related tasks such as Changes sets [coming soon]
 +
* add activity provider for related tasks such as Changes sets [coming soon]
  
 
== Milestones  ==
 
== Milestones  ==
Line 51: Line 72:
 
| May 01, 2012  
 
| May 01, 2012  
 
| align="left" | Studying the documentation and existing code and prepare toolchain  
 
| align="left" | Studying the documentation and existing code and prepare toolchain  
| In Progress
+
| Finished
 
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=169788 BUG 196788] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=187698 BUG 187698] <br> [https://bugs.eclipse.org/bugs/show_bug.cgi?id=197924 BUG 197924] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=198004 BUG 198004] <br> [https://bugs.eclipse.org/bugs/show_bug.cgi?id=336298 BUG 336298] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=340794 BUG 340794] <br> [https://bugs.eclipse.org/bugs/show_bug.cgi?id=355973 BUG 355973] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=355015 BUG 355015]<br>
 
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=169788 BUG 196788] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=187698 BUG 187698] <br> [https://bugs.eclipse.org/bugs/show_bug.cgi?id=197924 BUG 197924] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=198004 BUG 198004] <br> [https://bugs.eclipse.org/bugs/show_bug.cgi?id=336298 BUG 336298] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=340794 BUG 340794] <br> [https://bugs.eclipse.org/bugs/show_bug.cgi?id=355973 BUG 355973] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=355015 BUG 355015]<br>
 
|- style="background: lightgrey none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"
 
|- style="background: lightgrey none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"
Line 57: Line 78:
 
| May 20, 2012  
 
| May 20, 2012  
 
| align="left" | Create a design and mockup  
 
| align="left" | Create a design and mockup  
| In Progress
+
| Finished
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378001 BUG 378001] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378002 BUG 378002] <br>[https://bugs.eclipse.org/bugs/show_bug.cgi?id=378003 BUG 378003] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378005 BUG 378005]<br>
+
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378001 BUG 378001]
 
|- style="background: lightgrey none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"
 
|- style="background: lightgrey none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"
 
! M3  
 
! M3  
 
| July 15, 2012  
 
| July 15, 2012  
 
| align="left" | Mid term: Show commit information in task editor  
 
| align="left" | Mid term: Show commit information in task editor  
| TBD
+
| Finished
| N/A
+
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378097 BUG 378097] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=380584 BUG 380584]<br> [https://bugs.eclipse.org/bugs/show_bug.cgi?id=380843 BUG 380843] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378003 BUG 378003]<br> [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378005 BUG 378005]
 
|- style="background: lightgrey none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"
 
|- style="background: lightgrey none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"
 
! M4  
 
! M4  
 
| July 30, 2012  
 
| July 30, 2012  
 
| align="left" | Show builds and code reviews in the task editor  
 
| align="left" | Show builds and code reviews in the task editor  
| TBD
+
| Finished
| N/A
+
| [https://bugs.eclipse.org/bugs/show_bug.cgi?id=378101 BUG 378101] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=382100 BUG 382100] <br>
 +
[https://bugs.eclipse.org/bugs/show_bug.cgi?id=383020 BUG 383020]
 +
[https://bugs.eclipse.org/bugs/show_bug.cgi?id=383023 BUG 383023]<br>
 +
[https://bugs.eclipse.org/bugs/show_bug.cgi?id=384984 BUG 384984]
 +
[https://bugs.eclipse.org/bugs/show_bug.cgi?id=384985 BUG 384985]
 
|- style="background: lightgrey none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"
 
|- style="background: lightgrey none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"
 
! M5  
 
! M5  
| August 13, 2012
 
| align="left" | Embed activity data in the comment stream
 
| TBD
 
| N/A
 
|- style="background: lightgrey none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;"
 
! M6
 
 
| August 20, 2012  
 
| August 20, 2012  
 
| align="left" | Pencils down: Documentation complete  
 
| align="left" | Pencils down: Documentation complete  
| TBD
+
| Finished
 
| N/A
 
| N/A
 
|}
 
|}
Line 91: Line 110:
 
[3] [http://wiki.eclipse.org/Mylyn/User_Guide Mylyn User Guide]<br>
 
[3] [http://wiki.eclipse.org/Mylyn/User_Guide Mylyn User Guide]<br>
 
[4] [http://tasktop.com/blog/ Tasktop Blog]<br>
 
[4] [http://tasktop.com/blog/ Tasktop Blog]<br>
 +
[5] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=147537 Related Task]<br>

Latest revision as of 16:02, 18 April 2013

This is the wiki page for the GSOC2012 project Activity Tracing for Mylyn.

Student: Timur A.
Mentor: Steffen Pingel
Bug ID: BUG 376233 / BUG 355974

About

The Mylyn task editor is the hub for task-focused collaboration. Yet, there are many other artifacts and activities that are part of the development workflow that are visualized in different views in the IDE. A unified activity view that aggregates tasks, builds, reviews and commits either in a dashboard or embedded in the task editor would nicely enhance traceability and visibility.

This additional data could show for example in the task editor or in a dashboard (new view). The new view helps the user to trace the selected tasks. One use case for this view could be, show the files, which are changed with the last commit. So the user have later the possibility to see, which files with this task are changed. Similar use cases are the build and review traces, who the user want see, if the selected task have an association with the build server task or a finished review task. So can die developer see, which changes have broken the build. With these additional data the task editor gets more connection to other developer tools.

Details

Implementation steps:

  1. Show the commit informations in a TableViewer, which is embedded in the task editor.
  2. Extend the Tableviewer for the additional build and review data. The TableViewer displays now all needed data.
  3. Embed the additional data in the comment stream (task editor).
  4. Optional: Dashboard, which aggregates data about several tasks.

Mockup

Mookup.png

Prototype

Current prototype is integrated in the Task Editor. A new tab extend the task editor for the activity tracing informations.
The TreeViewer shows at the moment the following informations:

  1. commit data: commit message, author, date, changed files
  2. build data: build project, build status, test summary, build date
  3. review data: task id, author, summary, date

Task editor commits builds reviews.png

Software Architecture / Plugin Structure

For this project I have created two new plugins named o.e.m.tasks.activity.core and o.e.m.tasks.activity.ui which have the following dependencies:
Plugin Dependencies.png

ToDos

  • extend the Task Editor for additional informations: BUG 376233
    - commits (shows the author, date, message, changed files)
    - builds (shows the build status, build summary, build timestamp)
    - reviews (shows the task id, author, date, summary )



Contributions

Here are my finished contributions, the changes are already in the Mylyn repositories.

  • extend the Task Editor through a new section which contains an empty tree viewer: Gerrit review
  • add activity provider for related tasks such as Gerrit reviews: Gerrit review
  • add activity provider for related tasks such as Changes sets [coming soon]
  • add activity provider for related tasks such as Changes sets [coming soon]

Milestones

Milestone Date Items Status Bugzilla Entry
M1 May 01, 2012 Studying the documentation and existing code and prepare toolchain Finished BUG 196788 BUG 187698
BUG 197924 BUG 198004
BUG 336298 BUG 340794
BUG 355973 BUG 355015
M2 May 20, 2012 Create a design and mockup Finished BUG 378001
M3 July 15, 2012 Mid term: Show commit information in task editor Finished BUG 378097 BUG 380584
BUG 380843 BUG 378003
BUG 378005
M4 July 30, 2012 Show builds and code reviews in the task editor Finished BUG 378101 BUG 382100

BUG 383020 BUG 383023
BUG 384984 BUG 384985

M5 August 20, 2012 Pencils down: Documentation complete Finished N/A

Related Links

[1] Mylyn Restructuring
[2] Mylyn Contributor Reference
[3] Mylyn User Guide
[4] Tasktop Blog
[5] Related Task

Back to the top