May 16, 2011

Automatic Notification Best Practices

Surround SCM
Helix ALM
Automation in your process is key to reducing human error and delays. While automation also includes things like automatically assigning bugs to developers and setting fields to specific values based on certain conditions, I'll talk about email notifications in this post. Seapine ALM can send automatic notifications. Surround SCM and TestTrack can notify users when something happens under specific circumstances. In fact, Surround SCM 2011.1 introduces enhancements that provide more dynamic notifications, such as notifying the last user that checked in files, the user selected in a custom field, and more. If notifications are not set up properly, you risk spamming your users with emails that are not of interest and just make noise. Before you know it, users set up a rule to route emails sent from Seapine ALM to a folder that will rarely be reviewed. While the mechanics of notifications in TestTrack and Surround SCM are different, the following high-level best practices apply to both.

Harness the Power of Notifications

Waiting for a user to send an email about something that happened introduces unnecessary risk. If you need to manually send an email to let someone know that you assigned a defect to them, the time between the assignment and sending the email is time that the item is not worked on. What if there is a fire that you need to put out? More time that the item is assigned and the assignee is unaware of it. If you have specific SLAs that require addressing items in a short timeframe, you cannot afford to use manual notifications. Once you have configured rules for notifications, let Seapine ALM do the work for you and help you eliminate the gaps in your process that are caused by relying on manual intervention.

Select the Right Condition

Some notifications only make sense under specific conditions. Maybe a defect needs to be a certain priority, a requirement needs to be further along in the review process, or a file needs to be reviewed by a development team lead for possible bugs. Both TestTrack and Surround SCM provide ways to test for a specific condition. TestTrack takes advantage of filtering functionality, while Surround SCM lets you to specify pre-conditions for a specific rule. Both help you ensure that the notification only happens under the conditions that make sense. [caption id="attachment_8348" align="aligncenter" width="338" caption="Surround SCM Preconditions for Notifications"]Surround SCM Preconditions for Notifications[/caption]

Trigger on the Correct Action

Certain actions under specific conditions should trigger an email. The action could be an assignment, a test failing, a file checked in, or other event. You can also combine automatic notifications with the ability to mark items as suspect using TestTrack links. If a requirement changes, mark the test case linked to the requirement suspect (this could be automated) and have TestTrack send an email to the test case owner to review the changes for possible modifications.

Both TestTrack and Surround SCM provide several choices when it comes to deciding which action triggers the email.

The following screenshot shows the actions available for defect notifications in TestTrack. Keep in mind that the options for events and states vary depending on the workflow.

Defect Notification Options
Defect Notification Options

Be Selective About Recipients

Not everyone in your organization needs to receive every email. Earlier, I discussed how you can get very specific about conditions that must be met and what specific actions must take place for an email to be sent. You can also be specific about who gets the email. You don’t need to ‘hard code’ a user. Both Surround SCM and TestTrack provide ways to send the email to the last user that performed a specific action. For example, if a defect fails a verification, you can send an email to the last user who performed the fix. If a file moves to a Needs Attention state, send an email to the user set in the file’s Owner custom field. If you are dealing with requirements or files in Surround SCM, you can configure the rule to send an email to the user specified in a custom field.

The following screenshot shows the recipient options email notifications in Surround SCM.

Email Options in Surround SCM
Email Options in Surround SCM

Control the Message

The last piece of the puzzle is the actual email content. Both TestTrack and Surround SCM use email templates that determine the content of email notifications. You can have different templates for different rules. An email which notifies a user about an assignment should be different than an email that notifies a user that something has changed. Templates are key to ensuring the email contains only the information needed for the specific situation.

The following screenshot shows the body of a TestTrack email template and the resulting email.

Email Template and Resulting Email
Email Template and Resulting Email

In Conclusion

In my previous life as a solutions consultant, I recall proposing using notifications to clients. They would either embrace the suggestion or look at me like I had just asked them to join me in a risky business venture. If they did not want to implement notifications, it was usually because of a bad experience with another system that did not have the flexibility that Seapine ALM offers and resulted in all their users receiving emails about everything and anything. With Seapine ALM, this does not need to happen. You have the flexibility to ensure that emails are only sent to the right person, under the right conditions, and with the correct information.