Introdução ao Módulo Básico de Auditoria Mendix

I. Introdução

Como consultor de pré-vendas, ajudar os clientes a selecionar produtos de baixo código é uma tarefa diária. Para examinar a qualidade de um produto low-code, uma das dimensões é a maturidade do produto. A maturidade do produto afeta diretamente a estabilidade do produto e a experiência do usuário em uso, e é crucial para a introdução e uso sustentável de novas ferramentas.

Então, como verificar se um produto está maduro? Costumo dizer aos meus clientes que é preciso olhar para o tempo, ou seja, há quanto tempo está no mercado; em segundo lugar, olhar para as iterações, ou seja, quanto tempo leva para lançar uma nova versão; Acredito que todos entenderão os dois primeiros pontos rapidamente, então o que é uma “função de canto”? Dissemos, para ver se um familiar gosta de limpar e arrumar, você deve verificar se tem poeira nos cantos. Da mesma forma, podemos ver a maturidade de um produto verificando se ele cobriu algumas funções aparentemente marginais. A lógica é que só quando o produto atinge uma fase mais madura é que a equipa de produção e investigação pode ter condições para dar prioridade ao investimento de recursos para aquelas necessidades aparentemente menos essenciais. Pelo contrário, um produto inicial deve estar ocupado construindo primeiro as funções essenciais e depois cuidando das funções e necessidades não essenciais.

No que diz respeito ao Mendix, ele nasceu em 2005 e tem 18 anos de desenvolvimento, podendo-se dizer que não é “veterano” na trilha do low-code. Em termos de iteração, há uma versão pequena em 2 a 4 semanas e uma versão média em 1 a 2 meses.Em comparação com seus pares, também manteve uma rápida evolução. Existem também muitas "funções de canto", e a depuração de pontos de interrupção é uma delas. O Mendix Studio Pro começou a oferecer suporte a breakpoints locais e até mesmo condicionais desde muito cedo, permitindo desenvolvimento e depuração semelhantes aos IDEs tradicionais, proporcionando aos desenvolvedores uma experiência de usuário mais completa.

O módulo básico de auditoria a ser apresentado neste artigo pode ser considerado outra “função de canto” que reflete a maturidade dos produtos Mendix. Mesmo os idosos do círculo Mx podem não ter ouvido ou entendido o uso deste módulo em detalhes, mas ele pode resolver problemas de forma rápida e rápida em algumas situações de negócios.

2. Análise de demanda

Os clientes que experimentei pessoalmente mencionaram os dois tipos de necessidades de negócios a seguir:

Caso 1: Uma empresa farmacêutica espera escolher um produto de baixo código para atender ao gerenciamento do projeto de desenvolvimento planejado de um medicamento inovador. Envolve equipamentos, amostras, testes, inspeções, pessoal, finanças, etc., e o projeto deverá levar de 5 a 10 anos, e haverá mais requisitos de aplicação desconhecidos no processo. No entanto, está claro que as aplicações de software em certas áreas das empresas farmacêuticas, como testes e fabricação, devem atender aos requisitos da FDA (a empresa tem uma equipe de pesquisa e desenvolvimento nos Estados Unidos e seus produtos são lançados no exterior) e da NMPA nacional sobre especificações de processo GXP (Boas Práticas), uma delas exige que todas as operações do sistema tenham registros originais completos, que possam ser exportados para referência futura, de modo a garantir que o processo de desenvolvimento de medicamentos possa ser auditado e revisado. Portanto, a empresa também levantou a exigência de que o aplicativo desenvolvido possa registrar o registro de alterações do objeto principal do produto de baixo código.

Caso 2: Uma grande empresa de distribuição espera usar low-code para implementar rapidamente alguns aplicativos gerenciados no Excel no passado. Por exemplo, milhares de pessoas costumavam colaborar no gerenciamento de metas no Excel. Desde a proposta de metas, modificação, aprovação, acompanhamento, atualização, revisão até o fechamento, muitas pessoas podem adicionar, excluir, modificar e verificar registros em diferentes momentos. Um dos pontos fracos do Excel é a incapacidade de rastrear quem fez quais alterações. Portanto, o responsável espera que, após o lançamento do aplicativo de baixo código, os eventos acima possam ser claramente registrados, incluindo quem fez o quê (adição, exclusão, modificação) operações em qual objeto e em que momento, e os registros do evento podem ser exportado.

O Caso 1 e o Caso 2 são manifestações típicas das normas da indústria e das normas do sistema de TI, respectivamente.Os requisitos são semelhantes e podem ser atendidos na plataforma Mendix, usando o módulo básico de auditoria Mendix.

3. Análise do módulo

Pesquise e baixe o módulo Basic Audit Audittrial no Studio Pro.

1.png

