Projeto T2Ti ERP Lite

O Projeto T2Ti ERP é um treinamento onde a Equipe T2Ti ensina aos Participantes a desenvolver um ERP genérico, cujo escopo está definido e explicado logo abaixo. No final do treinamento cada Participante terá aprendido os passos (requisitos e implementação) para o desenvolvimento de um ERP. Essa página se refere à versão Lite do T2Ti ERP. Um protótipo é desenvolvido e seu código fonte é entregue ao participante durante o treinamento.

ATENÇÃO: Leia todo o conteúdo a seguir. Acesse ainda a página da FAQ, que contém perguntas frequentemente feitas sobre o treinamento.

T2Ti ERP Lite - Escopo


Bloco Base

O Bloco Base é formado por dois módulos:

  • Infra: explica os aspectos relacionados à infraestrutura do projeto.
  • Cadastros Base: engloba os cadastros que são usados por diversos módulos do ERP.

Bloco Comercial

O Bloco Comercial é formado por seis módulos:

Bloco Financeiro

O Bloco Financeiro é formado por sete módulos:

  • Contas a Pagar
  • Contas a Receber
  • Controle de Caixa e Bancos
  • Tesouraria
  • Fluxo de Caixa
  • Conciliação Bancária
  • EDI Bancário - CNAB/Febraban
Clique aqui e leia o Artigo T2Ti sobre o Bloco Financeiro

Bloco Fiscal e Arquivos

O Bloco Fiscal e Arquivos é formado por quatro módulos:

Funcionamento do Treinamento

O TREINAMENTO É DIVIDIDO EM DUAS PARTES


Parte 1 - Ambiente EAD


O Moodle será utilizado como ambiente EAD. Existem quatro ambientes de suporte:
  • 01) T2Ti ERP Lite - Requisitos. Ambiente onde são apresentados os requisitos da aplicação. Funciona da seguinte forma:
    • Para cada módulo do ERP existe um tópico no ambiente EAD.
    • Outros tópicos específicos são abertos: metodologia de desenvolvimento, por exemplo.
    • Cada tópico tem vários recursos: PDFs, planilhas, links, com o objetivo de conceituar o módulo do ERP (requisitos/regras de negócio).
    • Cada tópico tem um ou mais fóruns de discussão.
    • O participante pode abrir posts para tirar dúvidas e/ou sugerir requisitos. As sugestões podem ser aproveitadas e implementadas no protótipo.
  • 02) Ambiente de suporte Delphi. O suporte técnico a todos os módulos de Delphi é fornecido no mesmo ambiente. É neste ambiente que o participante tira as dúvidas sobre o que foi implementado no protótipo Delphi.
  • 03) Ambiente de suporte Java. O suporte técnico a todos os módulos de Java é fornecido no mesmo ambiente. É neste ambiente que o participante tira as dúvidas sobre o que foi implementado no protótipo Java.
  • 04) Ambiente de suporte C#. O suporte técnico a todos os módulos de C# é fornecido no mesmo ambiente. É neste ambiente que o participante tira as dúvidas sobre o que foi implementado no protótipo C#.
O pacote comercializado fornece acesso ao ambiente EAD. Não é preciso o pagamento de mensalidades.

Clique aqui para acessar o ambiente EAD

Parte 2 - Vídeo Aulas


A Equipe T2Ti disponibiliza vídeo aulas referentes aos módulos do ERP.
  • As vídeo aulas são disponibilizadas para os participantes de modo que possam ser assistidas em qualquer dispositivo e em qualquer sistema operacional. Não é necessário gerar chaves para destravar os vídeos.
  • As vídeo aulas não são passo a passo. Os vídeos mostram como o protótipo foi desenvolvido analisando telas e fontes.
  • O que for considerado como essencial para o aprendizado é desenvolvido passo a passo durante a vídeo aula.
  • Existem vários exercícios de fixação para que o participante possa aprimorar o aprendizado.

Detalhes Importantes

Metodologia de Desenvolvimento


A Equipe T2Ti utiliza uma mescla de XP+SCRUM para desenvolver o projeto. Alguns artefatos UML também são apresentados.

Tecnologias Utilizadas

  • O ERP é desenvolvido em três linguagens: C#, Delphi e Java.
  • As aplicações (um módulo de cada linguagem) são publicadas na nuvem.
  • Um módulo é desenvolvido para rodar em dispositivos móveis.
  • Banco de dados: A Equipe T2Ti utiliza um banco de dados padrão para fazer a Retaguarda e a Frente de Caixa. Com a utilização de ORMs o participante estará livre para trabalhar com outros bancos quando desenvolver seu próprio ERP.

Forma de Desenvolvimento Java Web


O ERP Java Web é feito com JSF como tecnologia base e frameworks auxiliares que são apresentados aos participantes durante o treinamento. Como uma aplicação Web, tudo o que o usuário vai precisar é de um browser para usar o ERP.

