SlideShare uma empresa Scribd logo
1 de 27
ENGENHARIA DE
SOFTWARE
Prof. Thalles Santos
APRESENTAÇÃO
● Formado em Redes de Computadores
● Pós em Governança de Tecnologia da Informação
● Desenvolvedor .NET - IBM
● Professor (que trabalha também!)
E VOCÊS?
● Análise e Levantamento de Requisitos
● Metodologias ágeis
○ Scrum
○ XP
● Ferramentas CASE
○ Bizagi
○ Astah
● Linguagem UML
● Estudos de caso
40 horas
15min de pausa
EMENTA DO CURSO
● Processo de desenvolvimento de
software
● Modelos e ciclo de vida de software
● Fases dos ciclos de vida de software
○ Concepção
○ Análise
○ Projeto
○ Implementação
○ Testes
○ Implantação
○ Entrega
○ Manutenção
● Projetos e processos
● Qualidade de software
ENGENHARIA DE SOFTWARE
● MATERIAIS DE AULA
○ Apostila
○ Materiais de estudo de
caso
○ Ferramentas de software
● PERFIL DO FORMADO
○ Entender e saber diferenciar os processos
de um ciclo de vida de software.
○ Diferenciar os tipos de requisitos de
software.
○ Diferenciar modelos de ciclo de vida de
software.
○ Conhecer processos de software. Seguir
etapas de gerenciamento de projetos de
software.
○ Capacidade de adaptação à evolução
tecnológica e dos métodos e técnicas de
desenvolvimento e manutenção de
software.
LIVROS RECOMENDADOS
ENGENHARIA
● É a ciência de adquirir e de aplicar conhecimentos matemáticos, técnicos e
científicos na criação, aperfeiçoamento e implementação de utilidades, tais
como materiais, estruturas, máquinas, aparelhos, sistemas ou processos, que
realizam uma determinada função ou objetivo.
SOFTWARE
● Software de computador é um produto que profissionais de software
desenvolvem e ao qual dão suporte no longo prazo. (PRESSMAN, 2011).
● Programas de computador e documentação associada. Os produtos de
software podem ser desenvolvidos para um cliente específico ou para um
mercado geral. (SOMMERVILLE, 2019)
ENGENHARIA DE SOFTWARE
ENGENHARIA DE SOFTWARE
No curso de Ciência da Computação:
● Programação
● Engenharia de Software
● Engenharia de Requisitos
● Projeto de Sistemas
● Interface Humano-Computador
● Banco de Dados
● Gerência de Projetos
ENGENHARIA DE SOFTWARE
● A Engenharia de Software surgiu com o objetivo de melhorar a qualidade dos
produtos de software e aumentar a produtividade no processo de
desenvolvimento.
● Trata de aspectos relacionados ao estabelecimento de processos, métodos,
técnicas, ferramentas e ambientes de suporte ao desenvolvimento de
software.
ENGENHARIA DE SOFTWARE
● Propõe a divisão do problema em problemas menores, cujas soluções devem
ser integradas por uma arquitetura. As soluções devem ser obtidas
utilizando-se procedimentos (métodos, técnicas, roteiros etc), bem como
ferramentas que automatizam o trabalho (ou parte dele).
● Tipicamente, são exigidas várias pessoas, cujo esforço deve ser planejado,
coordenado e acompanhado. Também é requerido que a qualidade do que se
está produzindo seja sistematicamente avaliada.
ENGENHARIA DE SOFTWARE
“Engenharia de Software é uma disciplina de engenharia que está preocupada com
os aspectos da produção de software, desde sua concepção inicial até sua operação
e manutenção.” (SOMMERVILLE, 2019)
● E quais são eles?
○ Especificação, Desenvolvimento, Validação, Evolução. (SOMMERVILLE,
2019)
PROCESSO DE SOFTWARE
Um processo de desenvolvimento de software
é um conjunto de atividades, parcialmente
ordenadas, com a finalidade de obter um
produto de software.
PROCESSO DE SOFTWARE
ENGENHARIA DE SOFTWARE
● 4 PONTOS PRINCIPAIS
○ PROJETOS E PROCESSOS
○ ANÁLISE E LEVANTAMENTO DE REQUISITOS DE SOFTWARE
○ METODOLOGIAS DE DESENVOLVIMENTO ÁGIL
○ FERRAMENTAS
PROCESSO DE SOFTWARE
PROCESSO DE SOFTWARE
REQUISITOS DE SOFTWARE
EXEMPLO DE VALIDAÇÃO DE REQUISITOS
REQUISITOS DE SOFTWARE
REQUISITOS DE SOFTWARE
REQUISITOS DE SOFTWARE
REQUISITOS DE SOFTWARE
PROJETOS E PROCESSOS
Dentro da Engenharia de Software, é essencial diferenciar entre Processos e Projetos. Um
PROJETO de software deve ser visto como um evento único e complexo, como:
● A implantação de um novo software em uma equipe de vendas
● O desenvolvimento de uma funcionalidade que altere todo um software (adicionar um
novo módulo de rastreamento de cargas)
Já um PROCESSO de software, pode ser definido como uma rotina estabelecida, que pode ser
replicada diversas vezes, tal como:
● O uso deste software de vendas
● Após a entrega da nova funcionalidade, os processos de software usados para manter
essa funcionalidade usável
PROJETOS E PROCESSOS

