Archive for March, 2011

Quality is…

Thursday, March 31st, 2011 by The Director

Joe Strazzere asked a question:

According to Google (and Google knows everything), quality is..

[list omitted]

Can you add to the list?

Yes. Yes, I can.


A Proper Snack For QA

Monday, March 28th, 2011 by The Director

When QA is hungry for a snack, here’s what QA gets:

Defective animal crackers.

Defective animal crackers.

QA Music: One For The Executives

Monday, March 28th, 2011 by The Director

Hey, how about a little shout out to our leadership?

“Hey, weren’t you part of that leadership when you worked for The Man?”

All right, I meant leaders like me.

Your Placeholder Text Leaks Out

Friday, March 25th, 2011 by The Director

As careful as you are, well, no, strike that: as careful as the non-QA elements in your organization are, some of your test data and placeholder text are going to leak out into the real world.

You have to choices: Encourage your careless team members (and your QA staff) to use relatively innocuous placeholders, or expose your users to lorem ipsum ad nauseum.

Things I Learned From Forbes (II)

Thursday, March 24th, 2011 by The Director

The March 14 issue of Forbes also has an article entitled "Funding Universe Matches Entrepreneurs With Loans. Is The Advice Worth The Price? which is about a company that takes fees from small businesses to help them look for loans. Some small businesses are dissatisfied with the service:

Two months ago Ray Armstrong entered his contact information on a website that looked like it was affiliated with the SBA. The next day he was contacted by a representative from a South Jordan, Utah outfit called Funding Universe. The rep said that for $99 Funding Universe would assess the Armstrongs’ financial situation and connect them with one of the company’s consultants. After reviewing the initial workup the consultant said he would pair the Armstrongs–for an additional fee of $2,600–with an appropriate lender and prepare their loan application. “He said that we were in a very good position to get this loan, and it shouldn’t be a problem,” says Susan Armstrong. “They told me everything I wanted to hear.”

After putting the fee on one of her credit cards, Armstrong says she came across scores of complaints from Funding Universe clients who claimed the company was a scam. Alarmed, she tried to cancel her order the next day. After a week of back and forth on the phone, the consultant told her she could get a 75% refund. She says she hasn’t heard from the company since. “I just want my money back,” she says.

The Armstrongs are among hundreds of customers–many not financially savvy–who believe they were misled by Funding Universe, which billed itself as a shepherd of capital for entrepreneurs. When credit gets tight, these intermediaries tend to come out of the woodwork.

Is it a shady business practice? Well, it does serve to part money from clients for doing some things that the clients could feasibly do themselves if they invested the time to understand a specialized marketplace and whatnot. You know, like accountants and attorneys interpret their specialized marketplaces. On the surface, maybe it’s not outright wrong but in its execution it’s exploitative.

However, this thing leaped out at me for obvious reasons:

Blake insists Lendio’s automated systems, now in testing, will yield better results than did Funding Universe’s eight overwhelmed consultants. As for fees, Lendio will give borrowers the names of two or three matches for free; an entire list of matches will cost $99. As with an online dating site, the matching process will happen electronically. Based on the borrower’s profile, lenders will approve or deny the loan. (Emphasis added.)

So, theoretically, there are actual testers working on the software for a sketchy enterprise. Is there any business, any technology business, that I would find it unethical to actually work for?

As I alluded to in the podcast with Matt Heusser, there are some consulting jobs that I won’t take because I recognize that they’re not likely to succeed, such as short term projects that rely exclusively on automated testing on an application still in a great deal of flux. I’m not going to help part a fool from his money; he’ll have to find someone to take his money just to take the money.

I’ve never turned down business because the business itself was immoral, though I could imagine myself doing so. What would trigger it? Any outright immorality, of course, but software is not really capable of murder, robbery, or burglary. It would have to be software designed to con or trick its users into giving up money or personal information under some sort of ruse I guess. It would have to be designed for that purpose, though: I wouldn’t rule out testing something that could be used for evil if it had a purpose that was not evil. Otherwise, I’d have to call e-mail clients evil since phishers rely on them.

But I not base my decision on whether the company is savaged on Web sites with the company name and “sucks” in the URL or who appear in magazines with consumer complaints, although how a business treats its customers probably correlates with how it treats its vendors.

I bet you didn’t come here for a discussion of what software is inherently immoral and if I would work on it, hey? But reading outside the field means my mind wanders outside the normal channels of thoughts on testing.

Follow-Up: Testing the New Rupee Symbol

Wednesday, March 23rd, 2011 by The Director

Last July, I warned you it was coming: the new Indian Rupee symbol.

