10: Acquiring the Skills for SOA
Since the change to SOA introduces a new paradigm that extends beyond the developers, the need for training and skills development is broad.
ROLES, RESPONSIBILITIES, AND SKILLS
The author defines a number of roles that will need to be filled in supporting SOA within an organization:
The "leaders" group is made up of those who will champion SOA within the organization, which generally includes executives within the organization who must decide if the technology is a good fit and, provided that is so, to drive the adoption of SOA.
It is suggested that these individuals need a high-level understanding of SOA. A "one-hour session" is generally suffieicne.
Business Process Managers
This group is comprised of business managers and business analysts, whose role is to drive the optimization of business process by indentifying the needs for solutions and monitoring the effectiveness after a system is rolled out, with an eye toward constant process improvement.
These individuals need a clear understanding of how SOA supports their business processes and facilitates their interactions with other business units and third parties. They will need a moderate amount of training to integrate the principles and potential of SOA into their existing body of knowledge about business process management and modeling.
The IT architects design and maintain the technical infrastructure, which will be significantly impacted by SOA. They need extensive training on the SOA methodology with very granular information about how it will impact and integrate with the existing systems, and the ways in which it will impact the future evolution of the IT infrastructure of the enterprise.
The developers are responsible for the hands-on work of building new systems, adding a service layer (with which they may be unfamiliar) on top of the legacy systems with which they are already acquainted. Developers will need extensive training on the tools, techniques, and theories for developing service-based solutions.
SOA Support Personnel
Support personnel monitor the day-to-day operation of deployed solutions to ensure performance and respond to any irregularities or problems that arise and take corrective action.
Monitoring the general health and performance of services is a world apart from monitoring monolithic systems, as most systems have a wealth of tools and documentation for support. In addition to training and reference material related to each service, support personnel will need to have a more extensive overview of the way in which services interact with one another (unlike monolithic systems, they do not exist in a vacuum)
Software testers may need some level of training in order to understand the basic principles of SOA and develop test plans accordingly.
Mid-level management within an IT department provide governance over information systems and will need a theoretical knowledge of services as well as a familiarity with the services that reside within the infrastructure.
MULTISTAGE TRAINING PROGRAM
Rather than having a sizable and continuous training program in SOA, the author suggests that a multi-stage training program that educates employees "in small chunks" have the advantage of being easier for the organization to deliver and the employees to receive.
A training schedule can be designed to deliver information when it becomes relevant, rather than having a long time period elapse between the training event and the time the employee will need the knowledge for practical reasons.