Apresentação

Com este Curso de Especialização irá desenvolver um conhecimento especializado sobre a arquitetura escalável, o ciclo de vida do software, a gestão de dados, DevOps e a integração contínua” 

 

A qualidade do software está relacionada com as características próprias do projeto que podem ser controladas e asseguradas. Um profissional de informática deve estar sempre focado na qualidade e sabe que o software tem de estar atualizado para satisfazer as necessidades dos utilizadores. A qualidade do software existe há cerca de 30 a 50 anos e hoje, mais do que nunca, está presente quando queremos eliminar anos de dívida técnica. Este termo descreve os erros encontrados no presente, dos desenvolvimentos baseados em entregas rápidas e sem estimativas futuras. Agora, estes anos de critérios de velocidade e luz estão a ter consequências para muitos fornecedores e clientes. 

Neste Curso de Especialização o aluno irá analisar os problemas que surgem no mundo empresarial, justificando a implementação da cultura DevOps, obtendo uma visão global e completa de todo o ecossistema necessário para uma boa aplicação do mesmo. Desde políticas humanas, requisitos de produto ou de gestão, até à implementação teórica e prática dos processos necessários. Ser capaz de criar e adaptar o ciclo completo de fornecimento de software de acordo com necessidades específicas, tendo em conta considerações económicas e de segurança. 

Além disso, desenvolverá conhecimentos especializados sobre design, desenvolvimento e manutenção de bases de dados em termos de normas e medidas de desempenho. Sendo assim o profissional capaz de refatorizar e enfrentar a gestão e coordenação dos dados. 

Por último, um dos módulos deste Curso de Especialização mostrará que o ciclo de vida do software pode contribuir para o design e a arquitetura de sistemas escaláveis, tanto a nível atual como em futuras visões de desenvolvimento. Com este Curso de Especialização, aprenderá a desenvolver uma arquitetura sustentável, eficaz e de qualidade nos projetos de software que lhe forem apresentados. 

Para que tal seja possível, a TECH Universidade Tecnológica reuniu um grupo de especialistas na área que transmitirão os conhecimentos e experiências mais atualizadas. Serão três módulos divididos em vários tópicos e subtópicos que permitirão aprender em seis meses utilizando a metodologia Relearning e 100% online, o que facilita a memorização e a aprendizagem de forma ágil e eficiente, através de uma plataforma segura que permite descarregar os conteúdos necessários para consulta futura.

O Curso de Especialização analisa os critérios subjacentes na qualidade do software. Aumente o seu nível de experiência. Inscreva-se já”

Este Curso de Especialização em Qualidade no Desenvolvimento de Software conta com o conteúdo educacional mais completo e atualizado do mercado. As suas principais características são: 

  • O desenvolvimento de casos práticos apresentados por especialistas em desenvolvimento de software 
  • O conteúdo gráfico, esquemático e eminentemente prático fornece informações científicas e práticas sobre as disciplinas que são essenciais para a prática profissional 
  • Exercícios práticos onde o processo de autoavaliação pode ser levado a cabo a fim de melhorar a aprendizagem 
  • A sua ênfase especial em metodologias inovadoras  
  • Lições teóricas, colocar questões ao especialista e trabalhos de reflexão individuais 
  • Possibilidade de aceder ao conteúdo a partir de qualquer dispositivo fixo ou portátil com ligação à Internet 

Assim, o aluno será capaz de criar e adaptar o ciclo completo de entrega do software de acordo com necessidades específicas, tendo em conta considerações económicas e de segurança”  

O corpo docente do Curso de Especialização inclui profissionais do setor que trazem a sua experiência profissional para esta capacitação, para além de especialistas reconhecidos de sociedades de referência e universidades de prestígio.

Graças ao seu conteúdo multimédia, desenvolvido com a mais recente tecnologia educativa, o profissional terá acesso a uma aprendizagem situada e contextual, isto é, um ambiente de simulação que proporcionará uma educação imersiva, programada para praticar em situações reais.

A conceção desta qualificação centra-se na Aprendizagem Baseada em Problemas, através da qual o especialista deve tentar resolver as diferentes situações da prática profissional que surgem ao longo do Curso de Especialização. Para tal, contará com a ajuda de um sistema inovador de vídeo interativo desenvolvido por especialistas reconhecidos.

