Matt Heusser’s Blog
Testing at the Edge of Chaos
Joel Spolsky on Testing
From Joel Spoksky’s latest blog post “Why Testers?”
… You don’t have to be a programmer to be a tester. A lot of companies want testers to be programmers who write automated test suites. It seems more efficient that way. This reflects a misunderstanding of what testers are supposed to do, which is evaluate new code, find the good things, find the bad things, and give positive and negative reinforcement to the developers. Sure, automated test suites are a time saver, but testing software covers so much more than that. If you put too much emphasis on those scripts, you won’t notice misaligned text, hostile user interfaces, bad color choices, and inconsistency. Worse, you’ll have a culture of testers frantically working to get their own code working, which crowds out what you need them to do: evaluate someone else’s code. …
Joel’s Company, Fog Creek Software, has an opening for a software tester right now.
If you’d like to work for a company that actually gets software testing, that is actually hiring right now, and you want to live in the New York City Area, check it out.
On a Boart, Part II
It’s been hectic week, and I didn’t have a ton of time to write, but I do have a few goodies to share.
First of all, my colleague Donna Reed write an article on project management trends in 2010, where she interviewed myself and James Christie, the UK testing guru. She just published it on projecttimes.com; you can read it here.
Second, I’ve been thinking about cruising a fair amount lately. A typical cruise runs in the $200 per day, per-person range – and that’s after taxes, fees and tips. (In the $100/night range if you shop around) This is actually less than the cost of some conference hotels in Boston, California, or Florida. And that’s an all-inclusive rate, including all meals, so the conference organizers don’t have to pay for bagels at breakfast, and you don’t have to fend for yourself at dinner.
All in all, a conference on a boat might just be cheaper than one on land. So I am continuing to make discreet inquires about organization.
Finally, we just went through the hassle of canceling our Florida trip and re-scheduling it, including dealing with trip insurance, airplanes, and so on. Yet at this point, I’m reluctant to even consider scheduling a different type of vacation at this point. That got me to thinking: Why do I associate cruises with leisure so? Why do I associate them with ‘value’ and ‘quality’?
Now I try to keep the serious philosophical stuff on this blog, but the folks over at searchsoftwarequality.com have set me up with a sort of ‘gonzo journalism’ account, where I can be a little more whimsical, cover testing events in first-person, including throwing in some editorial and opinion. So on a lark I started a ‘little’ post on software quality lessons from a cruise line.
Sixteen Hundred Words later, I realized I was just finishing the financial aspects of quality cruising. I had, in fact, just finished “part one of two.” I hope you enjoy it.
I hope you enjoy your weekend; I’ll have more to come next week.
Call for Advisors (CFA)
Would you like to be more involved with ST&P – doing everything for advising on focus, strategy, to where to have the conference and what to put in the program?
Rich Hand, the director of membership for ST&P, put out a call for submissions to the strategic advisory board. If you have a voice, and you have a couple of hours a month to contribute, I highly suggest you give it a chance. Here’s a copy of Rich’s CFA:
Dear Software Test Professional:
The Software Test & Performance Collaborative is seeking software testing professionals, quality assurance professionals, software developers and engineers, and IT professionals interested in participating on the Strategic Advisory Board and Conference Program Board. We are also looking for members of the community that want to contribute in our magazine, newsletters, and Blogs.
The Strategic Advisory Board will assist STP Membership in determining the direction and strategy of the organization in serving the software development & testing community. With input from this board, STP Collaborative can focus on and deliver information to members and the profession to prepare and meet tomorrow’s challenges.
The Conference Program Board members will work with the STP board representative and be expected to make recommendations for Keynote speakers, sessions, and overall direction of the conference program. At ST&P we believe that the stake holders in the industry should be driving the direction of everything we do, and the conference is no exception. We are determined through this process to deliver a quality program that speaks to every member of our profession.
If you would like to participate but cannot make the commitment to a board position, we have opportunities to write for one of our magazines, newsletters, or Blogs. Just choose that option on the attached application.
Software Test & Performance Collaborative welcomes all IT professionals that have a stake in the success of our profession. Business today expects and survives on our ability to deliver quality software products and services to the market quickly. There is virtually no organization today that doesn’t rely on the service software provides. Whether it’s the government, healthcare, education, computer software, manufacturing, or any other industry, software is a critical component that must be delivered on time and on budget with zero tolerance for defects.
It is our mission at the Software Test & Performance Collaborative to provide our members with the competitive edge they need to compete in this global market. Software testing is critical to the business and we want to be your trusted resource to deliver the support you need. We do that by listening to the needs of the community, and then delivering.
Interested? Respond by filling out this online form.
I encourage you to apply to be part of the Strategic Advisory Board and/or the Conference Program Board if you enjoy working as a team to make things happen.
As the new Director of Membership I personally invite each and every one of you to apply today. I look forward to working with you on this important initiative.
Regards,
Rich Hand
Director of Membership
@Membershipguy
I expect the minimum time comittment would be an hour a month for a conference call (review the minutes if you can’t make it), plus some follow-up emails and correspondence – more if you’d like to put in the time. If you have questions, you can email Rich or ask me on the blog.
No cruise for me
I’ll likely be offline for a good portion of the week, but we never did get on that boat, and I’d like to tell you why.
We had a death in family this week.
So the next few days will be me cross-crossing the state, picking up some clothes that are not shorts and flip-flops, work from home today, bring my laptop, cross the state again, work from ‘over there’ tomorrow, be with family Wednesday, stay as long as we need with family. Because I can work from anywhere with internet and power, the time off will be minimal and we can reschedule a boat trip for late February.
When I think about this, I can’t help but remember the several times in my life when, working for larger corporations, I’ve been asked “What if Sally gets hit by a bus?” The question always seemed silly to me, because we never took it seriously. What do you if Sally passes? Why, we would comfort the grieving, visit the sick, and bury the dead, of course.
Then there’s Socialtext – a company with something close to a Results Only Work Environment, where the engineers can work from anywhere with power and internet, when they need to. At one point, we had an employee in India who would work at night (our day) so he could be with his sick father during the daytime hours. (Traditional freelancing, such as writing columns for ST&P Magazine, provides some of the same benefits)
It occurs to me that I work at a company that has engineered the work environment to make it possible to work while supporting the family in a time of need.
If I’m ever asked that question again about the bus, I won’t be offended like I used to be. (It is, honestly, an offensive question.) Nor will I try to reframe it as what the question really is – ‘What if Sally gets a better job offer’. No, I think I will take it seriously, and talk about how the company can change it’s policies to be more supportive in time of a loss in the family.
But for now, I work for an company that actually took the question seriously, and, for that, I am grateful.
Friday Goodies
It’s Friday funday, so I thought I’d send out a couple links and give you the good word.
Early in the week I found an article on rethinking IT services delivery. It seemed to me that the author was doing the same sort of systems thinking and context-driven thinking we do in testing – moving beyond the buzzwords and talking about what actually works. I wanted to share it.
Second of all, I’ve started quite a few projects in the past months. After my post on Testers at Work, I began work on a proposal and gathering people to interview. After that, I did the post on a Performance Improvement Model, and started a wiki (related, editable web pages) to build it into an possible e-book, or, at least, more detailed magazine article or paper. That wiki is private, invite-to-edit; email me if you’d like to be a part of that project.
After that I did the post on conferences on the cheap. After the post people commented and emailed me on all sorts of conferences I hadn’t heard of, or didn’t know details of.
So I started another project; a public wiki on events in software testing. If you know of a conference in your area, please feel free to go to the wiki and add it right now. It’s public; anyone can edit once they have registered.
So there’s three projects, all of them potentially large in scope, that I started in the past month. They are large, and I have commitments for plenty of other things outstanding. So here’s what I’d like to do:
For now, I’m going to focus on “Testers at Work.” I will let Performance Improvement kick around in the heads of a few collective people, and, hopefully, begin to gel in the fall. It might be a multi-year project; it might go nowhere but I’d like to bring it to a slow boil. “Software Testing Events” I’ll throw to the community; it people care, they’ll start editing it, and I’ll somehow find time to do grooming work.
Oh, finally, the good word. I will be on vacation next week. Yes, that’s right, I’ll be sailing on boat.
Now if you look hard enough, you can find cruises that are, in fact, conferences on boats. Oh, most of them are for highly-compensated fields, say doctors, with a “professional development” requirement for certification, but not all of them.
What if we did a testing conference on a boat?
Or, perhaps, a peer conference on a Caribbean island, say in 2011 or 2012.
I don’t want to invent yet another big project; I’ll be busy enough doing Testers At Work. But think about it, and tell me if you’re interested.
Yes, yes, I know the economy is tough. I know people are struggling, and I don’t want to minimize that. I just think we can change the world anyway.
What do you think?
Naïve Metrics
Let’s say you don’t know anything about software testing. It makes sense that, to figure out status, you could be able to reduce the work to a set of basic primitives – maybe test cases. Then you can count the total number of test cases, the number to go, do some simple arithmetic, and come up with the percentage complete of the project, right?
A little more arithmetic, and we can come up with a predicted end-date of the project.
Likewise, if we have another primitive – say a bug report, and a field in bug tracker to indicate if the bug was discovered pre-or-post release, we can calculate our defect detection percentage – DDP.
With just a few of these “hard” measurements in place, we can manage our test – even who development projects quantitatively, accomplishing the goals of CMMI level four, possibly five.
No, really, you can. I interviewed the CMMI product manager, J. Michael Phillips, in December of 2009, and he said so. The core metrics he recommended were something like time, features, productivity (source lines of code), and defects. If you want advice on how to perform this kind of best practice, you only need look to the latest issue of Professional Tester Magazine.
What follows is a true story.
The Great CD Debacle
Not too many years ago I was hired into a remote office of a Fortune 200 company we’ll call BigCo. BigCo has many businesses, but the purchasing organization created a sort of yellow pages for construction materials – big, thick, multi-volume books that had every product you could think of, and how to buy them. BigCo bought this much smaller product company, which I will call TinyDiv, in order to get technology to create and compile electronic catalogs onto a CD. The general idea was to ship compact disks instead of it’s multi-volume (thick) sales catalogs. (Yes, folks, this was before the web was popular)
The project was quantitatively managed, at least in that the director of software development had goals for budget and schedule.
Then Microsoft did something funny; they released Windows 98. (It might have been NT; It was over a decade ago) Now the outsourced testing company was happy to put Windows 98 on the list of operating systems to be tested – but this destroyed the schedule and the budget, costing the executives a few bonuses.
The Director of Development took a pen, marked a line through Windows 98, and said “I will have our team QA that operating system.”
Only, he didn’t tell anyone that they, specifically, were responsible for testing it.
The CD did not just fail to install under the newest windows.
It did not just cause a blue screen.
It corrupted the hard drive such that the machine was unable to boot.
The result? The software was recalled. Within a year, corporate HQ moved the work that the CD-product team did to other offices. By the time I was hired, all that remained was the original TinyDiv, still working on that original product that worked and made money.
In my first week, two of my teammates took me upstairs, to show me an entire floor of Comerica building in downtown Grand Rapids, empty. “The CD people used to work here”, they said, “If you see anything you want, take it. The lease is up in a month and it’s going to the scrap yard.”
How do I know about the project? Because I overheard people talking to the lawyers from corporate who wanted to sue to the QA company, and I heard the developers saying things the lawyers did not want to hear.
But gosh, what great defect detection percentage! Look at how many bugs QA found versus how many were found in the field! We only found one serious bug in the field! (Well, we might have found more, but we had to recall the product.)
Naïve Metrics
Hopefully, it’s obvious in the story above that D.D.P. just doesn’t make much sense; in order to quantitatively measure, you’ve got to be comparing apples to apples. At the very least, you’d have to factor in some kind of defect severity, possibly including how often we expect the users to encounter the defect. And what these really are, are guesses that we’ll plug into a formula. Even with severity, it’s unlikely that a “sev one” is exactly five times as bad as a “sev five”, or that five “sev fives” equal a “sev one” – but a simplistic formula will come to that conclusion. And, just as obviously, in the example from professional tester magazine (on page seven), if more bug reports are good, then we’re likely to get more bug reports. Some of these could have been handled by talking directly to the developers, or we may get a different bug report for every typo out of a list of 100 on the help screen. And YES, I once knew a developer who was evaluated by the number of change controls he put in, so in order to move fifteen files that were essentially one change, he put in – you guessed it – fifteen change control requests.
But where does this desire for metrics come from:
1) Lack of trust. The Manager says “I need a week”, and his stakeholders do not believe him. So he pulled out metrics. Or perhaps he needs three weeks and his stakeholders want it in one. Or perhaps he thinks the test team is doing well and wants bigger raises “look we found more bugs this year.” Or, just perhaps, the outsourcing company wants to attempt to prove it’s value.
2) Desire for control. Simplistic measures promise to make management easy. After all, all a manager should have to do is look at a spreadsheet every once in a while, and if he sees green, everything is fine. If there’s yellow or red, call the direct reports, demand status, ask what they are doing about, and check back in a few days. The problem is, they can’t deliver. The organization might be spiraling out of control, but the report is all green. (Anyone who worked at a big organization in the 1990’s, consider my servant the gannt chart. That was all about creating the illusion of control now, wasn’t it?)
3) Lack of understanding. Have you ever wondered what the purpose of grades are in school? The teacher doesn’t need them; he knows how well the students are doing. The grade “B+” is actually a lossy abstraction – it lumps the student who has mastered the material but never does homework in with the one that tries hard but always misses the harder problems. It turns out that grades are a benefit to the parents, administration, and college entrance people, who aren’t in the classroom and need some advice on what is going on. In our home school, we don’t give out grades to our students; we actually know how well they are doing.
A few alternatives I have tried and had success with:
1) If you don’t know what’s going on in your organization – find out – by actually being involved. The Scrum and XP folks suggest that customers attend the daily stand-up meeting, or that the customer be embedded in the team, both of which I have had success with. Another option is management by walking around.
2) Note my concern is the use of naive metrics as a sum total strategy to figure out “how we are doing”. Thus, you look at your metrics for the week, and if things are green, you breathe a sigh of relief and go play golf – or, if they aren’t, you call your direct reports, yell and scream, then check back again next week. I do not have a problem with digging into the numbers as an investigatory process, as part of a balanced breakfast.
3) Likewise, I expect that individuals are using metrics every day, in order to figure out dynamics and make plans. These numbers are part of a one-time problem solving strategy, often thrown away after the fact. DDP used one-time – say, looking at the numbers from this year to last year – as part of a balance breakfast – might not be that terrible. It’s when it is used repeatedly that the act of observing tends to skew behavior, and we begin to see dysfunction.
4) Earlier I mentioned dysfunction. Keep in mind, you’ll tend to get exactly what you measure. If you measure test cases, you’ll likely get lots of test cases, and even some productivity — at first. But, eventually, the team will realize that test cases and productivity are two different things, and find the shortest possible way to get you the test cases. By exploiting this difference, each individual test case will likely provide less value – thus, the assumption that “counting test cases” is roughly equivalent to productivity becomes less and less valid over time. There’s a gentleman names Robert Austin who earned his PhD at Carnegie Mellon who studied dysfunction. He concluded that since projects are multi-dimensional, any single metric (even a handful) is likely to leave things un-measured, and teams are likely to steal from those “peters” to pay the “paul” that is measured. The classic example is that, if you are measured by time, features, AND defects, you take on technical debt.) Austin’s book, Measuring and Managing Performance in Organizations is a classic in it’s field. His recommendation is to pick a small percentage of projects and do a thorough after-action review, or retrospective, that takes everything into account, and try to take home real lessons from that.
5) When evaluating quality, consider qualitative metrics and rules of thumb, as opposed to hard numbers. This can be as simple as a thumbs up or down “should we ship” crowd-source decision by the team – or at least using that as input for a decision maker. For a detailed analysis of software engineering metrics, consider the classic paper by Kaner and Bond, which ultimately recommends qualitative evaluation.
Putting it together
That leaves us with a small handful of tools – get actively involved with project, manage by walking around, conduct detailed retrospectives, or use metrics as part of a balanced breakfast to inform, not to convince, evaluate, or to control. But what if you really want to use metrics to do lightweight to control with integrity – say you have an organizational mandate?
Well, first, you could get a better job. No, really. I’m serious. I’m reluctant to offer advice on how to make a bad idea work. That said …
I do think organizations can use metrics in a mature and sophisticated way. To do that, I would introduce the metrics in context, as part of a story, including the limits and weaknesses in the approach. For example, when a particular idea should not work, and how to figure out why it worked in this instance, and the complex dance of experience and research we used to validate our opinion.
When I see these naive metrics, I smell a theory and ideology that has never been tested; yet another Pied Piper of Hamelin, telling people what they want to hear.
We can, and should, demand better.
Please remind me
I am at work and need to focus, but please remind me to do a blog post on naive metrics. My inspiration is the latest issue of “professional tester” magazine, page seven. Alternatively, if you already “get it” and want to move on, leave comments explaining it the the audience and suggest another topic.
More conference details to come.
Conferences on the cheap
I went to my first major software conference in 2003 – the Open Source Conference in Portland, Oregon. It was at OSCon I met Danny Faught, Andy Lester, did a lightning talk about Test Driven Development, and my career changed for the better.
Oh, it wasn’t that I met someone who instantly hired me, or any kind of cliched “networking” event. Instead, I got a bit of the joy back.
Actually, I’d argue that the life of a technologist attending a single conference a year is just … better than the life in isolation.
At conferences, you meet peers. You share ideas. You commiserate. You realize that all companies have problems, and that some problems are worse than others. You get a chance to relax, and, if your team comes along, do actual team building, by talking about the work reflectively – instead of climbing ropes or doing skits or singing songs or any other 1-hour HR-driven “Teamwork” exercise.
I’ve been to a lot of conferences; I’ve presented at them, keynoted them, helped organize a regional conference and a peer workshop.
Then, about a year ago, I started to notice people giving a different response. Instead of “I’m trying to get to (conference X) this year”, they would say “I’m just lucky to have a job.”
And, sometimes, “I’d be lucky to get a job.”
From what I can tell, conference attendance is down across the board. The Craft of Software Confernce was canceled, the famed SD conference shut down, at least temporarily. This is not good.
So let’s run the cost if you wanted to attend, say, STAREast in April:
Hotel: After Taxes, $158.00 a night; arrive Sunday, fly home the following Saturday = $1,383.72.
AirFare: From the midwest, about $300.00 round trip, plus $20 for baggage
Mears Shuttle from Airport to Hotel: $25 for round trip
Dinner Meals in Hotel ($30/meal) – $180
Sunday Lunch, Monday Breakfast – $30
Most other breakfast/lunches – Provided by conference
A book from the conference table – $120.00
Some Coffee and Snakcs – $30
Conference Fee – $2,795
—> Total Cost is roughly $5,000, plus you miss a week of work.
“Gee boss, I know we had a tough year, and our projects are behind, but can I have a week off and $5,000 to go take a trip to Orlando?”
I can see how that might be a challenging. And I’d like to help, so I’m going to offer some suggestions:
1) Never, ever pay the full conference price.
There’s an early-bird special for the conference that cuts the cost down from $2,800 to $2,400, and it doesn’t expire until Feb. 26th.
2) Never, ever pay the full conference price.
Many conferences have incentives and special discounts that are available just for asking; like $200 off if you’ve been to STAREast before – or they’ll give a conference code to the speakers to pass out as a free discount. Well, hey, what do you know, I am a speaker at STAREast this year; you can use the code ‘SKES’ (no quotes) at regisration time to save another $200 off.
2) Look carefully at the conference schedule.
Do you really need the VIP Package with it’s Friday executive session? You can just another $400 off the pricetag (and save $150+ in hotel and food) by flying home Friday. (Then again, they’ve got Goranka Bjedov of Google and Rob Sabourin. Choose wisely.)
3) Do we really need travel expenses at all?
About the same time as STAREast (April 21-23), STPCollaborative is offering training in San Mateo, California, for two or three days, in the $1,400-$1,900 range. If you live in the bay area, you could just drive to the training and go home at night. If you’re in the mid-west, the Conference for the Association for Software Testing will be in West Michigan in October. Pacific Northwest? PNSQC will be in Portland, Oregon, likely in November.
If you’re Mid-Atlantic, I expect the STPCon will be in Boston again, but the STPCollab team hasn’t made a final decision yet. If you’re in Denver, I would start attending Software QA Denver (SQuAD) and ask about a conference or some possible tutorial events. Research Triangle area in North Carolina? There’s TISQA, which, historically, hosts and annual conference.
Actually,if you live in the United States or lower Canada, there is likely a chapter of the Quality Assurance Institute near you. Some of these have conferences; nearly all will organize local training events and meetings – the meetings are usually free.
Nothing near you? Look for a chapter of the Agile Alliance or a Software Process Improvement Network.
You might still need a hotel and travel costs, but you might find the hotel less expensive, the conference closer, and save $100-$200 on airfare – or you might just drive. Looking around at conferences also creates more choice, to attend one that suits your organizations goals in a more unique way; and there might be other ways to drive costs down. More about that later.
4) Who says you need to stay at the conference hotel?
The orlandp Red Roof Inn has rooms for $70/night. Of course, you’d need to rent car and pay parking, pushing your total to the $130 range. They also offer a $10/night Triple-A discount. Not comfortable with Red Roof Inn? Marriott has affiliated hotels in the $90/night range (with AAA discount).
Want the best of both worlds? Apply for a Marriott Credit Card, get a certificate for your first night free and, if you get it right now, enough points for your second night to be covered after your first charge and statement date.
5) Offer to split a room
Most hotels offer a double-queen bed option, cutting costs in half. I felt generally uncomfortable doing this, but the reality is, I did it for a year in college, splitting a tiny room (called a ‘dorm’) and sharing a bathroom with thirty other people on my floor, I can probably survive a week. Assuming we split the cost of the car, that takes our costs down to $60/night for the Red Roof Inn. (And comparable if we stay at the Marriott and use the credit card offer.)
6) Look closely at the schedule
Tuesday and Wednesday night both have a hosted reception, with appetizers, soda pop and beer. Unless you are really cheap (it’s hard to fill up on chicken-wings), this won’t eliminate the cost of dinner, but it might cut it down to just the cost of a burger. Now, if you’re staying at the hotel, a burger might be twelve dollars plus tip, but if you’re renting a car …
7) Split the airfare
American Express has several credit cards that offer “complimentary companion airline tickets” (these generally have a high annual fee) – or bonus points on enrollment enough to pay for the companion ticket. (Or, pay for the conference with the Amex and earn enough points – perhaps – to pay for your own ticket.)
If you have good credit, two credits cards aren’t going to knock you over the brink.
You can also use a research site like Kayak.com to compare airfare, alert you in the case of a sale, etc.
7) Do you really need to pay conference registration at all?
It’s a little late for STAREast, but most conferences waive the registration fee if you are speaking – and most volunteer/non-profit conferences are willing to waive the fee if you do some volunteer work, like staffing the registration desk. Three prominent non-profit conferences are PNSQC, CAST, and GLSEC.
Regional and non-profit conferences are also typically shorter – so you’ll miss less work, and cost less per day. If you don’t have a travel cost, then the $450 full-price fee for GLSEC starts to look pretty appealing.
Putting it all together
Here’s a few options to get to a conference in 2010:
1) 4 days at STAREast, early bird, stay at the red roof inn, rent a car: Around $3,000
2) 4 days at STAREast, early bird, split room at red roof, split airfare: Around $2,600
3) 3 days of local, public STPCollaborative training in the bay area: Around $1,900
4) A local conference link PNSQC, hotel+conference, airfare, 3 days: Around $2,600
5) A local conference like PNSQC, conference fee waived, hotel, airfare, 3 days: $1,200
6) A very local conference or training, no travel: $1,900-$500 for just registration
7) A very local conference, no travel, fee waived by volunteer work: FREE.
(If you have other ideas to save costs on conference and travel, please, let me know in the comments. If you’re a regional conference struggling to get volunteers, leaving comments – or asking for a post, might be a quick way to make everybody’s day a little bit better.)
Right now, most people are in a challenged financial state; conferences are cutting back on travel compensation and hotel rooms – even for speakers. A number of us are getting out to conferences anyway, and either independent or not asking our company to pay for it; there’s a group at STAREast nicknamed the “rebel alliance”, and we’re going through all the cost sharing details right now.
Join us, and we may not be able to rule the galaxy as father and son, but we might just be able to get down to a conference and break bread together in 2010.
I think that’s something worth fighting for. What do you think?
UPDATE: The SQE conferences (and some others) offer a further discount to people who propose sessions but don’t make it into the conference program. Just saying.
Culled from the writing-about-testing google group
On the Writing About Testing Google Group, Lee Copeland asked:
I’m making a list of those things that happen on projects that show that no one really cares, that no (rational) one is leading, that our work just doesn’t matter, that saps morale from the team.
Besides a few examples, I also put out this reply, which I thought you might enjoy:
Maybe they do care.
Maybe they are /scared/.
Maybe someone ‘rational’ is ‘leading’, for some definition of those terms, but in the past, when he’s picked aggressive deadlines, people have worked really hard and come close. And he kicks and screams when people say no, so no one is about to say no.
I remember one project where the PM said “look, the CIO told me heads will roll if we don’t hit August one.” I replied “When it’s September fifteen, and we haven’t shipped, come tell me how many heads have rolled.”
Ironically, I think it was more about saving face than anything else. If she had told the CIO “well then you need a different PM” (or some more or less political way of saying “no”), he’d likely have disciplined and demoted her. Instead, she said “yes”, missed the deadline, and got a 3% raise instead of 4% that year. Actually, I expect she got a 4%, with a note that the company put her in tough situations beyond her control.
To paraphrase DeMarco and Lister, when “being a team player” and being “sincere but wrong” about project commitments is better and more important than making and keeping your commitments, well, then, you’ve got a culture problem, not a project problem.
Update: I’d also like to recommend “Why Does Software Cost So Much?” – a great little article by Tom DeMarco on dysfunction in estimation. There is a longer book version, but the core article is still around on the web for free.
Have you seen testing.stackexchange.com?
Some time ago, Joel Spolsky and Jeff Atwood created StackOverflow.com, a developer-oriented Question and Answer Website. Yes, Q&A, not QA. I’ve been a member there for some time, and have had some fun contributing ideas.
They generalized the software, making it possible to make any Q&A site focused on whatever you desire very easily. My colleague and friend Justin Hunter took the initiative to create testing.stackexchange.com
Of course, the problem with these things is they have a bit of a chicken and egg problem. There’s not a lot to check out, so you don’t participate much, so when other people find, they don’t find a lot to check out, so they don’t participate much …
A few months later, it seems like the site is reaching a critical mass; I just threw up my first answer to a question, which I see Michael Bolton already answered as well.
If you haven’t looked into testing.stackexchange.com yet, then please, let me recommend it to you. If you have, but there wasn’t much there, it might be time to check again.
