Posted in development, mobile testing, production bug

Development in rapid-delivery era.

This post will consist of some thoughts that bother me for some time now. It won’t be about testing only, but about the whole modern process of software delivery. Reading shall take some time, so grab some sandwiches, coffee and come along with my story 🙂

Development in rapid - delivery era

We produce more and more software

Several years ago, it started to be visible that we live faster. We eat in a hurry, don’t care about cooking or running out of global resources. We became dedicated to meaningless things, such as smartphones, watches and gadgets to impress our society.

On the other hand, at some point, people noticed that the quality and durability of equipment they have at their homes: cars, washing machines, mobile phones etc. is lower than in used to be. It became more efficient to buy a new thing than to repair the old one. We started to produce lot of waste, polluting the environment and thinking that we have another Earth to move to. It took some time to notice, that, in fact, we don’t have a spare one. Simple, but surprising thought, made us be more eco-minded and aware of human’s impact on the planet.

Slow lifestyle, vegan food, bikes instead of cars, repairing old furniture, producing new items in more environmental friendly way – it is all happening now, and we keep on changing our lifestyles in order to save the planet for the future generations.

What has software industry to do with it?

The more devices we produce – the more software it requires. Modern fridges, microwaves or even toys tend to be equipped with some sort of software, can have WI-FI connection or are prone to be hacked. It means, that IT industry is no longer separated branch on the marked, or there that there is a bunch of guys somewhere, who produce software for your computer. Internet of Things enabled us to have software almost everywhere, furthermore, someone must write and test it.

Here is the point of my first doubt – if some device consists of some sort of software – does it mean that is has to be tested by somebody?

We test, but we don’t fix

My career as a software tester is not very long now, but since now, I had an opportunity to work is several projects related to various parts of the global market. As you probably know already, I also like to talk to people and exchange ideas and gain some other peoples’ experience regarding their projects. In addition, I am also an internet addict,
I do admit that – I shop online, read blogs and watch movies on the internet.

In a contrary, as a software tester, I am also quite picky user and when something on the website pisses me off – I don’t use the service anymore, unless I have no other choice.

What I would like to emphasise here is the matter of choice, in fact.

In my short software tester’s career (too many times!) I came across with the approach that when we know about the bug – our job is done. It takes too much effort (MONEY) to fix it, so we collect non-critical ones in our backlog and struggle to have them fix for end users. Does it sound familiar to you, Dear Reader?

It made me cry so many times observing my projects sinking in the sea of spaghetti code and UI issues.  Unfortunately, it was often way too visible, that I had been the only person, who bothered.

And here we are – software testers – doing the best we can to expose flaws of our products,  to protect our users, being angry and powerless at the same time. Product managers, product owners don’t listen to us, they just sell and expand the products worldwide.

Is it bad? It seems to be short-term profitable, but sadly, we may end up with piles of hideous software as we end up with polluted air, rivers and garbage in Indian Ocean.

When talking about the choice – there are branches on the market – which benefit from not having a competition. In Poland, where I live, this would be a public sector’s case – schools, national insurance, security. There is usually a tender in order to choose
a supplier of a software for certain public organisation, but in most of the cases the cheapest offer wins.
How do people manage to obtain the cheapest offer? They don’t include quality in their estimations. Simple.
Who will be the most impacted by the poor quality of the software here? Us. Hopefully, the person who made all bad decisions as well. An employee, who uses this software on daily basis has NO CHOICE. He is forced to use CRAPPY software, because it’s a part of his job. He must struggle, because somebody a few months back – was thinking just about his own profit. This is just against work ethics – but it happens in most of the cases.

We sell more than we have coded

Quality – not quantity – this is the sentence we teach newcomers in testing industry.
However, sometimes I think, that there is literally nobody, who cares about software quality. What’s the point of testing, if we don’t fix our mistakes?
During my last speech at SeeTest I said, “as a result of selling non-existing software” and, frankly, there or wherever I said that – the audience shared same feelings and knew exactly what I was talking about.

Are we in software delivery era, in which quality doesn’t matter anymore?

Out ‘businesses’ sell features, which are in their minds only, claiming it’s already existed and after that push us to write code faster, without impediments. What I mean by distractions – bug fixes for instance. I was in such projects, I know how that feels and how hopeless people are in such crazy circumstances.

We deliver faulty software in enormous pace

What do we have in return?
Faulty websites, online stores which display 503 or 404 on daily basis, dramatic UI, crashing mobile applications or just literally – non-usable software.

I don’t mind fast pace of work – it is stimulating and efficient, but I miss the care about end user. We produce fast-food software rather that slowly cooked pieces which would make us proud. I don’t think that a software tester is glad when his team receives bugs or complaints from production, but how could he help in the first place?

I am angry, because during my online shopping it happens more often that I receive errors, UI issues, drop-downs without items or my mobile applications just crash. When
I want to be kind and nice – I report those issues – but usually nobody responses and the issues  still exist.

We keep on racing each other – neglecting quality. ‘Fast’ is the new black.

Sadly, I don’t think that even persistent testers are able to fight with the approach. Maybe, there has to come a moment, as it was with coal usage or waste in the oceans,  when it will be obvious for us to stop and think.
I hope, there will be this moment, once more, in software industry, when ‘business’ would start to think not only about their fast profit but also about the end user.

