Several months ago, while I was speaking with my co-worker, Chuck, one of our project’s builds failed. I knew this because I received an SMS text message on my mobile phone, my Office Space “we’ve got sorta a problem here” sound was played through my computer speakers, I received an email, and the Orb on my desk changed to a red hue. I briefly interrupted my conversation with Chuck, picked up the phone, and rang the tech lead for this project. Before I got one word out, she says “I just got it and I’m on it”. I hung up the phone and continued my conversation without missing a beat. This is the Detector pattern, in action.
The Detector pattern is about getting the right information, to the right people, at the right time and in the right way. If I was away from my email, the SMS text message would have notified me. If I was in my office, but without my email up, the Orb or the sound would have been sufficient in signaling the problem. This pattern is about pushing information to people that need to take action to resolve a problem. A failed compile or a failed test is an example of such a problem.
It is important that this information is not just sent to all project members every time. This information should only be sent once a certain threshold has been met and to people that need to take action on the problem.