O módulo recém-adicionado aparece em Módulo Marketplace.

2.png

Vamos analisar a lógica de implementação deste módulo. A primeira é a entidade central.

3.png

  • Entidade AudittrailSuperClass: a classe pai do objeto de auditoria, o núcleo implementa os dois eventos de Before Commit e Before Delete. A entidade comercial a ser auditada é herdada e criada a partir desta entidade AudittrailSuperClass, e dois eventos acionadores são obtidos, e a entidade comercial executa operações relacionadas antes de enviar e excluir.

4.png

  • Entidade de log: registra uma alteração de um objeto de negócios, incluindo nome do objeto, hora da alteração, número de membros alterados, tipo de alteração, descrição e outras informações.

  • Entidade LogLine: registra as informações de alteração de um único membro no objeto de negócios, incluindo tipo de membro, nome do membro, valor antigo, novo valor e outras informações.

  • Entidades ReferenceLog e ReferenceLogLine: registram informações sobre alterações em objetos de negócios envolvendo objetos associados.

A lógica central do módulo.

5.png

  • Microflow BCo_AudittrailSuperClass: Chame CreateLogRecordOfObject JavaAction para registrar as informações de alteração do objeto de negócios quando ele for enviado ao warehouse e retorne o objeto Log. Instancie este objeto e objetos associados relacionados em JavaAction.

  • Microflow BDe_AudittrailSuperClass: Ao chamar CreateLogRecordChangesBeforeDelete JavaAction para registrar as informações de alteração no momento da exclusão do objeto de negócios, a lógica é a mesma acima.

No modo de utilização do módulo de associação e adição de eventos, é necessário copiar e simplesmente ajustar esses dois microfluxos e adicioná-los à entidade de negócio a ser registrada.

Além disso, o módulo fornece amostras de páginas e fragmentos de páginas Snippeet, que os desenvolvedores podem usar diretamente ou adicionar à página de destino para exibir registros de auditoria.

6.png

4. Aplicação prática

Uma aplicação prática do módulo básico de auditoria é mostrada abaixo. Este é um exemplo de aplicação de gerenciamento de estoque, incluindo diversas entidades básicas, como material, fábrica e estoque. Adicionamos registros de auditoria para fábricas e materiais de duas maneiras para obter todas as informações de alterações sobre esses dois objetos de negócios.

Como usar herança

Para a entidade material, obtemos diretamente a lógica de processamento dos eventos Before Commit e Before Delete definindo a classe pai herdada como AudittrailSuperClass. Esta é a maneira mais fácil de usar módulos.

7.png

Nota: Quando a própria entidade comercial herdou de uma entidade, este método não pode ser usado diretamente. Se a classe pai atual não herdar, considere deixar a classe pai herdar AudittrailSuperClass. Mas esteja ciente das melhores práticas do Mendix em relação ao número de camadas de herança. Se a classe pai for uma entidade do sistema e não puder ser modificada, o segundo método de uso deverá ser considerado.

Como associar e adicionar eventos

Para a entidade fábrica, primeiro estabelecemos um relacionamento um-para-muitos com a entidade Log do módulo básico de auditoria e, em seguida, adicionamos a lógica de processamento de eventos de Before Commit e Before Delete à entidade fábrica. Aqui só precisamos reutilizar os dois microfluxos existentes BCo_AudittrailSuperClass e BDe_AudittrailSuperClass no módulo.

8.png

Método de reutilização: copie os dois microfluxos para o módulo de negócios, dê a eles um nome adequado e altere o tipo de entidade de referência do microfluxo para uma entidade de fábrica.

9.png

Reutilizar página de visualização de auditoria

Nesta aplicação, utilizamos diretamente a página de visualização de auditoria que acompanha o módulo, e o efeito já é muito bom. Especificamente, copie a página Log_Overview para o módulo de negócios, defina o modelo de layout atual para garantir a consistência do UX e adicione-o à barra de menu de navegação.

Atribuir funções e permissões

Por fim, não se esqueça de adicionar funções apropriadas para usuários que precisam acessar a página de auditoria. O módulo básico de auditoria possui duas funções: a diferença é que a função MxAdministrator tem autoridade para consultar as informações de alteração dos objetos associados. Portanto, será necessário incluir essa função quando desejar visualizar as informações de alteração do objeto associado quando o objeto de negócios for alterado.

11.png

Mostrar resultados

Primeiro, adicionamos um material M005, denominado Basket, e o nome de usuário atual é demo_user

12.png

Abra a página de auditoria, podemos ver que a alteração foi registrada, incluindo a pessoa que fez a alteração, a hora da alteração e os detalhes da alteração.

13.png

Em seguida, modificamos a entidade fábrica, o gerenciador é alterado de demo_user para Tom.

14.png

Abrindo a página de auditoria, também vemos que as alterações são registradas.

