Beruflich Dokumente
Kultur Dokumente
i
i
O
(quando libera o potencial embutido no hardware)
Técnicas interativas
1 geração de SGBDƍs
a
Bibliotecas de Software
O |!"#
Ô
3
$
Sistemas distribuídos
Redes locais e globais
Uso generalizado de
microprocessadores - produtos
inteligentes
Hardware de baixo custo
Impacto de consumo
Ô
3
V
V VV
VV
Tecnologias orientadas o objetos
Sistemas especialistas e software de
inteligência artificial usados na prática
Software de rede neural artificial
Computação Paralela
Internet
#
Î habilidade em construir software deixa a desejar em relação
ao potencial do hardware
Î construção de software não é rápida o suficiente para
atender as necessidades do mercado
Î sociedade depende cada vez mais de software confiável;
quando ele falha, podem ocorrer gastos enormes e desgaste
de muitos profissionais para arrumá-lo
i esforço para construir software confiável e de qualidade é
muito grande
i suporte aos programas existentes é apoiado por projetos
pobres e recursos inadequados
ü
não se desgasta mas se deteriora
(
!
!
[
"
Î
#$
% j j
j
&' ( ' ) *' Î
% )' * % Î j
% '+ (, % ' &' j
' +- ' + Î* Î
' ) #.( & j
&' % ) .(Î & * j
j
'
Î
&' +(' -/+%Î
j
Î * ( % Î j
j
[
Refere-se a um conjunto de problemas
encontrados no desenvolvimento de
software
3
)Não dedicamos tempo para coletar dados sobre o
processo de desenvolvimento de software
)Sem nenhuma indicação sólida de produtividade,
não podemos avaliar com precisão a eficácia de
novas ferramentas, métodos ou padrões
[
3
)is projetos de desenvolvimento de
software normalmente são efetuados
apenas com um vago indício das
exigências do cliente
[
3
Só recentemente começam a surgir conceitos
quantitativos sólidos de garantia de qualidade
de software
3 !
"
Î tarefa de manutenção devora o orçamento
destinado ao software
Î facilidade de manutenção não foi enfatizada
como um critério importante
[
V
a
a
%
+++
[
[
Gerentes sem nenhum background em software
is profissionais da área de software têm
recebido pouco treinamento formal em novas
técnicas para o desenvolvimento de software
Resistência a mudanças
[
[
(
è
(administrativos)
Já temos um manual repleto de padrões e
procedimentos para a construção de
software. Isso não oferecerá ao meu pessoal
tudo o que eles precisam saber?
Realidade:
Será que o manual é usado?
is profissionais sabem que ele existe?
Ele reflete a prática moderna de desenvolvimento de
software?
Ele é completo?
è
(administrativos)
Realidade:
É preciso muito mais do que os mais recentes
computadores para se fazer um desenvolvimento de
software de alta qualidade.
è
(administrativos)
Realidade:
i desenvolvimento de software não é um processo
mecânico igual à manufatura.
Îcrescentar pessoas em um projeto torna-o ainda
mais atrasado. Pessoas podem ser acrescentadas,
mas somente de uma forma planejada.
è
(cliente)
Realidade:
Uma mudança, quando solicitada tardiamente num
projeto, pode ser maior do que mais do que uma
ordem de magnitude mais dispendiosa do que a
mesma mudança solicitada nas fases iniciais.
Realidade:
is dados da indústria indicam que entre 50 e
70% de todo esforço gasto num programa
serão despendidos depois que ele for entregue
pela primeira vez ao cliente.
è
(profissional)
&
-
é 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 [SièèERVILLE]
o estabelecimento e uso de sólidos princípios da engenharia
para que se possa obter economicamente um software que seja
confiável e que funcione eficientemente em máquinas reais
[BÎUER]
ü
[
O
[IEEE]
ü
[
.
/
@V V
@
VVV
ü
[
@V V
@
VVV
V V VV V @ @V V
V VV
V
VV V VV
VV V VV @ V
ü
[
@V V
@
VVV
V @V
V
V V V
VVV
V
@ V V
V
!! @
" #V
V
$%
V
VV @ V VV @ V
ü
[
@V V
@
VVV
@V
V
" V@V
V#
& " &
VV &
V
ü
[
@V V
@
VVV
VV
' V V V
((V V V V
V
!! V V @V V V
((
V V )% ) % @ V
|
%
#
O
%
0
%
&
0
|10
i
1 [
1 [
Î 1
77
[2
V
V V
V
@
è 3 4 5 /V V
Î 6
V
# VV
" @ V&
Î
VV
0V
i
[2
77
[2
VV VVV
@ V&
V
@V & (
è 3 4 5
Î 6
@V1V V
Î
è
V
V
è
Ô
[
8
è
& %
%
1 %
&
1
,
0
#
&
&
0
$
0
&
è
ibjetivos
Îuxiliar no processo de produção 8
3 "
"
Î 7
03
3
3
3
3 3 4
7
7
4
Î
7 "3
3
9:
4
è
9
è
i V @
2
è
#
2
,
i 2
&3
4
i 2
,
i 2 #O
i 2
i
i
i 2
i O
i 2
2
|
i !
5
è
;
5
Ciclo de Vida Clássico ou èodelo Cascata
O modelo mais antigo e o mais
amplamente usado da engenharia de
software
O modelado em função do ciclo da
engenharia convencional
O requer uma abordagem sistemática,
seqüencial ao desenvolvimento de
software
è
;
5
Ô
!"
%
&
(
!2#
Ô «
"
#
#
'
$
$
"
%
& « J
(
Î è
;
5
#674
O
!
O
Ô
|!"#
«
#
'
$
%
& «
%
"
#
(
#
!&
« 3
Î è
;
5
,
!
«
$
Ô '
#
#
'
$
% « (
&
&)
O Ô
8
(
O
O 8
,
O
Î è
;
5
O|#9:
«
'
Ô
$ &&
# *+
'
$
' !
%
&
(
Î è
;
5
TESTES
[%)
Ô
« ,&
#
#
'
$ &
% '
&
«
(
!#
(
&
-
Î è
;
5
2#6!69:
Ô
«
#
&
'
$
%
«
)
OO #
&
OO
O
(
O
OO
V
.
V
V
i projetos reais raramente seguem o fluxo seqüencial que o modelo
propõe
Ô
V
i processo que possibilita que o desenvolvedor
crie um modelo do software que deve ser
construído.
i *
serve como
idealmente, o modelo 3 *
um mecanismo para identificar os requisitos
de software.
i apropriado para quando o cliente definiu um
conjunto de objetivos gerais para o software,
mas não identificou requisitos de entrada,
processamento e saída com detalhes.
V
V
V5
6
6
V
@
2
<
% V V V
i
@
desenvolvedor e
2 cliente definem os
objetivos gerais do
software, identificam
< quais requisitos são
<
conhecidos e as áreas
<
que necessitam de
definições adicionais
$
% V V V
@
[
implementação rápida do
2 projeto
(78V
% V .+%'
.V6
9
V @0@V V @,
6
6
VV VVV
V , 9
V
@V
6
:
V @V
VV:
VV@V :
V V VVV@V V:
V
V V
V:
@
V
% V .+%'
.V V 9
V @0@V @V@V
6
V
@V
"
V " V
#
V VVV V6
!
V @
VV V
VV
2
V
VV" @
V V
V
V
V
V
@
V
% V .+%'
.V
9
V " V @
6
V @V VV @0
V @V
#VV
V VV@ 6
!
V
VV V
,
V
# VV
V V VV " V
V
V
@
V
% V .+%'
V VV
V 9
V +%'V
6
V VV !V
V
V @ V@V
V&
V V
V 2
V
V
# !
@V V V V VV
V V VV VVV @ V
V
V
@
V
% V .+%'
:
: Ô
: è [
:
[
.
V
combina elementos do èodelo Linear com a
filosofia da Prototipação
aplica seqüências lineares numa abordagem
de ƏsaltosƐ à medida que o tempo progride
Cada seqüência linear produz um
incremento do software (proc. de texto)
i processo se repete até que um produto
completo seja produzido
Difere da Prototipação pois a cada
incremento produz uma versão operacional
do software
.
V
Ô !
"
V
# $ % &
V
# $ % &
$ &
# %
V
. V
iengloba a natureza iterativa da , com os
aspectos sistemáticos e controlados do 2
4
2 Î
[
[
Ô
Î
[
[
% V . V
2 Î
)
V
9
V@V V VV V
V@ V [
V
[
Ô
V"V 9
V@V V VV@
&@
V
V @V, "
Î
[
%# +
9 [
V@V V VV@VV V
V
VV9
V@V V VV
VV V, VV
V
) +V 9
V@V V VV
& V& VVV V #0&
V
V
%VV
9
V@V V VV @V
1
V VVVVV V V
@ V
VV V@V VV VV V@V VV
. V 3
i a a aaa a a
a
i a a
a
a aa
a
a
.. V
)
0 V
V
V
V
V
2
Ô
[
Î
[
V
2
.'
)
ié representado como uma série de grandes
atividades técnicas, tarefas e seus estados
associados
"
..
-V
& o '
Ô)
*$ +
cliente descreve os "
,-.
requisitos os quais são &
traduzidos para um protótipo
operacional
)
Ô Ô Ô
Ô
a
aaa
aa
aa
a
a a
a
rrrrr