Engenharia de Software
Unimep/Pronatec
2° Semestre
AULA 4
- Prof. André Bertoletti -
apbertolet@unimep.br
Nossa agenda de hoje
• Comunicação
• Processos de desenvolvimento
• Roda de conversa
Pilares de um bom
software
Relembrando...
Software =
FerramentasPessoasProcessos + +
Software
Ferramentas
Pessoas
Processos
Ferramentas
Pessoas
Processos
Software
PROCESSOS
Definição de Processos de Software
• Um processo de desenvolvimento de
software é um conjunto de atividades,
parcialmente ordenadas, com a finalidade
de obter um produto de software.
• Considerado um importante mecanismo
para se obter software de qualidade e
cumprir corretamente os contratos de
desenvolvimento.
Problemas processo de
desenvolvimento de software
URL: https://www.youtube.com/watch?v=QPiR8jTMLdI
Da ideia ao produto...
Comunicação é
VIDA!
Dicas para evitar o efeito “telefone
sem fio”
1. Evite o “diálogo de surdos”
2. Torne a conversa tangível
3. Ciclos de Feedback
É o processo que
define o ciclo de vida
de um software
O que está por baixo dos panos?
Atividades básicas no processo de
desenvolvimento
1. Especificação: define a(s) funcionalidade(s) do
software e as restrições sobre sua operação.
2. Projeto e implementação: o software que
atenda a especificação deve ser produzido
3. Teste e validação: o software deve ser validado
para garantir que ela faça o que o cliente deseja.
4. Evolução: o software deve evoluir para atender
aos novos requisitos que naturalmente surgirão.
Atividade 1:
Especificação
• Foco é no PROBLEMA!
• Eventos desta atividade:
– Reuniões com o cliente
– Levantamento dos requisitos
– Conversas com os usuários e visitas “in loco”
– etc ...
Atividade 2:
Projeto e implementação
• Foco é na SOLUÇÃO!
• Eventos desta atividade:
– Definição da metodologia para condução do projeto
• Cascata, Scrum, Kanban, XP, GoHorse, etc
– Definição do paradigma de programação
• Procedural, Orientado a objeto, Orientado a serviços, etc
– Prototipação
• Telas, relatórios, sequencias de operação, etc
– Codificação
• Escolha da linguagem de programação mais adequada
Atividade 3:
Teste e validação
• Foco é na HOMOLOGAÇÃO!
• O que geralmente acontece:
– Validação do código (testes de unidade)
– Validação interna (com o time)
– Validação externa (com o cliente)
Atividade 4:
Evolução
• Foco é na MELHORIA CONTÍNUA!
• O que geralmente acontece:
– Corrige bugs e/ou requisitos mal compreendidos
– Manutenção, ajustes e adaptações dos cenários não
previstos
– Planeja novas funcionalidades
– Libera uma nova versão do produto
Dois modelos
básicos de processos
A escolha de qual utilizar varia de
acordo com o cenário específico
Modelo cascata
Especificação
Projeto e
implementação
Evolução
Teste e validação
Modelo iterativo e incremental
Especificação
Projeto e
implementação
Evolução
Teste e
validação
Mas vale lembrar!
NÃO existe um processo
ideal. As organizações
devem criar, verificar,
testar, validar e
aperfeiçoar seus
próprios métodos.
Vamos conversar um pouco
Por hoje é só!
Agora é hora de estudar!

Engenharia de Software - Unimep/Pronatec - Aula 4