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.

Leave a Reply

Your email address will not be published. Required fields are marked *

Could You Be the Next Crime Victim?

Being a victim of crime is something no one wants to be a part of.

That said are you doing everything within your power to lower the chances of being the next victim? If you are not, you could be setting yourself up for trouble.

With that in mind, what steps can you take to steer clear of being a crime victim?

Don’t Think It Can’t Happen to You

In your quest to steer clear of ending up a victim, your first step should be to understand that it can happen to anyone.

That said you want to avoid having the notion that you are immune to it. Even when you think you’ve taken all the right steps to avoid crime, it can still surprise you.

Among some of the crimes and how you can avoid them:

1. Identity theft – One of the more troublesome crimes, identity theft can strike at any time. With that being the case, you want to have an identity protection plan backing you up. Whether you look into LifeLock identity protection service or another brand, protect yourself. Such coverage will alert you to any red flags as you look to protect your finances. The most notable is someone without authority has tried to access your finances. Remember, one successful identity theft caper can have dire consequences for your finances.

2. Property theft – No matter the items involved, property theft is another crime you want to be aware of. With that in mind, you should make sure all your property has protection at all times. An example of this would be your vehicle. Are you someone who leaves their vehicle unlocked all or most of the times? If so, you are asking for trouble. Even if you lock your car or truck on a regular basis, do not leave valuables in it. Items like laptops, phones and significant money should never be in your vehicle. If you need to leave something of value in your vehicle for only a brief period of time, lock it in the trunk. At least this way it is out of the public view should someone come upon your vehicle.

3. Home invasion – Another crime to stay on top of would be a homeinvasion. In such a scenario, a criminal would break into your home whether you are there or not at the time. If you are, things could be even worse. To best protect your home, having a security system in place is a good start. If you do not have one now, go online and see which companies offer the best systems. You can check with friends to see which home security systems they recommend. Even with a security system in place, use some commonsense too. This means not leaving doors unlocked to start with. If you are going to be away for any extended period of time, be sure to have your mail/newspapers picked up. Also make sure your grass is trimmed and any snow is shoveled. Never give off signs that your home is sitting there without you around.

In your efforts to avoid being a crime victim, will you come out on top?

 

 

 

Office Rules To Boost Productivity

If you run an office then you will know only too well how the pace and quality of work seems to ebb and flow from day to day. Naturally you want the team to be firing on all cylinders as often as possible, so it is up to you to ensure that you have created an environment in which your staff can do just that. There are a great many office desk hacks which you can find online at places like https://www.businessbacker.com/ that will talk about how to get the best out of your staff.  We are going to look a little wider than that today and focus on rules which you should implement in the office, to ensure maximum productivity at all times.

Smart Planning

The first place to start is to look at the layout of the office, and think about whether or not it makes practical sense. For example if the printer is a heavily used item, but it is situated a 2 minute walk from most desks, think about how many minutes of work time you will be losing each day. Consider how the operation works in your office, and then move furniture and equipment around accordingly.

Cleaning Rule

It has been scientifically proven that physical clutter on desks and floors, leads to people being far less focussed and with low levels of concentration and organization. With this in mind there should certainly be a no clutter rule in the office, which everyone must follow.

Breaks

Aside from the usual breaks such as lunchtime and any short breaks in the afternoon, you should look to randomly give your staff 5 minutes here and there each day. It can be really easy for staff to get bogged down in their work, chained to the office desk all day, and they need respite. Pick random times when things are quite quiet, and call a 5 minute break where the staff must go out for fresh air. This may sound counter-productive but the renewed energy that your staff will have from a short, impromptu break, will reinvigorate them and help them to work better.

Exercise

More and more news is coming out that details the huge number of physical problems that office workers have, as a result of their job. To counter this, and to help increase their productivity and reduce sick days, you should encourage exercise in the work place. This doesn’t need to be something large, there are simple yoga techniques which can be done right from the office chair.

Penalties

Once you have put these rules in place, it is important that you have a penalty system for those who don’t follow them. This will be something aside from the disciplinary process, and it will have a bit more of a fun element to it. For example if someone receives 3 strikes for having clutter at their desk, they will be given some chores to do, or they will have to buy a cake for the office or perhaps even pick up someone else’s work. This penalty system will bring people together, and make your staff more focussed on the rules, and ultimately more productive.