For most IT organizations, SOA is a culture shift from a technology-driven application development style (focused on features and functions) to a business-driven style (focused on business processes and underlying services). One of the major factors in early SOA success is the speed at which a company can shift to a SOA development style, which is correlated to current IT skills and development processes in place.
For IT organizations still building applications using a waterfall methodology with procedural languages, an SOA approach will be a culture shock. The waterfall approach involves users in the requirements phase and then again during user acceptance testing. There is typically a user and designer disconnect between the requirements phase and user acceptance – often leading to a big surprise at the end. Rapid application development techniques help by involving users with design through the use of prototypes. Prototypes, however, are typically a requirements deliverable for the user interface and do not give much visibility or flexibility to the underlying business process.