Arquitetura de software em aplicações para comercializadoras de energia

arquitectura del software en aplicaciones para comercializadoras energéticas (1)

Há uma frase que expressa perfeitamente como o software Globaleris nasceu e como se tem desenvolvido. Steve Jobs, co-fundador da Apple Inc, costumava dizer que “se está a trabalhar em algo excitante que realmente lhe interessa, não precisa de ser empurrado. A visão atrai-o”. A visão que a equipa Globleris teve desde o início foi a de se tornar a referência em software de gestão para as comercializadoras.

Globaleris é um SaaS ou “Software as a Service” na cloud com uma subscrição mensal para a gestão integrada das operações do negócio da energia elétrica e/ou gás. A proposta de valor diferencial, o “core business” de Globaleris é, portanto, o desenvolvimento de software. Concebemos e desenvolvemos soluções informáticas que são ágeis, úteis, transformadoras e diferenciadoras para as comercializadoras de energia, com o objetivo de alcançar uma maior automatização, eficiência e melhor tomada de decisões.

No cumprimento da nossa missão, começamos a desenvolver-nos do zero com uma visão clara de basear o nosso produto na melhor arquitetura.

A seguir, revelamos os segredos do “esqueleto” do nosso software, o que torna Globaleris diferente a este respeito, e como as comercializadoras podem beneficiar dele de acordo com as suas necessidades.

A importância de uma arquitetura robusta de qualidade

No mundo do desenvolvimento de software, a arquitetura de software representa a primeira decisão de conceção. Dependendo da forma como projeta essa arquitetura, compromete a implantação, o desempenho e a escalabilidade da aplicação.

Trata-se de lançar uma boa base para poder assegurar esse crescimento futuro de forma fiável para os nossos clientes.

Para compreender melhor como desenvolvemos a solução e as suas funcionalidades, vejamos o que entendemos por “arquitetura de software”.

O que é arquitetura de software?

Antes de mais, devemos ter em conta que não existe um consenso definitivo sobre a definição de arquitetura de software, como é o caso de outros conceitos que foram criados há relativamente pouco tempo e estão em constante evolução.

É possível, contudo, referir-se a uma das definições mais citadas e acordadas internacionalmente. Esta é a definição estabelecida no livro 2010 Documenting Software Architectures: Views and Beyond. Este livro afirma que a arquitetura de software, são as estruturas fundamentais de um sistema de software e a disciplina de criação dessas estruturas e sistemas. Cada estrutura compreende elementos de software, relações entre eles, e propriedades de ambos os elementos e relações.

Além disso, os autores Philippe Kruchten, Grady Booch, Kurt Bittner, e Rich Reitman derivaram e refinaram uma definição de arquitetura baseada no trabalho de 1996 de Mary Shaw e David Garlan. A sua definição segue a mesma linha do acima exposto: “A arquitetura de software engloba a seleção da estrutura, elementos e suas interfaces pelas quais o sistema é composto; comportamento especificado em colaboração entre esses elementos; composição da estrutura e elementos de comportamento em subsistemas maiores; e um estilo de arquitetura que orienta esta organização”.

Como é que a arquitetura de software da Globaleris difere das outras?

No centro do desenvolvimento de software de Globaleris está a conquista da qualidade. Este tem sido o princípio orientador do desenvolvimento, do qual derivam características diferenciais em relação a outros produtos no mercado, como por exemplo:

  • Flexibilidade
  • Versatilidade
  • Manutenibilidade
  • Desempenho
  • Segurança

Estas vantagens são alcançadas graças a um conjunto de elementos que compõem a arquitetura Globaleris e fazem dela uma plataforma cloud modular, facilmente adaptável às necessidades de cada comercializadora. Os detalhes são fornecidos a seguir:

Arquitetura do Microsoft Azure PaaS

Um dos aspetos centrais na conceptualização de Globaleris foi a escalabilidade e a boa manutenção. As comercializadoras precisam do software de gestão para poderem estabelecer relações contratuais, faturar e/ou gerir processos de forma ágil e fiável. A arquitetura de nível superior PaaS garante escalabilidade ilimitada e manutenção profissional das infraestruturas (máquinas, segurança, SO, etc.).

App Service

