Neste artigo apresento o Maximiller dos Santos, que pode ser contatado pelo e-mail m.miller.sts@gmail.com. O Maximiller foi meu aluno em algumas disciplinas de sua graduação e está concluindo o último período do curso de Tecnologia em Análise e Desenvolvimento de Sistemas da UTFPR campus Medianeira neste primeiro semestre de 2013. Trabalhou recentemente no setor de infraestrutura de rede da Prefeitura Municipal de Foz do Iguaçu.

Utiliza-se o termo “Aplicativo corporativo” para descrever aplicações - ou softwares - que uma empresa usa para auxiliar a organização na solução de problemas empresariais. Quando a palavra "empresa" é combinada com "aplicativo", normalmente se refere a um software que resolva problemas complexos para indivíduos dentro destas empresas.

Aplicações empresariais são normalmente concebidas para interface ou integração com outras aplicações empresariais, usadas dentro de uma organização para trabalhar sobre diferentes plataformas. Estas aplicações atendem a requisitos rigorosos relacionados à segurança e gestão de administração. Normalmente são projetadas e implantadas por uma equipe especializada de desenvolvimento de TI dentro da organização. No entanto, uma empresa pode terceirizar parte ou todo o desenvolvimento da aplicação e trazê-la de volta à organização para a implantação.

Atualmente, as empresas estão usando “Aplication Service Providers” (ASP). O aplicativo corporativo é projetado por um Prestador de Serviços de Aplicação de terceiros e arrendado para a empresa, como uma premissa ou serviço hospedado. Outra tendência em aplicações corporativas é a mudança para a computação em nuvem, onde a empresa move parte ou toda sua infraestrutura para a nuvem. Algumas empresas também podem optar por uma solução híbrida, onde aplicações em nuvem são integradas com sistemas on-premise.

Alguns dos tipos mais comuns de aplicações empresariais podem ser: Sistemas automatizados de faturamento, Processamento de pagamentos, Sistemas de marketing por e-mail, Gerenciamento de conteúdo, Autoatendimento com suporte ao cliente, Gestão de relacionamento com o cliente, Planejamento de recursos empresariais, Inteligência de Negócios, Planejamento de Continuidade de Negócios (BCP), Gestão de RH, Integração de aplicação empresarial e Empresa de pesquisa de mensagens e sistemas de colaboração, dentre vários outros.

Como qualquer aplicação moderna, um aplicativo corporativo deve ser confiável, ter um bom desempenho, fornecer uma interface de usuário intuitiva e eficiente, mas além destas qualidades comuns, elas podem ser caracterizadas por três atributos específicos.

Um aplicativo corporativo é:

Grande

Necessita de suporte multiusuários, aplicações multicomponentes que podem manipular dados em massa e utilizar o processamento paralelo, recursos de rede distribuídos e lógicas complexas. Pode ser implementado através de múltiplas plataformas e interagir com muitas outras aplicações.

Orientado à Empresas

Sua finalidade é atender às necessidades comerciais específicas. Codifica políticas de negócios, processos, regras e entidades. É desenvolvido em uma organização empresarial, é implantado de forma sensível às necessidades do negócio.

Missão Crítica

Um aplicativo corporativo deve ser robusto o suficiente para sustentar o funcionamento contínuo. Deve ser extremamente flexível para escalabilidade e implantação, e permitir a manutenção eficiente, monitoramento e administração.

Estas qualidades claramente tornam a tarefa de desenvolvimento da empresa extraordinariamente difícil, a tendência é de que essa demanda rapidamente cresça. A rápida melhora de hardware e software, combinado com a concorrência econômica global - e oportunidades - criaram um ambiente no qual os sistemas de negócios deve responder rapidamente e fornecer níveis inigualáveis de desempenho. Como essas demandas continuam, os desenvolvedores devem automatizar ainda mais os seus negócios, construir seu software ainda mais rápido, servir a mais e mais usuários, e processar uma massa crescente de dados.

