Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Sistemas de Informação
Profa. Ivre Marjorie
Engenharia de Software
Aula baseada em material cedido pelo Profº Tadeu Faria e profa. Sandra Silveira 
Leitura Indicada
 Capítulo 2 – Engenharia de Software
 PRESSMAN, Roger. Engenharia de software. 8. Porto Alegre, 
AMGH, 2016. recurso online
 Capítulo 1 – Introdução 
 SOMMERVILLE, Ian. Engenharia de software. 10. ed. São 
Paulo (SP): Pearson Prentice Hall, c2019. xii, 756
 SOMMERVILLE, Ian. Engenharia de software. 9ª. ed., São 
Paulo: Pearson Prentice Hall, c2011, capítulo 1. recurso online
 Capítulo 1 – Engenharia de Requisitos
 VAZQUEZ, Carlos Eduardo; SIMÕES, Guilherme Siqueira. 
Engenharia de requisitos: software orientado ao negócio. Rio 
de Janeiro (RJ): Brasport, c2016. 302 p. recurso online.
Introdução - Problemas de Software
 Por que concluir um software leva tanto tempo?
 Por que os custos de desenvolvimento são tão altos?
 Por que não conseguimos encontrar todos os erros 
antes de entregarmos o software aos clientes?
 Por que gastamos tanto tempo e esforço mantendo 
programas existentes?
 Por que continuamos a ter dificuldade em medir o 
progresso enquanto o software está sendo 
desenvolvido e mantido?
(Pressman, 2016)
Engenharia de Software
 “A aplicação de um método sistemático, 
disciplinado e quantificável ao desenvolvimento, 
operação e manutenção de software; isto é, a 
aplicação da engenharia ao software.” (IEEE 
Standard Computer Dictionary)
 Engenharia de Requisitos
 disciplina parte da Engenharia de Software
 Principais modelos de referência
 Processo Unificado da Rational/IBM (RUP)
 Corpo de conhecimento da Engenharia de Software 
do IEEE (SWEBOK)
 Áreas de processo de modelo de maturidade CMMI
Engenharia de Software
 Requisitos de Software
 Projeto de Software
 Construção de Software
 Teste de Software
 Manutenção de Software
 Gerência de Configuração de Software
 Gerência de Engenharia de Software
 Processo de Engenharia de Software
 Ferramentas e Métodos da Engenharia de Software
 Qualidade de Software
6
Taxa de sucesso de projetos
 Estatísticas em projetos de software
 37% Atendimento às expectativas iniciais
 42% Não funcionam como planejado ou nunca serão 
usados
 21% fracassam integralmente
 Qualidade
 57% dos sistemas são entregues sabendo-se que têm 
defeitos
 Prazo
 68% dos projetos são entregues com atraso
 Custo
 50% dos projetos custam mais do que o planejado
Histórico de sucesso, mudanças e falhas de 
projetos de TI
 Analogia: A cada 10 pontes construídas, 2 cairiam....
Fonte: Standish Group, CHAOS Manifesto 2015.
Frequência da utilização de software
 O cliente para se prevenir... pede mais do 
que precisa, pois pede tudo de uma vez!
Problemas/Dificuldades no Desenvolvimento 
de Software
 Estimativas de prazo, esforço e 
custo imprecisas.
 Sistemas informatizados:
 sendo entregues com atraso; 
 custando mais caro 
do que o previsto.
10
Profº Tadeu Faria - Engenharia de Requisitos
 Qualidade do software às vezes é menor que a 
adequada;
 causando insatisfação do usuário final, pois o sistema 
informatizado entregue:
 não faz o que deveria fazer;
 é pouco confiável;
 é lento;
 é difícil de usar;
11
Problemas/Dificuldades no Desenvolvimento de 
Software
Profº Tadeu Faria - Engenharia de Requisitos
Qualidade do software
12
Problemas/Dificuldades no Desenvolvimento de 
Software
Profº Tadeu Faria - Engenharia de Requisitos
 Aumento da demanda por novos softwares;
 Demandas diferentes:
 softwares devem ser construídos e entregues mais 
rapidamente;
 softwares maiores e mais complexos.
 Documentação insuficiente;
 Falta de processos e métodos;
13
Problemas/Dificuldades no Desenvolvimento de 
Software
Profº Tadeu Faria - Engenharia de Requisitos
 Empresas dependentes de sistemas legados que 
necessitam de modificações;
 mas possuem código e/ou documentação ilegíveis ou 
inexistentes.
 Manutenção difícil, cara e demorada de software já existente.
 Coleta de dados sobre produtividade inexistente ou 
insuficiente;
 comprometendo as estimativas de prazo, esforço e custo;
 não permitindo a avaliação de novas ferramentas, técnicas e 
padrões.
14
Problemas/Dificuldades no Desenvolvimento de 
Software
Profº Tadeu Faria - Engenharia de Requisitos
Crise do Software
 Causas da Crise do Software:
 Projetos estourando o orçamento;
 Projetos estourando o prazo;
 Software de baixa qualidade;
 Software muitas vezes não atingiam os requisitos;
 Projetos ingerenciáveis e o código difícil de manter.
 As questões apresentadas demonstram a 