Desenvolver as mais recentes práticas e ferramentas na integração e implantação contínua. Podendo aplicá-las seletivamente em futuros projetos"

 

Matricule-se agora e torne-se um especialista em seis meses de forma 100% online e com a metodologia mais eficaz"

Programa de estudos

Os conteúdos deste Curso de Especialização foram selecionados por um grupo de docentes especialistas em Qualidade no Desenvolvimento de Software que os dividiu em três módulos de estudo. Estes permitem-lhe explorar tópico a tópico os elementos mais importantes e detalhados do processo do ciclo de vida do software, as suas arquiteturas, o design da base de dados, a normalização e o desempenho. Para além de estudar soluções práticas avançadas no desenvolvimento de software, implementando DevOps e Integração Contínua. Para o efeito, são implementados diferentes formatos de conteúdos práticos e teóricos através do moderno campus virtual da TECH Universidade Tecnológica. 

 

Com este Curso de Especialização, aprenderá a desenvolver uma arquitetura sustentável, eficaz e de qualidade nos projetos de software que lhe forem apresentados” 

Módulo 1. DevOps e Integração Contínua. Soluções Práticas Avançadas no Desenvolvimento de Software

1.1. Fluxos da entrega de software

1.1.1. Identificação de atores e artefactos
1.1.2. Design do fluxo de entrega de software
1.1.3. Fluxo de entrega de software. Requisitos entre etapas

1.2. Automatização de processos

1.2.1. Integração contínua
1.2.2. Implantação contínua
1.2.3. Configuração de ambientes e gestão de segredos

1.3. Pipelines declarativos

1.3.1. Diferenças entre pipelines tradicionais, como código e declarativos
1.3.2. Pipelines declarativos
1.3.3. Pipelines declarativos em Jenkins
1.3.4. Comparação de provedores de integração contínua

1.4. Portas de qualidade e retroalimentação enriquecida

1.4.1. Portas de qualidade
1.4.2. Padrões de qualidade com portas de qualidade. Manutenção
1.4.3. Requisitos de negócio nos pedidos de integração

1.5. Gestão de artefactos

1.5.1. Artefactos e ciclos de vida
1.5.2. Sistemas de armazenamento e gestão de artefactos
1.5.3. Segurança na gestão de artefactos

1.6. Implantação contínua

1.6.1. Implantação contínua como recipientes
1.6.2. Implantação contínua com PaaS
1.6.3. Implementação contínua de aplicações móveis

1.7. Melhoria do tempo de execução do Pipeline: análise estática e Git Hooks

1.7.1. Análise estática
1.7.2. Regras de estilo do código
1.7.3. Git Hooks e testes unitários
1.7.4. O impacto da infraestrutura

1.8. Vulnerabilidade em recipientes

1.8.1. Vulnerabilidade em recipientes
1.8.2. Digitalização de imagens
1.8.3. Relatórios periódicos e alertas

Módulo 2. Desenho de Bases de Dados (BD). Normalização e Rendimento. Qualidade do Software

2.1. Desenho de bases de dados

2.1.1. Bases de dados Tipologia
2.1.2. Bases de dados usados atualmente

2.1.2.1. Relacionais
2.1.2.2. Chave-Valor
2.1.2.3. Baseadas em gráficos

2.1.3. Qualidade dos dados

2.2. Desenho do Modelo Entidade-Relação (I)

2.2.1. Modelo de Entidade-Relação. Qualidade e documentação
2.2.2. Entidades

2.2.2.1. Entidade forte
2.2.2.2. Entidade débil

2.2.3. Atributos
2.2.4. Conjunto de relações

2.2.4.1. 1 a 1
2.2.4.2. 1 a muitos
2.2.4.3. Muitos a 1
2.2.4.4. Muitos a muitos

2.2.5. Chaves

2.2.5.1. Chave primária
2.2.5.2. Chave estrangeira
2.2.5.3. Chave primária entidade débil

2.2.6. Restrições
2.2.7. Cardinalidade
2.2.8. Herança
2.2.9. Agregação

2.3. Modelo Entidade-Relação (II). Ferramentas