Sorry for melancholy today, it just bothers me.

What do you think?
Feel free to comment down below, on Twitter or Facebook. Cheers.

 

 

Advertisements
Posted in accessibility testing, kiss, mobile testing

Minimalism design in testing

alcohol-addiction-awareness-day

Usability Heuristics

A while ago I wrote a few words about Usability Heuristics and what is their role in software testing. You might also heard about the KISS (Keep It Simple, Stupid) rule, which seems also to be impotent is such activities like web or mobile design. In this post I would like to focus on one particular issue (or trend), which becomes more and more popular nowadays. On the other hand, it seems to be just the common sense output of your software development – The Minimalism.

Good application – what does it mean?

Each year Android community chooses applications that were outstanding during the year. Competitions might differ in details, but one feature is clear and repeatable among all winners – good design.

When we are talking about design, we might be thinking “wait a minute, isn’t it an art – related stuff like sculptures, paintings or furniture?” Well – yes. But not only. I’d say that web or mobile app design is as important as it’s final working version. At the same time the role of software tester in development process, who is aware of good design importance, is essential as well. If the application works fine and causes no error, but simultaneously it is ugly – no one would use it. Or – in best case scenario – he’ll use it once (and it’s get deleted 🙂 ). Keep in mind that 80% of mobile applications are being deleted after the firs use. Why oh why? Most of all because they don’t work as expected, but sometimes – because they’re ugly 😀

A stunning example of beautiful, thought through application is Hopper – the one and only last year winner of best apps ranks. I’ll recommend you to download it from Google Play or App Store and just play around. Using this app is so pleasant and surprising like playing with a piece of art.

When I think about examples of good mobile design – I recall Hopper all the time. Pure love.

screenshot_2017-01-18-11-50-15

Aesthetic and minimalism design

Minimalism is achieved by reducing a design to only the most essential elements.

This heuristic states that aesthetic (which is rather a subjective feeling) and minimalism design (which can be measured somehow) are important.

For example: dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility. This heuristic is extremely important to be followed in mobile app design.

Mobile applications are not supposed to be over packed with tabs, buttons or unnecessary content. App designers should keep layout as tidy and simple as possible. That is also a great challenge for the tester in the very last phase of each development – to make sure that all elements that have originally been designed are delivered within the working application. Always remember about the KISS (Keep It Simple Stupid) rule. It’s equally important on each stage of development process.

Testing usability is somehow about taking beauty into consideration.

Following trends

Essentially, minimalism is about breaking things down to the barest elements necessary for a design to function. In addition, taking things away until nothing else can be removed without interfering with the purpose of the design it’s also a minimalists’ routine. Remember, though, that certain design and graphical elements will directly affect the readability or usability of your website. Note, that it might be highly important in accessibility testing.

Minimalism could be applied to various branches of art or architecture, including web design as well. Testing minimalist websites or mobile applications might seem challenging, but possible for anyone.

Before you test anything in the area of usability – make sure that you are familiar with good web (mobile) design examples. It is good to know what’s on at the moment, keeping in mind basic rules as well. Take advantage of big players like: Twitter, WhatsApp, or less known such as: TheMinimalists, NorthKingdom, Sarah Hultin.

Don’t think it’s easier, because it’s simpler

When it comes to minimalism, don’t think it’s easier just because it’s simpler. Because there are fewer elements, you must provide the same level of usability (perhaps even better) with less interface. To balance aesthetics with functionality, minimalist web design is defined by use of space, amazing visuals, vivid photography, striking typography, and an overall focus on the content itself – and nothing more.

save-the-earth

Posted in kiss, mobile testing

UI goes first. Mobile Testing.

do-somethingkind-today5

You’ve probably heard about usability testing. It’s one of non-functional testing ranges.
A quick reminder about non-functional test types below. Usability is the one that we will be focusing on now.

wwwww

Why testing mobile apps, when Usability comes first is so important?

Because form UX point of view application should be:

  • attractive
  • functional
  • useful
  • fun

Application should make the user happy – not frustrate him. How is it possible to be done? By providing great, clean UI. No matter if we are talking about iOS or Android applications – rules are similar. Keep It Siple Stupid.

What is more, you’ll have to keep two facts in mind:

  • Mobile customers are intolerant and fickle. (You know you are). If your app isn’t a knockout on first impression, it’s probably going to be deleted or will be forgotten on their smartphones.
  • 50% of the users expect, that an app is ready for use under 2 seconds

Silicon Valley analyst Andrew Chen attests that the average app loses 77 percent of its users in the three days after they install it. After a month, 90 percent of users eventually stop using the app. In addition, research by Mobilewalla revealed that users eventually delete 90 percent of all downloaded apps. Make one wrong move that angers or frustrates users – and chances are your app will be deleted.

We could say that testing mobile app is one of the most stressful jobs on the planet – if you don’t succeed – the app doesn’t as well.

do-somethingkind-today10

Even if the UX design is correct during your testing remember about following check list:

  • get familiar with you users (by research, Google Analytics, Twitter etc.)
  • mind screen size (device fragmentation)
  • check on proper OS versions
  • select correct device types and brands (brand fragmentation)

Remember, that in mobile testing, more than anywhere else – tester is in charge – not only by keeping the initial design in shape through all development and testing process, but also by protecting user’s needs.