Engenharia de Software e Arquitetura de Sistemas
Engenharia de Software e Arquitetura de Sistemas
Carga horária: 60 horas
Público-alvo
Profissionais e estudantes de TI que desejam atualizar suas competências de engenharia e desenho de sistemas para os padrões do mercado atual:
- Estudantes de graduação (Ciência da Computação, Engenharia de Software, Análise e Desenvolvimento de Sistemas) em fases intermediárias ou finais.
- Desenvolvedores Júnior e Pleno que buscam evoluir para liderança técnica (Tech Lead) ou Arquitetura de Software.
- Analistas de Sistemas e de Requisitos que precisam migrar de modelos tradicionais (RUP/UML exaustiva) para o design ágil e arquiteturas em nuvem.
Pré-requisitos
- Lógica de programação consolidada e familiaridade com ao menos uma linguagem moderna (Java, C#, Python, JavaScript/TypeScript ou PHP).
- Conhecimentos fundamentais de bancos de dados (tabelas e queries SQL).
Ementa detalhada
1. Fundamentos e Paradigmas Modernos de Software
- Evolução do desenvolvimento: da programação estruturada à Orientação a Objetos e os limites da OO clássica (reutilização de código vs. composição).
- Paradigmas emergentes: programação funcional integrada a linguagens modernas e arquitetura orientada a eventos.
- Princípios S.O.L.I.D. e Clean Code: design de código limpo para legibilidade e manutenibilidade.
- "UML Light" no mercado atual: diagramas como ferramenta de comunicação ágil (Classes, Sequência e Componentes).
2. Gestão Ágil de Produtos e Engenharia de Requisitos
- Product Discovery: técnicas modernas de levantamento (Design Inception, User Story Mapping).
- Engenharia de requisitos ágil: User Stories, critérios de aceitação e definição de Pronto (DoD/DoR).
- BDD (Behavior-Driven Development): cenários vivos com sintaxe Dado/Quando/Então (Cucumber/Gherkin).
- DDD (Domain-Driven Design): subdomínios, contextos delimitados (Bounded Contexts) e linguagem ubíqua.
3. Modelagem Visual e Arquitetural Essencial (UML Prática e Modelo C4)
- Fluxos de negócio: diagramas de atividades e mapeamento de processos (BPMN simplificado).
- Comportamento de APIs: diagramas de sequência aplicados a requisições/respostas entre microsserviços, autenticação (OAuth2/JWT) e mensageria.
- Modelagem estrutural moderna: diagrama de classes integrado a ORMs (Prisma, Hibernate, Entity Framework); entidades de domínio vs. tabelas relacionais e documentos NoSQL.
- Modelo C4: os 4 níveis (Contexto, Contêineres, Componentes e Código) para documentar sistemas em nuvem.
4. Arquitetura de Sistemas Modernos e Integração
- Estilos arquiteturais: do monolito a microsserviços e arquiteturas Serverless.
- Padrões de integração: APIs RESTful, GraphQL, gRPC e comunicação assíncrona por eventos (Apache Kafka, RabbitMQ).
- Design Patterns: Factory, Strategy, Observer, Repository, CQRS.
5. Ciclo de Vida Moderno: Qualidade, Testes e DevOps
- Testes modernos: pirâmide de testes (unitários, integração, End-to-End) e introdução ao TDD.
- DevOps e CI/CD: esteiras de integração e entrega contínua (GitHub Actions, GitLab CI).
- IaC e observabilidade: Docker, Kubernetes, Terraform e monitoramento em produção (logs, métricas e traces).
6. IA na Engenharia de Software e Projeto Final
- Engenharia de software assistida por IA: uso ético e produtivo de assistentes de código (GitHub Copilot, Cursor) na geração de código, refatoração e testes automáticos.
Duvidas? Entre em contato conosco!
Serviços Relacionados
Inteligência Artificial Generativa e Engenharia de Prompt
Inteligência Artificial Generativa e Engenharia de Prompt Carga horária: 16h Pré-requisitos Conhecimento básico de informática e navegação na internet. Não...
Saiba maisFormação em Engenharia de Dados com Python e SQL
Formação em Engenharia de Dados com Python e SQL Carga horária: 40h Pré-requisitos mínimos Lógica de programação básica: variáveis, loops (for/while)...
Saiba mais