Closed (fixed)
Project:
Project issue tracking
Version:
6.x-1.x-dev
Component:
Issues
Priority:
Normal
Category:
Support request
Assigned:
Unassigned
Reporter:
Created:
18 Apr 2009 at 19:45 UTC
Updated:
4 Sep 2009 at 23:00 UTC
Sometimes it matters who the customer is.
So I would like to be able to add a list of affected customers to each issue.
The list could be empty, but usually it will contain one or more customer names or ID's entered by the user.
This would be implemented as an array, not a blob.
A first pass would require the user to manually add/remove customers from the list.
I would be happy to contribute to a spec. I'm just getting started with project and project_issue so it will probably be a while before I can contribute code.
Carlos
Comments
Comment #1
aclight commentedI'm going to call this a duplicate of #85049: convert project* to CCK, even though it's not exactly a duplicate.
Basically, what you want to do requires using CCK fields on project issue nodes. That's possible right now, I believe, but there are some big caveats. Primarily, I don't believe that with the stock CCK module that you can change values of CCK fields from a comment. Instead, the original issue itself would have to be edited (by someone with the appropriate permissions). There is a comment_cck module that supposedly allows changes to CCK fields from comments, though I have not used this module. Also, I am not sure if this module will actually keep track of changes made in comments. So a combination of CCK and comment_cck may be sufficient for you, but it also might not.
Another possibility is that you can try using the comment_alter_taxonomy module, which is better integrated with project*, though it only works with terms, which might or might not be appropriate for your use case.
Comment #2
cmundi commentedThanks for your suggestions. Since the combination of Project* and CCK is not exactly ready for general use, I'm changing the state to 'needs review' to help this get consideration from both a usability perspective as well as a development perspective. (I'm new to drupal, but I know what tends to happen to duplicate issues...)
Here are two things which I think should be discussed, and I would be happy to elaborate. Briefly:
1. The 'affected customers' usecase is too important to ignore. It needs attention, whether with CCK or something else.
2. The current design of issues -- using comments to change state -- has some weakness. It was not intuitive to me and it's not intuitive to my colleagues, many of whom are very non-technical users of our software releases. The "Add A Comment" concept is just not how they think when they are thinking "I need to Update That Issue." I have actually learned like it in a way, now, because it forces me to explain myself when changing the state. But that seems like a lot for the poor old comment module to bear, and it potentially makes the issue module brittle with respect to changes in the comments module. So to me it makes more sense to use comments for simple "notes" but put the real machinery of issues in the issue module. The issue module could make a "commit note" mandatory and then publish that note through the API of the comment module. Maybe a near term solution would be to just override "add a comment" with "update this issue". That addresses the usability issue but leaves the design issue for smarter people than me.
This probably isn't the best forum for this discussion, so I'll stop now. I do appreciate your time and the insight in your advice. I don't have the skills (yet) to implement any of these solutions, so I will watch how the project* modules evolve. They really are quite nice already!
Sincerely,
Carlos
Comment #3
aclight commentedWell, it may be too important for *you* to ignore :) But seriously, I don't recall ever hearing this suggestion before, so I don't think there are lots of project* users dying to have this feature. I see how in some cases it would be useful to have, however.
All the code development issue/bug tracking systems I have used require that comments (or the moral equivalent of comments) be used to update all or most aspects of an issue. In other realms perhaps this is less common, but I'd be surprised if too many software developers were unfamiliar with this concept. I'll concede that to people new to Drupal, "Add a comment" might not be the best description. For example, the Google code tracker uses "Add a comment and make changes", and the "and make changes" part might be useful for us to have in our own tracker.
The big advantage I see with having all changes to an issue come through comments is that it makes it much easier to track who made what changes. The explanation of why the change was made is also very useful, but even without a comment it's nice to see who made a change and when it was made.
It sounds to me that if you want your site to primarily or only have changes made through the issue itself, you don't really need project*. I don't think it would be *that* difficult to reproduce project* using CCK if you didn't care about keeping track of and displaying how changes to an issue were made within comments. You'd have to write some custom CCK fields to do stuff like the version field, and if you planned on using the cvslog module to handle integration with CVS that would be harder to do with just CCK. But I don't see project* moving to a workflow that doesn't require comments to make changes to an issue, so if that's what you want this may not be the right module for you.
I'll keep the status at "needs review" for a day or two so that other project* users are more likely to see this issue and can chime in if they disagree.
Comment #4
cmundi commentedaclight: I take all your points with good humor.
But I think you may have missed one of my main points. Software development -- at least commercial software development -- is about customers, not developers. My developers will have no problem with things as they are. But my internal customers who are all highly educated (no kidding, master and phd engineers) don't know the first thing about software development. They don't have time to care about our culture or lingo. So its up to my team of developers to meet them more than half way. That means speaking their language rather than expecting them to learn ours. These are the kinds of usability issues that I believe DUX7 and Bzzr have in mind.
I am happy with comments. I was mostly suggesting that approach has some technical risk which may ultimately limit project*, but it meets all of my requirements -- except for usability. So I think you and I are not so far apart on this.
I would be ecstatic if we could make issue nodes display "update this issue" instead of "add a comment." In my opinion, the notion of "comment" does not intuitively include "update status". But that is an opinion, to be sure.
Thanks for the discussion and your willingness to consider other points of view. I appreciate your perspective and find no fault with your logic. I will continue to promote usability where I see opportunity. (And if I'm wrong, that's ok if the discussion helps someone else.) The Project* module(s) are so powerful already that it would be a shame to unintentionally limit their adoption to software developers.
Sincerely,
Carlos
Comment #5
aclight commentedTo be honest, I don't see what's so hard about changing the status of an issue via a comment. If your customers are people with phds and masters degrees, surely it shouldn't be so difficult to teach them this. The project* modules are primarily for software development, so the fact that they have functionality similar to other software development tools is by design. If you think you have ideas about ways to improve the usability of project*, please do create separate issues with those ideas.
You could change the "Add new comment" link by overriding theme_project_issue_summary() and modifying the value of $summary_links. It might be useful if project_issue gave a cleaner way for modules to alter the links created by project_issue_internal_links(), so adding in a hook or something like that would probably get my support if a new issue to do so was created.
As for the "Post new comment" header above the comment form, as I mentioned at #438252: Inconsistency with "Add new comment" and "Post new comment" I'm not sure where that text is coming from so I'm not sure how to change it.
Comment #6
cmundi commentedThanks you. I think your technical points are spot on right.
I understand why some of this is puzzling. It would have been hard for me, too, before I became responsible for diverse teams.
Do not confuse the ability to learn with the desire to learn.
There is truth in the old adage abut PhD = "Piled higher and Deeper". My privilege to say so derives from the fact that I earned one myself long ago. When I sincerely seek to understand why some people seem resistant to learn, I always learn something about myself as well.
I appreciate our discussion, and I will move along now.
Peace,
Carlos
Comment #7
dwwThere seems to be nothing to review here. Calling this a fixed support request.