»
S
I
D
E
B
A
R
«
SAP: Primeiras Impressões
março 24th, 2009 by saulo.brust

Entrar no Mundo SAP é uma experiência interessante, principalmente pra quem já trabalha com tecnologias ditas “novas”, como Flash Plataform, Java e .Net. São outros desafios, clientes grandes, linguagem e metodologia sem igual, um tanto não comum para quem lida com o sofisticado mundo da internet.

Faço parte do time de “novas tecnologias” da SYSone Consulting, uma consultoria focada em negócios e soluções SAP, que vem se especializando em integrações e outras tecnologias como meio de servir seus clientes em suas mais variadas necessidades. Mais especificamente atuo com aplicativos ricos para apoio a sistemas de gestão, uma tarefa revolucionária num mundo extremamente focado em processo de negócios.

Uma de minhas tarefas é entender o meio o qual o produto está inserido, para melhor arquitetar a interface e interação de usuário, e construir algo surpreendente que atenda requisitos que vão além do processo. Bonito isto, hein?!

E fui descobrindo que este novo mundo é muito diferente daquilo que estava acostumado, parecia o que aprendi até então não servia pra muita coisa. Após um tempo convivendo neste ambiente, aprendendo por osmose jargões e metodologia, fiz um curso introdutório de ABAP que resultou numa experiência melhor que a esperada. As coisas começaram fazer sentido, sempre fui um crítico dos movimentos tecnológicos, e a SAP tem conquistado minha opinião positiva cada vez mais.

Faço aqui meus apontamentos daquilo que julguei interessante para futura lembrança e talvez poder ajudar aqueles que estão nesta mesma situação, e querem entender um pouco do ERP da SAP, seu principal produto. Muitos destes foram retirados da apostila do curso (reprodução permitida) de Renê Zaidan.

  • Princípio: gerenciar todas as áreas da empresa num único sistema. O ERP é dividido por módulos, onde cada qual faz referência a uma área e possui uma sigla de 2 letras, tal como FI, CO, HR, MM e PP.
  • Profissionais: basicamente há 3: 1)BASIS, responsável pela configuração e segurança do sistema; 2) ABAP, desenvolvedor dos programas e customizações; 3) FUNCIONAL, analista de negócio, normalmente especialista por módulo. Encontramos também outros profissionais ligados ao novos produtos da SAP.
  • Arquitetura: possui 3 camadas, idênticas ao conceito server-side: Persistência, Aplicação e Apresentação.
  • Persistência: banco de dados relacional, oculto ao desenvolvedor, usado como repositório de tudo, inclusive de sources de programas. As tabelas de dados, que na prática é uma tabela do BD, são classificadas como configuração ou aplicação (dados de negócio), que é gerenciado por um dicionário de dados (SE11) no próprio sistema. Através do “Open SQL”, linguagem SQL padronizada pela SAP, os programadores interagem com o BD. O sistema não conta com proteção à integridade dos dados, ou seja, os comandos mal pensados podem estragar tudo!
  • Programação: linguagem ABAP, por ser uma linguagem voltada aos negócios, sua sintaxe permite a resolução dos problemas usuais com poucos e poderosos comandos. O extraordinário do SAP é que a leitura do código fonte dos programas fica aberta a todos, inclusive no ambiente de produção. Isto é uma forma de possibilitar aos analistas de negócio saber exatamente o que está acontecendo, a questão é que muito deles não sabem trabalhar com a linguagem.
  • Depuração: semelhante a qualquer programação, o destacável é possibilidade de alterar o valor das variáveis em tempo de depuração.
  • Orientação a Objetos: a SAP estendeu a linguagem ABAP, a partir da versão 4.0, para suportar tal paradigma, mas quase todos os programas ainda são estruturados.
  • Apresentação: o mais conhecido é o SAP GUI, um aplicativo cliente que serve como “navegador” da aplicação SAP. Hoje já há interfaces web, inclusive aplicações ricas da própria SAP.
  • Metodologia: AcceleratedSAP (ASAP), até o esquema de trabalho deles é muito detalhado, algo previsível para a empresa referência em processos de negócio.
  • Ambientes: também possuem 3: Desenvolvimento, Qualidade (Homologação) e Produção. Como tudo está no BD, há as “ordens de transporte”, muito semelhante ao “commit” e “update” do Subversion, mas com a possibilidade de enviar também configurações e dados, como atualização de versão.
  • Segurança: sistema de segurança nativo, onde facilmente é possível controlar a permissão de uso dos programas.
  • Documentação: tudo é facilmente documento, mas muitos programadores e/ou funcionais não gostam de fazer isto.
  • Jargões: há alguns interessantes, do tipo “blue print” (levantamento de requisitos) e “report” (CRUD).

Minha intenção não é migrar para este novo mundo, e sim poder colaborar com novas possibilidades de usabilidade e interação nos produtos da SAP, com o que há de melhor na Flash Plataform. Percebi nas últimas apresentações da Adobe que o logo da SAP tem ocupado um lugar de destaque no slide de parceiros, inclusive há uma seção no Adobe DevNet destinada a SAP, que vem desde 2005 deixando claro que o Flash é a sua escolha para a camada de apresentação dos novos produtos.

Fica aqui meu depoimento, e a certeza que a experiência neste mundo terá muitas outras aventuras.


One Response  
  • Renê Zaidan writes:
    abril 6th, 2009 at 7:54

    Não tenho muito a adicionar a suas impressões. Apenas a observação que você olhou inicialmente pelo prisma mais técnico. Na verdade o maior diferencial do “mundo SAP” é a lógica de negócios embutida nos seus produtos. A parte técnica se mostrou robusta e flexível para atravessar todos estes anos com relativa compatibilidade.

    Não sei se o SAP fosse lançado hoje ele seguiria o mesmo caminho: o de definir uma linguagem e um ambiente virtual proprietário. Mas temos que lembrar que este tipo de coisa não existia no tempo que o SAP foi lançado.

    Com a complexidade crescente, os profissionais se especializam muito. Cada categoria que você citou, na prática se divide em subcategorias: cada módulo funcional, cada componente, focos específicos como interface, segurança e operação. Por exemplo, um profissional de Basis (hoje eles preferem o título de “Tecnologia”) de segurança pode não conhecer nada da operação do ambiente. Mesmo desenvolvimento têm desenvolvedores com maior prática em um ou outro componente. Eu mesmo conheço muito pouco de alguns módulos do SAP, cujo desenvolvimento utiliza particularidades. Existem “academias” específicas para estes módulos.

    Quando entramos no mundo SAP, devemos ter sempre em mente que é um produto muito caro e pago por empresas que desejam recuperar este investimento. Assim, o foco nos negócios deve atingir todos profissionais e empresas envolvidas.

    No teu caso em particular, acho que a sua experiência em usabilidade poderá contribuir em melhoria dos produtos gerados.


»  Substance: WordPress   »  Style: Ahren Ahimsa