Lendo vários papers pela net sobre SOA, servicos, eda, eai, bla, bla, fiquei com algumas pugas atrás da orelha.
Sei que integração de sistemas não é nada trivial e que decisões devem ser tomadas com cuidado, já que qualquer mudança será fatalmente muito mais dolorasa que refatorar um sistema qualquer.
Mas a impressão que tenho é que a maioria das abordagens, quando fala-se em SOA, vai contra todo esse “movimento” “anti waterfall”, contra o BDUF, etc …
Fala-se por exemplo na criação de um CDM (Canonical Data Model) para toda a organização. Vejo esse CDM mais ou menos como uma especie de modelo de domínio (tudo bem que são só estruturas de dados) mas, pelo menos o que tenho lido, não parece ser criado iterativamente e sim num grande BDUF.
Vocês utilizam esta abordagem de criar um modelo de dados comum para toda a organização?
E quando saimos do tradicional “SOAP/WSDL” e partimos para REST por exemplo? Isso ainda é válido?
Acho que minha maior preocupação é, as pessoas estão conseguindo implementar “Business Services” de forma iterativa ou estamos voltando para o waterfall? Se classes e métodos sofrem refatoração o tempo todo, seja por evolução ou alguma mudança no dominio, não seria um erro achar que é possível criar serviços e modelos de dados “a prova de mudança”? Ou to viajando e ninguém está tentando fazer isso? 
