Helping You Define Your Lifestyle

Quality Assurance in Agile Software Development

The approaches to and opinions about quality assurance in an agile software development are varied and contentious. Some teams would argue that there is no role for quality assurance in a properly run agile software development team. Others would push back and state that it’s impossible to guarantee quality without having dedicated quality assurance agile team members.

Quality assurance in agile software development can be considered a grey area. There is no definitive – do this, don’t do this, and always make sure this. Just like everything in agile, quality assurance and how it does or doesn’t happen is up to the team and company. But one thing is guaranteed – quality has to happen – it’s how this is achieved that makes the discussion about quality assurance a hot topic.

You don’t need to be told that you need people on your agile software development team who are responsible for ensuring a quality product. You don’t need to be reminded that agile tries to minimize processes and tools and focus on the individual. You don’t need to be told over and over again that done has many different meanings and applications.

There is no right or wrong way to succeed with quality assurance. It’s in the doing, adjusting, and calibrating that your team will find the right approach to quality assurance. It could be a variation of pair programming, a focus on test driven development, a complete focus on test automation, end-to-end testing, or a combination of the best of each approach.

Since we can’t tell you exactly what to do, we want to give you some ideas on how to use quality assurance within your software development team. Whether you’ve got a new team or are new to agile or are struggling with defining roles within your agile software development team, use this article as a conversation starter, jumping-off point, or blueprint of quality assurance ideas.

The Agile Manifesto and Quality Assurance

At first glance the principles of the Agile Manifesto appear to be in polar opposite of quality assurance methodologies. However, as with all things agile, the Agile Manifesto is open to interpretation.

  • Individuals and interactions over processes and tools. Team, team, team – this is the very essence of agile software development. When your quality assurance specialist are part of the agile software development team they can be involved, collaborating, and communicating – all with a focus on ensuring quality.
  • Working software over comprehensive documentation. Traditional waterfall quality assurance relies on heavily detailed test plans and documentation. In an agile team, this translates to the quality assurance experts spending their time doing testing and providing feedback, rather than writing test plans. Of course, there does need to be a way to track testing, but this can be done with one-line test scenarios, error checklists, risk-based testing, exploratory testing sessions, or user stories with integrated test markers.
  • Customer collaboration over contract negotiation. In an agile quality assurance team, the focus is 100% on the customer – both external and internal customers. Often times because the quality assurance expert knows the product better than anyone else on the team, this person becomes an advocate for the customer. Think of the quality assurance team as a customer and you’ll get some real insight into the software quality.
  • Responding to change over following a plan. Change can be hard for anyone on an agile team, but with a well-organized approach to quality assurance, change is welcomed and encouraged. After all, it’s through quality assurance that areas for improvement are identified, blockers are found, and in some cases the need for a complete redesign – all of which drive change in the product, iteration, and company.

There is a reason why the Agile Manifesto remains relevant – it is the foundation for how agile companies think, respond, communicate, and thrive. The key is in making sure that there is flexibility in how these guide posts are interpreted and applied. There is nothing absolute or rigid in the Agile Manifesto, making it an ideal springboard for thinking about how quality assurance fits into your agile software development approach.

Four Ways to Integrate Quality Assurance in Agile Software Development

Your team is asking for advice on how to improve the role of the quality assurance team. Your managers are asking why you need to hire more quality assurance staff. You want to make sure that quality is still the focus and driving principle of your entire agile software team.

Sometimes it takes knowing how to do quality assurance better – the following four points can serve as a way to get your team thinking about how quality assurance can and should be integrated.

  1. Understand agile software development. As we highlighted above, team is integral to agile success. Make sure your entire team understands agile software development – the intentions, foundation, and guiding values. Knowing this helps keep the focus on the team, communication, and quality.
  2. Remember to collaborate. In waterfall, testing and quality assurance happens at the end of the development cycle. The opposite is the case with agile software development, quality assurance can happen concurrently and from the very beginning when requirements and user stories are defined. Keep your developers and quality assurance people working together to support communication and collaboration.
  3. Flexibility to different approaches. All too often teams get stuck in doing development and testing with one prescribed methodology. Agile software development is designed to allow for more – support your quality assurance team in being involved from the beginning, in testing features before they’re code complete, getting quality assurance involved in UX reviews, and in any other area. Be flexible in how you think of the role of quality assurance in your team.
  4. Nothing is perfect. You’re not going to get it right every time. Just because the last iteration was a success, doesn’t mean this one will be. Just because pair programming helped eliminate defects on another project, doesn’t mean the same will happen for your project. Remember, to be open and ready for change, challenges, and rooms to improve. Learn to look for the root causes rather than focusing on the obvious glaring problems.

Successful agile software development is a journey. There are twist and turns, missteps, and second chances. Don’t get caught up in getting things done perfectly – people are going to react differently to change, people won’t want to try pair programming or end-to-end testing, people won’t want to collaborate freely – this is all part of figuring out how to make agile work for your team.

It is important through-out the discussions on how quality assurance fits into your agile software development team that you remember that the customer and quality must be the focus. How you get there is up to you – just make sure you’re doing it in the way that is best for your team, your customers, and your organization’s goals.