Here’s more information on Microsoft’s support for it so you can deploy it in your own software demolitions.

The Role of QA In Requirements Gathering As Depicted In Literature

Wednesday, March 23rd, 2011 by The Director

The role of QA in requirements gathering as presented in Rudyard Kipling’s "An Habitation Enforced":

“Here’s the place,” said his father at last among the water forget-me-nots. “But where the deuce are the larch-poles, Cloke? I told you to have them down here ready.”

“We’ll get ’em down if f you say so,” Cloke answered, with a thrust of the underlip they both knew.

“But I did say so. What on earth have you brought that timber-tug here for? We aren’t building a railway bridge. Why, in America, half-a-dozen two-by-four bits would be ample.”

“I don’t know nothin’ about that,” said Cloke.

“An’ I’ve nothin’ to say against larch–IF you want to make a temp’ry job of it. I ain’t ‘ere to tell you what isn’t so, sir; an’ you can’t say I ever come creepin’ up on you, or tryin’ to lead you further in than you set out–”

A year ago George would have danced with impatience. Now he scraped a little mud off his old gaiters with his spud, and waited.

“All I say is that you can put up larch and make a temp’ry job of it; and by the time the young master’s married it’ll have to be done again. Now, I’ve brought down a couple of as sweet six-by-eight oak timbers as we’ve ever drawed. You put ’em in an’ it’s off your mind or good an’ all. T’other way–I don’t say it ain’t right, I’m only just sayin’ what I think–but t’other way, he’ll no sooner be married than we’ll lave it all to do again. You’ve no call to regard my words, but you can’t get out of that.”

“No,” said George after a pause; “I’ve been realising that for some time. Make it oak then; we can’t get out of it.”

Never let your project managers and developers build your applications with larch-poles if there’s oak available.

I Think Holly McClane Expressed It Best

Tuesday, March 22nd, 2011 by The Director asks, “Why does this keep happening to us?“:

Back in 2005 the computers system shut down and many fans stood outside for hours in hopes of getting tickets. Workers say the systems are updated and fingers are crossed that there will not be any problems.

After over-whelming demand this weekend for the upcoming Elton John concert, the JQH Arena at Missouri State sent out an apology stating “the interest in the concert created extreme high demand for tickets causing many technical difficulties with internet purchases.”

The statement goes on to say the “Exact causes for the technical hurdles are still being identified to preclude any mishaps in the future.”

Or they should ask themselves that. There’s an obvious answer: they didn’t load test. But why spend money on a load testing solution when the production environment will do the same thing for free?

UPDATE: That went as well as I expected:

Some ticket buyers who tried to buy online at 9 a.m. were either prevented from completing their ticket orders or were sent to a virtual waiting room to wait for their turns to purchase. Others report being approved for tickets but getting an error message after they finished entering their names and credit card numbers.

Things I Learned From Forbes (I)

Tuesday, March 22nd, 2011 by The Director

I read more than just testing and quality assurance stuff because you can get insights and inspirations from varied things. Take the lesson from an article in Forbes entitled "Margin Medicine For Doctors". The story is about a doctor who alters his business model to improve the quality of his service. The lesson:

After convincing his daughter to spend six weeks scanning roughly 500,000 patient records, Novich now can pull charts, X-rays and other data from three office computers and access them from home. Records are automatically synched and backed up through two online services, Carbonite and Dropbox.

The lesson isn’t OMG, my medical records are in the cloud, and by “cloud,” I mean a honeypot for hackers, although feel free to panic about how your identity and deepest secrets are floating out there in the Interether in a variety of open-source mashups across a variety of enterprises.

No, the lesson for you, QA, is to get outside the common user stories that your management team presents you with and look for legitimate and the, erm, accidental ways users might extend your functionality and try to make your software accommodate or prohibit them. You made a thing that can sync files like my whole collection of sonnets and pictures of my cats? SWEET! Now can you hold half a million confidential PDFs securely?

Because once your product is out there, if it gets used widely, its functionality will be stretched. And if it’s stretched to the breaking point, there will be consequences. Better to have those sorts of things trapped out in the requirements phase.

(In a sorta related note, see how I stretchy the requirements to trisherino’s link checking tool. That’s what you all ought to be doing in your requirements gathering meetings, you know.)

QA Immortal

Tuesday, March 15th, 2011 by The Director

A new study indicates that quality assurance professionals might be the first immortals:

Personality can affect longevity — those with the most optimism and cheerfulness die younger than their less positive counterparts, U.S. researchers found.

“Longevity Project participants who were the most cheerful and had the best sense of humor as kids lived shorter lives, on average, than those who were less cheerful and joking,” Martin said in a statement. “It was the most prudent and persistent individuals who stayed healthiest and lived the longest.”

