This age of Smart devices (Smartphones, Tablets) requires huge changes in software design. Unlike the era of PCs where we had a lot of screen and memory space, we are now greatly limited in both.
Equivalency with PC software functionality is expected so we do the best to utilize limited resources. For example, we focus on very natural user manipulation to provide needed information in step-by-step processes.
The importance of design in Smart devices has entered a new stage with functionality now an essential addition to appearance.
People make their initial decision about the app on how it appears and feels.
Color, fonts, layout and so forth are the first things people evaluate to determine the "usability" of the application.
Since the amount of information displayed at one time is necessarily limited, "usability" is proportionally extremely important. To support "usability" it is increasingly necessary to predict users' movements to maintain the rhythm of the user interface.
With the elimination of the mouse and decreasing importance of the keyboard we see more "bonding" and "directness" between people and the device due to the touch interface.
Smart device operating systems create new ways to interface with users by making many options intuitive. There is increasing emphasis on "affordance cues"; if it sticks out - push it, if it shows a long slot - slide it, and so forth.
Instead of the more indirect, intellectual PC interfaces, Smart device interfacing is more natural and "felt" inside the cerebral cortex.
"Distance" has a New Meaning
How much time do you spend away from your favorite Smart device? We assume most people carry them from waking until they sleep at night.
This "closeness" with the device creates a special affinity of not only "usage" but with something that provides information and helps determine the user's future situation.
Mobile device applications and telecommunication demands are often in situations where PCs have never been required.
Developers have to take into account the relative differences between stable PC environments and mobile device usage in extreme environments.
To provide secure mobile services we test applications under normal circumstances as well as abnormal circumstances (communication problems, stress testing, etc.). It is also necessary to check message level transmission accuracy.
Examples of Mobile Device Specific Test Issues
Major mobile OS upgrades occur every 12 months and minor ones about every 3 to 4 months.
Several iOS versions run on a range of device versions from iPhone 3G to the latest iPhone X. As for Android devices, roughly 5 versions run on a number of devices from more than 10 manufacturers.
Due to manufacturer specific OS version upgrades different devices can exhibit different problems in the applications such as communication defects, display positioning misalignment, display size changes, force-quit/freeze from memory leakage and other wide-ranging defects and problems.
All of these require testing and detailed resolution.
Major Mobile OS Versions Requiring Support (as of 2012).
Major Mobile OS Versions Requiring Support (as of 2017).
Evolving along with application and device sophistication are new creative ways and environments in which to use these devices.
MIT's QA workload increases exponentially as we add new functions such as "multiple windows," "layout switching," "multi-languages support," etc.
Preparation and research is necessary for the wearable device area of Smart device/mobile business solutions.
We have an experienced in-house specialized team of more than 10 employees who use our list of over 6,000 test items we can use in our QA testing to find almost any potential problem.
Testing Tool Examples
MIT has more than 200 smartphones and feature phones. As soon as a new OS or devices is released we quickly work to rectify any problems through comparative testing procedures.
To avoid overlooking any problems during detailed testing, we try to achieve a good balance between quality and cost by integrating our decision table methodology with our extensive experience to extract the most efficient test patterns.
Financial applications are mission-critical while game applications depend on intuitive interfaces. Our testing requirements for these two genres are very different. With mobile applications being used for increasingly different situations it is important to test functionality and usage in many different ways.
Since we develop applications that analyze user information, financial data and game play, we have implemented testing capabilities for these varying contents down to the client's server operations.