Monday, April 21, 2014

Beta Testing


Beta Testing is a critical component of the software release cycle. It is the last stage of testing of a product and takes place after alpha testing.  At this time, the software product is close to completion. When the product is released for Beta testing, the product is in its Beta Release. The key focus of beta testing to make sure the product works seamlessly when finally released to the user.

While alpha testing is usually done by internal testing teams, beta version of the product is released to targeted users outside of the company.  A beta version of the software is close to the final product but has a good probability of having bugs, low performance, crashes and loss of data. Hence, this release it is not available to all users. The users who use it have exclusive access to the product and are called Beta testers. Beta testers work closely with the software testing team of the company to catch all critical bugs and ensure the final build of the product is stable.

In many B2B scenarios the beta sites are the key customers who will be the major users of the software. Thus it makes the Beta test period equally important for the Beta testers as the product would be critical to the success of their own company.

A few years ago, beta testing phase was not a part of the software release cycle. The companies would only release the final version after spending years on testing and improvising the product. But this resulted in some serious flaws, the new culture of Beta testing slowly started to evolve. It started off with companies only releasing the product to selected group of people who are invited to Beta test. Now consumer focused companies release their Beta version to the public and welcome feedback from anyone.




I personally enjoy gaming and hence I have always found Beta testing for games to be a pretty interesting job since you are required to play games for a living! A Beta tester for games would be expected to play the different levels of the games till it crashes in order to test its robustness. The tester would also be required to check if everything looks correct and works logically. This would mean that the tester would need to play the same level multiple times in different ways hoping that it would crash. But this job is not as easy as it sounds. The tester also needs to come up with ideas to break the game and also needs to report anything and everything to the developer. Even though the tester gets to be one of the first few who gets to access the latest game or product that has not been released to the public , he/she would be required to keep the information confidential.

References:
http://www.webopedia.com/TERM/B/beta_test.html
http://money.cnn.com/2014/05/13/technology/innovation/beta-testing/
http://blog.startapp.com/4-tips-beta-testing-success/
http://www.gamasutra.com/blogs/BriceMorrison/20130514/192197/The_Truth_about_Being_a_Beta_Tester.php
https://www.google.com/search?q=beta+testing+games&tbm=isch&source=lnms&sa=X&ei=nWBXU9iDJIaiyATwjoDYBg&ved=0CAgQ_AUoAw&biw=1242&bih=607#q=beta+tester&tbm=isch&facrc=_&imgdii=_&imgrc=7IpcDJrpJNQPuM%253A%3BmncWMctLLkZoSM%3Bhttp%253A%252F%252Fimages.wisegeek.com%252Fhands-with-game-controler-and-tv.jpg%3Bhttp%253A%252F%252Fwww.wisegeek.org%252Fhow-do-i-become-a-beta-tester.htm%3B1000%3B620

Monday, April 14, 2014

Usability Testing



As I use web services or apps on my smart phone, I am always very impressed if I find a site that is very intuitive to use, has icons at the right locations on the screen, has the appropriate content in the drop down menus and allows me to efficiently accomplish what I intend to do. Some apps just seem to be built right and an important reason for this is Usability testing.

Usability testing is a key step in evaluating a product before launch. It is a method that is used to check the product's level of acceptability. Product developers perform usability testing on real end users and evaluate how the product works and what changes need to be made before going “live”.




Given the importance of Usability testing, I was very impressed when I came across an article that talked about the “Lookback” plugin that helps iOS developers to do usability testing for any iOS application from the comfort of their home. This plugin helps developers perform usability testing on a large sample size of users by tapping into the iOS installed base. The way it works is very simple. Once the end user installs the plugin on their apple device, Lookback offers the developers a direct gateway to collect user experiences remotely without any additional tools. Lookback makes users become beta testers.

The front facing camera in the apple device can record the user expressions as he or she uses the app. The microphone catches real time user feedback and the content on the screen gets recorded as well. The developers can then analyze the trove of user data and make their product more user-friendly and successful.

So what attributes are key for Usability testing? Some key attributes are -
Accessibility - This is used to check the ease with which the users are able to navigate through the app.
Responsiveness - How quickly the app responds to the user's actions and the accuracy of its display and response.
Efficiency - This is to check if the user is able to perform the required function with minimum steps.
Comprehensibility - This is to check if the app has sufficient and clear documentation and help that will help users to understand the application.

Today, there is multiple usability testing software tools available. A few that I found to be interesting are- `
Concept feedback: This tool is good especially for website designers and can help get feedback for user interfaces. It is free and simple. The web designer gets feedback about his or her ideas from experts. The drawback is that the feedback is not interactive as the reviewer only reviews the design by looking at it and doesn't use it to get a feel of it.

Chalkmark: This is another interesting and simple product that enables easy usability testing. The developers can figure out where to place the buttons on a webpage and get feedback on typical user behavior when it comes to clicking buttons on the webpage. Again, this is a very easy tool to use and the users can be made to participate in the testing just by sending them an invite to the Chalkmark tool.

References
1) http://www.zdnet.com/lookbacks-usability-testing-app-expands-gets-financial-backing-7000027804/
2) Software Engineering: Modern Approaches by Eric J. Braude , Michael E. Bernstein
3) http://www.usefulusability.com/24-usability-testing-tools/
4) http://productmanagementtips.com/2009/09/22/usability-testing-best-practices/
5)http://thenextweb.com/insider/2013/09/27/lookback-lets-developers-record-and-review-the-screen-gestures-face-and-sound-of-their-app-testers/