Sobre esta disciplina
Período: 5º Período · Núcleo: Profissionalizante · Carga Horária: 60h Tópicos: Teoria dos sistemas. Processo de desenvolvimento de software. Análise e projeto de software. Arquitetura de software. Testes.
| Campo | Valor |
|---|---|
| Código | CSECBJI.36 |
| Núcleo | Profissionalizante |
| Carga Horária | 60 |
| Período | 5º Período |
| Pré-requisitos | — |
🔒 Trancas
📋 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
📖 Conteúdo Programático
- Teoria dos Sistemas
- Sistemas naturais e sistemas automatizados
- Software x Sistemas
- Categorias de Software
- 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).
- 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
- Arquitetura de Software
- Arquitetura em camadas
- Arquitetura MVC
- Microserviços
- Arquitetura Orientada a Mensagens
- Arquitetura Publish/Subscribe
- Testes
- Teste de unidade
- Testabilidade
- Teste de integração
- Testes de sistema
- 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
- Ferramentas e Ambientes de Suporte ao Desenvolvimento de Software
📚 Materiais de Apoio (acesso aberto)
Todos os materiais abaixo são de distribuição legal e gratuita — pode baixar e compartilhar.
- Análise e Projeto de Sistemas — IFB, licença Creative Commons.
- Análise de Sistemas — Escola Técnica Aberta/MEC. Espelho oficial: ProEdu.
- Projeto de Sistemas — Rede e-Tec Brasil/MEC. Espelho oficial: ProEdu.
📕 Bibliografia Básica
- PRESSMAN, R. S., MAXIM, B. R. Engenharia de Software: Uma Abordagem Profissional. 8ª Edição. Porto Alegre: Bookman, 2016.
- SOMMERVILLE, I. Engenharia de Software. 9ª Edição. São Paulo: Pearson, 2011.
- WAZLAWICK, R. S. Engenharia de Software: Conceitos e Práticas. São Paulo: Elsevier, 2013.
📗 Bibliografia Complementar
- DELAMARO, M. E., MALDONADO, J. C., JINO, M. Introdução ao Teste de Software. 2ª Edição. São Paulo: Elsevier, 2016.
- FERNANDES, J. M., MACHADO, R. J. Requisitos em Projetos de Software e de Sistemas de Informação.
- São Paulo: Novatec, 2017.
- HIRAMA, K. Engenharia de Software: Qualidade e Produtividade com Tecnologia. São Paulo: Elsevier, 4.
- 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.
- 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.