A aplicação Java (um módulo) é publicada na Google Cloud Platform.

Resumo Turma 01

Mês Conteúdo
15/Abril - 31/Maio - Os requisitos do ERP foram discutidos no EAD. Alguns requisitos foram implementados conforme sugestões dadas pelos participantes. Os requisitos continuaram sendo discutidos nos meses seguintes e alguns foram marcados como desejáveis para futura implementação.
- Os vídeos de Infraestrutura da aplicação foram disponibilizados:
  • Infra: vídeos explicando a infra do T2Ti ERP utilizando o JSF, Primefaces, Hibernate, Spring Security e Tomcat.
Junho - Cadastros: Os vídeos abordam sobre padrão utilizado para desenvolvimento das telas do projeto.
- Financeiro [Contas a Pagar | Contas a Receber | Controle de Caixa e Bancos | Tesouraria | Fluxo de Caixa | Conciliação Bancária | EDI Bancário]: Apresentação dos módulos do bloco financeiro.
- Vendas: Apresentação do funcionamento do módulo Vendas.
- Compras: Apresentação do funcionamento do módulo Compras.
- Estoque: Apresentação do funcionamento do módulo Estoque.
Julho - Frente de Caixa [PAF-ECF]: Considerações sobre a nova especificação de requisitos do PAF-ECF: 02.05. Apresentação do e-book disponibilizado para leitura e estudo sobre o PAF-ECF. Apresentação das aplicações: Caixa, Balcão, Configurador e Integrador. O tutor mostra como debugar a aplicação para estudá-la.
- Frente de Caixa [NFC-e]: Apresentação da aplicação. O tutor mostra como debugar a aplicação para estudá-la.
- Frente de Caixa [SAT Fiscal]: Instalação do Emulador SAT. Apresentação da aplicação.
Agosto - Tributação: Apresentação do módulo Tributação.
- CT-e: Apresentação do módulo CT-e.
- Sped Fiscal: Apresentação do módulo Sped Fiscal.
- NF-e: Apresentação do módulo NF-e.

Forma de Desenvolvimento Delphi


O ERP Delphi é desenvolvido em duas e três camadas. O usuário baixa a camada de visão para sua máquina (aplicação RIA) e se conecta ao servidor de aplicaçoes, onde estão armazenadas as classes de negócio. O banco de dados pode residir na mesma máquina do servidor de aplicações ou em outro servidor específico para o SGBD. O acesso aos dados será feito com a utilização de um framework ORM (T2TiORM, mORMot, Aurelius).

A aplicação Delphi (um módulo) é publicada na Amazon.


Resumo Turma 01

Mês Conteúdo
15/Abril - 31/Maio - Os requisitos do ERP foram discutidos no EAD. Alguns requisitos foram implementados conforme sugestões dadas pelos participantes. Os requisitos continuaram sendo discutidos nos meses seguintes e alguns foram marcados como desejáveis para futura implementação.
- Os vídeos de Infraestrutura da aplicação foram disponibilizados:
  • Infra: vídeos explicando a infra do T2Ti ERP utilizando o T2TiORM.
  • Introdução ao mORMot: explicações sobre a arquitetura do framework. Instalação. Apresentação dos samples que acompanham o framework.
  • mORMot no T2Ti ERP - Parte 01: primeiro contato do mORMot com o T2TiERP.
  • mORMot no T2Ti ERP - Parte 02: apresentação das telas Banco e Pessoa utilizando o mORMOt como ORM e Servidor de Aplicações.
  • Gerar Banco de Dados no PostgreSQL: Bônus. Vídeos pré-gravados para ajudar os participantes a gerar o banco de dados no PostgreSQL.
  • ORMBr no T2Ti ERP: Bônus. Vídeo gravado pelo Isaque Pinheiro apresentando o ORMBr e o módulo Ordem de Serviço do T2Ti ERP utilizando tal framework.
