If your organization wants to build, maintain or sell quality software, you need to seriously consider using a quality management system (QMS) to document your processes, procedures and responsibilities for achieving quality objectives and policies. Implementing and maintaining a QMS is a crucial part of regulatory compliance if you’re doing development in industries like medtech, biotech and pharma where you often have to show traceability (tying requirements to pieces of code to specific tests to bugs, and so forth), as well as robust change and version management capable of incorporating things like electronic signatures for sign-offs and approvals.
A QMS is a great way to demonstrate that your company’s development, testing and deployment practices are reliable, repeatable and traceable. Fortunately, the Jira ecosystem has numerous apps, add-ons, plugins and integrations available to help you build a straight-forward and cost-effective QMS solution you can use to coordinate your software operations to meet both regulatory and customer requirements.
Jira Quality Management
According to Atlassian, Jira is used for issue, project and workflow tracking by over 75,000 customers in 122 countries around the globe; not just for software projects but also for business uses like tracking manufacturing supply chain processes, patients in pharmaceutical trials or job candidates through the HR interview process.
A Jira 'issue' refers to a single work item of any type or size that is tracked from creation to completion. For example, an issue could be a feature being developed by a software team, a to-do item for a marketing team, or a legal contract being developed with a customer. Jira projects are flexible on-line working spaces that allow you to group similar issues by team, business unit, product, or stream of work. Examples of projects are a software development project, a marketing campaign, a helpdesk system, or a product enhancement request system. A Jira workflow represents the sequential path an issue takes from creation to completion. Here’s an example of a basic Jira workflow:
In this case, Open, In Progress, Under Review, Final Approval and Done represent the status an issue can take, while the arrows represent potential transitions from one status to another. Workflows can be both simple and complex, and can include collaboration features like notifications, comments and assignments that will help get everyone engaged in the Jira Quality Management process.
Jira Quality Management on Agile Software Projects
Making sure the code you write complies with quality standards is not just a management responsibility but also a team level responsibility, especially if you’re doing agile development and testing. One of the principles of agile development is "working software over comprehensive documentation," which means agile projects shouldn't get bogged down by checklists and documentation when work is handed off from one group to another. Agile project management focuses on continuous improvement, scope flexibility, team input, and delivering high-quality working software rather than documentation. Managing quality and compliance on agile projects requires tight collaboration between all team members.
The de facto standard for the agile software development and testing, Jira Software has powerful collaborative functionality that makes planning sprints, tracking daily work, and reporting on project progress across even globally distributed teams easy. Jira also has major feature sets designed for Scrum and Kanban, the two main types of agile process frameworks used by agile software teams, which are detailed in the following tutorials:
In certain markets and industries such as the Medical Devices and Pharmaceutical industries in the United States, a formal Corrective Action Preventive Action (CAPA) process may be required as part of a QMS. CAPA is a process which investigates and solves problems (identified by customer complaints, internal audits, etc.), finds causes, takes corrective action and prevents recurrence of the root causes. While it’s possible to comply with CAPA standards with a manual paper-based QMS or one built in a program like Microsoft Excel, the reality is that these kinds of solutions don’t scale and are outdated if your team is doing agile development and testing.
As described above, Jira workflows have forms, rules and automatic escalations that can be built and/or customized to follow almost any regulation or process (like CAPA). Jira also has dashboards and custom reports that help your entire agile team see the bigger picture and highlight opportunities for improvement, an important part of any QMS.
Jira and Testing
Although Jira Software is designed for issue, project and workflow tracking on IT projects, many agile teams are also using it for test case management so that development and testing teams can work together in one system.
There are two types of integrations you can use to add testing functionality to Jira:
- Add-ons like Zephyr for Jira, which are internal integrations that live inside the Jira application and add testing functionality. Test issues can be created, executed, tracked and reported on just like any other Jira issue in Zephyr for Jira, which has a look n’ feel that is exactly like Jira’s.
- An external integration with a dedicated test case management tool like Zephyr Standalone, a test management solution managed independently outside the Atlassian ecosystem that offers real-time Jira integration.
Because Jira currently offers no direct integration with automated testing frameworks like Selenium or JUnit, the preferred approach is to handle automated testing via a continuous integration (CI) server and to use Jira primarily for manual testing. This means setting up acceptance, integration and functional tests inside Jira, which can involve considerable workflow customization.
You also have to solve the problem of storing test results. One way is with Atlassian’s Confluence product, which is a knowledge base, or wiki, that stores and organizes all of your information assets around the projects you’re doing in Jira (such as product requirements). Confluence is integrated with Jira, so these assets become an integrated piece that allows teams to create, collaborate and update these assets together.
Automated Testing with Zephyr for Jira
You also need to make sure that test cases are written and executed to ensure that each of your Agile Stories are successfully implemented. Zephyr for Jira allows test cases to be documented and linked to Stories and linked back to requirements in Confluence. Test cases can then be organized into test cycles, or groups of tests to be executed together. The results of these test cycles can also be stored as test executions, giving a clear view of the current status of the project in terms of how many of the test cases are passing successfully.
Agile software projects thrive in a culture of collaboration. Thanks to its ability to integrate with powerful tools like Confluence, Zephyr for Jira and Zephyr Standalone, Jira provides a solid way for agile development and testing teams to collaborate in real-time on requirements, user stories and test cases. This approach adds to the transparency needed to make sure your company has a successful Quality Management System in place and your agile development, testing and deployment practices are reliable, repeatable and traceable.
About SmartBear Software
SmartBear is behind the software that empowers developers, testers, and operations engineers at over 20,000 of the world’s most innovative organizations including Adobe, JetBlue, MasterCard, and Microsoft. More than 6 million people use our tools to build, test, and monitor great software, faster. Our high-impact tools are easy to try, easy to buy, and easy to use. These tools are backed by a team of people passionate about helping you create software that transforms our world. Those tools are SmartBear tools. That team is SmartBear. For more information, visit: http://smartbear.com, or follow us on LinkedIn, Twitter, or Facebook.