September 19, 2017
Software development has en ebb and flow of bugs and enhancements, therefore it is essential to have a well organized process for managing these development tasks. Testing ensures everything you release on your platform has been thoroughly vetted.
As you may know QA stands for Quality Assurance, however that means a lot of different things to a lot of different industries. When QA’ing software, it means that you must assure the tests are also done with great quality. A very important part of maintaining quality and effective QA is organization! As you begin to develop a QA system it is important to track, label and sort all of your enhancements or bugs in your system. There are several online solutions for assisting you in your QA processes so we wanted to share a couple we’ve found effective.
The primary tool we use for development organization is called GitHub. It’s is a vast program that might be a bit too detailed to dive into here. With that said, Github is known as a version control repository. In a nutshell it is keeping track of any changes you make on your platform. While GitHub has a wide variety of services pertaining to a development process, we have also found it helpful to track and pipeline our bugs and enhancements.
Now, Zenhub is a nifty product we use that integrates with GitHub. It can work as a standalone web app but we have chosen to use it within the GitHub interface because jumping between tasks is easier. It places your tickets in a columns like a really aesthetically pleasing Excel sheet. This will help keep your brain sane as it makes the GitHub interface more palatable. Also it keeps you from manually tracking items via an outside source.
Labels are non-negotiable when it comes to managing your QA process. We use labels within Github to help structure the tickets within each column. You can use them for a wide array of options. For instance, you can use labels to merely indicate who is a point person in that ticket. Notice, we use the ‘Ashley’ label to indicate that she is the stakeholder for that ticket. This makes it easy for Ashley to filter labels to only see items where she is referenced, or for other members to know who to inform once something has been tested.
Another use for these for are for process queues, or nature of a ticket. For instance consider if this item is a bug, enhancement or feature request. What if you are only testing ‘enhancements’ that day, and you want to filter them out. By labeling it as such, you can do just that. Or let’s say Alex is wanting to check on the status of his bug? By filtering the label of his name he’ll be able to sift through the tickets he has personally requested with ease to find the one in particular he’s looking for.
Finally, we also label the status of a ticket. While columns within Zenhub indicate where in the pipeline it stands, the status label helps us know what to do with that ticket. For instance if it has a ‘QA’ label, you’ll know it is time to test the heck out of the ticket. What if, when testing, you notice something awry? No problem, why not use a ‘kick-back’ label? Then it’ll visually tell you and the team what has happened, and so other stakeholders can take a look and make any necessary changes.
Those are just a few ideas to help your QA process while using GitHub. GitHub can do some amazing things on its own, but using things like Zenhub and labels might make your process more palatable. Streamlining your QA processes allows you more time to focus more on testing with quality. Now you don’t have an excuse for wasting time organizing and reorganizing as enhancements and bugs come through your system.
As your team begins seeing features move through this organized process you will also see your team’s moral raise. What tools do you use to keep your development organized? Share this article and add your go-to tools to share with your circle.