Junho - Cadastros: Os vídeos abordam os DTOs (utilizados para o mORMot), o mapeamento de campos utilizando o mORMOt e a questão da utilização do Ribbon no projeto. A tela Pessoa (mestre/detalhe) é novamente abordada. Nesse ponto, a tela Pessoa utiliza o servidor de aplicações mORMot para persistência, mas ainda utiliza a infraestrutura dos VOs (utilizados pelo T2TiORM) para criar datasets locais e configurar a grid. Como exercício o aluno deve remover totalmente o T2TiORM da aplicação cliente. Deve ainda alterar o gerador de VOs para criar os DTOs e para criar o Controller já alterado para o mORMOt.
- Financeiro [Contas a Pagar | Contas a Receber | Controle de Caixa e Bancos | Tesouraria | Fluxo de Caixa | Conciliação Bancária | EDI Bancário]: Apresentação dos módulos do bloco financeiro. Nenhum código é exibido ou explicado. O tutor chama atenção para os Teste de Software. O participante deve realizar os Testes de Integração de acordo com o que é explicado na vídeo aula.
- Vendas: Apresentação do funcionamento do módulo Vendas. O tutor chama atenção para os Teste de Software. O participante deve realizar os Testes de Validação de acordo com o que é explicado na vídeo aula.
- Compras: Apresentação do funcionamento do módulo Compras. O tutor chama atenção para os Teste de Software. O participante deve realizar os Testes de Unidade de acordo com o que é explicado na vídeo aula.
- Estoque: Apresentação do funcionamento do módulo Estoque. O tutor chama atenção para os Teste de Software. O participante deve realizar os Testes de Sistema de acordo com o que é explicado na vídeo aula.
Julho - Frente de Caixa [PAF-ECF]: Considerações sobre a nova especificação de requisitos do PAF-ECF: 02.05. Apresentação do e-book disponibilizado para leitura e estudo sobre o PAF-ECF. Apresentação das aplicações: Caixa, Balcão, Configurador e Integrador. O tutor mostra como debugar a aplicação para estudá-la.
- Frente de Caixa [SAT Fiscal]: Apresentação do e-book disponibilizado para leitura e estudo sobre o SAT. Instalação do Emulador SAT. Apresentação da aplicação. O tutor mostra como debugar a aplicação para estudá-la.
- Frente de Caixa [NFC-e]: Apresentação do e-book disponibilizado para leitura e estudo sobre a NFC-e. Apresentação da aplicação. O tutor mostra como debugar a aplicação para estudá-la.
Agosto - Tributação: Apresentação do módulo Tributação.
- CT-e: Apresentação do módulo CT-e.
- Sped Fiscal: Apresentação do módulo Sped Fiscal.
- NF-e: Apresentação do módulo NF-e. Este módulo é todo desenvolvido com o mORMot. Este módulo é publicado na nuvem.

Forma de Desenvolvimento C#

O ERP C# é desenvolvido em duas e três camadas. O usuário baixa a camada de visão para sua máquina (Smart Client) e se conecta ao servidor de aplicaçoes, onde estão armazenadas as classes de negócio. O banco de dados pode residir na mesma máquina do servidor de aplicações ou em outro servidor específico para o SGBD.

A aplicação C# (um módulo) é publicada na Azure.


Resumo Turma 01

Mês Conteúdo
15/Abril - 31/Maio - Os requisitos do ERP foram discutidos no EAD. Alguns requisitos foram implementados conforme sugestões dadas pelos participantes. Os requisitos continuaram sendo discutidos nos meses seguintes e alguns foram marcados como desejáveis para futura implementação.
- Os vídeos de Infraestrutura da aplicação foram disponibilizados:
  • Infra: vídeos explicando a infra do T2Ti ERP utilizando o nHibernate. Servidor WCF e Cliente WPF.
  • Entity Framework: documentação. Mapeamento T2Ti ERP. Apresentação de exemplo com o EF.
  • Gerar Banco de Dados no MSSQL: Bônus. Vídeos pré-gravados para ajudar os participantes a gerar o banco de dados no MSSQL.
  • Gerador de Código: Bônus. Vídeos pré-gravados explicando o gerador de código utilizado no T2Ti ERP com o nHibernate. Acompanha os fontes.
