August 19th, 2014 by inflectra
The enthusiasm these days for Agile development is rightly deserved, but with so much being written and said about Agile development, there should be room for healthy debate. While Agile development has proven to be a huge step forward and the right approach for many projects, it is important to continue to ask questions in order that we don’t start to endorse the bad along with the good. We don’t want to throw the baby out with the bathwater, but we can’t keep the bathwater just to avoid the risk of doing so. An occasional examination of principles being promoted and used within the industry helps to maintain Agile methods as the best alternative to traditional development practices for many projects.
In this series of blog postings we shall discuss some of the characteristics of various Agile methodologies and ask whether the ideas are valid or whether they are in fact, industry myths.
This is an interesting idea because it tries to conflate two different types of information, namely requirements and tests. But that’s the point, I hear you cry! However, we must be careful how we allocate responsibility for these requirement/test hybrids. If they are created by traditional test engineers then we have testers defining the product, however these are not typically the skill types used to define solutions. There is also the risk that in trying to write solid and definitive tests which are easy to execute, the engineer may influence the solution negatively. Instead of test engineers as authors, the requirement/test hybrids could be created by someone in the role of product owner, but then the product owner is writing tests, which seems equally undesirable.
The problem can be overcome with another Agile development principle, that of cohesive teamwork. Within Agile projects, roles are merged and combined in ways that would not be viable in traditional projects. By defining roles that allow individuals to work closely with both developers and stakeholders, test cases can be created by individuals who are able to refine the user stories in the form of test cases. This element combining requirement information and test information can reduce effort and improve quality by making requirements effectively their own test cases. But it can be risky. By trying to get to the solution faster, it puts great responsibility in one place; get that wrong and the consequences could be significant.
To reduce this risk, any interactions with stakeholders which lead to the understanding of either the problem or the desired solution should be recorded using a robust productivity tool; ideally a tool that can manage user stories, requirements and tests as well as the relationships between them. The new test cases that also refine the user stories reduce the number of transitory steps between need and software solution and can easily be used as a level of validation with the stakeholders, who now only have one set of data to approve, killing two birds with one stone.
As we can see then, there are clear benefits to using test cases as one level of decomposition below user stories and therefore this idea is not a myth, provided it is not implemented as a singular initiative but is used in an environment where other supporting Agile principles are practiced.
You may also be interested in:
10 Questions You Should Ask When Choosing a Tool for Requirements Management
Testing in Agile Projects: Familiarity Breeds Consent
Principles of Requirements Engineering (or Requirements 101)
The Cost of Quality Assurance
Ask an Inflectra expert:
SpiraTest combines test management, requirements traceability & bug-tracking
SpiraTeam brings your teams together, managing the entire application lifecycle
SpiraPlan lets you manage your programs and portfolio of projects like never before
Orchestrates your automated regression testing, functional, load and performance
The ultimate test automation platform for web, mobile, and desktop applications
The help desk system, designed specifically for software support teams
Cloud hosted, secure source code management - Git and Subversion
Exploratory testing capture tool that automatically records your testing activity
Let us deal with the IT pain so you don't have to. Or use on-premise if you prefer.
Our customers work in every industry imaginable. From financial services to healthcare and biotech to government and defense and more, we work with our customers to address their specific needs.
Our products do not enforce a methodology on you, instead they let you work your way. Whether you work in agile development, Scrum and XP, Kanban and Lean, Waterfall, hybrid, or Scaled Agile Inflectra can help.
If you want to learn more about application delivery, testing, and more take a look at our whitepapers, videos, background papers, blog, and presentations.
Customers use our tools to help automate repetitive tasks and streamline their business processes using our Robotic Process Automation (RPA) solutions.
We collaborate with a wide range of teams to bring our customers a range of services (including load testing, training, and consultation), complimentary technologies, and specialized tools for specific industries.
Learn how different organizations have benefited from using Inflectra products to manage their software testing and application develooment.
Outstanding support is the foundation of our company. We make support a priority over all other work. Take a look at our support policy.
Discover great tips, discussions, and technical solutions from fellow customers and Inflectra's technical experts.
If you can't find the answer you're looking for, please get in touch with us: over email, phone, or online.
We are constantly creating new videos to help customers learn about our products, including through in depth webinars, all freely available along with a wide selection of presentations.
We provide a number of resources to help customers learn how to get the most out of our products, with free online resources, virtual classrooms, and face to face.
Read about Inflectra, our manifesto, and values. Meet our incredible customers who are building awesome things. We are focused on their success using our tools.
The Inflectra Blog contains articles on all aspects of the software lifecycle.
In addition we have whitepapers,
background articles, videos and
presentations to help get you started.
Events are a big part of our awesome customer service. They are a chance to learn more about us, our products, and how to level up your skills with our tools.
We actively partner with companies and individuals all over the world. We are also a great place to work and encourage you to explore joining our team.
Please contact us with your questions, feedback, comments, or suggestions. We'll get back to you as soon as possible.
When you need additional assistance (be it training, consulting, or integration services) our global certified solution provider partner network is ready to help.
At Inflectra, we are fully committed to provide our customers with the very best products and customer service.
We want to help developers extend and customize our tools to fit in with their needs. We provide robust APIs, sample code, and open source projects.