Mais conteúdo relacionado

Semelhante a Engenharia de Software: Processos, Requisitos e Metodologias

Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de SoftwareLeinylson Fontinele
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de softwareJoao Johanes
 
Apresentação de Engenharia de software I - Prof. Cristiane Fidelix
Apresentação de Engenharia de software I - Prof. Cristiane FidelixApresentação de Engenharia de software I - Prof. Cristiane Fidelix
Apresentação de Engenharia de software I - Prof. Cristiane FidelixCris Fidelix
 
modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3spawally
 
Introdução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane FidelixIntrodução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane FidelixCris Fidelix
 
T@rget trust curso de planejamento e execução de testes de software
T@rget trust   curso de planejamento e execução de testes de softwareT@rget trust   curso de planejamento e execução de testes de software
T@rget trust curso de planejamento e execução de testes de softwareTargettrust
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de SoftwareNécio de Lima Veras
 
Modelos e etapas do processo de software.pdf
Modelos e etapas do processo de software.pdfModelos e etapas do processo de software.pdf
Modelos e etapas do processo de software.pdfIvanFontainha
 
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMASLIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMASOs Fantasmas !
 
2 engenharia de software
2   engenharia de software2   engenharia de software
2 engenharia de softwareFelipe Bugov
 
Apostila elementos de projeto de informática
Apostila elementos de projeto de informáticaApostila elementos de projeto de informática
Apostila elementos de projeto de informáticaFabricio Tecinfo
 
Engenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentávelEngenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentávelFernando Pontes
 
Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5Elaine Cecília Gatto
 
T@rget trust curso de introdução ao processo de teste de software
T@rget trust   curso de introdução ao processo de teste de softwareT@rget trust   curso de introdução ao processo de teste de software
T@rget trust curso de introdução ao processo de teste de softwareTargettrust
 
T@rget trust curso de introdução ao processo de teste de software
T@rget trust   curso de introdução ao processo de teste de softwareT@rget trust   curso de introdução ao processo de teste de software
T@rget trust curso de introdução ao processo de teste de softwareTargettrust
 

Semelhante a Engenharia de Software: Processos, Requisitos e Metodologias (20)

Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de Software
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
Apresentação de Engenharia de software I - Prof. Cristiane Fidelix
Apresentação de Engenharia de software I - Prof. Cristiane FidelixApresentação de Engenharia de software I - Prof. Cristiane Fidelix
Apresentação de Engenharia de software I - Prof. Cristiane Fidelix
 
Aula1 introducao engsw
Aula1 introducao engswAula1 introducao engsw
Aula1 introducao engsw
 
Processo de Software
Processo de SoftwareProcesso de Software
Processo de Software
 
modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3
 
Qualidade de software
Qualidade de softwareQualidade de software
Qualidade de software
 
Aula2 processos sw
Aula2 processos swAula2 processos sw
Aula2 processos sw
 
Introdução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane FidelixIntrodução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane Fidelix
 
T@rget trust curso de planejamento e execução de testes de software
T@rget trust   curso de planejamento e execução de testes de softwareT@rget trust   curso de planejamento e execução de testes de software
T@rget trust curso de planejamento e execução de testes de software
 
Processo e Processo de Software
Processo e Processo de SoftwareProcesso e Processo de Software
Processo e Processo de Software
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Software
 
Modelos e etapas do processo de software.pdf
Modelos e etapas do processo de software.pdfModelos e etapas do processo de software.pdf
Modelos e etapas do processo de software.pdf
 
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMASLIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
 
2 engenharia de software
2   engenharia de software2   engenharia de software
2 engenharia de software
 
Apostila elementos de projeto de informática
Apostila elementos de projeto de informáticaApostila elementos de projeto de informática
Apostila elementos de projeto de informática
 
Engenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentávelEngenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentável
 
Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5Modelos de Processo de Software Parte 5
Modelos de Processo de Software Parte 5
 
T@rget trust curso de introdução ao processo de teste de software
T@rget trust   curso de introdução ao processo de teste de softwareT@rget trust   curso de introdução ao processo de teste de software
T@rget trust curso de introdução ao processo de teste de software
 
T@rget trust curso de introdução ao processo de teste de software
T@rget trust   curso de introdução ao processo de teste de softwareT@rget trust   curso de introdução ao processo de teste de software
T@rget trust curso de introdução ao processo de teste de software
 

