Buscar

Desenvolvimento de Software: Conceitos e Processos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 21 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 21 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 21 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

PROCESSOS DE DESENV. DE SOFTWARE
CURSO DE ANÁLISE E DESENVOLVIMENTO
DE SISTEMAS
Professor: David Falcão, M.Sc.
davidfalcaoprof@gmail.com
Aula 1 e 2 – Conceitos gerais de PDS
Conceitos de PDS
 O que é Software? Para que serve?
É a parte abstrata do sistema computacional;
Funciona num hardware,
a partir de instruções codificadas numa
linguagem de programação;
Processa e armazena de informações na forma de dados codificados 
que podem ser controlados pelo usuário;
Este controle, bem como a troca de informações entre o usuário e o 
sistema é feita através da interface de usuário, composta por 
hardware e software.
Software faz parte de um Sistema de Informação
(Hardware+Software+Pessoas+Procedimentos+Dados)
Conceitos de PDS
Fluxo de dados em um Sistema de Informação
Um software realiza operações que
transformam aquilo que foi recebido, ingerido,
importado, alimentado (entrada) em outros
elementos que poderão ou não ser aqueles
observados na (saída).
Conceitos de PDS
Fluxo de dados em um SI
Dados
Informação
Conhecimento
Inteligência
PROCESSAMENTO
ANÁLISE
SÍNTESE
Decisão
Elementos brutos, sem significado, 
desvinculado da realidade.
Dados com significado, relevância 
e propósito.
Compreender e 
internalizar as 
informações recebidas, 
combinando-as.
Conceitos de PDS
Fluxo de dados em um SI
Processos
do Negócio
Informação
Dado
Conhecimento
Processo
Decisório
Sistema de
Informação
Exemplos
Seguindo os conceitos anteriores, o que podemos citar como 
dados, informação e conhecimento para:
Ex: 1 – Indo ao Médico
Dados, Informação e Conhecimento? 
Ex: 2 – Indo ao Mecânico.
Dados, Informação e Conhecimento?
De que forma um software pode auxiliar o médico / mecânico?
Exemplos
Conceitos de PDS
Categorias de Software
Era inicial - Anos 50/60
- Orientação batch; 
- distribuição limitada; 
- software projetado para um 
usuário específico;
- computadores de baixa capacidade.
Segunda era - até meados dos anos 70
- Multiusuário; 
- tempo real; 
- banco de dados; 
- software como produto; 
- linguagens de programação em alto nível.
Conceitos de PDS
Evolução do Software
Terceira era: (Até meados dos anos 80)
- Sistemas distribuídos; 
- inteligência embutida; 
- hardware de baixo custo; 
- impacto das vendas de computadores 
pessoais = grande demanda por software;
- crise de software! (+ demanda, - oferta)
Quarta era: (dias atuais)
- tecnologias orientadas a objeto e aspectos;
- sistemas baseados em conhecimento; 
- sistemas web; 
- portabilidade;
Conceitos de PDS
 Evolução do Software