15.png

Ressalta-se aqui que o campo do gerenciador alterado não é exibido na tabela desta página, mas sim exibido como referência alterada no novo valor. Isso ocorre porque a propriedade manager vem do objeto de associação system.user. A exibição de suas informações de alteração precisa usar as duas entidades ReferenceLog e ReferenceLogLine introduzidas anteriormente e exibi-las em outras páginas. Neste momento, selecione a linha, clique em Visualizar e poderemos ver as informações de alteração desta entidade associada.

16.png

17.png

Até agora, vimos que o mesmo efeito esperado foi alcançado sob os dois métodos de utilização.

Clique para mudar para a visualização de tabela na página de auditoria, podemos ver os registros de alterações de todos os objetos de negócios e podemos filtrar o nome da entidade, alterar a data, alterar a pessoa, o tipo de alteração e, finalmente, exportar para o formato Excel ou CSV para arquivamento ou revisão externa.

18.png

19.png

Além disso, o módulo fornece alguns parâmetros de configuração, permitindo que os desenvolvedores definam o tipo de registros de alteração, carimbo de data e hora, fuso horário e formato, etc. Para obter detalhes, verifique o texto descritivo na página de configuração, que é muito claro.

20.png

V. Resumo e Perspectivas

Este artigo apresenta o módulo oficial de auditoria básica do Mendix. A auditoria é uma importante função de cauda longa que pode ser ignorada pelos produtos gerais de baixo código.Ela se beneficia da aplicação do Mendix no setor financeiro (como RaboBank na Holanda, Zurich Insurance na Holanda, BDC no Canadá, etc.). ) nos primeiros anos. Este requisito foi incluído no produto muito cedo para ser coberto. Este é precisamente um sinal importante de maturidade do produto, conforme mencionado no prefácio. O módulo oferece duas maneiras de usar e é fácil de reutilizar as páginas internas, é fácil de começar e é um bom auxiliar no combate real do projeto. Este módulo foi lançado na versão 9.1, tem um grande número de usuários e recebeu muitos comentários positivos dos usuários no Marketplace.

21.png

Ao usar este módulo, há também algumas considerações, como desempenho. Considerando que a lógica do registro de alterações aciona o momento em que o objeto de negócio é submetido para armazenamento ou exclusão, se houver muitas entidades que precisam ser auditadas e as alterações forem muito frequentes, poderá causar mais atrasos e um aumento acentuado no a quantidade de dados de auditoria. E alguns casos exigem uma pesquisa de registros mais rápida e completa. Para tanto, Mendix lançou uma versão paga do módulo de auditoria avançado, redesenhou a arquitetura e aprimorou recursos como escalabilidade ilimitada, recuperação indexada e armazenamento externo permanente com a ajuda de componentes de código aberto como Kafka, ElasticSeach e Kibana. Este módulo foi usado no projeto Johnson&Johnson nos Estados Unidos para atender aos requisitos de conformidade de sistemas de computador da FDA CFR 21 Parte 11.

Escolheremos uma oportunidade para apresentar este módulo avançado a você no futuro, e amigos necessitados também podem entrar em contato com a linha direta da Mendix para obter mais informações.

22.png

6. Referências

Sobre Mendix

Num mundo digital em primeiro lugar, onde os clientes esperam que todas as suas necessidades sejam satisfeitas, os funcionários esperam melhores ferramentas para realizar o seu trabalho e as empresas percebem que só podem sobreviver e ter sucesso através da transformação digital total. A Mendix Corporation, uma empresa da Siemens, está rapidamente se tornando um facilitador da transformação digital para empresas. Sua plataforma de baixo código líder do setor e seu ecossistema abrangente integram as tecnologias mais avançadas para ajudar as empresas a criar soluções que melhorem a interatividade, simplifiquem as operações e superem gargalos de TI. Com os quatro pilares de abstração, automação, nuvem e colaboração, Mendix melhorou muito a produtividade dos desenvolvedores e contou com seus próprios recursos de colaboração de engenharia e interface visual intuitiva para ajudar um grande número de desenvolvedores "cidadãos" que não estão familiarizados com a tecnologia em seus lugares.Criar aplicativos na área de especialização. Mendix é um líder e visionário aos olhos de analistas respeitáveis ​​do setor, bem como uma plataforma nativa da nuvem, aberta, escalável, ágil e comprovada. Da inteligência artificial e realidade aumentada à automação inteligente e mobilidade nativa, Mendix tornou-se a espinha dorsal dos negócios que priorizam o digital. A plataforma empresarial de baixo código da Mendix foi adotada por mais de 4.000 empresas líderes em todo o mundo.

Acho que você gosta

Origin blog.csdn.net/Mendix/article/details/132299056
Recomendado
Clasificación