2.3.1. Modelo Entidade-Relação. Ferramentas
2.3.2. Modelo Entidade-Relação. Exemplo prático
2.3.3. Modelo de Entidade-Relação viável

2.3.3.1. Mostra visual
2.3.3.2. Mostra em representação de tabelas

2.4. Normalização das Bases de Dados (BD) (I). Considerações sobre a qualidade do software

2.4.1. Normalização da BD e Qualidade
2.4.2. Dependências

2.4.2.1. Dependência funcional
2.4.2.2. Propriedades da dependência funcional
2.4.2.3. Propriedades deduzidas

2.4.3. Chaves

2.5. Normalização da Bases de Dados (BD) (II). Formas normais e regras de Codd

2.5.1. Formas normais

2.5.1.1. Primeira Forma Normal (1FN)
2.5.1.2. Segunda Forma Normal (2FN)
2.5.1.3. Terceira Forma Normal (3FN)
2.5.1.4. Forma normal de Boyce-Codd (FNBC)
2.5.1.5. Quarta Forma Normal (4FN)
2.5.1.6. Quinta Forma Normal (5FN)

2.5.2. Regras de Codd

2.5.2.1. Regra 1: informação
2.5.2.2. Regra 2: acesso garantido
2.5.2.3. Regra 3: tratamento sistemático dos valores nulos
2.5.2.4. Regra 4: descrição da base de dados
2.5.2.5. Regra 5: sublinguagem integral
2.5.2.6. Regra 6: atualização de vistas
2.5.2.7. Regra 7: inserir e atualizar
2.5.2.8. Regra 2. independência física
2.5.2.9. Regra 9: independência lógica
2.5.2.10. Regra 10: independência da integridade

2.5.2.10.1. regras de integridade

2.5.2.11. Regra 11: distribuição
2.5.2.12. Regra 12: Não subversão

2.5.3. Exemplo prático

2.6. Armazenamento de dados/Sistema OLAP

2.6.1. Armazém de dados
2.6.2. Tabela de factos
2.6.3. Tabela de dimensões
2.6.4. Criação do sistema OLAP. Ferramentas

2.7. Rendimento da Base de Dados (BD)

2.7.1. Otimização de Índices
2.7.2. Otimização de consultas
2.7.3. Partição de tabelas

2.8. Simulação de projeto real para Desenho BD (I)

2.8.1. Descrição geral do projeto (Empresa A)
2.8.2. Aplicação do desenho de Bases de Dados
2.8.3. Exercícios propostos
2.8.4. Exercícios propostos. Feedback

2.9. Simulação de projeto real para Desenho BD (II)

2.9.1. Descrição geral do projeto (Empresa B)
2.9.2. Aplicação do desenho de Bases de Dados
2.9.3. Exercícios propostos
2.9.4. Exercícios propostos. Feedback

2.10. Relevância da Otimização de BD na Qualidade do Software

2.10.1. Otimização do desenho
2.10.2. Otimização do código de consultas
2.10.3. Otimização do código de procedimentos armazenados
2.10.4. Influência dos Triggers na Qualidade do Software. Recomendações de uso

Módulo 3. Design de Arquiteturas Escaláveis A Arquitetura no Ciclo de Vida do Software

3.1. Desenho de arquiteturas escaláveis (I)

3.1.1. Arquiteturas escaláveis
3.1.2. Princípios de uma arquitetura escalável

3.1.2.1. Confiável
3.1.2.2. Escalável
3.1.2.3. Sustentável

3.1.3. Tipos de escalabilidade

3.1.3.1. Vertical
3.1.3.2. Horizontal
3.1.3.3. Combinado

3.2. Arquiteturas DDD (Domain-Driven Design)

3.2.1. O Modelo DDD. Orientação para o domínio
3.2.2. Camadas, partilha de responsabilidade e padrões de desenho
3.2.3. Desacoplamento como base para a qualidade

3.3. Desenho de arquiteturas escaláveis (II). Benefícios, limitações e estratégias de desenho

3.3.1. Arquitetura escalável Benefícios
3.3.2. Arquitetura escalável Limitações
3.3.3. Estratégias para o desenvolvimento de arquiteturas escaláveis (Tabela descritiva)

