New feature: SofySense – Manual test case & test results AI generator to help you speed up your testing process. Try it today.  

Sofy launches product feature suite to deliver effortless test maintenance and ensure continuous precision – learn more.

sofy logo
Image: Bibadash, Shutterstuck

Abstraction: Mobile App Evolution & Revolution

When it comes to technology and computing, mobile app abstraction is an important concept to understand. Let's take a look.

Abstraction in the mobile app development world is become increasingly important. Every time you watch a video on YouTube, send a text message on your mobile phone, or perform just about any other action involving a computer of some sort, you’re benefiting from a process known in computer science as abstraction. Both the no-code revolution and Sofy are also a result of this process. But what is it? Let’s take a look.

A peek under the hood

When you use an operating system like iOS and thumb through your text messages, you’re not paying attention to what is going on behind the scenes. And chances are that there’s no reason for you to do so—your user interface provides you with the tools you need to complete your task. There’s no reason to think about the ones and zeros happening ‘under the hood’ while doing so, just as you wouldn’t think of the molecules of a spoon as you use it while eating your cereal.

The user interface you’re using to send text messages, receive photos, and view videos are all results of abstraction. While you may not know it, you are impacting complex systems with every choice, reaching all the way down to binary code—and far beyond. And that’s good, because that information is irrelevant when all you want to do is send a text message to a loved one. It would simply be a distraction.

Down the rabbit hole

Abstraction is by no means a new development: While the advent of operating systems like those developed by General Motors (such as GM-NAA I/O in 1956) or the better-known operating systems produced by Microsoft (MS-DOS in 1981 and Microsoft Windows in 1985) make for some of the best-known examples of abstraction, the history of computing can be seen as layer upon layer of abstracted processes. Code itself is an abstraction of more minute processes. Today, what-you-see-is-what-you-get editors, such as those one can encounter on popular website builders, abstract away the need to view code altogether.

In short, abstraction hides complex processes from users while they perform a task, whether it’s watching a YouTube video or producing code with object-oriented programming languages like Python or Java. As computer processes have become more complex and more and more a core component of our daily lives, the need for everyday users (that is, non-specialists) to intuitively direct machines to perform common is increasingly possible. This is all possible because of abstraction.

Still confused about the concept of abstraction? Check out this videothis video, or this one!

No-Code Revolution or No-Code Evolution?

Abstraction in mobile app development will only continue. A natural outcome of abstraction is the eventual removal of the need for all but specialists to understand any sort of coding process, with users performing advanced and complex tasks entirely by way of human-first interfaces. The benefits of this are many: For one, in terms of automated mobile app testing, the removal of the necessity for manual coding not only greatly reduces the likelihood of human error but also eliminates the need for a team’s specialists to perform these tasks at all, freeing skilled developers up for higher level projects—and saving teams time and money. 

While the contemporary rise of no-code platforms has been repeatedly termed the No-Code Revolution, it is just as appropriate to refer to it as No-Code Evolution: As abstraction marches on, developers can expect the process to repeat itself again and again. Sofy itself is a product of abstraction, allowing you and your team to perform automated mobile testing with the speed and efficiency that would have been unimaginable only half a decade ago, and all with physical devices.

Discover how visual validation testing can help developers and QA testers identify and fix visual bugs before they’re released to production.