Tag SaaS

Por que ficar “Rico” não precisa ser caro

Muitas empresas hoje sabem porque faz sentido mudar para RIA. Elas reconhecem os benefícios substanciais que podem ser obtidos com a migração, mas ainda estão relutantes em dar o próximo grande passo e desenvolver aplicações de negócios que incorporam a verdadeira essência do RIA corporativo, ou seja, uma rica experiência do usuário que melhora performance e produtividade.

RIAs corporativos são aplicações estilo desktop que se caracterizam pela riqueza e funcionalidade interativas para oferecer uma experiência do usuário muito melhor em comparação com as aplicações padrões baseadas em browser. Enquanto a interface do usuário no RIA corporativo não precisa incluir os elementos gráficos elaborados e complexos ou animações interativas associadas com aplicações comerciais, sociais ou jogos, ela deve, porém, ser clara e envolvente para prover usabilidade intuitiva e eficiente. Um conjunto de aplicativos como o Google Docs mostra a impressionante, robusta e rica  experiência do usuário que pode ser alcançada na implementação do RIA em todo o seu potencial.

Frequentemente as empresas se limitam a fornecer apenas as funcionalidades mais básicas, com pouca atenção para a qualidade da experiência do usuário.  Ao fazer isso, elas tiram o ‘rico’ fora do RIA. Mas por que isso está acontecendo? Como podemos explicar essa relutância para abraçar o verdadeiro valor agregado do RIA?

Parece que a resposta reside principalmente na natureza do processo padrão de desenvolvimento do RIA. As ferramentas de desenvolvimento RIA normalmente exigem esforços de desenvolvimento separados para o lado Client e para o lado Server de uma aplicação, utilizando normalmente linguagens de programação diferentes e exigindo diferentes habilidades do desenvolvedor. Equipes separadas de desenvolvedores precisam ser contratadas, treinadas, e gerenciadas. A dependência de múltiplas equipes e conhecimentos pode criar gargalos no processo, e torna mais difícil atualizar uma aplicação conforme as necessidades dos usuários evoluem. Então, diante do alto custo e do trabalhoso  processo de criação e manutenção de aplicações verdadeiramente ricas, algumas empresas barram o investimento necessário de tempo, dinheiro e esforço.

No entanto, essas empresas não precisam mais ter receio do ciclo de desenvolvimento para RIA. Plataformas de aplicações orientadas a metadados oferecem uma nova abordagem para a implantação RIA, simplificando e racionalizando o processo de desenvolvimento. Por exemplo, com a tecnologia correta, agora é possível usar uma única linguagem de programação e ter um único esforço de desenvolvimento para criar tanto o lado Client quanto o lado Server do aplicativo. Sem múltiplas equipes; sem múltiplos esforços de desenvolvimento; sem ciclos de desenvolvimento morosos e caros; apenas a liberdade para se concentrar em melhorar a riqueza da experiência do usuário.

Basta somente utilizar as ferramentas corretas para o trabalho. As empresas não devem se contentar com menos, quando se pode obter muito mais da experiência RIA, com um investimento relativamente pequeno. Quando se trata de RIA, ficar ‘rico’ não tem que ser caro.

Equipe de Marketing da Magic Software Enterprises

Mobilidade Corporativa – É real e está acontecendo agora

Equipe de Marketing da Magic Software

 

Durante anos, analistas sociais, políticos e econômicos falaram sobre ‘a revolução móvel’ como se fosse um asteróide distante vindo pelo espaço em curso de colisão com o planeta Terra.“Quando ele finalmente nos atingir, o impacto será enorme!” avisavam.

De acordo com essa visão, assim como o asteróide que atingiu a península mexicana de Yucatán há cerca de 65 milhões de anos, causando a extinção dos dinossauros e de mais de 70 por cento das espécies vivas da Terra, a revolução móvel em breve atingirá o mundo das comunicações, mídia e informação corporativa. Qualquer empresa que não esteja preparada ou não mude estará destinada a ter o mesmo destino desagradável de uma rápida extinção.

No entanto, na realidade, o asteróide móvel  já atingiu a Terra, ele só não explodiu em um único evento catastrófico como esperado, mas ao invés disso, choveu como uma chuva de meteoros prolongada. Uma grande variedade de atividades pessoais e corporativas têm migrado gradualmente para os celulares nos últimos anos. Assim como o número de smartphones no mercado aumenta exponencialmente,  também aumenta o número de aplicações móveis que podem ser instaladas neles. Desde o mais simples dos serviços de informação até os jogos interativos mais sofisticados, de mensagens básicas de texto até dinâmicas mídias sociais, os dispositivos móveis estão sendo usados ​​de maneira que só poderia ser imaginada como ficção científica há alguns poucos anos atrás.

