Escolar Documentos
Profissional Documentos
Cultura Documentos
INF016 – Arquitetura de Software – Graduação Tecnológica em Análise e Desenvolvimento de Sistemas – Sandro S. Andrade
ES: tecnologia em camada
Engenharia de Software
Ferramentas
Métodos
Processos
Pressman (2002)
Foco na qualidade
Engenharia de Software
Ferramentas
Métodos
Processos
Foco na qualidade
Engenharia de Software
Ferramentas
Métodos
Processos
Foco na qualidade
8
Atividades Essenciais da ESW
9
Introdução
Software [1]
+ +
ENGENHARIA
Como Construir? DE SOFTWARE
Simplesmente OU www.sei.cmu.edu/
“FAZER” www.rspa.com/spi/
www.swebok.org
10
Introdução
11
Introdução
Engenharia de Software
Processo de Desenvolvimento de Software
Análise de Implemen- Implan-
Requisitos Projeto Teste
tação tação
Atividades - Estimativas;
- Revisões Técnicas Formais.
- Garantia de qualidade;
- Gerência de Configuração;
- Gerência de Riscos;
- Métricas;
Outros Processos
Contidos no
Processo Principal
12
Processo de Software
É uma série de passos (um ROTEIRO).
Um processo de software é um conjunto de
atividades que leva à produção de um produto de
software
Para criar EM TEMPO um SOFTWARE de ALTA
QUALIDADE, sem estourar o ORÇAMENTO [1].
Motivação
13
Processos de Software
Embora existam muitos processos de software diferentes, algumas atividades
fundamentais são comuns a todos eles, como:
Especificação de software: a funcionalidade e as restrições sobre sua
operação devem ser definidas
Projeto e Implementação de software: o software que atenda à especificação
deve ser produzido
Validação de software; o sw deve ser validado para garantir que ele faça o
que o cliente deseja
Evolução de software: o sw deve evoluir para atender às necessidades
mutáveis do cliente
14
Processo de Software
15
Processos de Software
Atividades de estrutura
Tarefas
Fonte: PFLEEGER
Fonte: PFLEEGER
Fonte: PFLEEGER
22
Modelos de processo de SW –
Sequencial Linear
Fonte: PFLEEGER
23
Modelos de processo de SW –
Sequencial Linear
Fonte: PFLEEGER
fim
obtenção dos
requisitos
Fonte: PFLEEGER
construção produto projeto rápido
refinamento construção
protótipo protótipo
avaliação
protótipo
Refinamento do protótipo
26
Modelos de processo de SW –
prototipagem
início
fim
obtenção dos
requisitos
construção produto projeto rápido Fonte: PFLEEGER
refinamento construção
protótipo protótipo
avaliação
protótipo
Quem a gera?
Quem a processa?
Exige compromisso
32
Modelos de processo de SW evolucionário
Modelo incremental
33
Modelos de processo de SW evolucionário
Modelo espiral
Comunicação com o cliente: tarefas necessárias para estabelecer efetiva comunicação entre o desenvolvedor e
o cliente
Planejamento: tarefas necessárias para definir recursos, prazos e outras informações relacionadas ao projeto
Análise de risco: tarefas necessárias para avaliar os riscos, tanto técnicos quanto gerenciais
Construção e liberação: tarefas necessárias para construir, testar, instalar e fornecer apoio ao usuário
Identifique os
componentes
adequados
Procure
Construa a componentes na
enésima interação biblioteca
do sistema
Extraia os
Coloque os novos componentes se
componentes na estiverem
bilbioteca disponíveis
Construa os
componentes se
não estiverem
disponíveis
36
Fonte: PRESSMAN (2002)
Modelos de processo de SW
Modelo baseado em componentes
Identifique os
componentes
adequados
Procure
Construa a
componentes na
enésima interação
biblioteca
do sistema
Extraia os
Coloque os novos
componentes se
componentes na
estiverem
bilbioteca
disponíveis
Construa os
componentes se
não estiverem
disponíveis
Compõe aplicações a partir de componentes de software previamente preparados
Leva ao reuso de sw e isso fornece aos engenheiros um certo nº de benefícios
mensuráveis
A montagem de componentes leva a uma redução de 70% no prazo do ciclo de
desenvolvimento; uma redução de 84% no custo do projeto e um índice de
produtividade de 26,2, comparado com o padrão de 16,9 para a indústria.
37
Técnicas de 4a Geração
testes
sistema completo
manutenção
INF014 – Análise e Projeto de Sistemas
Ciclos de vida e Processos de Software
Maurício Pitangueira
antoniomauricio@ifba.edu.br
INF016 – Arquitetura de Software – Graduação Tecnológica em Análise e Desenvolvimento de Sistemas – Sandro S. Andrade