Além desses desafios, o poder, a complexidade, a taxa de mudança da tecnologia utilizada na construção dessas soluções corporativas torna o desenvolvimento eficiente cada vez mais árduo. Para criar um aplicativo empresarial deve-se considerar e equilibrar um enorme conjunto de requisitos de aplicação, tais como:

  • Seus objetivos de negócios;
  • Como deve ser entregue;
  • Seu orçamento;
  • Quantas pessoas vão desenvolver, testar, e mantê-lo;
  • Quantos usuários simultâneos deve suportar;
  • A importância de desempenho e facilidade de uso;
  • O hardware proposto;
  • Onde será implantado;
  • Que segurança é necessária; e
  • Quanto tempo se espera para usá-lo.

Sem uma forma sistemática para compreender as relações entre esses requisitos complexos e muitas vezes conflitantes, é difícil saber por onde começar. Um modelo mais simples pode ajudar a reduzir essa complexidade e fornecer uma forma organizada para projetar e construir aplicações que traçam um curso ideal entre as muitas exigências. Seguem abaixo algumas práticas na integração de aplicações:

  • Buscar uma padronização na forma de integração com os sistemas legados facilitando manutenções futuras.
  • A definição de um padrão na forma de trabalho das interfaces pode promover o reuso das mesmas.
  • Quanto menos camadas existirem entre à aplicação legada e a plataforma de integração, menores são as chances de ocorrerem erros durante a troca de dados entre elas.
  • A redução no número de camadas por onde os dados têm de passar até chegar ao seu destino, promove também uma melhor performance durante o processo de troca de dados entre aplicações.

Há muitas diferenças entre gerenciar uma ferramenta desktop ou aplicação e gestão de um pacote de software pronto para empresas. O impacto da compra de um aplicativo corporativo é mais profundo sobre a empresa que compra, o processo de venda é muito maior, e seus participantes e natureza são diferentes. As expectativas dos clientes, em relação à funcionalidade, suporte, serviços e preços também são diferentes. Estas diferenças conflitam com o processo de gerenciamento de produto, características do produto e capacidade do mesmo. Deve ser considerado o seguinte:

  • O investimento do cliente: os sistemas empresariais são um investimento significativo, produtos desta magnitude trazem riscos que devem ser diminuídos. Será que o vendedor, estará no negócio amanhã? Como o produto é suportado?
  • O valor do cliente: os clientes investem em uma escala empresarial que precisa estar confiante no valor do produto. Qual é o Retorno Sobre o Investimento (ROI)? Qual é o risco envolvido na obtenção deste ROI?
  • Ambientes complexos: um produto da empresa deve ser escalável e suportar requisições por diversos tipos de usuários. O produto da empresa deve se encaixar no ambiente existente. O produto pode ser integrado na empresa.
  • Vendas complexas: Existem várias pessoas envolvidas no processo de compra do produto. A compra é geralmente parte de um orçamento reservado para essa finalidade. Há um longo período de tempo a partir do interesse, até que uma decisão de compra é feita. Não é incomum uma venda complexa demorar entre 9 e 18 meses. Ciclos de vendas que abordam problemas que não estão entre os três primeiros na lista do cliente podem sofrer dois ciclos de vendas: uma para convencer o comprador da magnitude do problema, e depois de um período de espera para o orçamento. Então, o gerente de produto muitas vezes é trazido para fornecer um roadmap de produtos como a voz de autoridade no sentido do produto e do futuro.
  • Serviços: São muito mais críticos na venda da empresa. De fato, a porção de serviço de venda pode ser mais importante do que a venda do produto real.
  • Telemarketing e suporte: Questões pós-venda é a parte mais importante do ciclo de vendas da empresa. Atendimento especializado e suporte de qualidade são essenciais para que uma empresa se mantenha com o software. Quando uma nova versão do software está disponível, os clientes geralmente não podem simplesmente fazer o download e executar um script de atualização. Questões que precisam ser consideradas estão atualmente destacadas em versões, para atualizar os dados, backups e planos de contingência no caso de algo der errado.
  • Este artigo abordou alguns conceitos básicos e fundamentais de aplicações corporativas, as quais vêm ganhando cada vez mais espaço no mercado de trabalho, sendo utilizadas por empresas de diferentes portes.

    A utilização de aplicações corporativas tende a facilitar não somente a vida dos programadores, pois, quando entendida a forma de funcionamento, pode gerar um ganho de tempo no desenvolvimento, sem perder a segurança e a confiabilidade da aplicação, trazendo sempre mais empresas para o uso desta tecnologia.