Dependencies between applications traditionally means that integration testing is done late, putting the release
schedule at risk. The later bugs are detected, the more they cost to fix, and the longer the release cycle.
Shifting testing left in application development offers a faster return on investment by allowing IT to catch errors
earlier in the software development life cycle (before release candidates are submitted to formalized testing) and
cutting the time between releases and improving software quality.
The Challenge
The challenge with shift left is having system integration testing environments available on demand,
therefore shifting tests earlier into the development life cycle often uses simulation/virtualization solutions (see Virtualized Services) which can emulate the production environment.
More Efficient Testing
Moving parts of the development process sooner in the software lifecycle will eliminate traditional constraints that
willl in turn decrease the cycle and lead times. First, you will no longer need key resources to be
available, thereby eliminating the process (work) time waiting to gain access to these
resources. Second, the wait time will be reduced during the testing/implementation phase,
because dependent resources can be virtualized. (see Queues in Time/Value Stream Metrics) Virtual services are created at every level of the
application tier, service bus, database, mainframe, and others.
|