Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


ES - Visão Geral, Notas de estudo de Cultura

Visão geral sobre projetos de software

Tipologia: Notas de estudo

2011

Compartilhado em 27/04/2011

roberto-maia-11
roberto-maia-11 🇧🇷

4 documentos

1 / 51

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Roberto Loscio 1
Análise e Projeto de Software
Visão Geral
Universidade Estadual do Ceará
Centro de Ciências e Tecnologia
Curso de Bacharelado em CC
Roberto Loscio
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33

Pré-visualização parcial do texto

Baixe ES - Visão Geral e outras Notas de estudo em PDF para Cultura, somente na Docsity!

Análise e Projeto de Software

Visão Geral

Universidade Estadual do Ceará Centro de Ciências e Tecnologia Curso de Bacharelado em CC Roberto Loscio

Introdução

Praticamente todos os países, hoje em dia,

dependem de complexos sistemas com base em

computadores

Cada vez mais os produtos incorporam, de algum

modo, computadores e software de controle

Nesses sistemas, o software representa uma

grande e crescente proporção do custo total do

sistema. Por isso, produzir software de um modo

que apresente uma boa relação custo-benefício é

essencial para o funcionamento das economias

nacionais e internacionais

Introdução (cont.)

 A engenharia de software ainda é uma disciplina

relativamente nova

A noção de engenharia de software surgiu pela

primeira vez em 1968, em uma conferência

organizada para discutir a chamada crise do software

 Essa crise resultava diretamente da introdução

(naquela época) do poderoso hardware de

computador de terceira geração, cuja capacidade

tornava viáveis aplicações até então inimagináveis

Por outro lado, o software resultante era bem maior e

mais complexo que os sistemas de software

antecessores

Introdução (cont.)

 A experiência inicial de construção desses sistemas mostrou

que uma abordagem informal do desenvolvimento de software

não era o bastante

 Projetos importantes sofriam atrasos, às vezes, de alguns anos.

 Por apresentarem custos muito maiores do que os inicialmente

previstos, eles não eram confiáveis, eram de difícil manutenção

e tinham desempenho inferior

 O desenvolvimento de software estava em crise

 Os custos de hardware caíam, enquanto os de software subiam

rapidamente

 Novas técnicas e novos métodos eram necessários para

controlar a complexidade inerente aos grandes sistemas de

software

Introdução (cont.)

 À medida que a capacidade de produzir software aumentou, também cresceu a complexidade dos sistemas de software requeridos  (^) Novas tecnologias que resultam da convergência de sistemas de computadores e de comunicação trazem novas questões para os engenheiros de software  Por essa razão e pelo fato de muitas empresas não aplicarem as técnicas de engenharia de software de maneira eficaz, ainda temos problemas  (^) A situação não é tão ruim quanto os pessimistas sugerem, mas, com certeza, há espaço para melhorias

Introdução (cont.)

Houve um grande progresso desde 1968 e o

desenvolvimento da engenharia de software

melhorou de modo marcante o software que se

produz

Tem-se uma compreensão muito melhor das

atividades envolvidas no desenvolvimento de

software

Desenvolvem-se métodos eficazes de

especificação, projeto e implementação de software

Novas notações e ferramentas reduzem o esforço

necessário para produzir sistemas grandes e

complexos

Evolução do software

Hardware: maior desempenho, menor tamanho e custo

Os primeiros anos

  • Orientação batch
  • Distribuição limitada
  • Software customizado

A segunda era

  • Multiusuário
  • Tempo real
  • Banco de Dados
  • Software Houses

A terceira era

  • Sistemas Distribuídos
  • “Inteligência” embutida
  • Hardware de baixo custo

(PCs)

  • workstation
  • Impacto de consumo

A quarta era

  • Tecnologia O. O.
  • Sistemas Especialistas
  • Redes Neurais
  • Computação Paralela

Engenharia de Software (FAQs)

O que é software?

O que é engenharia de software?

Qual a diferença entre engenharia de software e

Ciência da Computação?

Qual a diferença entre engenharia de software e

engenharia de sistemas?

O que é um processo de software?

O que é um modelo de processo de software?

Software

 (^) São programas de computador com a documentação associada e os dados de configuração necessários para fazer com que esses programas operem corretamente  (^) Produtos de Software podem ser desenvolvidos para um cliente em particular ou para um mercado geral  (^) Produtos de Software podem ser  Genéricos – desenvolvidos para serem vendidos para uma rede de clientes diferentes. Ex.: bases de dados, processadores de texto, pacotes de desenho e as ferramentas de gerenciamento de projetos  (^) Sob medida (personalizados) - desenvolvidos para um único cliente de acordo com suas especificações. Ex.: sistemas de controle para dispositivos eletrônicos, sistemas de controle de tráfego aéreo, sistemas escritos para serem compatíveis com um processo de negócios específicos

Software?

(Anneliese von Mayrhauser, 1990)

“ Software is the term used for

computer programs and all

documents associated with them,

such as user manuals ”

Curva de falhas do Software

mudanças

índice de

falhas

curva real

curva idealizada

tempo

Engenharia de Software

Engenharia de software é uma disciplina da

engenharia que se preocupa com todos aspectos da

produção de software

Engenheiros de software devem adotar uma postura

sistemática e organizada para seus trabalhos e utilizar

ferramentas e técnicas apropriadas, dependendo do

problema a ser resolvido, dos obstáculos no

desenvolvimento e dos recursos disponíveis

Diferença entre Engenharia de Software e Ciência da Computação  A Ciência da Computação se preocupa com as teorias e os métodos básicos referentes aos computadores e sistemas de softwares  A engenharia de software se dedica aos problemas práticos da produção de software

Diferença entre Engenharia de Software e Engenharia de Sistemas

Engenharia de sistema com base em computadores se ocupa de todos os aspectos do desenvolvimento e da evolução de sistemas complexos em que o software desempenha papel principal. A Engenharia de software é parte deste processo

Os engenheiros de sistema envolvem-se na especificação do sistema, na definição da sua arquitetura geral e, em seguida, na integração das diferentes partes necessárias para criar o sistema completo