Final answer:
The SDLC best practice that should have been followed after small changes introduced new vulnerabilities is Regression testing, which checks that new code changes do not adversely impact existing functionality.
Step-by-step explanation:
The question relates to the best practices in the Software Development Life Cycle (SDLC), particularly after the implementation of a few small changes that resulted in numerous flaws according to vulnerability scans. The SDLC best practice that should have been followed in this scenario is B. Regression testing.
Regression testing involves re-running functional and non-functional tests to ensure that previously developed and tested software still performs after a change.
If any defects are found, they can be fixed before the code is released to the live environment. Considering that small changes can affect the application in unexpected ways, regression testing is key to maintaining stability and security and identifying any new vulnerabilities introduced by the updates.
When considering the alternatives, Versioning and Continuous integration are both important for tracking changes and continuously integrating and testing code changes, but they don't focus directly on identifying regressions.
Integration testing focuses on the interactions between integrated units/modules to detect interface defects, which is also important, but it doesn't specifically address the check for regressions caused by recent changes.