Developers must work harder to maintain high quality work, even with increasing pressures to do more with less.
That was the message given at SD Process Canada, a forum for Canadian developers to learn about the newest in programming strategies, methodologies and tools.
Sam Gluckenheimer, group product planner for Microsoft Canada in Mississauga, Ont. said developers are often unfairly blamed when solutions don’t work right, are buggy or have security flaws. Often, these problems are caused not by developer oversight, but by tightening timelines to get new product to market and shrinking development budgets.
Still, there are things developers can do to ensure better quality product goes out the door at the end of the day.
“If you don’t use standard, managed code, you better have a good reason not to use it,” Gluckenheimer said. “Also, don’t reinvent the wheel. If something works, is tested and is debugged, then use it.”
Developers must do code analysis more often, preferably as a project progresses or when a new build of a product is completed and ready to be tested by the development team. Regular code testing will help pinpoint any bugs or problems, which can be fixed right away. It can also help identify manageability and speed problems, or where a conflict can occur between the new product and what is already out in the market.
Gluckenheimer recommends developers make use of usability labs to see if a solution meet people’s expectations. Developers are often too close to projects to realize the solution being developed does not work the way people want it to work, or causes more frustrations than needed.
“We at Microsoft go through many of these (usability) labs before we even go to beta with a product,” he added. What regular code testing can also offer is improved security and stability.
“We are past the days where an application failure was something hidden from view,” said Melissa Webster, research director for IDC in Framingham, Mass. “Today, if an application goes down, you business could go down as well. Today, the application is often the business.”
Webster cited the example of an online retailer that suffered an application failure, preventing people from accessing the company’s product information. While the company’s shopping cart feature still worked, the fact that the application allowing customer to see and learn about the products was down was effectively like putting up a “closed” sign on the front door.
“Today’s solutions are sometimes tomorrow’s problems,” Webster added. Developers must work harder at making sure solutions are stable before those solutions go out the door, as businesses cannot afford to have those solutions fail.
“Yes, we are all being asked to do more with less, but the emphasis must be on quality,” Webster said.