Uma área que até agora tem evitado toda a força do impacto é o mundo corporativo. Tem havido uma relutância compreensível para adotar a mobilidade devido a preocupações com segurança, custo e funcionalidade. Muitas empresas temem que seus dados confidenciais fiquem expostos a uma série de ataques mal-intencionados se transmitidos através de redes móveis. Elas também estão intimidadas com a perspectiva de ter de desenvolver diversas versões móveis de seus principais sistemas de retaguarda para suportar o número crescente de sistemas operacionais e tipos de dispositivos móveis, com todas as questões de recrutamento e treinamento, planejamento e desenvolvimento, implantação e manutenção envolvidas no processo. Mesmo que pudessem absorver o enorme custo de ir para a mobilidade e suportar a conseqüente ruptura  de sua infra-estrutura básica, muitas empresas expressam sérias dúvidas de que a mobilidade corporativa poderia funcionar em um nível prático, devido à incapacidade dos dispositivos móveis de dar suporte a aplicativos corporativos pesados.

A boa notícia é que estas questões já foram abordadas e resolvidas. As últimas gerações de smartphones têm poder de processamento, capacidade de memória e monitores de alta resolução suficientes para suportar até os sistemas corporativos mais avançados. Além disso, hoje os desenvolvedores podem implantar aplicativos de negócios, que podem rodar em qualquer smartphone sem a necessidade de múltiplos esforços de desenvolvimento ou recursos adicionais. As preocupações de segurança também foram dissipadas, com as mais recentes plataformas móveis que suportam  a criptografia de dados transmitidos e em cachê, autenticação robusta de usuário e regras de assinatura, e trabalho em camadas seguras que garantem que não há redução na segurança comparando-se à aplicativos desktop .

Mais importante, os usuários móveis  agora não estão apenas prontos para aceitar a mobilidade corporativa, eles estão começando a exigir isso. Em um momento onde eles usam seus smartphones para uma boa parte de seu cotidiano, em atividades rotineiras, como fazer chamadas telefônicas, tirar fotos, ouvir música, ler e-mails, agendar reuniões, navegar na Web e seguir percursos pelo GPS, os usuários móveis se deparam com a frustrante e inexplicável realidade de que não podem executar tarefas de missão crítica em tempo real a partir de seus dispositivos móveis.

Assim como os pássaros modernos, que se acredita serem os descendentes sobreviventes dos dinossauros, as empresas devem adaptar-se à revolução móvel fazendo  brotar asas virtuais e se libertar de seu modo de operação desktop, on-premise. Milhões de pessoas ao redor do mundo estão fazendo a transição para o celular, alguns tendo seus primeiros vôos cautelosos fora do ninho, enquanto outros já estão subindo pelos céus.

A mobilidade corporativa é real e está acontecendo agora. Como tantos outros avanços tecnológicos, a revolução móvel apresenta desafios e oportunidades. As empresas hoje têm uma excelente oportunidade de abraçar essa mudança através da implementação de uma solução móvel eficaz que irá deixá-los à frente de seus concorrentes brontossauros.

RIA é para mim?

Manoel Frederico da Silva / Product Manager & MAGIC Evangelist / Magic Software Brasil

