Desenvolvimento de Sistemas 2

Compartilhado por um usuário do Flashcards.gg · gerado com IA · Denunciar este conjunto

Conceitos fundamentais de desenvolvimento de sistemas e engenharia de software para concursos públicos.

32 cartões Português Nível: Ensino superior Programação Publicado
Toque no cartão para virar

Cartões · 32

Modelo Cascata (Waterfall)
Modelo sequencial e linear onde cada fase (requisitos, projeto, implementacao, testes) deve ser concluida antes do inicio da proxima, dificultando mudancas tardias.
Modelo Espiral
Processo de desenvolvimento orientado a riscos que combina a natureza iterativa da prototipacao com aspectos controlados e sistematicos do modelo cascata.
Prototipacao
Criacao de versoes preliminares do sistema para ajudar desenvolvedores e clientes a compreenderem e validarem os requisitos antes da construcao final.
Manifesto Agil - 4 Valores
Individuos e interacoes sobre processos; software funcionando sobre documentacao; colaboracao com cliente sobre contratos; responder a mudancas sobre planos.
Scrum - Papeis Principais
Product Owner (define prioridades e escopo do produto), Scrum Master (facilita o processo e remove impedimentos) e Time de Desenvolvedores.
Scrum - Cerimonias
Sprint Planning (planejamento), Daily Scrum (reuniao diaria), Sprint Review (apresentacao da entrega) e Sprint Retrospective (melhoria continua).
Kanban
Metodo visual de gestao de fluxo de trabalho baseado em cartoes, focado na limitacao do trabalho em progresso (WIP) e reducao de gargalos.
XP (Extreme Programming)
Metodologia agil focada em excelencia tecnica com praticas como programacao em par, TDD, integracao continua e releases frequentes.
TDD (Test Driven Development)
Ciclo Red-Green-Refactor: escreve-se o teste que falha, implementa-se o codigo minimo para passar e, em seguida, refatora-se o codigo.
Requisitos Funcionais (RF)
Declaracoes dos servicos ou funcoes que o sistema deve fornecer, descrevendo comportamentos e reacoes a entradas especificas.
Requisitos Nao Funcionais (RNF)
Restricoes e qualidades do sistema como desempenho, seguranca, confiabilidade, usabilidade, escalabilidade e portabilidade.
UML - Diagrama de Casos de Uso
Diagrama comportamental que modela as funcionalidades do sistema sob a perspectiva dos atores externos envolvidos.
UML - Diagrama de Classes
Diagrama estrutural que descreve a visao estatica do sistema, detalhando classes, atributos, metodos e relacionamentos.
UML - Diagrama de Sequencia
Diagrama de interacao que enfatiza a ordenacao temporal das mensagens trocadas entre objetos para executar um cenario.
Acoplamento
Grau de interdependencia entre modulos de software; a boa pratica de arquitetura busca baixo acoplamento para facilitar manutencoes.
Coesao
Medida de quao focadas e relacionadas estao as responsabilidades de um unico modulo ou classe; busca-se alta coesao.
Padrao GoF: Singleton
Padrao criacional que garante que uma classe possua apenas uma unica instancia acessivel globalmente em toda a aplicacao.
Padrao GoF: Factory Method
Padrao criacional que define uma interface para criacao de objetos, deixando as subclasses decidirem qual classe instanciar.
Padrao GoF: Observer
Padrao comportamental que define dependencia um-para-muitos, notificando automaticamente todos os observadores quando o estado muda.
Padrao GoF: Strategy
Padrao comportamental que encapsula uma familia de algoritmos em classes proprias, permitindo alternar a execucao em tempo de execucao.
Padrao GoF: Adapter
Padrao estrutural que converte a interface de uma classe em outra interface esperada pelo cliente, permitindo classes incompativeis trabalharem juntas.
SOLID - Single Responsibility Principle (SRP)
Principio que estabelece que cada classe deve ter apenas uma unica razao para mudar, focando em uma responsabilidade clara.
SOLID - Open/Closed Principle (OCP)
Entidades de software devem ser abertas para extensao, mas fechadas para modificacao direta em seu codigo-fonte.
SOLID - Liskov Substitution Principle (LSP)
Objetos de uma subclasse devem ser capazes de substituir objetos da superclasse sem alterar a corretude do programa.
SOLID - Interface Segregation Principle (ISP)
Clientes nao devem ser forcados a depender de interfaces que nao utilizam; prefira interfaces especificas a uma generica.
SOLID - Dependency Inversion Principle (DIP)
Modulos de alto nivel nao devem depender de modulos de baixo nivel; ambos devem depender de abstracoes.
Teste de Caixa-Preta (Funcional)
Tecnica de teste que avalia o software com base apenas em suas entradas e saidas, sem conhecimento da estrutura interna de codigo.
Teste de Caixa-Branca (Estrutural)
Tecnica de teste focada na logica interna, fluxo de controle, condicoes e caminhos de execucao do codigo-fonte.
Teste de Regressao
Execucao de testes em versoes modificadas do sistema para assegurar que alteracoes recentes nao introduziram novos defeitos.
CI/CD (Continuous Integration / Continuous Delivery)
Pratica de integrar alteracoes de codigo frequentemente com testes automatizados e automatizar o processo de entrega para producao.
Arquitetura em Microservicos
Estilo arquitetural que estrutura a aplicacao como um conjunto de servicos pequenos, desacoplados, independentes e comunicaveis por rede.
CMMI - Niveis de Maturidade
Escala de 1 a 5: Inicial (1), Gerenciado (2), Definido (3), Gerenciado Quantitativamente (4) e Em Otimizacao (5).

Conjuntos relacionados

Mais em Programação →