60's / 70's 70's / 80's 90's – 00's 00'S - HOJE
Interfaces
textuais
Integração Interfaces
web
Mobilidade
Conceitos de PDS
 Categorias de Software (Pressman, 
R.)
- Software básico: compiladores, editores
simples, drivers,
componentes do SO.
- Software de tempo real: monitora, analisa e
controla eventos
em tempo real.
- Software comercial: controle de estoque,
vendas etc.
(manipulam algum mecanismo de persistência,
como uma de suas principais características)
Conceitos de PDS
Categorias de Software
- Software científico e de engenharia: intenso
processamento
de números e cálculos.
- Software embutido: celulares, microondas,
injeção eletrônica.
- Software de computador pessoal:
processador de texto, planilha, jogos,
apresentações etc.
- Software de inteligência artificial: sistemas
especialistas, redes neurais e aprendizado.
Antes de desenvolver software, precisamos 
responder algumas perguntas: 
Qual é o problema a ser resolvido?
Quais características do software a ser gerado 
resolvem o problema?
Como o software (a solução) serão concebidos?
Como o software será construído?
Qual a abordagem que será utilizada para resolver erros feitos no 
projeto e construção do software?
Como o software será mantido a longo prazo, quando correções, 
adaptações e melhorias forem requeridas por usuários do software?
Conceitos de PDS
PROCESSO 
DE DESENV. 
SOFTWARE
Procedimentos e 
métodos que 
definem o 
relacionamento 
de tarefas 
A
C
B
D
Pessoas com 
habilidades,
treinamento e 
motivação
Ferramentas e 
Equipamentos
Conceitos de PDS
O que é Processo de Software?
É um conjunto de tarefas requeridas para construir software de alta
qualidade. O Processo define a abordagem a ser utilizada no
desenvolvimento de software.
É um método de organizar as atividades relacionadas à
criação, entrega e manutenção de sistemas de software.
Conjunto de fases e etapas de projeto, estágios, métodos,
técnicas, e práticas que as pessoas empregam para
desenvolver e manter software e seus artefatos associados
(planos, documentos, modelos, código, etc.)
Define quem faz o quê, quando e como
Conceitos de PDS
Conceitos de PDS
Problemas no desenvolvimento de software
- Os principais problemas não são tecnológicos. 
- A principal preocupação da indústria refere-se à 
falta de previsibilidade de prazo e 
de custo dos projetos.
Qual a causa destes problemas?
A indústria de software continua lidando com projetos mal sucedidos. 
As estatísticas do desenvolvimento de software apresentam que:
• Somente 34% dos projetos são bem sucedidos 
• 15% dos projetos são cancelados 
• 43% é o erro médio em relação ao orçamento do projeto daqueles 
que foram completados 
• Somente 52% das características (requisitos não funcionais) e 
funcionalidades são entregues no produto.
Conceitos de PDS
Problemas mais comuns
- Custo de desenvolver software
- Receita prevista X custo total;
- Custo < receita;
- Complexidade dos requisitos
- Requisitos com especificação pobre; 
- Mapeamento de riscos
- Riscos não identificados, resolvidos 
ou mitigados;
- Fragilidade da solução
- Projeto de software elaborado de 
maneira ineficiente.
Conceitos de PDS
Problemas mais comuns
Exemplos clássicos (1 de 2):
- Custo maior que o previsto;
- Descumprimento de cronograma;
- Relação pobre entre cliente e fornecedor; 
- Dificuldades de personalização do software;
- Falta de acompanhamento do projeto;
- Ciclo de desenvolvimento muito longo;
- Excesso de retrabalho;
- Falta de habilidade de prever problemas;
- Baixa disponibilidade e alta rotatividade de recursos humanos; 
- Falsas promessas: o “comercial” faz promessas ao cliente que a equipe 
técnica não pode cumprir.
Conceitos de PDS
Problemas mais comuns
Exemplos clássicos (2 de 2):
- Integração com sistemas legados (falta de pessoal 
especializado, dificuldade de manutenção);
- Ausência de apoio da alta gerência da empresa;
- Escopo volátil: o cliente adiciona e altera o 
escopo e a funcionalidade do projeto com o trabalho 
em andamento e com prazos e recursos limitados; 
- Não-envolvimento do usuário final: o ponto de vista 
do usuário final não é incorporado na funcionalidade 
e usabilidade do produto;
MITOS NO DESENVOLVIMENTO DE SOFTWARE
O problema de atraso no cronograma pode ser resolvido 
aumentando a equipe;
Todos os programadores são iguais;
Todos os programadores experientes têm a mesma 
habilidade;
O programa está quase pronto … O programa está 95% pronto;
Para iniciar a programação basta uma identificação geral dos objetivos. Os 
detalhes podem ser identificados depois;
As mudanças no software podem ser feitas rapidamente porque o software 
é flexível;
Enquanto não se tem um programa “rodando” não é possível avaliar a sua 
qualidade;
O único produto de um projeto de desenvolvimento de software é um 
programa funcionando.
Conceitos de PDS
Problemas no Desenvolvimento de Software

Continue navegando