If you consider the traditional quality assurance process -- in which QA is a set of tasks that occur in a serial fashion after development -- it becomes clear that many of the desired SOA (service-oriented architecture) benefits such as agility, cost efficiency and higher quality are placed at risk. These risks are compounded by four very distinct QA challenges:
- Given the distributed and complex nature of SOA, it is virtually impossible to "stage" an SOA environment.
- Given the technical nature of the message layer, many QA staffers are not capable of constructing the necessary tests.
- Given the general definition of roles and responsibilities within QA and development, there is minimal collaboration on "quality assets."
- Given the high level of integration, more business domain expertise is required to achieve robust tests.