
As you can see, I have managed to slap together some rudimentary integration of JIRA with Visual Studio. You can log in to JIRA, download saved filters, run them and display filtered issues. Adding other functionality exposed by JIRA SOAP and RSS interfaces should not be a problem.
But there is another problem: integration as it looks right now is pretty useless. And it seems that due to Visual Studio's automation interfaces being somewhat limited in functionality there is not much I can do about it.
See, the whole point of integrating JIRA (or whatever other external tool) with IDE is automation of workflow. For JIRA, that would be mostly task flow automation. You would want to:
- select a task from some list of tasks
- work on it for some time, potentially finishing the task
- commit files you have modified during your work
- report time spent on a task (if you are one of these old-school project management enthusiast and don't believe in agile ways, for which individual effort tracking is sort of pointless)
- standard and very potent VCS interface
- built-in support for change sets (sets of files modified after being checked out of the repository), into which we could plug in
- list issues based on some filter
- assign an issue to yourself
- create a change set based on an issue key and make it active
- modify a bunch of files, which will land in this change set
- commit the whole change set in one go, automagically using the issue key as a part of commit message, so that information about committed files lands in JIRA
It would really really (and I do mean realy) suck if I had to create my own source file tree views, detect file modifications (especially because of non-standard SVN client APIs) and synchronize these views with main "solution explorer" view somehow.
On the positive side, C# continues to be quite decent. Also, the whole System library has been quite nice to use so far. My only nitpick is that I would make public member variables first-class properties. It is dumb to have to write a getter and setter for a read/write int-type property (not that Java is any better in this respect mind you).
Oh, by the way, you can grab sources of the visual studio plugin here
Told ya :)
ReplyDeleteBTW. What if the language is quite decent and has good library if you can't do anything useful with it?
Welcome to the MS world!
PS. Ask Marek how we implemented "REFRESH" feature in the calendar directory in Outlook - ROTFL
It seems that I cover much of the procedure you described - with the use of a Python script, programming a completely new e-mail handler for JIRA (Essentially, every cvs commit triggers an e-mail to JIRA) and my own JIRA plugin form work time tracking.
ReplyDeleteConnecting JIRA with an IDE... no, I think I would prefer to keep them separate.
@maciek - well, think again. Just take a look at Mylyn and how it integrates JIRA (and a bunch of other bugtrackers) into Eclipse. The productivity increase from having task-based IDE view is quite significant
ReplyDelete@marcin:
ReplyDeleteBut as you noticed, sometimes certain problems are just too hard to overcome. Yes, if there was an ideal IDE with all this integration implemented, I would be happy to tell other developers in my company about it. But since we code under Linux, we can't even use that Visual Studio. Most of us use SlickEdit and I don't think there's any possibility to smoothly integrate it with JIRA.