How to Use Poker as a Mindfulness Practice

Most common mindfulness practices are fundamentally simple. Things like deep breathing, counted breaths, and short breaks and walks can help to calm us, clear our minds, and generate simultaneous states of relaxation and awareness. As much purpose as these small, simple practices have though, there are also some more involved activities that can assist with the development of greater mindfulness. And it may surprise some to learn that the game of poker is among them.

Gaming and Meditation

It is first important to understand that a link has been established between gaming and meditation in general. For a long time there were a lot of misconceptions about gaming as an active, almost violent practice meant solely for young people. But perceptions have changed over time. We now understand that people in all age groups play games of all kinds, and we further accept that a lot of these games have meditative qualities. Gamer testaments and a few scientific studies alike have indicated that the right game can have a soothing effect on one’s mental state.

This is the case with poker as well. A passion for many around the world, it’s a unique game that doesn’t necessarily fall under the umbrella of traditional “gaming” as we tend to think of the term. It is nonetheless similar with regard to mindfulness, however. Approached with intention, it can be a calming, almost meditative hobby for players.

Mental and Emotional Calm

When considering the game of poker specifically, one tends to think first of strategy, luck, and mathematics. In some sense, these are the building blocks of any given game of poker, and it will of course be important for any aspiring player to learn how they all factor in. However, what really helps successful players to win at poker is a sound mindset. The manifestation of a sound overall poker game requires that players learn to accept defeat and to avoid getting too high from a win. It demands reasonable approaches to betting and competition, clear-eyed social interaction, and the ability to operate without ego.

Add those factors up, and what success in poker really demands is mental and emotional calm. Players need skill and strategy to be sure, but above all else they need to be able to clear their minds of various pressures and shut out hasty impulses. This in and of itself is nearly a form of meditation, and certainly serves as a sort of training for mindfulness practice.

Focused Meditation

Beyond helping players to establish a general sense of mental and emotional calm, poker also leads to an ability to focus that, in its own way, is meditative. Generally, a focused meditation is described as the practice of focusing on something intently as a way of staying in the present moment and slowing down inner dialogue. It more or less means zeroing in on one subject to the exclusion of all else for the purpose of clearing one’s head — which is pretty much exactly what one has to do in poker! Even the slightest distraction can be a problem, and while the game demands a lot of attention it still makes for such narrow focus that one can clear one’s mind in a useful and soothing way.

Even given all of these benefits, poker does not comprise an entire mindfulness or meditation routine. For those interested in working on these aspects of personal wellness though, it’s always good to have one more option! Some will find this simple, popular card game to be legitimately beneficial.

If you enjoyed this article, you might also like our piece on how to boost your energy, especially useful as we enter a new year and search for fresh motivations!

Earfree Nitebuds: For Better Sleep

Earfree Nitebuds, the two-in-one speaker and pillow that plays calming music, improving the quality of your sleep, is launching on Indiegogo.

The idea for the Nitebuds sleep pillow came from people who used to sleep with earphones in. Many of us who have trouble sleeping at night use earphones to listen to calming sleep music, but sleeping with earphones in is just too uncomfortable. Using earphones while you sleep can cause pain and inflammation in the ear; plus, earphones tend to fall out in the middle of the night. But the adverse effects of earphones on ear health is undoubtedly the most critical of these issues.

Nitebuds puts music IN the pillow to solve the problems caused by conventional earbuds. All you have to do is lay your head down on the pillow to be serenated with lovely music. There’s no earbuds involved – so you can roll around in bed all you like without having to worry about damage to your ears or earbuds falling out.

Nitebuds are simple to use. Just place the speakers in the special sleep-aid pillow, then use Bluetooth to pair your smartphone and begin your music therapy. Once your music is playing, Nitebuds’ crater-shaped design enhances the acoustics, making you feel like you’re listening in on a concert hall performance. This design also prevents the sound from leaking out, giving you the same quality of sound at a 30% lower volume, so as not to bother whoever’s sleeping next to you.

The Nitebuds app also provides free ASMR music and ambience, soothing the brain and easing any anxiety. This white noise works has great benefits on mental health and attentiveness, making the sleep music from the Nitebuds app particularly effective at inducing a natural sleep.

Nitebuds uses 3D mesh material for full, fluffy comfort. The mesh also helps the music play through the pillow without getting muffled, plus high-quality microfiber cotton is also used to give the perfect amount of depth and coziness. The microfiber cotton is also a renewable, biodegradable material, which means Nitebuds is eco-friendly, too.

Even though Nitebuds is electronic, the speaker and pillow are fully separable, meaning the pillow can be washed without issue. If you want, you can even use the pillow by itself without the speakers, or even place other items inside the pillow to help you sleep.

For instance, if you find yourself sweating a lot in those hot summer nights, you can place ice-packs in the pillow to help cool off. Or, when you’re stressed out and in the mood for aromatherapy, the CYPRESS insert can be used for some phytoncide healing.

Also, if you have a preference for a specific pillow height, just use the COTTON insert to adjust the pillow’s height to your preference.

You can back Earfree Nitebuds – the high-tech pillow that serenades you to sleep – by finding their campaign on Indiegogo.