Dê uma olhada neste post do Glenn: (http://blog.magicsoftware.com.br/2011/03/10/ria-na-rede-local-porque-nao/ )

Às vezes, pode ficar a impressão que RIA, SaaS ou Cloud são coisas que não fazem parte do nosso futuro imediato, e que não devemos consumir “esforço” com isso agora. Mais para frente pensaremos nisso, conforme  o andar da carruagem.

Mas há algumas coisas importantes que precisam ser bem compreendidas, para que as decisões sejam bem embasadas:

1. Cloud: Significa interNet (você já sabe disso). Mas o importante é saber também que significa usar uma solução que está disponível em outra máquina, acessada remotamente. E que esta máquina pode estar bem ali do lado. Pode ser o servidor da rede. Ou um servidor alugado em DataCenter, só para nós (ou para o cliente). Não há obrigatoriedade de colocar aplicações e dados na rede global, se não quisermos. É o que alguns chamam de “nuvem privada”.

2. SaaS: SaaS e RIA são coisas bem distintas. O conceito RIA facilita a entrada na plataforma SaaS, mas não é uma coisa vinculada a ela. Posso entrar na plataforma SaaS sem querer o RIA (usando web 1.0 ou 2.0 por exemplo), e também posso entrar no conceito de desenvolvimento RIA sem ter de entrar na plataforma SaaS. É importante ter isto bem claro, para que a aversão a uma coisa não bloqueie a outra na carona.

3. RIA: RIA é a evolução dos sistemas WEB. Ela permite acessar uma aplicação remotamente (via web, protocolo HTTP), mas o resultado (interface) é muito superior a uma página dentro de um webBrowser. É uma interface web “rica” em recursos.

Por isso, considere o seguinte:

  • Não quero/preciso ir para a Web agora
  • Meu clientes não querem colocar aplicação e dados fora da rede deles
  • Minha estrutura atual, DeskTop/OpenClient + Servidor de Dados + Servidor de Rede me atende perfeitamente.

Ainda assim, eu ganharia no mínimo três coisas muito importantes portando minha aplicação Magic/eDeveloper/UniPaaS para o RIA UniPaaS:

1. Instalação, Administração e Acesso Centralizado: Só preciso atualizar uma máquina (o servidor) e todos os usuários ficam atualizados. Parece a mesma coisa que ter o RunTime + CTL na rede, mas não é. No modelo tradicional (DeskTop/OpenClient), acessando o UniPaaS + Aplicação de uma pasta compartilhada, todo o UniPaaS (.exe + .dll) + toda a aplicação precisa trafegar pela rede até a máquina do usuário para ser executada na memória da estação dele. E em servidores TS, cada novo usuário conectado duplica os recursos alocados. No RIA não é assim. Apenas um pequeno módulo de ~2MB é descarregado do servidor, um vez apenas, e a partir daí apenas as informações realmente necessárias (programas e blocos de dados) trafegam pela rede (estação <–> servidor).

2. Desenvolvimento 3 Camadas: Finalmente, poder ter uma divisão clara de tarefas, divididas entre as estações e o servidor. No modelo tradicional (DeskTop/OpenClient), todos os dados envolvidos numa tarefa/programa precisam trafegar até a estação do usuário, para lá ser processado e depois, viajar de novo até o servidor de dados para ser atualizado. No RIA UniPaaS, todas as rotinas “Batch” e leitura/gravação de dados é feita no servidor (onde roda o UniPaaS AppServer), e a estação recebe apenas blocos de dados para apresentar, e devolve blocos de dados que precisam ser atualizados. As estações RIA por exemplo, não consomem usuários de banco. Elas nunca acessam o banco de dados (criam conexão com eles).

3. Custo: Não gosto de tratar destes pormenores, mas tenho ouvido que o custo de um usuário RIA é financeiramente mais vantajoso que o de um usuário OpenClient (para quem compra). Então, custo de licenças não é o grande empecilho como poderia ser no caso das licenças Enterprise Server, necessárias para montar uma solução distribuída UniPaaS tradicional.

O intuito deste post não é fazer um “comercial de venda” do RIA/UniPaaS, mas sim fornecer algumas informações úteis para ajudar a decidir melhor. A opção de não querer o RIA/UniPaaS é sua, e sempre será respeitada. Mas que não seja por algum mal-entendido a respeito do produto ou conceito.

E para finalizar, não posso deixar de dizer: é MUITO FÁCIL portar uma solução UniPaaS Desktop/OpenClient para UniPaaS RIA.

Bom trabalho a todos!

Superando os desafios do RIA

Equipe de Marketing da Magic Software Enterprises

Desmistificando os Desafios do RIA

O modo Rich Internet Application (RIA) está definitivamente se tornando o modo preferido de implantação de aplicações corporativas, mesmo para aplicações que são inicialmente destinadas para utilização on-premise (Rede Local) apenas. As vantagens e a agilidade de uma arquitetura distribuída leva os gerentes de desenvolvimento a buscar uma abordagem à prova de futuro e com isso desenvolvem em RIA.

Entretanto, a mudança de aplicações cliente/servidor instaladas localmente para o modelo distribuído baseado na internet coloca diversas questões que podem desafiar a realização bem sucedida e a adoção de novas aplicações.  Tornar-se ciente destes desafios é o primeiro passo antes de se aventurar no RIA; escolher a tecnologia ideal para superar estes desafios facilmente e de forma segura é o passo seguinte.

 

Desafios para o Futuro

Garantindo a Produtividade do Usuário Final

Na mudança para o RIA, há uma tendência de ser atraído pelo potencial de riqueza de meios e elementos gráficos que se tornou sinônimo do web design. Essa tendência leva designers a colocar mais foco no apelo estético e visual do que em uma experiência do usuário eficiente e produtiva (UX, ou user experience).

Quando se trata de aplicativos de negócios internos ou até mesmo aplicações B2B, o usuário final típico destes tipos de aplicações difere daqueles de aplicações corporativas B2C. Nestas aplicações corporativas, os usuários finais utilizam a aplicação diariamente e às vezes ao longo de todo o dia de trabalho. A ênfase nas aplicações corporativas é colocada mais na produtividade e eficiência da interface do usuário. O esforço no design da interface do usuário está em proporcionar ao usuário final o mais confortável ambiente de trabalho para que ele complete até mesmo as tarefas mais corriqueiras da forma mais eficiente possível.

Para novas aplicações corporativas ricas de internet, e especialmente aplicações corporativas que estão sendo reescritas como aplicações ricas de internet, é essencial manter uma experiência como a do desktop. Isso garante um nível de familiaridade que os usuários finais experimentam quando são apresentados a uma nova aplicação. Uma UX familiar com aparência de desktop é essencial não apenas para grande satisfação do usuário final, mas também para uma real aprovação e adoção do novo aplicativo RIA.

É um grande desafio não perder de vista os reais usuários finais da aplicação e não se apressar para implementar todas as capacidades gráficas do meio  web. Os desenvolvedores encontram-se lutando para proporcionar uma experiência de desktop utilizando tecnologias RIA, que não são essencialmente concebidas para uma experiência desktop de verdade.

 

Limitações do Browser

A internet pode ser utilizada de várias maneiras. No entanto muitos ainda vêem o navegador como única manifestação da internet, e quando RIA vem à mente, automaticamente se espera ter uma interface de usuário baseada em browser.  Infelizmente, o browser ainda está longe de ser o meio ideal para suportar a interface de aplicações ricas de internet, onde existem complexas e massivas necessidades de comunicação de dados.

Essencialmente, o browser ainda não está otimizado para o consumo adequado a fim de sustentar adequadamente as aplicações de uso constante que envolvem um número alto de transações que estão sendo submetidas.

O browser é um grande thin client para conteúdo de navegação; entretanto aplicações corporativas sofisticadas precisam de muito mais do que apresentar e coletar informações.  As aplicações corporativas precisam ter as capacidades de executar lógica no lado do client a fim de aumentar o desempenho e por sua vez aumentar a satisfação do usuário. Aplicações de negócios podem precisar interagir diretamente com recursos de cliente local tais como scanners, leitores, impressoras e mais. Aplicações de negócios exigem muito mais do que um thin client; elas exigem um fit client que pode distribuir aplicações que são também altamente ricas em funcionalidades.

 

Complexidade no Desenvolvimento

Desenvolver aplicações pode ser complexo por muitas razões, independemente do modo de implantação da aplicação. Contudo, quando o modo de implantação escolhido é RIA, então as complexidades no desenvolvimento tornam-se ainda mais complexas.

A maioria das tecnologias relacionadas ao RIA sugere uma completa separação entre o lado client e o lado server da aplicação. Esta operação exige a adoção e as habilidades de várias tecnologias para lidar com os módulos do lado client, com os módulos do lado server e a camada de comunicação e protocolo de conexão entre cliente e servidor.

A complexidade multi-tecnológica coloca um  pedágio significativo nos custos de desenvolvimento, complicações, manutenção e risco global.

 

Adesão a Medidas Severas de Segurança

Aplicações de Internet são geralmente consideradas menos seguras do que as aplicações cliente/servidor instaladas localmente. Essa impressão não é sem fundamento, de fato aplicações de internet pode ser mal concebidas, abrindo caminho para várias vulnerabilidades de segurança e expondo a aplicação para usos maliciosos de muitos tipos, tais como representação, seqüestro de seção, injeção de script, injeção de SQL e assim por diante.

Muita reflexão e esforço devem ser colocados no projeto RIA para torná-lo bem seguro e permitir a implantação livre de riscos.

 

Performance da Aplicação

O tamanho de banda está aumentando, mas isso é devido à grande quantidade de dados que é utilizada pelas grandes e complexas aplicações de negócios.

Quando dados em massa precisam ser enviados através de linhas de Internet, as aplicações devem ser destinadas a assegurar os níveis de desempenho aceitáveis e para manter o usuário final da aplicação do usuário final produtivo e satisfeito.

 

Deixe a Plataforma fazer o trabalho por você

A diferença entre o RIA uniPaaS e outros RIAs é que o RIA uniPaaS pode ser projetado da forma que é ideal para enfrentar os principais desafios e proporcionar grande valor para seu usuários finais.

O uniPaaS RIA permite a você superar os desafios do RIA sem qualquer esforço extra porque a plataforma uniPaaS é desenhada para superar intrinsecamente estes desafios.

 

Produtividade do Usuário Final Garantida

Aplicações corporativas devem atender às demandas da intensa utilização por usuários finais que utilizam a aplicação como ferramenta de trabalho.

A interface de usuário do uniPaaS RIA provê uma verdadeira experiência desktop. O desenvolvedor não precisa reinventar um ambiente desktop. Tabelas roláveis, controles de guia em camadas, janelas e caixas de diálogo pop-up padrão, menus pull-down padrão desktop, todos estes recursos desktop são fornecidos como recursos UI default para aplicações.

Além disso, o uniPaaS RIA permite a melhora da aparência gráfica da interface do usuário por incorporar facilmente controles .NET avançados ou objetos Flash para adicionar maior apelo visual.

 

Client Livre de Browser

O client uniPaaS RIA é um módulo genérico que é dedicado especificamente à execução ideal de complexos aplicativos de negócios. Ele é instalado automaticamente no primeiro acesso de uma determinada URL , e a partir deste ponto em todo o aplicativo a interface do usuário é entregue através do client dedicado.

O client RIA dedicado, genérico uniPaaS está no coração da capacidade do uniPaaS de entregar uma verdadeira experiência de usuário desktop. Além do mais, ter um client que é isolado de qualquer outra atividade baseada em browser protege o uso da aplicação da interferência causada por conteúdo de browser adjacente.

 

Simplicidade no desenvolvimento

Ao contrário de outras tecnologias RIA, que são tecnologias essencialmente client, o uniPaaS RIA provê o desenvolvimento com uma metodologia de desenvolvimento unificada, em que aplicações ricas de internet são desenvolvidas usando uma única tecnologia, e exigindo apenas um conjunto de conhecimentos.

Um desenvolvedor uniPaaS RIA está sempre focado em um módulo de desenvolvimento, em que o deployment é separado automaticamente  pela plataforma nos módulos cliente e servidor. Toda execução do módulo client, módulo server e a comunicação constante entre os dois módulos é feita implicitamente pela plataforma na hora do deployment.

O desenvolvedor foca-se puramente no usuário final e nas funcionalidades de negócios que são esperadas para serem suportadas pela aplicação sem a necessidade de quebrar a especificação da aplicação em projetos de client, server e comunicação separados.

A abordagem do paradigma unificado de desenvolvimento uniPaaS reduz significantemente o esforço, o custo e o tempo que são necessários para alcançar a plena funcionalidade RIA.

Somada a esta simplicidade de desenvolvimento do RIA está  a produtividade intrínseca  do uniPaaS que o torna a plataforma de desenvolvimento mais ágil e rápida do mercado.

 

Segurança Rígida

Sendo uma plataforma completa para RIA, o uniPaaS atende aos muitos desafios de segurança que ameaçam qualquer aplicação de internet, tanto interna quanto pública. 

A partir do suporte de padrões de segurança tais como SSL, para construir encriptação de mensagens HTTP, para um mecanismo fortemente seguro de prevenção de qualquer injeção, e para um módulo do lado client totalmente assinado, os projetos uniPaaS RIA vêm com recursos de desenvolvimento totalmente seguros sem qualquer esforço de desenvolvimento.

 

Performance Otimizada

Parte dos serviços nativos do uniPaaS RIA é a capacidade de cache automático inteligente, permitindo a utilização de lógica e dados em  forma reutilizável quando aplicável. Para não ferir suas rigorosas medidas de segurança, o uniPaaS criptografa toda a lógica e os dados em cache para evitar qualquer possível vazamento ou adulteração de dados.

Além disso, a capacidade do módulo uniPaaS client de interagir com os recursos locais da máquina client permite que a aplicação uniPaaS utilize mais dos recursos do client e reduza as idas e vindas da comunicação client-server, reduzindo assim o tráfego e a capacidade utilizada do servidor.

 

Conclusão

Há alguns desafios para a produção da melhor aplicação rica de internet – uma aplicação que não será somente uma solução de trabalho, mas uma aplicação que se destaca na produtividade e na satisfação do usuário final, na segurança e na performance.

Além disso, as complexidades da tecnologia são um grande risco na realização efetiva e na entrega de excelentes aplicações de internet.

O uniPaaS permite que você conclua e entregue aplicações ricas de internet de qualidade superior com menos complexidades, com grande simplicidade, e com a garantia de atingir as metas que você definiu para si mesmo e para sua empresa.

Para mais informações, por favor visite: www.magicsoftware.com.br