|
This page is now obsolete. Items are either already done, in the process of being done for phase 2, or have been moved to the phase 3 page. |
Use this page to list candidate features for Phase 2. This list is currently being classified, and the features that are not yet categorized are at the bottom of the page. Sizing "guesstimates" for each item are coded as S (small=1-3 hrs), M (medium=1-2 days), L (large=more than 2 days). |
User Interface
Cases
HIGH
- M [DD] Add a "special activity type" for "Change Case Start Date"
- S [AC] When composing a new case activity, the client should appear in the list of roles to whom a copy of the activity can be sent. i.e. the client is a role in the case, just like other roles.
- M [DD] Searching by case id involves going to search builder, which is two clicks just to get there, and for non-technical people is an unfriendly form, and then it doesn't actually return the case, it returns the contact, and then you have to view the contact and then click on their cases tab to see the case. Instead this could be a field on the Find Cases search form, and/or a quick search box on the Case dashboard.
- [DD] Similarly, for any type of search that is a common task several times daily, having it available on the advanced search is too "far away", and because advanced search always returns contacts instead of cases/activities, it adds more clicks to get to what you want. One-click is best. Some of it can be solved by a custom search and a browser/menu bookmark. (TODO at or before the sprint: Get specific examples of these common tasks. One example is searching by "previous system id" which is a custom field.) Alternatively it might be solved by full-text search (listed separately below).
- [DD] When viewing "all cases" on the case dashboard, it would be helpful to have the case manager listed in the tables, especially in the upcoming/past-due activities section. Rather than hardcoding "Coordinator" maybe a setting somewhere for which role(s) would be listed.
MEDIUM
- M [DD] (Moved from phase 1 bugs to phase 2) While there is a log entry created in the log table, there's no way in the UI to see who edited a prepopulated activity if it happens to be someone other than the person who created the case, and it's the first time it was edited. It's related to the non-revisioning of first edits for prepopulated activities and that the view activity overlay screen shows created by but not modified by.
- M [DD] Because the open case form is a big long interview, you don't find out about duplicate contacts/cases until you save, so what might be useful would be a button like on the new individual form, except that it also checks for cases to save a step or two for the user. Might want to ignore case status in this check because it might be a re-opening of an existing case. Alternatively we can teach people to search first.
- L [AC] Full-text search for cases and activities
- [AC] Offer a "do you want to navigate away from this page without saving" warning. This has happened to me a couple of times recently. My new laptop has navigation keys that are near the shift key. A couple of times I've been in the middle of editing a long case note, and accidentally hit the "back" button when trying to capitalize a name. Rats! Lost several editing sessions completely becuase there's no protection built in that prevents you from navigating away from a page by accident.
- [AC] I'm adding this here to see if we can include it in phase two. It would be nice to do that, because at least in the world of physician health programs, it seems like something that many programs might want. The use case goes something like this: Certain people might have a very limited role in cases. In this role, they would essentially only be able to see a list of cases that they're involved in, and submit / edit activities on those cases only. They would only see the activities that they submitted, and no others. They would log on, be taken to their version of the dashboard, but not have an "all cases" view. They might even go directly to a listing of the cases that they're involved in, could possibly pick the "manage case" link, and then see only the activities that they had submitted, not anyone else's. A lot of potential complexity about determining which types of activities they might be permitted to submit could be dispensed with if there was a "moderation queue" into which their activities would be placed, pending approval by someone with a higher (normal) level of privilege. This type of interface would be useful for any external agency that might want to submit "consultation reports" or "monitoring reports" to the case manager via a web interface.
LOW
- M [DD] Both the delete role and add new role functions on the Manage Case screen cause a full page reload, which isn't a problem, but could be improved.
- [DD] (I know this can be changed now by doing some updates to the xml and database entries, but putting here so I don't forget about it and will probably do along with Phase 2 database changes.) The term "Intake Physician" is not really a good term. Really that role is "Case Creator", or "Intake Person" or something like that. And then SOME of the time that person will also be in the role of "Assessment Physician".
Activities
HIGH
- L External calendar integration for scheduled Activity dates (or a killer CiviCalendar component), e.g. google calendar. External integration with Drupal events.
- L [DD] Hierarchical tags for non-case activities. And they shouldn't even be visible for case activities. A use-case is meeting topics that map to organizational goals - it would allow searching for all activities related to, say, an education initiative, and give you a list of everyone (internal and external) participating in that topic. There's a need for this sooner than phase 2 so I've implemented a non-hierarchical attempt with a custom field and then a custom activity search hardcoded to use that custom field.
- M/L [AC] Taking emails from an email program's inbox and filing then in CiviCRM. A thunderbird add-on that makes it really easy to do that would be great. (Related to CRM-3827).
MEDIUM
- M User-configurable "prompts" for different activity types, perhaps with hyperlinks to a wiki page documenting the detailed procedure for carrying out that activity type. (Context sensitive help by activity type - could be in .hlp files or to a link on a wiki - configured in the XML.)
- M [DD] When scheduling a followup activity (or any activity on a case), the "actual date" defaults to today's date. This was changed (from blank) because of sorting issues on the manage case screen. But if you want to schedule something and put a future date for the due date, then you have the actual date still sitting at today's date. So what would be helpful might be a button/link that sync's the actual date with the due date you've entered. This would preserve the sorting fix. DGG - I think we also need a "clear" link for date fields so it's easy to reset / empty.
- S [AC / DD] The default activity status is scheduled. This can be changed, but either way there's some awkwardness. If people are entering activities they did then they often forget to change it. If the default is Completed then when people are entering followups or future meetings you have the reverse problem. So maybe the default should be blank? (DGG - agree, should be blank)
- [AC / paraphrased by DD] A way for the someone to indicate that a contact is away, and then for the system to use that information when other people try to interact with that contact. For example, if I send an email activity to a contact and it comes back with an out-of-office notice to my email, if I could then do something like file that email as a "vacation notice" activity for that contact. Then the system would note that it's there and when someone else goes to send an email or otherwise interact with that contact, it would tell the user about the vacation details. This is a special case of a more general "I've learned something about this contact and I want to record it, and it would be great if the system could automatically share that information with another user when they go to do something related to that piece of information."
- L Import / Export support for external vocabularies. The "vocabulary" could be assigned to a custom field in an activity, and the user would get a lookup. Probably implies having an "Autocomplete select" custom field "HTML Type" since the number of options is quite large for these classification systems. Examples are CPHN Indicators and ICD Classifications. (This is low priority right now, but it may become high once we see what kinds of reports we need.)
Possibility: Incorporate LOINC (http://loinc.org/background)
LOW
- M [DD] In a typical Disability Management case, there are several key dates where it would be useful to see them on the Manage Case screen (but NOT stored at the case level). One example is the date of earliest return to modified work duties. This could maybe be an additional section in the xml file where you specify what the special activities are that you want to see summarized at the top of the Manage Case screen. (note: for disability management people this would be high)
- M Support for business days vs. calendar days, e.g. when determining due date for activities. Note that business days might be different for different organizations, e.g. governments, banks or religious institutions have different holidays than those listed in local statutes. (note: for other types of organizations this could be high)
- M Some configurable settings for emails would be helpful. In some situations it would be for privacy reasons to omit sensitive info, and in other situations you might want something like a configurable header/footer/legal text added to all emails.
- L [DD] Similar to the additional contacts on the form request above, there's sometimes a need to track the role that the person was performing at the time, for people who have multiple roles. This can be done now with a custom field, just it wouldn't offer the list of relationships as choices automatically.
- S [DGG] Revisit color scheme used for Cases / Activities by status. Recent forum post indicates that the "Not Required" status is not handled properly (it's red).
- L There's sometimes a need to track who was involved with an activity. The non-case activities have an additional multi-valued field called "with contact" that would also be useful on the case activities. More generally, it might be useful for CiviCRM to have a custom field of type "contact", and if it could somehow support multiple selection. Note: Since we have changed the policies on opening cases in intervention case types, we're not sure we need this anymore.
(See also down below about tracking what role the person was performing at the time.)
Dashboard
Miscellaneous
HIGH
MEDIUM
LOW
- French/Spanish translations. Preferably on a per-user basis.
- Convert custom field helps (field and group level) to help pop-ups (probably includes implementing jQuery based help pop-ups globally to replace the existing dojo widget).
- [DD] In IE when using SSL you get the mixed content pop-up box on almost every page. But it seems to be coming from the DTD definition output by Drupal. There's no popup in Firefox.
Reporting and Outputs
HIGH
- L Redaction / scrubbing of free-form text in activities for audit/external reviews.
MEDIUM
- L [DD] A way to import cases and/or activities from legacy systems (e.g. MS Access). Could this maybe share code with the inbound email filing? I can see there is an existing activity import, but it's not case-aware and it requires the contacts to be in the database already.
LOW
- M [DD] Some sort of archiving and/or export/import to permanent offline storage.
- L Additional reporting / analysis tools (including PDF output for existing audit reports).
- M [DD] There's some kind of weirdness in the generated xml when you change the case type and append a timeline. To reproduce, take the sample case that is resolved, change the case type to relapse prevention, then add a new timeline. Then change the case status to ongoing. Then run the standard timeline report. Only three activities get output.
[DD] Update: I think this is probably working as designed, and actually we need to figure out what we really want the audit/report feature to do when a case type is changed, i.e. what are the common situations where you would change the case type.
Workflow
HIGH
MEDIUM
- M [DGG] Configure auto-scheduled follow-up activities - when you complete activity A, then Activities B and C are automatically scheduled N days later (Suggested by NewAvenues.org for their requirements).
- M [AC] When creating a new individual contact, I'd like to have the option of using the organizational address and phone information that exist for that person's employer. This could be more general than employer relationships, but is particularly likely with employment relationships.
LOW
- Built-in awareness of the on-again-off-again situation for various functions, in particular the calculation of due dates. Many cases have time blocks within the case where the days should not be counted as part of the case. One example is an activity like "transition to long-term disability". During the short-term disability period, the person may return to work for a week but then go back off again. That week shouldn't be counted when populating the "transition to long-term disability" activity. One possibility for the implementation of this is to do like payroll systems do to record hours worked and have a separate table linked by case number where you have one record for each day the case is "active". At the simplest level it would just be those two fields. As to how that table would get populated, I don't know exactly. Maybe a cron job or there would be certain activities that trigger a hook. (Note: This would be high for disability management)
- M Attachments all currently go into one folder, so depending on caseloads eventually it will hurt performance. For Physician Health I don't expect it to come up soon.
Unclassified
- Using SSL has a noticeable effect on the speed. I don't have any stats but my guess would be the use of ajax calls could be one of the culprits.
- M Adding case roles through the UI, including a way to specify if it the relationship is specifically linked to this case or is a "general" property of the contact (e.g. Intake Physician vs. Sibling). We should probably display "general relationships" for the client in another table next to the Case Roles on the Case View screen - so the case worker has access to related people from one spot - and can add info like "spouse" and "sibling" and "child" as needed. Currently we are forced to add these relationship types to each case type config file in order to view and manage them within the case context.[DD] Was this not resolved in 2.2?
- M Related to previous point, on the intake form it would be useful to be able to send a copy to a specific type of role, that being the type of role where it's a relationship not with the client, but with the user entering the data. For example, other contacts within their organization, or a contact at another organization. It may be useful to send to the other types of roles (case-specific and client-specific) but I don't see a need at the moment, and implementation is harder since the case/client hasn't been created yet.[DD] I think this was partially resolved in 2.2. There is still the difficulty in being able to send a copy of the intake form to case roles while you are creating the intake form, since the case doesn't exist until that form is saved.
Bugs
- See also the Phase 1 page which still has some bugs that we decided to leave until Phase 2. http://wiki.civicrm.org/confluence/display/CRM/CiviCase+-+Phase+1+Issues+and+bug+reports
Minor
Major
Blocker
Resolved
- Navigational confusion issue: I go to my own CiviCRM home page, which we've now customized to show a broader range of activities (a more organizational view). I see an activity in the list that I would like to edit. This activity was added originally by someone else. I edit the activity and save it. When the save operation completes, I'm returned to the "home page" of the person who originally added the activity, rather than my own CiviCRM home page, which is where I came from. I think I should be returned to my own CiviCRM home page.
[DD] Update: This is the custom dashboard we have. It may be the context parameter. I will take a look.
[DD] Update 2: Added context=home to activity edit links. - [DD] According to CPHN guidelines, you're supposed to ask about family doctor as part of the intake process. In Civicase, family doctor would be a role on the case, so it would involve creating a contact and then assigning the role, which are separate steps with separate screens. It would be useful if this could be done "inline" on the intake form.
Update: I think in practice this isn't an issue anymore because the doctors are selected from a list of volunteers that's already in the system, and the role assignment doesn't get done until the doctor has accepted the patient which happens later.
Some things moved from the bugs page just to have somewhere to put them. |
[DD] Don't think I'd call it a bug, but it's an issue we need to keep in mind during the early days of real live usage when we'll likely be changing the config often:
Example: A radio button with 3 options. If you disable one of field options in the config, then on the view case overlay screen you can see it fine, but you can't on the edit activity page, and if it's a required field then it won't let you save because it thinks nothing is selected.
I think it's the correct behaviour, just something to keep in mind with the nature of the data we're storing.
