Curso Arquitetura de Software para Sistemas Publicos Digitais

  • Setor público

Curso Arquitetura de Software para Sistemas Publicos Digitais

24 horas
Visão Geral

O curso Arquitetura de Software para Sistemas Públicos Digitais apresenta princípios, padrões, métodos e práticas para projetar arquiteturas de software robustas, escaláveis, interoperáveis, seguras e sustentáveis para sistemas e serviços públicos digitais.

O treinamento aborda os desafios específicos de ambientes públicos, como alto volume de usuários, integração entre diferentes órgãos e sistemas, sistemas legados, interoperabilidade, segurança, privacidade, disponibilidade, acessibilidade, governança e evolução tecnológica.

Os participantes estudarão diferentes estilos arquiteturais, incluindo arquitetura em camadas, arquitetura modular, Clean Architecture, Hexagonal Architecture, microsserviços, arquitetura orientada a eventos e arquiteturas baseadas em APIs.

O curso também apresenta práticas para tomada de decisões arquiteturais, documentação, avaliação de qualidade, modernização de sistemas legados e construção de arquiteturas capazes de suportar a evolução contínua dos serviços digitais.

A abordagem é orientada a cenários reais, com modelagem arquitetural e projeto prático de um sistema público digital.

Objetivo

Após realizar este curso Arquitetura de Software para Sistemas Públicos Digitais, você será capaz de:

  • Compreender os fundamentos de arquitetura de software.
  • Identificar requisitos funcionais e não funcionais relevantes para sistemas públicos.
  • Projetar arquiteturas escaláveis e resilientes.
  • Avaliar diferentes estilos arquiteturais.
  • Aplicar princípios de modularidade e baixo acoplamento.
  • Projetar sistemas baseados em APIs.
  • Compreender quando utilizar microsserviços.
  • Aplicar arquitetura orientada a eventos.
  • Projetar sistemas interoperáveis.
  • Considerar segurança e privacidade desde o projeto.
  • Incorporar requisitos de disponibilidade e continuidade.
  • Projetar arquiteturas para sistemas legados e modernos.
  • Avaliar trade-offs arquiteturais.
  • Documentar decisões arquiteturais.
  • Utilizar diagramas para comunicar arquiteturas.
  • Avaliar atributos de qualidade de uma solução.
  • Estruturar arquiteturas preparadas para evolução.
  • Projetar uma arquitetura de referência para um serviço público digital.
Publico Alvo
  • Arquitetos de Software
  • Arquitetos de Soluções
  • Arquitetos de Sistemas
  • Arquitetos de Integração
  • Tech Leads
  • Líderes Técnicos
  • Desenvolvedores de Software
  • Engenheiros de Software
  • Analistas de Sistemas
  • Engenheiros DevOps
  • Engenheiros Cloud
  • Profissionais de Governo Digital
  • Profissionais de transformação digital
  • Gestores técnicos
  • Profissionais envolvidos na modernização de sistemas públicos
Pre-Requisitos
  • Conhecimentos básicos de desenvolvimento de software
  • Conhecimentos básicos de arquitetura de sistemas
  • Familiaridade com APIs e integração de sistemas
  • Conhecimentos básicos de bancos de dados
  • Familiaridade com sistemas distribuídos é recomendada
  • Experiência com desenvolvimento de aplicações será um diferencial
Materiais
Inglês/Português + Exercícios + Lab Pratico
Conteúdo Programatico

Módulo 1 – Fundamentos de Arquitetura de Software

  1. O que é arquitetura de software
  2. Arquitetura versus design
  3. Componentes
  4. Módulos
  5. Serviços
  6. Interfaces
  7. Dependências
  8. Acoplamento
  9. Coesão
  10. Abstração
  11. Encapsulamento
  12. Separação de responsabilidades
  13. Princípios arquiteturais
  14. Arquitetura como instrumento de evolução
  15. Trade-offs arquiteturais
  16. Technical Debt
  17. Complexidade arquitetural

Módulo 2 – Requisitos e Atributos de Qualidade

  1. Requisitos funcionais
  2. Requisitos não funcionais
  3. Quality Attributes
  4. Disponibilidade
  5. Escalabilidade
  6. Performance
  7. Segurança
  8. Resiliência
  9. Confiabilidade
  10. Manutenibilidade
  11. Testabilidade
  12. Observabilidade
  13. Interoperabilidade
  14. Acessibilidade
  15. Usabilidade
  16. Sustentabilidade
  17. Priorização de requisitos arquiteturais

Prática

Definição dos requisitos arquiteturais de um sistema público digital.

Módulo 3 – Estilos e Padrões Arquiteturais

  • Layered Architecture
  • Modular Architecture
  • Client-Server
  • N-Tier
  • Clean Architecture
  • Hexagonal Architecture
  • Ports and Adapters
  • Onion Architecture
  • Component-Based Architecture
  • Modular Monolith
  • Microsserviços
  • Event-Driven Architecture
  • API-led Architecture
  • Comparação entre estilos
  • Critérios para escolha arquitetural

Módulo 4 – Arquitetura de Sistemas Públicos Digitais

  1. Características dos sistemas públicos
  2. Serviços digitais centrados no cidadão
  3. Alta demanda
  4. Escalabilidade
  5. Disponibilidade
  6. Sistemas críticos
  7. Integração entre órgãos
  8. Sistemas legados
  9. Plataformas compartilhadas
  10. Serviços comuns
  11. Arquiteturas federadas
  12. Arquiteturas centralizadas
  13. Arquiteturas híbridas
  14. Building Blocks
  15. Reutilização de serviços
  16. Arquiteturas orientadas a plataformas

