查看: 1025|回复: 5

Learn how to improve software quality with reverse-engineering

[复制链接]
认证徽章
论坛徽章:
1054
紫蜘蛛
日期:2015-09-22 15:53:22紫蜘蛛
日期:2015-10-15 13:48:52紫蜘蛛
日期:2015-10-15 14:45:48紫蜘蛛
日期:2015-10-15 14:47:47紫蜘蛛
日期:2015-10-15 14:48:45九尾狐狸
日期:2015-09-22 15:53:22九尾狐狸
日期:2015-10-15 13:50:37九尾狐狸
日期:2015-10-15 14:45:48九尾狐狸
日期:2015-10-15 14:47:47九尾狐狸
日期:2015-10-15 14:48:45
发表于 2018-11-21 09:52 | 显示全部楼层 |阅读模式
We tend to judge software quality by whether an application works as the engineers and business managers intended it to. This approach cannot account, however, for the unforeseen changes users make to an app, the mobile device it runs on or hardware it works with. An app may be technically perfect, but developers typically struggle to predict how users will get stuck.
To better deduce how to improve software quality, expand the focus of testing from just technical requirements to the customer experience. Dissect customer complaints and seek to identify the root cause of a problem. Use this approach to create and even automate tests for prevalent problems.
It isn't easy. Users often don't know what caused their problem, so QA professionals need to figure out how to reverse-engineer a complaint to get to its cause. "Surprisingly, I haven't found others who do this," said Nilanjan Bhattacharya, DevOps delivery coordinator at Bulletproof Group, a cloud consultancy in Australia. Here's how to add reverse-engineering to your testing repertoire.

认证徽章
论坛徽章:
1054
紫蜘蛛
日期:2015-09-22 15:53:22紫蜘蛛
日期:2015-10-15 13:48:52紫蜘蛛
日期:2015-10-15 14:45:48紫蜘蛛
日期:2015-10-15 14:47:47紫蜘蛛
日期:2015-10-15 14:48:45九尾狐狸
日期:2015-09-22 15:53:22九尾狐狸
日期:2015-10-15 13:50:37九尾狐狸
日期:2015-10-15 14:45:48九尾狐狸
日期:2015-10-15 14:47:47九尾狐狸
日期:2015-10-15 14:48:45
发表于 2018-11-21 09:56 | 显示全部楼层
Identify customer frustration
Software testing is a guessing game, like Pictionary, where one player draws a picture to describe a card and others try to deduce what the card says. Like most games, you get better at testing the more you play.
Software testers can improve their reverse-engineering skills by analyzing the potential root causes of a wide range of customer complaints. You also, need to expand your definition of a defect to truly figure out how to improve software quality.
"If a customer experiences even a hint of discomfort or irritation when using the software, and I hadn't considered that possibility, that is a shortcoming or defect in my thinking," Bhattacharya said. Testers should spend time on customer support forums, analyze the types of complaints handled by support personnel and watch how live users get stuck as they navigate an application.
From those observations, create a list of the ways an application typically creates customer frustration. Modern applications frequently consist of a variety of hardware and software components, so work with others in development, UX and customer support to cultivate these reverse-engineering skills across your company. Try reverse-engineering the problems of a hypothetical app or business process, such as the examples below, before moving to the company's existing applications.

使用道具 举报

回复
认证徽章
论坛徽章:
1054
紫蜘蛛
日期:2015-09-22 15:53:22紫蜘蛛
日期:2015-10-15 13:48:52紫蜘蛛
日期:2015-10-15 14:45:48紫蜘蛛
日期:2015-10-15 14:47:47紫蜘蛛
日期:2015-10-15 14:48:45九尾狐狸
日期:2015-09-22 15:53:22九尾狐狸
日期:2015-10-15 13:50:37九尾狐狸
日期:2015-10-15 14:45:48九尾狐狸
日期:2015-10-15 14:47:47九尾狐狸
日期:2015-10-15 14:48:45
发表于 2018-11-21 09:56 | 显示全部楼层
Practice on a simple app
Imagine an app that organizes photos, and a user is struggling to run it. The software testing team can identify the most important factors that feed into the user's experience, including how the app consumes photo data, how this access is authenticated and how the app informs the user that they are consuming data from a particular source, like Dropbox or Google Photos. Testers can use this information to design app performance tests to ultimately improve software quality.
Another user of this fictional application complains that they cannot find newly captured photos in the app. Testers now know to focus on how data gets into the system. Is the location of a new photo automatically managed by its associated metadata, such as date, time and the device it was captured on? Is this process prone to break down if the user adds photos through a scan rather than upload? Testers can inform the developers of these problems, and suggest improvements to the software, like a feature that would enable the user to add metadata through other means.
Testers should continue to explore how to improve software quality with this photo app. Maybe users encounter issues when they back up their photos or move them to a new phone. So, if customer support personnel has to coach users through the app directory that organizes photos, a tester should take note. Consider how photos can move without the users needing to understand how the files are organized in a directory structure. The answer could lie in a date range feature, or another solution.

