Title: Action Hooks - identifying where to build hooks
Time: 30 mins - 1 hour per session
Introduction: To identify where to build an action hook to better control our application under test, we need to find where it would have the most utility. using a mnemonic as a guide really helps in this situation. I have always really liked the FIBLOTS mnemonic by Scott Barber, so I use a modified version for action hooks:
- Frequently Used - areas affected by most system interactions
- Intensively Used - anything that runs for a while
- Business Critical - helps you to get paid and/or comply with legal requirements
- Latest Development - new or experimental features
- Older Technology - hard to develop areas
- Testing Debt - areas that lack testing or are hard to test
- Supporting Systems - any dependencies
Purpose: Create a list of candidates areas in your system for building an action hook to make that area easier to control. Using your application architecture diagram, product roadmap, your team mates and the mnemomic shown above.
Activity:
- Hold a session (or more than one session) where you identify candidate areas for actions hooks. Try and invite the following:
- Developers (they can change the system)
- Product (they have a better idea for what makes money)
- Operations (they know Production really well)
- For each part of the mnemomic brainstorm ideas about where more control is desirable. Some candidate areas will satisfy more than one part of the mnemonic.
- Pick out a common candidate which satisfies a few parts of the mnemonic.
- Discuss as a team how you might add a hook to the system in the candidate area.
- Write up your findings and add them to the README.md file in your application repo (or wherever your team stores its documentation.