Personally, I look forward to visiting justice upon the sons and the sons of sons of developers who mark defects RESOLVED-CAN’T REPRODUCE without following the steps in the defect.

QA Music: Peace and Blood

Monday, March 14th, 2011 by The Director

QA’s got all the peace we need. Guess what that leaves for everyone else?

(Warning, salty language.)

(Full disclosure: I went to high school with the lead singer of Iron Fist Dillusion, and he never punched me in the eye.)

Lights Out

Wednesday, March 9th, 2011 by The Director

In a strange turnabout, the Web site for Lithonia Lighting looks okay in Internet Explorer:

I see the slides, people.
Click for full size

If you look at it in a slightly cooler browser (and let’s face it, Firefox is no longer the It browser):

I don't see the slides, people.
Click for full size

The application performs a little error checking, and instead of handling the problem gracefully, such as showing a static image, it tells the user what it needs.

Hang on while I FTP that file right over for you, guys.

Although since the JavaScript file is there when I look at it in IE but not when I look at it in Firefox, I don’t think the problem lies with a missing file at all.

Making The Never Happen Every Day

Tuesday, March 8th, 2011 by The Director

Hotmail has a mechanism by which it translates URLs found in its text e-mails into hyperlinks. It does this smartly, using a special logic that I make sing the algorhythm-and-blues:

That will never happen, period.
Click for full size

You can forensically see what happened here. The logic says URLs don’t ever end with periods, so if there’s a period at the end of the URL, it’s the period at the end of a sentence and don’t make it hot.

Except, of course, in this case the period at the end of the sentence is part of the last parameter on the querystring, a user name that ends in a period. And if the period is not passed along when the user clicks, it’s an invalid URL.

On the plus side, it doesn’t look like a Hotmail bug; it looks like a problem with the receiving server. W00t!

You Microsofterati reading the blog ought to log that in your Hotmail buddies tracker for them.

QA Music: Music To Make Personas By

Monday, March 7th, 2011 by The Director

Ah, “personas.” Little documents designed so that your creative-writing, failing-novelists copywriters can create fictional vignettes to suck man hours and budgets from clients. The whole thing to me smacks of one of the ways overformalization takes a common-sense idea–understanding what your user does and trying to view your software through that prism–and turns it into 16 billable hours plus review meetings.

But if you’re going to have to deal with it, why not do so with appropriate music?

That’s the Harold Faltermeyer theme for the film Fletch.

Now, it’s your duty at the very least to name some of your user personas Dr. Rosenrosen, John Cocktoston, Arnold Babar, and Freida’s Boss.

Make Your Software Development Process More Like A Sewer

Thursday, March 3rd, 2011 by The Director

Is your organization’s process like a sewer? If not, you need to ask yourself, “Why not?” and “How can my organization improve its process to become as efficient as a wastewater treatment system?”

To a lot of people, maybe even you, the sewer is akin to the cloud. That is, you flush the toilet and some magic happens and at the end, clean water flows into a stream. To a lot of organizations, that describes their process:

  1. Assignment
  2. ?
  3. Profit!

However, as anyone in the wastewater treatment industry or anyone who has spent days proofreading and editing copy related to the wastewater industry knows, the sewer is more complicated than that. And the sewer can offer valuable lessons to streamline your organization’s software development process.

There is one part of the process that is your responsibility.
Here in the state of Missouri, the part of the wastewater treatment system that connects your house to the main, the sewer lateral, is your responsibility. If your effluent backs up into your basement because an unexpected tree root poked into the clay pipe, you need to get it fixed. If you need to put in some PVC to replace dysfunctional wastewater removal on your property, you need to fix it.

Basically, at some point, individuals are responsible for their portions of the process. A failure at this level does not mean the whole process has broken down. Some individuals in some organizations are prone to blaming their own faults and failures on the process and hope to invalidate the entire process thusly. A good process identifies individual responsibilities and allows for some alteration and improvements by individuals so long as the effluent reaches the main.

The sewer uses simple principles.
Most of your sewer systems are gravity-fed. That means the basic structure uses the easiest, most efficient conveyance to carry the effluent from individual nodes in its network to the next stage. There’s even a saying, at least in the blue collar world, about solid waste matter rolling downhill. Your process should use as much natural energy and flow to get things along. Natural tasks and natural checkpoints. Smaller pipes should empty into larger pipes. And so on.

Sure, some sewer systems do make use of STEP (Electric Pump) that use pumps to force water to run uphill or grinders (think garbage disposers) to chop particles in effluent into smaller pieces to force it into smaller pipes. A lot of organizations use these kinds of processes, which requires more energy, more maintenance, and more replacement of moving parts. Basically, this doubles your project manager’s migraine abatement efforts.

