To be truly successful, a project needs more than a list of requirements and good intentions. Here's a way to use project charters to define the big-picture relationship and expectations between Developers and Management.
A Bayesian Belief Net is a graphical network that represents probabilistic relationships among variables. Here is a studied look at this causal modeling technique as applied to defect prediction and resource estimation.
Esther Derby's opening comments set up the thrust of her enlightening article: "Have you ever managed a project that went directly, hopelessly, and irretrievably to hell? Would you like to avoid some of the traps so your project doesn’t end up there?"
Software testing is often motivated by risk. If you accept this premise, you might well wonder how the term "risk-based testing" is not merely redundant. However, conducting a heuristic risk analysis by employing a checklist of open-ended questions, suggestions, or guidewords is a proven approach to help you find the most important risks for developing your testing plans.
First-order measurement can help you understand what's going on, make decisions, and improve results. Observation, modeling, and simple data gathering are things that you can implement in your work group without a big measurement program or big funding. Start by modeling your system and working out on paper how different measures will affect your system. Then involve your team, expand your model, and try some simple data gathering. This approach to measurement is one more tool in your toolkit, and it will move your organization toward better quality.
The Rational Unified Process (RUP) advocates an iterative or spiral approach to the software development lifecycle, as this approach has again and again proven to be superior to the waterfall approach in many respects. But do not believe for one second that the many benefits an iterative lifecycle provides come for free. Iterative development is not a magic wand that when waved solves all possible problems or difficulties in software development. Projects are not easier to set up, to plan, or to control just because they are iterative. The project manager will actually have a more challenging task, especially during his or her first iterative project, and most certainly during the early iterations of that project, when risks are high and early failure possible.
Treating symptoms instead of the root cause of symptoms is a mistake that dates back millennia (just ask Socrates). The current-day workplace is no different. In Johanna Rothman's column, we get a glimpse at what happens when a company doesn't value its people.