Quality assurance (QA), and its associated development process, has a major impact on user experience (UX).
In every large software project I've experienced, various bugs don't get fixed. Developers and project managers focus on high priority bugs, usually defined as bugs that prevent the system from working. Lower priority bugs are left for later releases. In many organizations, the previous version's bug list isn't even reviewed for the next release.Taking a few notable companies to task:
- Apple's search system in OS X has been broken since at least 10.2. I have a large PDF file, created entirely in OS X, that still has only one hit for the search term "css". The punchline: it's a 190 page web style guide that has an entire chapter and an appendix on CSS. Mail search is similarly broken. They then built Spotlight search services on top of this broken system.
- Cingular phones cause speakers (computer, headphones, speakerphones, and even my doorbell) to emit bursts of static when a data connection is made.
- While all mobile phones report certain characteristics in their user agent strings, application and web providers can not rely on them. They lie. The device name may not be accurate, the screen size might reflect full screen or screen available to applications, and many other inaccuracies. I've seen problems with Samsung, LG, Nokia, and other manufacturers.
I think the problem for mobile phone testing is worse than it is for standard software testing. Margins are tight, carriers demand different software loads, and product managers focus on making the core systems work. A bug in how the browser renders certain CSS properties will only be fixed if it crashes the browser or management provides strong leadership and incentives to have the problem fixed.
An organization putting out a desktop browser has significant incentive for the rendering engine to be great. A device manufacturer has very little incentive to get the browser rendering great or even good enough, as feature phone users will not consider this function when purchasing.
I prefer browsers built by third party companies to those built by the device manufacturers, but this introduces its own set of issues. The browser user interface may not be compatible with the device user interface, and the software is not closely integrated with the rest of the device. Both add-on browsers like Opera Mini and built-in browsers like Openwave have these problems, albeit with different intensities.
The problems created by these "low priority" bugs have profound ongoing impact on user experience, the more so for mobile. I don't trust Apple search and may never do so. Cingular phones seem cheap with their built-in wireless connection monitor. And browsers and application environments can break the way my preferred web sites and apps work.
In the mobile industry, these "low priority" bugs are significantly inhibiting data usage, both from a user perspective and a developer perspective. Improving the quality of the software development and testing process would likely result in increased revenues for all parts of the mobile value chain.