97 Things Every Project Manager Should Know

(Rick Simeone) #1

(^4) 97 Things Every Project Manager Should Know


Avoid Whack-a-Mole Development


Venkat Subramaniam
Broomfield, Colorado, U.S.


SoFTWARE PRojECT MAnAgERS face a lot of pressure to deliver fast. Time
is of the essence. How can you get things done fast?


Imagine you have two programmers on your team, Bernie and Rob. Both are
capable, have the same amount of domain knowledge, and have equal lan-
guage skills. During development, you find that Bernie finishes his feature
implementations much faster than Rob.


While Bernie focuses on getting the code completed quickly, Rob spends time
writing code and then refactoring* it. He names the variables and methods bet-
ter. Once he gets things working, he breaks the code into smaller pieces. Now
he writes tests to make sure each piece of his code does what he meant it to
do. When he’s reasonably satisfied, he declares the coding of that functionality
done.


But assume you don’t know these details. If you only look at the speed with
which the functionalities are declared done, clearly Bernie is the better man,
right?


A few weeks go by, and you demonstrate the features to your customer. As
usual, the customer loves your completed features, but now wants you to
change and improve them. You ask your developers to make those code altera-
tions. When you take the new and improved functionality back to your cus-
tomer, they try out the features that Rob implemented and are pleased with
the changes.



  • Refactoring: Reworking the body of code to improve its internal structure without changing its
    external function. It improves the software design. Refactoring code is going back to improve a
    working feature that was created quickly and tested. Now it needs further internal refinement to
    facilitate its long term use and make it easier to add future changes.

Free download pdf