Engenharia de Software: Processos, Requisitos e Metodologias

  • 2. APRESENTAÇÃO ● Formado em Redes de Computadores ● Pós em Governança de Tecnologia da Informação ● Desenvolvedor .NET - IBM ● Professor (que trabalha também!)
  • 4. ● Análise e Levantamento de Requisitos ● Metodologias ágeis ○ Scrum ○ XP ● Ferramentas CASE ○ Bizagi ○ Astah ● Linguagem UML ● Estudos de caso 40 horas 15min de pausa EMENTA DO CURSO ● Processo de desenvolvimento de software ● Modelos e ciclo de vida de software ● Fases dos ciclos de vida de software ○ Concepção ○ Análise ○ Projeto ○ Implementação ○ Testes ○ Implantação ○ Entrega ○ Manutenção ● Projetos e processos ● Qualidade de software
  • 5. ENGENHARIA DE SOFTWARE ● MATERIAIS DE AULA ○ Apostila ○ Materiais de estudo de caso ○ Ferramentas de software ● PERFIL DO FORMADO ○ Entender e saber diferenciar os processos de um ciclo de vida de software. ○ Diferenciar os tipos de requisitos de software. ○ Diferenciar modelos de ciclo de vida de software. ○ Conhecer processos de software. Seguir etapas de gerenciamento de projetos de software. ○ Capacidade de adaptação à evolução tecnológica e dos métodos e técnicas de desenvolvimento e manutenção de software.
  • 7. ENGENHARIA ● É a ciência de adquirir e de aplicar conhecimentos matemáticos, técnicos e científicos na criação, aperfeiçoamento e implementação de utilidades, tais como materiais, estruturas, máquinas, aparelhos, sistemas ou processos, que realizam uma determinada função ou objetivo.
  • 8. SOFTWARE ● Software de computador é um produto que profissionais de software desenvolvem e ao qual dão suporte no longo prazo. (PRESSMAN, 2011). ● Programas de computador e documentação associada. Os produtos de software podem ser desenvolvidos para um cliente específico ou para um mercado geral. (SOMMERVILLE, 2019)
  • 10. ENGENHARIA DE SOFTWARE No curso de Ciência da Computação: ● Programação ● Engenharia de Software ● Engenharia de Requisitos ● Projeto de Sistemas ● Interface Humano-Computador ● Banco de Dados ● Gerência de Projetos
  • 11. ENGENHARIA DE SOFTWARE ● A Engenharia de Software surgiu com o objetivo de melhorar a qualidade dos produtos de software e aumentar a produtividade no processo de desenvolvimento. ● Trata de aspectos relacionados ao estabelecimento de processos, métodos, técnicas, ferramentas e ambientes de suporte ao desenvolvimento de software.
  • 12. ENGENHARIA DE SOFTWARE ● Propõe a divisão do problema em problemas menores, cujas soluções devem ser integradas por uma arquitetura. As soluções devem ser obtidas utilizando-se procedimentos (métodos, técnicas, roteiros etc), bem como ferramentas que automatizam o trabalho (ou parte dele). ● Tipicamente, são exigidas várias pessoas, cujo esforço deve ser planejado, coordenado e acompanhado. Também é requerido que a qualidade do que se está produzindo seja sistematicamente avaliada.
  • 13. ENGENHARIA DE SOFTWARE “Engenharia de Software é uma disciplina de engenharia que está preocupada com os aspectos da produção de software, desde sua concepção inicial até sua operação e manutenção.” (SOMMERVILLE, 2019) ● E quais são eles? ○ Especificação, Desenvolvimento, Validação, Evolução. (SOMMERVILLE, 2019)
  • 14. PROCESSO DE SOFTWARE Um processo de desenvolvimento de software é um conjunto de atividades, parcialmente ordenadas, com a finalidade de obter um produto de software.
  • 16. ENGENHARIA DE SOFTWARE ● 4 PONTOS PRINCIPAIS ○ PROJETOS E PROCESSOS ○ ANÁLISE E LEVANTAMENTO DE REQUISITOS DE SOFTWARE ○ METODOLOGIAS DE DESENVOLVIMENTO ÁGIL ○ FERRAMENTAS
  • 20. EXEMPLO DE VALIDAÇÃO DE REQUISITOS
  • 25.
  • 26. PROJETOS E PROCESSOS Dentro da Engenharia de Software, é essencial diferenciar entre Processos e Projetos. Um PROJETO de software deve ser visto como um evento único e complexo, como: ● A implantação de um novo software em uma equipe de vendas ● O desenvolvimento de uma funcionalidade que altere todo um software (adicionar um novo módulo de rastreamento de cargas) Já um PROCESSO de software, pode ser definido como uma rotina estabelecida, que pode ser replicada diversas vezes, tal como: ● O uso deste software de vendas ● Após a entrega da nova funcionalidade, os processos de software usados para manter essa funcionalidade usável