Junho - Cadastros: Os vídeos abordam o modelo criado no servidor do T2Ti ERP com o Entity Framework. O tutor apresenta alguns frameworks WPF para serem posteriormente votados em enquete. O escolhido será utilizado para o desenvolvimento de um módulo completo e apresentado aos participantes.
- Financeiro [Contas a Pagar | Contas a Receber | Controle de Caixa e Bancos | Tesouraria | Fluxo de Caixa | Conciliação Bancária | EDI Bancário]: Apresentação dos módulos do bloco financeiro. Nenhum código é exibido ou explicado. O tutor chama atenção para os Teste de Software. O participante deve realizar os Testes de Integração de acordo com o que é explicado na vídeo aula. O tutor apresenta alguns frameworks WPF para serem posteriormente votados em enquete. O escolhido será utilizado para o desenvolvimento de um módulo completo e apresentado aos participantes.
- Vendas: Apresentação do funcionamento do módulo Vendas. O tutor chama atenção para os Teste de Software. O participante deve realizar os Testes de Validação de acordo com o que é explicado na vídeo aula. O tutor apresenta alguns frameworks WPF para serem posteriormente votados em enquete. O escolhido será utilizado para o desenvolvimento de um módulo completo e apresentado aos participantes.
- Compras: Apresentação do funcionamento do módulo Compras. O tutor chama atenção para os Teste de Software. O participante deve realizar os Testes de Unidade de acordo com o que é explicado na vídeo aula. O tutor apresenta alguns frameworks WPF para serem posteriormente votados em enquete. O escolhido será utilizado para o desenvolvimento de um módulo completo e apresentado aos participantes.
- Estoque: Apresentação do funcionamento do módulo Estoque. O tutor chama atenção para os Teste de Software. O participante deve realizar os Testes de Sistema de acordo com o que é explicado na vídeo aula. O tutor apresenta alguns frameworks WPF para serem posteriormente votados em enquete. O escolhido será utilizado para o desenvolvimento de um módulo completo e apresentado aos participantes.
Julho - Frente de Caixa [PAF-ECF]: Considerações sobre a nova especificação de requisitos do PAF-ECF: 02.05. Apresentação do e-book disponibilizado para leitura e estudo sobre o PAF-ECF. Apresentação das aplicações: Caixa, Balcão, Configurador e Integrador. O tutor mostra como debugar a aplicação para estudá-la.
- Frente de Caixa [SAT Fiscal]: Apresentação do e-book disponibilizado para leitura e estudo sobre o SAT. Instalação do Emulador SAT. Apresentação da aplicação. O tutor mostra como debugar a aplicação para estudá-la.
- Frente de Caixa [NFC-e]: Apresentação do e-book disponibilizado para leitura e estudo sobre a NFC-e. Apresentação da aplicação. O tutor mostra como debugar a aplicação para estudá-la.
Agosto - Tributação: Apresentação do módulo Tributação.
- CT-e: Apresentação do módulo CT-e.
- Sped Fiscal: Apresentação do módulo Sped Fiscal.
- NF-e: Apresentação do módulo NF-e. Este módulo é todo desenvolvido com o Entity Framework. Este módulo é publicado na nuvem.

Aplicações Móveis (Mobile)


Em todas as linguagens implementamos um protótipo da NFC-e para funcionar em dispositivos móveis com as tecnologias disponíveis para cada linguagem.

Cronograma - Turma 02


O treinamento T2Ti ERP Lite foi planejado para ser desenvolvido durante quatro meses, de 01/09/2017 a 31/12/2017. Observe o cronograma logo abaixo. O Documento de Visão mostra os requisitos que são implementados no módulo em questão. A maioria dos requisitos são implementados no protótipo pela T2Ti. Alguns requisitos são deixados como exercício para o participante implementar com o devido suporte no EAD.

Mês Conteúdo
Setembro - Apresentação dos Requisitos do Sistema no EAD.
- Vídeos de Infraestrutura da aplicação.
Outubro - Cadastros [Documento de Visão]
- Financeiro [Documento de Visão]
      - Contas a Pagar
      - Contas a Receber
      - Controle de Caixa e Bancos
      - Tesouraria
      - Fluxo de Caixa
      - Conciliação Bancária
      - EDI Bancário
- Vendas [Documento de Visão]
- Compras [Documento de Visão]
- Estoque [Documento de Visão]
Novembro - Frente de Caixa
      - PAF-ECF [Documento de Visão]
      - SAT Fiscal [Documento de Visão]
      - NFC-e [Documento de Visão]
Dezembro - Tributação [Documento de Visão]
- NF-e [Documento de Visão]
- CT-e [Documento de Visão]
- Sped Fiscal [Documento de Visão]
- MDF-e [Novo requisito para a Turma 02]

Novos Requisitos


Durante o desenvolvimento do treinamento T2Ti ERP Lite - Turma 01 - os participantes sugeriram vários requisitos que não puderam ser implementados porque estavam fora do escopo ou não houve tempo suficiente. Tais requisitos estão descritos abaixo e serão abordados durante a Turma 02 do Projeto T2Ti ERP Lite.
Requisito Descrição
Controle de Restrições Restrições gerais para toda a aplicação. Por exemplo, o desconto máximo de uma venda é de 10%. Para um desconto maior seria necessário a autorização de um colaborador de nível gerencial.
Multi Tenancy - SaaS A proposta do modelo SaaS é ter uma aplicação atendendo a multiplos clientes, chamados de tenants ou inquilinos. Inquilinos não são usuários individuais, mas empresas clientes do software. Uma arquitetura multi-inquilinos é uma arquitetura essencial para um ambiente em nuvem, pois permite que multiplos inquilinos (empresas clientes) compartilhem os mesmos recursos fisicos como um aplicativo ERP, mas permanecendo logicamente isolados. Um módulo do ERP Lite é desenvolvido dessa forma.
MDF-e Manifesto Eletrônico de Documentos Fiscais.
Venda para Entrega Futura A venda para entrega futura é uma operação que se caracteriza pela permanência da mercadoria em poder do vendedor para posterior entrega ao adquirente no prazo convencionado, sendo o pagamento efetuado antecipadamente.