📌 Informações Gerais da Disciplina

  • Código: CSECBJI.36
  • Período: 5º Período | Núcleo: Profissionalizante | Carga Horária: 60
  • Docente Responsável: Fabrício Barros (fabricio.goncalves@iff.edu.br)
  • Livro / Material Didático Principal: Elementos de Eletrônica Digital (Capuano & Idoeta)

📋 Ementa e Objetivos Pedagógicos

📋 Ementa

Teoria dos sistemas. Processo de desenvolvimento de software. Análise e projeto de software. Arquitetura de software. Testes. Visão geral sobre manutenção de software.

🎯 Objetivos

  • Desenvolver a visão de software como um sistema e parte de um sistema;
  • Conhecer processos de desenvolvimento de software
  • Compreender os papéis dos participantes do processo de desenvolvimento de software;
  • Identificar os diversos paradigmas da engenharia de software;
  • Conhecer modelos arquiteturais de software;
  • Conhecer princípios e metodologias de testes de software;
  • Reconhecer as categorias e atividades da manutenção de software;
  • Trabalhar com ambientes e ferramentas de suporte ao desenvolvimento de software

🔒 Pré-requisitos e Dependências Curriculares (Trancas)

📋 Pré-requisitos Exigidos:

  • Nenhum pré-requisito exigido (disciplina de entrada).

🔓 Disciplinas Trancadas (Liberadas após conclusão):

📖 Conteúdo Programático

  • 1. Teoria dos Sistemas
    • Sistemas naturais e sistemas automatizados
    • Software x Sistemas
    • Categorias de Software
  • 2. Processo de Desenvolvimento de Software
    • Histórico da Evolução do Software
    • Etapas do Processo de Desenvolvimento de Software: Análise, Projeto, Implementação, Testes, Implantação e Manutenção.
    • Modelo Clássico
    • Modelo em Espiral
    • Processo Unificado
    • Métodos Ágeis
    • Papeis no desenvolvimento de software (stakeholders).
  • 3. Análise e Projeto de Software
    • Técnicas de Coleta e Especificação de Requisitos
    • Métodos de Análise: Estruturada, Essencial e Orientada a Objetos
    • Paralelo entre as diferentes metodologias
    • A Etapa de Projeto
    • Princípios de Qualidade em Projeto: Coesão e Acoplamento
    • Métodos de Projeto
  • 4. Arquitetura de Software
    • Arquitetura em camadas
    • Arquitetura MVC
    • Microserviços
    • Arquitetura Orientada a Mensagens
    • Arquitetura Publish/Subscribe
  • 5. Testes
    • Teste de unidade
    • Testabilidade
    • Teste de integração
    • Testes de sistema
  • 6. Visão Geral sobre Manutenção de Software
    • Conceito, motivações e dificuldades
    • Tipos de Manutenção
    • Processo de Manutenção de Software
    • Gerência de Configuração
    • Reengenharia
  • 7. Ferramentas e Ambientes de Suporte ao Desenvolvimento de Software

📚 Bibliografia Básica e Complementar (ABNT)

📕 Bibliografia Básica

  1. PRESSMAN, R. S., MAXIM, B. R. Engenharia de Software: Uma Abordagem Profissional. 8ª Edição. Porto Alegre: Bookman, 2016.
  2. SOMMERVILLE, I. Engenharia de Software. 9ª Edição. São Paulo: Pearson, 2011.
  3. WAZLAWICK, R. S. Engenharia de Software: Conceitos e Práticas. São Paulo: Elsevier, 2013.

📗 Bibliografia Complementar

  1. DELAMARO, M. E., MALDONADO, J. C., JINO, M. Introdução ao Teste de Software. 2ª Edição. São Paulo: Elsevier, 2016.
  2. FERNANDES, J. M., MACHADO, R. J. Requisitos em Projetos de Software e de Sistemas de Informação.
  3. São Paulo: Novatec, 2017.
  4. HIRAMA, K. Engenharia de Software: Qualidade e Produtividade com Tecnologia. São Paulo: Elsevier, 4.
  5. MACHADO, F. N. R., Análise e Gestão de Requisitos de Software: Onde Nascem os Sistemas. 3ª Edição. São Paulo: Érica, 2015.
  6. SAMPAIO, C. Qualidade de Software na Prática: Como Reduzir o Custo de Manutenção de Software com a Análise de Código. São Paulo: Ciência Moderna, 2014.

📝 Anotações e Arquivos Didáticos

1 item neste arquivo.



© 2026 Pedro Henrique Rocha de Andrade · Construído com Quartz