BY| April 5, 2010
If there is one team that epitomizes the ‘Structured Chaos, Unstructured Innovation’ mantra, it is the Digité Engineering team! Our daily churn across different engineering streams of new releases, maintenance and Patch Releases, as well as responding to Support and field issues are all done in a day’s work! As Director, Engineering at Digité, my job is to make sure we are all pulling in the same direction!
Life before Digité
Before we built our product, in the early 2000’s, we used a variety of tools – and in some areas, no tools – as we managed the myriad activities in each month and quarter! Tracking work on email, MS Office, Lotus Notes databases, Remedy and VSS was the norm. But every night, I would spend at least a couple of hours figuring out where we were and if my developers were really done with what they said they had done. Developers would themselves spend considerable time during the day on a variety of ‘follow-up’ and status update tasks and wasted between 20-30% of productive time every day. Digité 2.0 changed all that – and since then, life has eased up while Digité itself, now at 6.0, has become our ‘lifeline’!
Integrated Release Planning and Execution
For planning each Release, Product Management, Engineering and QA start reviewing our Backlog – available through our integrated Requirements Management, User Stories, Customer CRs and Defects – for prioritization and scoping. Once the scope is finalized, we group the various work items into Iterations/ Sprints and start with the first one. In the mean time, we also have Management review and approve the scope, using our integrated workflow. A far cry from the old days of the release planning nightmare!!
In each Iteration (typically, we may have 3-4 Iterations per release), work gets planned as Minor or Major Enhancements. For major enhancements, we use Digite’s Work Package module. All tasks associated with each enhancement are planned using either Digité’s STaRT scheduler or our integration with MS Project. Developers get their work items and Tasks as their To-Do list within their Eclipse environment, which is also integrated with Digité. From scoping to work planning to allocation and execution, it’s one smooth process flow.
Developers work primarily within Eclipse. When checking in code in Subversion, each developer links the Digité Work Item/Work Package for which they did the change and establish the traceability. Digite’s Subversion integration helps a Reviewer to examine all relevant changes of a particular Work Item using the traceability links established all through the development lifecycle.
Completed features are given to QA. QA manages the full test cycle using Digité’s Test Management module comprising of Test Scripts/Units and different Test events. All defects identified in each test event are logged in our Defect Tracking module, traced to the relevant work items and routed to developers for fixing using Digité. The developer gets these in their Eclipse To-Do list as well! Similarly, automation scripts running every night also generate defects, which are also tracked using Digité and routed to developers in Eclipse.
Once all iterations are done, the release is shipped to Support and Product Management – who also do cursory testing and review Test Results online to ensure the Release meets their Requirements! Ultimately, that is what Quality is all about!
With such an integrated execution platform, it really ensures that every stakeholder of the release (Executive, Product Management, Engineering, Release Management and QA) looks at the same view of the release status. This helps us achieve timely delivery of our releases without execution conflicts. Steady tracking of key development parameters has helped us reduce Defect Leakage by 66% over the last 3 years while developer productivity has gone up by anywhere from 35-65%.
No wonder that Digité it has become our ‘LIFELINE’. It is just not possible to envisage life in Engineering without such a platform!
Director, Product Engineering, Digité, Inc.