explores the principles and practises of agile testing. The class is taught in a dynamic, interactive and engaging style. There are no slides or handouts. Instead participants work together in small groups to reinforce the training and make it relevant to their own context.Outline
- Test Strategy—reasoning about what, where and when to test
- Test Design—reasoning about how to test
- BDD—understanding its relationship to testing and automation
- Automation—when, where to automate, and where not to
- Designing for Testability—how test thinking can inform design, development and deployment
After completing the class, participants will be better able to:
- Identify and apply a number of testing techniques and methods.
- Make design choices that promote testability.
- Understand and implement non-functional testing strategies for e.g. performance and resilience testing.
- Make suitable cost benefit trade-offs for testing throughout the application lifecycle.
- Recognise the diminishing return of different testing techniques and avoiding over-testing.
- Apply consistent testing techniques within and across applications.
- Understand and develop the role of test analysts.
- Introduce instrumentation, analytics and telemetry into their development approach.
- Classify testing techniques by various characteristics and describe their respective merits and trade-offs.
- Apply a risk-based approach to recognising missing or inadequate testing.
- Apply feature management techniques like semantic versioning and feature hiding.
Formerly Accelerated Agile
Great software professionals build better software faster. Agile methods, continuous delivery and software craftsmanship helped speed up delivery from years to months or even weeks, but then what?
Some teams are able to deliver software at a speed of change like you have never seen before, delivering quality software in days or even hours, again and again. So what is keeping the rest of us from doing so? Now is the time to go from months to minutes, to rethink the way we organize and improve our software development and delivery process.
Software, Faster is for people who believe it can be done. People who feel themselves limited by current Agile, CD and Craftsmanship thinking. People who want to go back to basics and uncover new, simpler ways to deliver great software.
Are you a seasoned agile developer who is frustrated at how slow your “hyper-performing” process feels? Are you suffering with an unwieldy feature backlog, the pantomime of estimation, the card wall where cards go to die, the efforts to automate where it obviously isn’t adding anything? Are you fed up with the artificial commitment of sprints and the unwelcome surprises that still seem to derail your projects?
Software, Faster brings agile principles into the 21st century. You will learn new techniques that both enhance and replace existing agile practices, some of which are counter-intuitive and many which are completely counter to current “agile” doctrine. Using a mixture of discussion, instruction and exploration you will start to think differently about design, architecture, development and testing, operations, automation and team dynamics, as well as working with legacy systems and integrating with third parties.
What you will learn:
- How to challenge the received wisdom of established Agile methods
- How to design and architect for rapid and sustainable delivery
- Why understanding risk and embracing uncertainty are at the heart of faster delivery
- How to manage build, release and operations
- How systems thinking can help you plan effectively and estimate accurately
- How to identify and reduce gaps in your testing strategy
- How to engage with legacy systems and integrating with third parties
- How to manage different levels of skill and experience within a team