A aplicação web escalona-se horizontalmente. Graças ao “Blob storage”, os ficheiros gerados ou capturados pela aplicação são armazenados em triplicado em diferentes servidores. Com o Azure SQL, a informação é armazenada numa base de dados SQL Server PaaS para encriptação e utilização transparente de dados com funcionalidade de “elastic pool”.

E graças ao Azure B2C, Globaleris tem um diretório que pode opcionalmente ser sincronizado com o AD corporativo de cada comercializadora.

APIs

Globaleris tem feito um grande esforço material no desenvolvimento extensivo da capacidade dos seus APIs, razão pela qual gostamos de falar sobre a “apificação” total da plataforma. Globaleris oferece um API REST sobre protocolo OData capaz de normalizar e simplificar os processos de integração com sistemas de terceiros. Esta API permite a criação de uma arquitetura orientada para eventos, que permite aos recursos internos ou externos subscreverem qualquer tipo de ação que ocorra na plataforma.

Webhooks Pub/SUB

Notificações instantâneas e seguras para outras aplicações, para que o sistema possa ser atualizado quando o evento ocorrer.

Serverless

Soluções para um isolamento e tratamento ótimos de eventos críticos usando “Funções”, bem como a sua extensão durável usando padrões de aplicação. Com “Logic App”, são incorporadas soluções de processo simples e dinâmicas com capacidades de organização e inter-relação com funções Azure.

Portanto, Globaleris oferece este tipo de opções que permitem qualquer tipo de atividade dentro da plataforma, tanto as que são programáveis como as que são parametrizadas como resposta a um evento específico: níveis de integração, organização de eventos, planeamento de tarefas programadas sem servidor, etc.

RuleBooks

Globaleris RuleBooks é uma solução proprietária, capaz de encapsular a lógica específica de cada negócio (por cliente, por país, por tipo de fatura, etc.).

Segurança

Globaleris é submetido a uma auditoria anual de segurança, na qual é avaliado independentemente no exterior para assegurar aos nossos clientes que os seus dados e infraestruturas são fiáveis e protegidos. Seguimos protocolos e ações específicas para assegurar a máxima paz de espírito e evitar problemas.

Por exemplo, Globaleris é entregue por defeito a partir da Internet através do protocolo HTTPS encriptado protegido pelo certificado TLS. Todos os dados na plataforma são encriptados utilizando o procedimento de Encriptação de Dados Transparente de Microsoft. A autenticação do utilizador de dois fatores também pode ser configurada usando o Azure AD B2C, e protocolos como o SAML2 podem ser usados para a federação com AD corporativos.

As atividades de qualquer utilizador são registadas através dos registos. Temos uma opção de sessão expirada, que recomendamos como uma boa prática. Também é possível configurar chaves de segurança usando o Azure Key Vault, uma das nossas mais valiosas opções de segurança. As suas vantagens são que as aplicações não têm acesso direto às chaves, aumentando o controlo sobre as chaves e senhas para maior segurança.

Servidor SFTP

Fornecemos servidores SFTP para a comunicação automatizada entre comercializadoras e distribuidores.

Capacidade analítica e relatórios

Globaleris integra Qlik Sense Server na sua plataforma, uma das soluções analíticas mais poderosas do mercado, permitindo a criação e publicação de relatórios (gerais ou personalizados) para a conversão de dados em conhecimento. Também oferecemos aos nossos clientes uma das soluções analíticas mais avançadas do mercado.

Suporte

Globaleris foi concebido para apoiar todo o ciclo de vida da aplicação web: construir, testar, implementar, gerir e atualizar (tudo gerido pela equipa da Globaleris).

A nossa equipa de suporte e serviço tem a ferramenta Azure Monitor para rever qualquer fluxo, a pedido dos clientes.

Cópias de segurança

Globaleris garante a capacidade de recuperar da perda de cópias online de dados num período máximo de 24-48 horas no caso de um “desastre”. Os procedimentos de recuperação são periodicamente testados de ponta a ponta.

Cumprimento normativo e legal

Em questões regulamentares e legais de sistemas no cloud, Globaleris adere ao EU Cloud Code of Conduct.

 

Quer saber mais? Contacte-nos ou solicite uma demo sem compromisso.

Comparte en: