Veronica Glynn, small business owner, and QA Consultant provides a brief explanation of Agile practices and philosophies and discusses seven common misconceptions about Agile.
What Is Agile?
First, let’s make it clear what Agile is not. It is not the magic potion, or cure-all, to whatever ails your current development woes. Agile is a set of principles that help teach software development teams how to break large releases down into smaller incremental release cycles. Defined by Wikipedia, Agile software development is “an approach to software development under which requirements and solutions evolve through the collaborative effort of self-organizing and cross-functional teams and their customer(s)/end user(s). It advocates adaptive planning, evolutionary development, early delivery, and continual improvement, and it encourages rapid and flexible response to change.” (1)
Instead of working three months on a project and having one large release, teams now work in smaller sprints and deploy new code weekly or bi-weekly. This allows the team to iterate much faster and deliver functionality to clients more consistently. It also speeds up the feedback cycle as users can see the changes and provide valuable insight back to the development team before they’ve moved too far past that release cycle. With Agile methods, companies can now get true feedback from their customers which leads to higher quality projects.
Common Misconceptions about Agile
We Have Daily Scrum Meetings
This is probably the #1 misconception I hear all the time. A company holds daily Scrum (stand-up) meetings, therefore they are Agile. Sorry folks, that just isn’t the case. Scrum is just a methodology build on Agile principles. Just because you’re holding a daily meeting does not make you Agile.
Agile Means “We Don’t Need a Plan”
Planning is still crucial in Agile projects. It’s just a different type of planning than waterfall projects. You need some long-term planning for the final release date, then you will be planning every week for your sprints. Deciding what tasks to pull in and what to delay to the next release cycle. Having accurate requirements is crucial when planning for Agile. You will be estimating work, priorities, and budgets based on these requirements and any mock-ups.
Agile Means “We Don’t Need Project Management”
Being Agile doesn’t remove the need for a good Project Manager. You still need someone to gather all the requirements and be the go-between for DEV and design. Actually, having a good PM makes weekly sprint estimation go a lot smoother because you have all the info you need to provide accurate estimates.
Agile Is For Software Developers Only
This is SO not true. All team members participate in Agile, from software QA engineers to developers to the project managers.
Agile Means No Documentation
I think this is a strong wish of all software developers everywhere. They are inherently allergic to documentation and really want a good reason to say it isn’t permitted. But alas, Agile does allow documentation and even encourages it if it will help in the iteration. The key to documentation is that it needs to be created when truly needed and contain details that will be used going forward.
Claiming to be Agile When You’re Clearly Not
As was mentioned earlier, just adopting a couple of the Agile principles does not make you Agile. If you cannot adhere to and follow all of the principles, then you are not doing Agile.
Agile Will Fix All Our Problems
If only this were true. Just buying the lottery ticket doesn’t make you a winner, does it? Well, neither does just saying you’re “Agile”. You have to apply the principles, then put in the hard work and dedication. Then, before you know it, you’ll start seeing the results and then you can say you’re Agile. Realizing the benefits of Agile can often take years, not months like some think. “There is significant anecdotal evidence that adopting agile practices and values improves the agility of software professionals, teams and organizations;”(1)
So, what’s the difference between Agile and Scrum?
Agile software development represents a group of software development including Rational Unified Process (RUP), Extreme Programming (XP), Scrum, and others. Additionally, with Scrum, there are three major roles: Product Owner, Scrum Master, and Development Team.
If you need talented QA freelancers for your Agile team, consider using VLG Ventures. We specialize in hiring top talent for companies even if you have a tight budget. Our freelancers are talented and passionate about their work and can get started working on your project today!
Unsure what type of QA Professional your project needs? No problem. Our team of highly trained QA Experts can help you discover the exact freelancer your project needs. Interested in learning more? Check out our article on How to Hire a Software QA Professional.
About VLG Ventures
VLG Ventures is a full-service Software QA staffing agency specializing in meeting the QA staffing needs of companies in the tech industry. We diligently recruit, screen, and hire top-rated QA freelancers for local and national companies, providing temporary, temp-to-hire, and permanent contracts based on customer needs.
We help our clients focus on their business by providing a turnkey staffing service. We handle all of the work associated with finding and screening candidates for your openings and even handle payroll for temp and temp-to-hire employees. VLG Ventures’s clients know that their positions will be filled with the industries brightest minds and elite professionals giving them peace of mind to focus on operations.
Come join our team! We believe in rewarding loyalty and excellent service! Our freelancers become eligible for performance bonuses after 90 days of continuous service with our clients. Because exemplary service should be recognized and rewarded.