3.4. Ciclo de vida do software (I). Etapas

3.4.1. Ciclo de vida do software

3.4.1.1. Etapa de planificação
3.4.1.2. Etapa de análise
3.4.1.3. Etapa de desenho
3.4.1.4. Etapa de implementação
3.4.1.5. Etapa de provas
3.4.1.6. Fase de instalação/implantação
3.4.1.7. Etapa de uso e manutenção

3.5. Modelos de ciclos de vida do software

3.5.1. Modelo em cascata
3.5.2. Modelo repetitivo
3.5.3. Modelo em espiral
3.5.4. Modelo Big Bang

3.6. Ciclo de vida do software (II). automatização

3.6.1. Ciclos de vida de desenvolvimento de software. Soluções

3.6.1.1. Integração e desenvolvimento contínuos (CI/CD)
3.6.1.2. Metodologias Agile
3.6.1.3. DevOps / Operações de produção

3.6.2. Tendências futuras
3.6.3. Exemplos práticos

3.7. Arquitetura de software no ciclo de vida do software

3.7.1. Benefícios
3.7.2. Limitações
3.7.3. Ferramentas

3.8. Simulação de projeto real para desenho de arquitetura de software (I)

3.8.1. Descrição geral do projeto (Empresa A)
3.8.2. Aplicação do design de arquitetura do software
3.8.3. Exercícios propostos
3.8.4. Exercícios propostos. Feedback

3.9. Simulação de projeto real para design de arquitetura software (II)

3.9.1. Descrição geral do projeto (Empresa B)
3.9.2. Aplicação do design de arquitetura do software
3.9.3. Exercícios propostos
3.9.4. Exercícios propostos. Feedback

3.10. Simulação de projeto real para design de arquitetura software (III)

3.10.1. Descrição geral do projeto (Empresa C)
3.10.2. Aplicação do design de arquitetura do software
3.10.3. Exercícios propostos
3.10.4. Exercícios propostos. Feedback

 

Matricule-se agora neste Curso de Especialização e obtenha os conhecimentos mais atuais sobre Qualidade no Desenvolvimento de Software. Obtenha a sua certificação de Curso de Especialização em apenas seis meses” 

Curso de Especialização em Qualidade no Desenvolvimento de Software

O Curso de Especialização em Qualidade no Desenvolvimento de Software é um curso altamente especializado destinado a profissionais que pretendam aprofundar os seus conhecimentos técnicos e competências relacionadas com a implementação de processos de controlo de qualidade em projetos de desenvolvimento de software. Esta pós-graduação da TECH Universidade Tecnológica visa formar profissionais altamente qualificados para analisar e avaliar a gestão da qualidade no processo de desenvolvimento de software de uma organização, e aplicar ferramentas tecnológicas e metodologias eficazes para otimizar a gestão dos projetos em que estão envolvidos.

Implemente novas competências de desenvolvimento de software na sua carreira profissional

O principal objetivo do Curso de Especialização em Qualidade no Desenvolvimento de Software é formar os alunos em técnicas e metodologias que lhes permitam realizar avaliações e auditorias de qualidade em empresas de software, implementar soluções que melhorem a gestão de projetos e controlar o processo de desenvolvimento de software do início ao fim. Através deste curso, os alunos adquirem competências específicas para: - Avaliar o desempenho de equipas de desenvolvimento de software e otimizar a sua eficiência e eficácia. - Identificar e analisar problemas que possam surgir no processo de desenvolvimento de software, de forma a implementar soluções e melhorias na gestão de projectos. - Aplicar ferramentas e técnicas de gestão da qualidade para monitorizar e controlar o processo de desenvolvimento de software. - Auditorias a processos de qualidade em projetos de desenvolvimento de software. O Curso de Especialização em Qualidade no Desenvolvimento de Software tem como objetivo tornar os profissionais do setor capazes de liderar eficazmente projetos de desenvolvimento de software, garantindo a sua qualidade e assegurando o cumprimento dos prazos e objetivos estabelecidos. Se está interessado em especializar-se na área da qualidade no desenvolvimento de software, este curso é a opção ideal para si. Tome a sua decisão.