Se trata de um projeto prático prova de conceito - POC para deixar pegadas digitais e um comprometimento público para aplicar o foco e disciplia e com isso ser próativo para os processos seletivos onde as equipes técnicas de recrutadores tenham condições e evidências para verificar se o meu perfil pode atender as necessidades das oportunidades.
POC de um Lite ERP com arquitetura Hyperledger Fabric Blockchain.
Objetivo é focar no uso prático real dos conceitos abstratos de um desenvolvedor Blockchain fullstack com foco em Contratos Inteligentes em soluções com arquitetura Blockchain usando os Projetos Hyperledger Framework Blockchain e com isso implementar contratos inteligentes para os subprojetos:
Procuro evidência as proficiências nas seguintes habilidades técnicas:
- Metodologia Básica de Análise de Algoritmos
- Técnicas em Análise Código-fonte Legados;
- Técnicas em Refatoração Código-fonte Legados;
- Implementar Soluções usando algoritmos Reutilizáveis e Regras de Negócio em Contratos Inteligentes e os respectivos Aplicativos da Camada de Serviços para consumir e gerar transações nos contratos inteligentes
- Preparando o Cenário Com Um Cenário de Negócios
- Identificar o Cenário de Negócios e Caso de Uso de um Lite ERP
- Identificar o Fluxo de Trabalho do Processo Compartilhado entre os módulos de um Lite ERP
- Projetando transações de contratos inteligentes e estruturas de dados Ledger
- Desenvolver Contratos Inteligentes
- Desenvolver Aplicativos com Arquitetura Blockchain
Projeto inicializado com o Scripts de automação próprio
.
Para obter o presente projeto use os seguintes comandos:
mkdir -p "${HOME}/projetos"
cd "${HOME}/projetos"
git clone https://github.com/pssilva/acmecorp-erp-hyperledger-fabric.git
cd acmecorp-erp-hyperledger-fabric
source ~/.bash_profile
idea .
Depois de baixar o projeto: De que coisas precisamos para atuar no projeto acmecorp-erp-hyperledger-fabric
e executá-lo?
Para isso, use os comandos do script de automação:
export ARTIFACT_ID="acmecorp-erp-hyperledger-fabric"
export TOOL_NAME="BlockchainShellHyperledgerScriptsUteis"
export SCRIPT_PATH="${HOME}/projetos${ARTIFACT_ID}/scripts"
export AUTOMATION_PATH="${SCRIPT_PATH}/src/main/automation"
export TOOL_PATH="${AUTOMATION_PATH}/${TOOL_NAME}"
source "${TOOL_PATH}/BlockchainShellHyperledgerScriptsUteis_main.sh"
BlockchainShellHyperledgerScriptsUteis.installAllTools
BlockchainShellHyperledgerScriptsUteis.makeAllTools
Aqui temos uma lista do que idenficamos com status de pendente:
Segue abaixo (não se limita) os objetivos do presente projeto:
-
Formatando documentação README.md -
Documentação Elaboração do Diagrama de Atividade da Análise Exploratória Genérico. - Scripts Automação
-
BlockchainShellHyperledgerScriptsUteis.installPreRequisito -
BlockchainShellHyperledgerScriptsUteis.installGoLang -
BlockchainShellHyperledgerScriptsUteis.installDocker -
BlockchainShellHyperledgerScriptsUteis.installCloneHF -
BlockchainShellHyperledgerScriptsUteis.gerarImagemDockerHF -
BlockchainShellHyperledgerScriptsUteis.gerarFerramentasHF -
BlockchainShellHyperledgerScriptsUteis.gerarAutoridadeCertificadoraHF
-
- Indexação completa do vídeo longo:
- VIDEO LONGO 15728 – 03.04.07.64.04 – Como Operar e Usar Hyperledger Besu em Redes Públicas e Privadas - Hyperledger Foundation – Questões (mais detalhes veja aqui)
- VIDEO LONGO 10307 – 03.04.07.64.04.06 – Boas Práticas para Composição de Frameworks Hyperledger Fabric em Redes Blockchain – Hyperledger Foundation – Questões (mais detalhes veja aqui)
- VIDEO LONGO 22038 – 03.04.07.64 – Mercado de Trabalho em Blockchain - Hyperledger Foundation – Questões (mais detalhes veja aqui)
- Preparando o Cenário Com Um Cenário de Negócios
- Identificar o Cenário de Negócios e Caso de Uso de um Lite ERP
- Identificar o Fluxo de Trabalho do Processo Compartilhado entre os módulos de um Lite ERP
- Projetando transações de contratos inteligentes e estruturas de dados Ledger
- Desenvolver Contratos Inteligentes
- Desenvolver Aplicativos com Arquitetura Blockchain
- Metodologia Básica de Análise Exploratória, aplicar técncia para análise explorativa (engenharia reversa) nos projetos:
- Hyperledger Fabric Samples (fabric-samples)
- Fabric Chaincode Java (fabric-chaincode-java)
- Fabric Chaincode Go (fabric-chaincode-go)
- Fabric Chaincode Node.js (fabric-chaincode-node)
- Hyperledger Fabric (fabric)
- Trade Network (trade-network)
- Trade Contracts (trade-contracts)
- Blockchain VS Code Extension (blockchain-vscode-extension)
- Implementar Testes (TDD): Técnica Red-Green-Refact
- Descrição sucinta [TRABALHO EM PROGRESSO]
- Implementação dos Pipelines CI/CD Operação de Rede e Construção de Aplicativos Distribuídos:
- Operações – Configuração de Rede e Inicialização
- Etapas do Ciclo de Vida de uma Rede Fabric
- Implatação num Provedor de Nuvem (mais detalhes veja aqui).
- Implementar restrições de Commit no Git: vinculado com o ID de regra de negócio e ID do checklist de validação das entragas de funcionalidades (mais detalhes aqui)
- Implementar Dockerfiles para Kubernetes
- Colocar em prática o Desenvolvimento Orientado a Interface onde se deve desacoplar a aplicação do procedor de nuvem (Princípio da Segregação de Interface (ISP) - SOLID) (mais detalhes veja aqui)
- Implementar Arquitetura Orienta a Eventos (EDA)
- Abordagem API First e Implementação da Especificação do OpenAPI (antido Swagger) para integração com o back-end
- Clusterização da Solução em Diversas VM em multicloud Nuvem para integração com o back-end
- Inplementar o gernciador de tarefas Gruntfile.js
Tendo em mente que sempre buscamos melhorar o protocolo de trabalho operacinal do dia a dia usando empirismo (colocar realmente em prática os conheicmentos abstratos)
NOTA: Não se trata de ficar ditando regras no trabalho da equipe, mas sim melhorar o meu operacional pessoal de trabalho e com isso agregar valor melhorando a perfomance:
![Documentação: Processo Genérico: Atividades da Análise Exploratória de um Repositório Diagrama: Documentação Elaboração do Diagrama de Atividade da Análise Exploratória Genérico](docs/imgs/DA - Análise de Repositório Genárico.drawio.png)
Seque abaixo as referências bibliográficas usadas no presente projeto:
[FOWLER, Martin , with contributions by Kent Beck. Refactoring: Improving the Design of Existing Code]. Second Edition 2 Ed. Editora: Addison-Wesley Professional; 2nd ed. edição (19 novembro 2018) Cidade da publicação: Copyright © 2019 Pearson Education, Inc. 448 páginas. (Nome da série e/ou coleção, ISBN-13: 978-0-13-475759-9, ISBN-10: 0-13-475759-9). Disponível em: < https://a.co/d/8Yd4ysB >. Acesso em: 18 jul. 2024.
[Nitin Gaur (Author), Luc Desrosiers (Author), Venkatraman Ramakrishna (Author)] et al. Blockchain with Hyperledger Fabric, Second Edition: Build decentralized applications using Hyperledger Fabric 2 2nd ed. Edition. Cidade da publicação: Publisher : Packt Publishing; 2nd ed. edition (November 18, 2020). 756 pages. (Nome da série e/ou coleção, 978-1839218750). Disponível em: < https://a.co/d/0hvdoivW >. Acesso em: 11 jul. 2024.
[Nitin Gaur (Author), Luc Desrosiers (Author), Venkatraman Ramakrishna (Author)] et al. Capítulo 4 ■ Preparando o cenário com um cenário de negócios. In:______ Blockchain with Hyperledger Fabric, Second Edition: Build decentralized applications using Hyperledger Fabric 2 2nd ed. Edition. Cidade da publicação: Publisher : Packt Publishing; 2nd ed. edition (November 18, 2020). 756 pages. (Nome da série e/ou coleção, 978-1839218750). Disponível em: < https://a.co/d/0hvdoivW >. Acesso em: 11 jul. 2024.
[Nitin Gaur (Author), Luc Desrosiers (Author), Venkatraman Ramakrishna (Author)] et al. Capítulo 5 ■ Projetando transações de contratos inteligentes e estruturas de dados Ledger. In:______ Blockchain with Hyperledger Fabric, Second Edition: Build decentralized applications using Hyperledger Fabric 2 2nd ed. Edition. Cidade da publicação: Publisher : Packt Publishing; 2nd ed. edition (November 18, 2020). 756 pages. (Nome da série e/ou coleção, 978-1839218750). Disponível em: < https://a.co/d/0hvdoivW >. Acesso em: 11 jul. 2024.
[Nitin Gaur (Author), Luc Desrosiers (Author), Venkatraman Ramakrishna (Author)] et al. Capítulo 6 ■ Desenvolvendo Contratos Inteligentes. In:______ Blockchain with Hyperledger Fabric, Second Edition: Build decentralized applications using Hyperledger Fabric 2 2nd ed. Edition. Cidade da publicação: Publisher : Packt Publishing; 2nd ed. edition (November 18, 2020). 756 pages. (Nome da série e/ou coleção, 978-1839218750). Disponível em: < https://a.co/d/0hvdoivW >. Acesso em: 11 jul. 2024.
[Nitin Gaur (Author), Luc Desrosiers (Author), Venkatraman Ramakrishna (Author)] et al. Capítulo 7 ■ Desenvolvendo Aplicativos. In:______ Blockchain with Hyperledger Fabric, Second Edition: Build decentralized applications using Hyperledger Fabric 2 2nd ed. Edition. Cidade da publicação: Publisher : Packt Publishing; 2nd ed. edition (November 18, 2020). 756 pages. (Nome da série e/ou coleção, 978-1839218750). Disponível em: < https://a.co/d/0hvdoivW >. Acesso em: 11 jul. 2024.
[Nitin Gaur (Author), Luc Desrosiers (Author), Venkatraman Ramakrishna (Author)] et al. Capítulo ■ 9. Operação de Rede e Construção de Aplicativos Distribuídos. In:______ Blockchain with Hyperledger Fabric, Second Edition: Build decentralized applications using Hyperledger Fabric 2 2nd ed. Edition. Cidade da publicação: Publisher : Packt Publishing; 2nd ed. edition (November 18, 2020). 756 pages. (Nome da série e/ou coleção, 978-1839218750). Disponível em: < https://a.co/d/0hvdoivW >. Acesso em: 11 jul. 2024.
[MARTIN, Robert C. | FEATHERS Michael]: Working Effectively with Legacy Code. Library of Congress Cataloging-in-Publication Data: 2004108115 Copyright © 2005 Pearson Education, Inc. Prentice Hall Professional Technical Reference Upper Saddle River, NJ 07458. ISBN 0-13-117705-2 (Robert C. Martin Series, número). Disponível em: < https://a.co/d/3RZL8Sl >. Acesso em: 16 Mai. 2024.
[GOETZ ,Brian; PEIERLS ,Tim; BLOCH, Joshua et al]. Java Concurrency in Practice. 1 Ed. Addison-Wesley Professional; 1st edition (May 9, 2006). 432 pages. (Nome da série e/ou coleção, 978-0-321-34960-6). Disponível em: < https://a.co/d/4T05Xuz > . Acesso em: dia 12 jun. 2024.
[SELIKOFF, Scott; BOYARSKY, Jeanne]. OCP Oracle® Certified Professional Java SE 17 Developer Study Guide Exam 1Z0-829 1 Ed. Cidade da publicação: Editora, ano de publicação. 1056 páginas. 1 Ed. (Nome da série e/ou coleção, 978-1119864585). Disponível em: < https://a.co/d/08ATqoe7 >. Acesso em: 03 jul. 2024.
[MERCADO de Trabalho em Blockchain. Se trata de um vídeo com gravação ao vivo abordando um estudo de mercado com análise das demandas do mercado para soluções usando arquitetura blockchain]. Direção: Elaborado pelo canal do youtube: @Hyperledger. Produção: Elaborado pelo canal do youtube: @Hyperledger. Realização: Elaborado pelo canal do youtube: @Hyperledger. Roteiro: Elaborado pelo canal do youtube: @Hyperledger. Fotografia: N/A. Intérpretes: N/A. Local: Elaborado pelo canal do youtube: @Hyperledger, 28 de fev. de 2024. Indicação do suporte físico e duração entre parênteses, demais características (stream de vídeo, som, cor, legenda, tradução, stream de vídeo). Disponível em: < https://www.youtube.com/live/lKBvL_6kzAY?si=gP8U66WUAY4qeN4Y >. Acesso em: 8 jul. 2024.
[Como Operar e Usar Hyperledger Besu em Redes Públicas e Privadas]. Se trata de um vídeo com gravação ao vivo abordando o operacional técnico para do uso de uma solução usando Hyperledger Besu em Redes Públicas e Privadas. Direção: Elaborado pelo canal do youtube: @Hyperledger. Produção: Elaborado pelo canal do youtube: @Hyperledger. Realização: Elaborado pelo canal do youtube: @Hyperledger. Roteiro: Elaborado pelo canal do youtube: @Hyperledger. Fotografia: N/A. Intérpretes: N/A. Local: Elaborado pelo canal do youtube: @Hyperledger, 14 de dez. de 2023. Indicação do suporte físico e duração entre parênteses, demais características (stream de vídeo, som, cor, legenda, tradução, stream de vídeo). Disponível em: < https://www.youtube.com/live/F2bl3z11rYc?si=JhMzRvyZTEgyWczT >. Acesso em: 8 jul. 2024.