preocupação que tem levado à adoção da 
prática da Engenharia de Software!!!
(Pressman, 2016)
 1960 a 1985:
 estouros de orçamentos e cronogramas: 
 OS/360:
 tempo do projeto: 10 anos (1960 a 1970);
 equipe: 1.000 programadores.
 danos materiais:
 falhas de segurança.
 mortes: 
 Therac-25: (1985 a 1987)
 6 acidentes envolvendo doses altíssimas de radiação;
 dose terapêutica: 200-rad;
 dose do Therac-25: 15.000 a 20.000-rad (radiation 
absorbed dose).
A Crise do Software
16
Profº Tadeu Faria - Engenharia de Requisitos
Questão para Discussão
 Os problemas e dificuldades citados para o 
desenvolvimento de software já ocorrem há 
muitos anos. A empresa em que você 
trabalha passa por esses problemas?
 Solução?
 Área de pesquisa Engenharia de Software
17
Profº Tadeu Faria - Engenharia de Requisitos
Possíveis Práticas para Diminuir os 
Problemas/ Dificuldades
 Métodos para todas as fases do desenvolvimento do 
software.
 Melhores técnicas para a garantia da qualidade.
 Controle do progresso do projeto.
18
Profº Tadeu Faria - Engenharia de Requisitos
 “Uma disciplina da Engenharia que se ocupa de 