Módulo 5 – APIs e Interoperabilidade

  1. Integração de sistemas
  2. Interoperabilidade
  3. APIs
  4. REST
  5. HTTP
  6. JSON
  7. OpenAPI
  8. API Gateway
  9. API Management
  10. Contratos de integração
  11. Versionamento
  12. Service-to-Service Communication
  13. Integração com sistemas legados
  14. Integração síncrona
  15. Integração assíncrona
  16. Padrões de integração

Módulo 6 – Microsserviços e Sistemas Distribuídos

  1. Fundamentos de microsserviços
  2. Monólito versus microsserviços
  3. Modular Monolith
  4. Definição de fronteiras
  5. Bounded Context
  6. Independência de serviços
  7. Comunicação entre microsserviços
  8. APIs
  9. Mensageria
  10. Service Discovery
  11. Eventual Consistency
  12. Transações distribuídas
  13. Resiliência
  14. Circuit Breaker
  15. Retry
  16. Timeout
  17. Quando utilizar microsserviços
  18. Quando não utilizar microsserviços

Módulo 7 – Arquitetura Orientada a Eventos

  1. Event-Driven Architecture
  2. Eventos
  3. Comandos
  4. Mensagens
  5. Event Producers
  6. Event Consumers
  7. Event Broker
  8. Publish/Subscribe
  9. Event Streaming
  10. Eventual Consistency
  11. Idempotência
  12. Retry
  13. Dead Letter Queue
  14. Domain Events
  15. Integração orientada a eventos
  16. Casos de uso em serviços públicos

Módulo 8 – Segurança e Privacidade na Arquitetura

  1. Security by Design
  2. Privacy by Design
  3. Zero Trust
  4. Defense in Depth
  5. Identidade digital
  6. Autenticação
  7. Autorização
  8. OAuth 2.0
  9. OpenID Connect
  10. JWT
  11. API Security
  12. Criptografia
  13. Gestão de Secrets
  14. Controle de acesso
  15. Auditoria
  16. Proteção de dados
  17. LGPD
  18. Threat Modeling

Módulo 9 – Escalabilidade, Resiliência e Disponibilidade

  1. Escalabilidade vertical
  2. Escalabilidade horizontal
  3. Load Balancing
  4. Caching
  5. Stateless Services
  6. Alta disponibilidade
  7. Redundância
  8. Fault Tolerance
  9. Resiliência
  10. Graceful Degradation
  11. Circuit Breaker
  12. Retry
  13. Timeout
  14. Bulkhead
  15. Disaster Recovery
  16. Backup
  17. RTO
  18. RPO
  19. Continuidade de serviços digitais

Módulo 10 – Modernização de Sistemas Legados

  1. Características de sistemas legados
  2. Identificação de riscos
  3. Acoplamento
  4. Dependências
  5. Monólitos
  6. Big Ball of Mud
  7. Refactoring arquitetural
  8. Modularização
  9. Strangler Fig Pattern
  10. Branch by Abstraction
  11. Anti-Corruption Layer
  12. Extração de serviços
  13. Migração incremental
  14. Integração entre legado e sistemas modernos
  15. Estratégias de modernização
  16. Gestão de riscos

Módulo 11 – Documentação e Governança Arquitetural

  1. Documentação de arquitetura
  2. Diagramas arquiteturais
  3. UML
  4. C4 Model
  5. Context Diagram
  6. Container Diagram
  7. Component Diagram
  8. Deployment Diagram
  9. Architecture Decision Records – ADR
  10. Architecture Review
  11. Princípios arquiteturais
  12. Padrões corporativos
  13. Governança
  14. Gestão de decisões arquiteturais
  15. Architecture Fitness Functions
  16. Gestão de Technical Debt

Módulo 12 – Laboratório e Projeto Final

Projeto completo de arquitetura de um serviço público digital.

Cenário

Os participantes deverão projetar uma solução digital para disponibilização de um serviço público ao cidadão.

Arquitetura proposta

Cidadão

Portal / Aplicação Mobile

Identity Provider

API Gateway

Serviços Digitais

Microsserviços / Componentes

Data Layer

Sistemas Legados e Serviços Externos

Atividades

  • Identificação dos stakeholders
  • Levantamento dos requisitos
  • Identificação dos atributos de qualidade
  • Definição dos domínios
  • Definição dos componentes
  • Definição dos serviços
  • Definição das APIs
  • Definição das integrações
  • Definição dos eventos
  • Estratégia de segurança
  • Estratégia de escalabilidade
  • Estratégia de disponibilidade
  • Estratégia de observabilidade
  • Estratégia de modernização
  • Criação dos diagramas C4
  • Criação dos ADRs
  • Avaliação dos trade-offs
  • Apresentação da arquitetura
TENHO INTERESSE

Cursos Relacionados

Curso Conscientização sobre Fraude

16 horas

Curso Responsabilidade Social Corporativa

16 horas

Curso Gestao Eletrenica de Documentos Fundamentals

24 horas

Palestra-Show Motivacional e Dinamica

4 horas

Curso Liderança e Tomada de Decisão

40h

Curso Gestão de Projetos com PDCA

40h

Curso Qualidade em Projetos de Software

40h

Curso Eficiência Operacional e Melhoria Contínua

40h