Engineering books recommended by Raman

Sunday, February 10, 2008

The Great Escape!

 
She now got confidence to venture out - on her own! She will take any and all opportunity to get out!

Sunday, February 03, 2008

trrum trrim

 
Wohaaw! He gets a guitar on his birthday and we are to put up with his creativity. He has two left legs and has no sense of beats - he is like me. But unlike me he tries and has put up quite a few performances. If you wanna look email me for the invite to his online show ;-)

Saturday, February 02, 2008

Build daily and Integrate often

He was exhausted. Everything was going like clockwork on his project. He was assigned PM about three months ago and he made sure he dotted the i's and cross the t's consistently. All resources informed they were on top of their respective tasks and none of the few reported delays were impacting the critical path. SPI and CPI calculated for the project were well within the PMO prescribed ranges until two weeks ago. Since then the project is stuck in the same state. Nothing seems to be working from the time team began integrating various features into one application. Build failed numerous times and features seen working on the developers' desk previously threw exceptions hard to trace.
The flaw in his planning was to send each of the sub teams to code their respective features or libraries and have them come back with unit tested code for integration just days before the hand off to testing teams.

Integration forces validation of interface contracts agreed upon early in the project before the coding starts. To trivialize integration step because the developers have unit tested the code by then and assuming that they must have honored the interface agreements is the root cause of his problems.

Frequent integration (as in Agile development process) gives PM and the management a true picture of the state of the project. One can validate the features completed *and* integrated to other features or to the main application.

Integration by feature is not the only approach available. It is also not always the best because there can be several types of projects. One may instead choose to take a high level application framework classes and integrate them with one or more early release of platform or services specific library early in the project.

Coming back to integration by feature – the approach for integrating by feature may often stump PMs due to crisscrossing of touch points between features which may not be ready yet. The trick though is to not postpone integration but use stubbed code in such scenarios. These stubs are documented, tracked and planned to be removed at the earliest possible point in time – preferably much before hand off.

Three Column Modification courtesy of The Blogger Guide