We are evaluating Crucible right now, and I am running into some issues with the workflow built into the product.
Here is the workflow I would like:
My issue comes with the steps 4 and 5. As far as I can tell there is no way to be sure the author acts upon the feedback from the review. I can't even find a good report that shows what defects were raised during the review. The software just seems to allow the review to be closed with issues left unresolved.
This is basically a show stopper, and seems like a pretty big issue. I am hoping that I am missing something in the software, or perhaps there is a different way to do things. How are other people using Crucible to make sure the feedback is not lost?
[Side Note: Queries]
I have created a few reports that can assist us in getting the information we need, but this is really just a hack and not something I would like to use moving forward. You can see these below and they might help to understand the data I am looking for.
declare @reviewID integer set @reviewID = 7 -- This would be set to the review you want details for -- Get all comments that don't have a defect raised or reply select u.cru_displayname, c.cru_message from cru_review r inner join cru_comment c on r.cru_review_id = c.cru_review_id left join cru_comment cr on cr.cru_reply_to_comment_id = c.cru_comment_id inner join cru_user u on c.cru_user_id = u.cru_user_id where c.cru_deleted = 0 and c.cru_defect_raised = 0 and cr.cru_comment_id is null and r.cru_review_id = @reviewID -- List all defects from a review select u.cru_displayname, c.cru_message from cru_review r inner join cru_comment c on r.cru_review_id = c.cru_review_id inner join cru_user u on c.cru_user_id = u.cru_user_id where c.cru_deleted = 0 and c.cru_defect_raised = 1 and r.cru_review_id = @reviewID
Some additional points
If the reviewers have the practice to create Jira issue (directly from Crucible for the defects as explained here) and in the Jira project is setup in such a way that issues cannot be closed if there are blocking sub-tasks, then there is no chance that we miss any defect from getting corrected.
And like Seb says, finally it is the trust that matthers.
And this may help in getting out the metrics in a bit easier way for the ever changing requirements of management :) http://code.google.com/p/crucible-excel-dump/wiki/InstallationAndUsage
Crucible does not have any mechanism to block workflow steps based on your requirements currently. However, here are some notes to keep in mind. The review Moderator could be setup to ensure that any review rework is carried out to his/her satisfaction. With the appropriate permission configuration, the Moderator could be the gatekeeper for closing reviews.
Within the FishEye/Crucible team we use an agile workflow where the review author is reponsible for actioning defects, and adding those changes back to the review so that the reviewers are able to confirm and check. However, this is not a process that is bound by any application logic - we trust that our devs are diligent enough to do this appropriately. One of our conventions is that all commits contain the JIRA issue key that is being worked on, and any review rework contains the Crucible review key in the message as well. This makes it easy to find code which is associated with issues and reviews.
With regards to defect metrics, the Crucible advanced comment search feature would allow you to find any defects for a review, author, project etc. Access this by going to the Crucible dashboard, then it's the last panel in the sidebar: https://skitch.com/sebruiz/81c2f/crucible-seb-ruizs-review-dashboard
You could also consider creating a simple Crucible plugin which does a more specific report.
Regards, and hope that helps
It appears that part of the problem is our Crucible installation isn't complete. We don't have the "Advanced Search" in the sidebar, or the linking to Jira (as Renjith mentions below). I think the next step is to contact Atlassian support and get some help.
Thanks to both of you for your comments, it definitely got me going in the right direction.
A client of mine was facing a similar problem, code reviews needed to be performed and audited for compliance reasons.
I created a plugin with stricter rules than those built into Crucible, it doesn't consider a complete unless it has reviewers who have marked it complete, even if it's closed in Crucible. Look for Flyover on marketplace.atlassian.com.
The wait is over... Portfolio for Jira Server and Data Center 3.0 is now officially here! Platform releases offer Atlassian an opportunity to shift our strategy, make bold predictions about t...
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs