Caros, iniciei esta thread no grupo “API & Web Services Brasil” (LinkedIn), e, gostaria da opinião de vocês também sobre o assunto.
Atualmente os sistemas de gestão (ERP) são concebidos em um único grande bloco de software (divido em componentes), geralmente, de um mesmo fabricante. Usualmente os módulos básicos (financeiro, comercial, produção e RH) se comunicam unicamente através do Banco de Dados. Quando há a necessidade de acesso externo, é criado algum túnel VPN ou uma API para acesso externo a algumas informações.
E se o conceito de APIs fosse fortemente aplicado aos sistemas de gestão? Concretamente: ao invés de termos um grande sistema com todos os módulos de responsabilidade de um mesmo fabricante, teríamos diferentes módulos se comunicando através de APIs. Por exemplo: cada módulo básico (financeiro, comercial, produção e RH) seria de um fabricante diferente, e, via APIs eles se comunicariam.
Além disso, caso o sistema fosse utilizado em uma empresa onde existisse a necessidade de algum módulo especial, este módulo poderia ser desenvolvido pela equipe de desenvolvimento local, porém, sem a necessidade do desenvolvimento dos demais módulos mais ?genéricos?. Por exemplo: em uma clínica médica, os módulos de Anamnese e Prescrição seriam desenvolvidos por programadores locais, porém, os módulos de financeiro, RH, etc. não teriam a necessidade de desenvolvimento, seriam utilizados módulos de terceiros, oferecidos por uma API.
O que vocês acham a respeito? Quais as limitações deste modelo?