The sewer takes into account the local topography.
Every sewer district serves a different region with a different topography. The hills, creeks, mountains, and valleys of each differ. Ergo, the actual sewer itself must account for all the differences. The sewer lines have to go around obstructions and seek out the easiest grades to accommodate the flow of the effluent.

Similarly, individual organizations have different corporate cultures and personalities to accommodate. As hard as it is to imagine, organizations are not only full of roles and job titles, but they also contain diverse personalities. The exposure of the corporate culture to those personalities ultimately influences the organization itself, so sometimes traces of personalities remain after the individuals are gone. Why do we do it that way? Because Andrew did it that way. Sometimes, people won’t even know Andrew did it that way, just that they were taught to do it that way.

When putting in place a process, one might want to toss that way and implement this way, which one might think is the right way. If they feel more comfortable doing it that way, they might continue to do it that way regardless. Sometimes, one should know which people and groups are least likely to change and to account for it.

The point of this cutesy metaphor is this: Distinct organizations have distinctions. Before trying to put a process in place, you need to understand something of the organization so that you build a process that reflects the realities, habits, and tendencies of the organization. Otherwise, you’re building a process that invents them, and that invention is illusion.

Sewers are not replicated across districts.
The basic concepts of wastewater treatment remain a sort of constant, excepting the annual changes in regulations and standards with which sewer districts must comply. However, the fine details of individual sewer districts are based on their local topography (see above). If you try to apply the Metropolitan Sewer District blueprint to Boone County, you’ll find that the individual nodes do not align with the individual businesses and homes to service nor does it account for the hills and creeks of the more rural region.

Likewise, if someone at your organization reads a book about LEAN principles at Toyota and decides to lay your organization on that particular Procrustean bed, well, someone has to step up as Theseus. Don’t let them chop too many limbs off of what your organization does currently to account for the Platonic process whose perfect ideas you want to realize.

A sewer evolves.
Although it might seem that the roadsides feature a constant stream of construction equipment digging, boring, and burying things, your sewer district is not tearing out the existing sewer system and replacing it annually. Sadly, some organizations treat their processes or software tools to manage those processes just that way: they tear it out regularly when it does not work and try again.

Once you put in a process, any process, you should consider making evolutionary changes to the process as you learn how it works and how your organization works with it. This can streamline and improve operations and remove those square corners where waste material can hang up. Additionally, your organization will not require reeducation from scratch annually, and you might avoid another round of meetings where team or group leaders sit around and make the same boxes on the whiteboard again but put different words in them.

Sometimes, you don’t need a whole sewer system.
In many cases, in a whole lot of the country where the houses are not concentrated within a couple dozen feet from each other and from the street, houses and businesses don’t use sewer systems at all. They rely on septic systems or (shudder) open lagoons for their wastewater. It’s just not economically feasible to connect all these discrete locations into a centralized facility.

Look at your organization and the tasks and projects that it works on. Not everything needs to hook into the central process. A single user-reported bug? A small client copy change? The addition of a single piece of copy to the CMS? These tasks don’t need a complete design review with code review and a couple hours of meetings.

That’s not to say they don’t need some process. Even individual mobile homes need some wastewater treatment, even if it’s just a septic tank or an outhouse. But your organization needs to recognize and, as needed, implement alternatives to the process.

When you started this article, admit it: you thought it was a goofy conceit. But when you wash your hands or shower, that water goes down the drain and through a set of pipes, mains, and channels for its wastewater treatment. You want your project to easily, magically flow like wastewater from your tasks to successful project completion. Too many times, organizations create processes out of the abstract and out of pure science, and the processes’ application fails. With a little understanding of the concrete, of the topography, and of the “natural laws” of your organization, you can better construct your processes to work easily and automatically, like a wastewater treatment system.

Feel The Slash Of My Rapier Wit

Wednesday, March 2nd, 2011 by The Director

Remember how I’m always saying marketing should leave the metaphors to professionals?

I thought professionals would not accidentally hurt themselves with metaphors. Until I read Bob Evans’s Global CIO column in the current InformationWeek, Cisco Zapped By Destructive Power Of Innovation, which concludes:

It is ironic indeed that Cisco, which over the past couple of decades has helped thousands of customers unleash that very same “destructive force of innovation” on their competitors, is now feeling some of the blunt-force trauma of innovation’s unyielding edge.

I would have thought everyone in IT had played enough Dungeons and Dragons (or at least online roleplaying games) not to make that sort of error.

wordpress visitors