使用道具 举报

回复
认证徽章
论坛徽章:
1054
紫蜘蛛
日期:2015-09-22 15:53:22紫蜘蛛
日期:2015-10-15 13:48:52紫蜘蛛
日期:2015-10-15 14:45:48紫蜘蛛
日期:2015-10-15 14:47:47紫蜘蛛
日期:2015-10-15 14:48:45九尾狐狸
日期:2015-09-22 15:53:22九尾狐狸
日期:2015-10-15 13:50:37九尾狐狸
日期:2015-10-15 14:45:48九尾狐狸
日期:2015-10-15 14:47:47九尾狐狸
日期:2015-10-15 14:48:45
发表于 2018-11-21 09:56 | 显示全部楼层
Edge cases are still test cases
Don't discount the edge cases, such as when a meaningless message pops up due to corruption in the indexing database that organizes the files. The corruption could stem from a broken network connection, a problem with compression or someone removing a flash drive at the wrong time; imagine unlikely cases like these. People inexperienced in testing are often bashful about corrupting data, Bhattacharya said, and that hinders software quality. This step is a good time to recruit hardware experts, who might notice problems missed by software developers and testers.
Software users can be very non-technical, Bhattacharya pointed out. To get higher software quality, particularly a better customer experience, QA teams and developers should approach the technical details with a non-technical mindset at first. They might realize the problem isn't about data capture processes, for example, but simply about a better user interface to direct the customer to photo storage options.

使用道具 举报

回复
认证徽章
论坛徽章:
1054
紫蜘蛛
日期:2015-09-22 15:53:22紫蜘蛛
日期:2015-10-15 13:48:52紫蜘蛛
日期:2015-10-15 14:45:48紫蜘蛛
日期:2015-10-15 14:47:47紫蜘蛛
日期:2015-10-15 14:48:45九尾狐狸
日期:2015-09-22 15:53:22九尾狐狸
日期:2015-10-15 13:50:37九尾狐狸
日期:2015-10-15 14:45:48九尾狐狸
日期:2015-10-15 14:47:47九尾狐狸
日期:2015-10-15 14:48:45
发表于 2018-11-21 09:57 | 显示全部楼层

使用道具 举报

回复
认证徽章
论坛徽章:
1054
紫蜘蛛
日期:2015-09-22 15:53:22紫蜘蛛
日期:2015-10-15 13:48:52紫蜘蛛
日期:2015-10-15 14:45:48紫蜘蛛
日期:2015-10-15 14:47:47紫蜘蛛
日期:2015-10-15 14:48:45九尾狐狸
日期:2015-09-22 15:53:22九尾狐狸
日期:2015-10-15 13:50:37九尾狐狸
日期:2015-10-15 14:45:48九尾狐狸
日期:2015-10-15 14:47:47九尾狐狸
日期:2015-10-15 14:48:45
发表于 2018-11-23 17:38 | 显示全部楼层
good job

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

PostgreSQL中国大会,参会票抢购!

由 PostgreSQL中文社区与ITPUB联合主办的第九届《PostgreSQL 中国技术大会》将在北京隆重召开。PostgreSQL 作为功能最强的的开源关系型数据库之一,得到了越来越多企业的推广和运用,也越来越受到广大技术爱好者的欢迎和重视。这将是 PostgreSQL 的又一次交流盛会。
----------------------------------------
时间:2019年11月29~11月30日

点击报名>>
TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表