The success of a company is closely tied to how innovative its products are. Therefore, companies constantly strive to add new features and upgrade their product offerings to attract customers and sustain their competitive advantage; especially in the software industry where products are often intangible. Nowadays, it’s not uncommon for applications to be updated weekly, daily or even hourly. Just look at companies like Facebook, Google and Amazon that push code and release software updates multiple times a day.
As more companies adopt leaner software development methodologies like Agile and DevOps to develop and release software faster, the most fundamental element is frequently forgotten- the user. Companies get lost in the race against time to create and ship new features as quickly as possible, that they often forget to stop and think about the effect these changes will have on their users. They begin to develop software for development’s sake and this kind of innovation without regard for functionality can be very dangerous.
This is where collaboration comes into the picture. By keeping multiple stakeholders in the loop, companies can ensure that features which provide user value are designed, developed, tested and released. Agile test management tools like Hiptest, and issue and project tracking tools like Jira empower teams to collaborate on the right features and develop them. This way, companies can avoid running the risk of being irrelevant and nonessential to their users.
Before talking about how these tools can guide the discussion around collaboration, it is important to take a step back and look at the bigger picture. Companies are often faced with deciding and prioritizing the features to develop in a release. This dilemma can be addressed by using Simon Sinek’s concept of the Golden Circle to create features that impact users both functionally and emotionally. Sinek talks about asking three basic questions which are of paramount importance for understanding the effect of products and companies on people: WHY, HOW and WHAT? By extending the same concept to feature prioritization and creation, teams can create products that matter to people.
When it comes to project management, Jira is one of the best options in the market. It gives teams the ability to plan and track their project development progress. It enables users to create issues, plan sprints, prioritize tasks and follow workflows. Therefore, tools like Jira help teams answer the question: HOW? How are features being planned? But planning is just one side of the story.Many teams solely focus on the HOW by emphasizing the process and metrics that go into developing features, and only end up measuring and optimizing their planning efficiency.
This begs two very important questions: “What’s the value in perfectly developing a feature that your user finds worthless?” and “Are you on track to delivering something that nobody finds useful or wants?” Hiptest helps teams answer these seemingly simple but thought-provoking questions by tackling the WHY and the WHAT of the Golden Circle. Before planning any feature into a sprint, first ask the relevant stakeholders why the feature would help users and then ask them what exactly the feature should do.
This perfectly describes the test-first approach, leveraging Acceptance Test Driven Development (ATDD) and Behavior Driven Development (BDD), which is used and promoted by Hiptest. The Hiptest platform enables diverse teams, including Business folk, Product Owners, Product Managers, Designers, Developers and Testers, to precisely describe a feature and define the acceptance criteria, or the WHAT. Additionally, the tool helps create a shared understanding between all the stakeholders of the impact and benefits of using the feature, or the WHY. Once everyone is aligned on the WHY, HOW and WHAT of the feature, only then should they start defining and developing it.
First, integrate Hiptest with Jira. This is a simple two-step process that doesn’t involve any complex synchronization or data duplication. Once the tools are integrated, you can then link any Jira user story from your backlog to a feature in Hiptest. For the sake of this blog, imagine a scenario where a team is interested in defining and developing a feature to be delivered in the upcoming sprint. The feature in question describes the simple use case of an account holder withdrawing cash, shown by the Jira task below.
First, one starts describing this feature in Hiptest by precisely defining the user need and benefits. The answer to the question, “Why should we develop this feature?” needs to be uncovered here. Business folk, developers and testers should collaborate to create a shared understanding of the problem that needs to be solved. The problem or business need can be best described in the “In order to [get a benefit], as a [role], I want [a feature]” format, as shown below:
In order to get money when the bank is closed
As an Account Holder
I want to withdraw cash from an ATM
Therefore, Hiptest enables teams to define the WHY. The feature description can also be linked to the issue in Jira.
After addressing the WHY, the relevant project stakeholders should then define the expected behavior of the feature, i.e., the WHAT. To do this, the different use cases of the feature are grouped into one or more scenarios.
The three scenarios for this example are, when the:
- Card has been disabled
- Account has sufficient funds
- Account has insufficient funds
Then, Hiptest allows teams to leverage ATDD or BDD to describe the behavior of the application in each of these scenarios step-by-step, using consistent business terminology. This ensures that there is a shared understanding of the feature among all the stakeholders. Now, the developers will be able to implement this feature with clarity, thereby making the development process much more efficient. Furthermore, testing teams can use the feature definition in Hiptest as a guideline while creating their tests, thereby speeding up the overall testing process as well.
How can teams make sure the feature meets business expectations when implemented? As the acceptance criteria and test scenarios have already been created in Hiptest, teams would only need to execute these checks using the feature definitions.
Hiptest helps teams accelerate this process by automating the tests and keeping track of their execution. As the tools are linked, all the data coming from both manual and automated test runs in Hiptest will be visible in real-time in Jira. This provides traceability across the different teams involved in the process. Hiptest also generates metrics and reports around which tests have passed or failed.
If a test failed at some point, testers can also notify developers to fix the problem by creating issues in Jira directly from Hiptest.
At any time during the sprint, teams can analyze the test coverage and test results of their user stories by generating a traceability matrix report in Hiptest. Furthermore, by integrating with continuous integration (CI) and continuous delivery (CD) pipelines, they can gain valuable insight about which features have been delivered and which ones are still a work in progress.