todos os aspectos da produção de software, 
desde os estágios iniciais de especificação do 
sistema até a manutenção desse sistema, depois 
que ele entrou em operação.” (Sommerville, 2019)
Engenharia de Software
 Segundo a IEEE (Institute of
Electric...
 (1) A aplicação de uma abordagem 
sistemática, disciplinada e 
quantificável no desenvolvimento, na 
operação e na manutenção do 
software; isto é, a aplicação de 
engenharia ao software
Engenharia de Software
Referência completa para todo o corpo de 
conhecimento da ES: Software Engineering Body of 
Knowledge(SWEBOK)
Como a Engenharia de Software se diferencia de 
outras Engenharias?
 A Engenharia de Software desenvolve ou projeta um 
software;
 não o fabrica no sentido clássico.
 Software é um produto lógico e não físico.
 Custos concentram-se no desenvolvimento e não na 
produção.
 Reuso de componentes na criação de novos produtos.
 Software não se desgasta;
 se deteriora.
21
Profº Tadeu Faria - Engenharia de Requisitos
Engenharia de Software
 Três elementos fundamentais:
 métodos;
 padrões;
 ferramentas.
 Auxiliam:
 controle do processo de desenvolvimento do software;
 construção de software de alta qualidade.
 Não existe um método ou uma técnica universal de 
engenharia de software que se aplique a todos os 
tipos software.
22
Profº Tadeu Faria - Engenharia de Requisitos
Áreas da ES
Especificação dos requisitos
 Boas especificações de requisitos são 
indispensáveis;
 Custam tempo e dinheiro
 A ausência custa MUITO MAIS tempo e dinheiro.
 São investimentos! 
 Não representam custos supérfluos, mas investimentos 
necessários que se pagam com altos juros.
Áreas da ES
Gestão dos requisitos
 “Disciplina da engenharia de software 
que procura manter sob controle o 
conjunto dos requisitos de um 
produto, mesmo diante de algumas 
alterações inevitáveis.”
 Instabilidade dos requisitos
Áreas da ES
Gestão de projetos
 Para cumprir prazos e custos, os compromissos 
precisam ser assumidos com base em requisitos bem 
levantados, analisados e documentados. Os planos de 
projeto realizados com boas técnicasde estimativa e 
análise de tamanho, esforços, prazos e riscos.
 Prazos políticos implicam em desenvolvedores 
stressados e com má qualidade de vida, gerentes com 
prejuízo e desacreditados na TI e clientes produtos de 
má qualidade, mais caros e atrasados.
 A Gestão de Projetos é uma disciplina da Engenharia 
de Software.
 Capacidade em gestão de contratos:
 Especificar correta e completamente o produto a ser 
desenvolvido;
 Fazer uma boa seleção entre os candidatos a 
subcontratado, avaliando grau de realismo das suas 
propostas;
 Acompanhar o desempenho do subcontratado, sem 
interferir no seu trabalho, mas detectando sintomas de 
problemas;
 Planejar e executar os procedimentos de aceitação do 
produto.
Áreas da ES
Gestão de Contratos
 “Riscos são eventos incertos cuja ocorrência 
provoca efeitos nos objetivos de um projeto, 
geralmente negativos”.
 Mapeados e analisados os riscos pode-se 
determinar uma postura em relação a eles: 
aceitá-los tendo em vista as oportunidades ou 
planejar contramedidas preventivas.
Áreas da ES
Gerenciamento de Riscos
 “Grau de conformidade com os requisitos”.
 Cada requisito não-atendido é um defeito.
 A qualidade é consequência dos processos, das pessoas e da 
tecnologia.
 É muito mais fácil controlar requisitos que qualidade.
 Atividades de garantia da qualidade: revisões, testes e auditorias.
 Defeitos ocorrem por limitações humanas: erros lógicos, de 
interpretação, desconhecimento de técnicas, falta de atenção e de 
motivação.
 Quanto mais tarde um defeito é corrigido, mais cara é a correção.
 Somos mais eficazes para achar os defeitos dos outros do que os 
nossos próprios. Devem ser utilizados testadores independentes.
 A garantia da qualidade funciona melhor quando é coordenada por 
um grupo da organização independente dos projetos e com acesso 
a alta direção.
Áreas da ES
Qualidade
 Um projeto de software é composto por artefatos, 
sejam eles códigos, modelos, relatórios e 
documentos.
 Os artefatos evoluem e não podem ser perdidos.
 Gestão de configurações trata de organizar e 
controlar a proliferação dos artefatos.
Áreas da ES
Gestão de Configurações
Engenharia de software
 Pontos chaves...
 Entenda o problema antes de elaborar uma solução
 Projetar é uma atividade fundamental
 Qualidade e facilidade de manutenção são resultantes de um 
projeto bem feito.
 Existem vários tipos de sistemas de informação. Todas as 
aplicações precisam de engenharia de software embora não 
necessitem das mesmas técnicas. 
 A engenharia de software tem por objetivo apoiar o 
desenvolvimento profissional de software, mais do que a 
programação individual.
Engenharia de software
 Pontos chaves...
 Todos os tipos de aplicações devem ser desenvolvidas em um 
processo gerenciado e compreendido.
 Confiança e desempenho são importantes para todos os tipos 
de sistema.
 É importante gerenciar a especificação e os requisitos do 
software.
 Utilizar recursos existentes.
 A Ciência da 
Computação se 
preocupa com as 
teorias e com os 
métodos fundamentais
 A Engenharia de 
Software se dedica aos 
problemas práticos da 
produção de software
Qual é a diferença entre Engenharia de 
Software e Ciência da Computação
32
 A Engenharia de Software não se confunde com a 
Ciência da Computação e nem é uma disciplina 
desta. A ES usa resultados da Ciência da 
Computação e fornece problemas para estudo desta.
 Diferenças entre as áreas de conhecimento.
 ..\..\..\..\Comum\Videos\Diferença entre cursos de TI.mp4
Engenharia de Software
../../../../Comum/Videos/Diferença entre cursos de TI.mp4
Engenharia de Requisitos 
34
Engenharia de Requisitos
 “Conjunto de processos e atividades empregadas
para descobrir, detalhar, documentar, gerenciar o
conjunto de requisitos de um software.
 O uso da palavra “Engenharia” pressupõe o uso
sistemático e repetível de técnicas de forma a garantir
que o conjunto de requisitos seja completo, correto,
consistente, etc.”
Profº Marcelo Werneck - Engenharia de Requisitos
(Sommerville, 2019)
Engenharia de Requisitos
 “Disciplina da Engenharia de Software que consiste 
no uso sistemático e repetitivo de técnicas para 
cobrir atividades de obtenção, documentação e 
manutenção de um conjunto de requisitos para 
software que atendam aos objetivos de negócio e 
sejam de qualidade.”
 O uso do termo “Engenharia” é o mais adequado 
tendo em vista que a ER está intimamente ligada à 
aquisição e aplicação de conhecimento para 
criação, aperfeiçoamento e a implantação de SI.
(Vasquez, 2016, p.1)
Engenharia de Requisitos 
37
Analista de Requisitos
 “Realiza o levantamento de requisitos e 
especificação de projetos de TI, desenvolvendo 
soluções para processos, mapeamento e análise de 
requisitos de softwares e status report para gestão 
de projetos”.
 Outros nomes: 
 Analista de negócios de TI, 
 Analista de sistemas, 
 Analista de informações, 
 Engenheiro de Requisitos (IREB)
(Catho apud Vasquez, 2016, p.13)
Analista de Requisitos 
39
Bibliografia
 PRESSMAN, Roger. Engenharia de software. 8. Porto 
Alegre, AMGH, 2016. recurso online
 SOMMERVILLE, Ian. Engenharia de software. 10. ed. 
São Paulo (SP): Pearson Prentice Hall, c2019. xii, 756
 SOMMERVILLE, Ian. Engenharia de software. 9ª. ed., 
São Paulo: Pearson Prentice Hall, c2011, capítulo 1. 
recurso online
 VAZQUEZ, Carlos Eduardo; SIMÕES, Guilherme 
Siqueira. Engenharia de requisitos: software orientado ao 
negócio. Rio de Janeiro (RJ): Brasport, c2016. 302 p. 
recurso online.

Mais conteúdos dessa disciplina