Você está na página 1de 13

1

Sof t w ar e e Engenhar i a de
Sof t w ar e
Engenhar i a de Sof t w ar e
Roger S. Pr essman
Capt ul o 1
Software :
1 - INSTRUES (programas de computador)
que, quando executadas, produzem a funo e o
desempenho desejados;
2 - ESTRUTURAS DE DADOS
que possibilitam que os programas manipulem
adequadamente a informao; e
3 - DOCUMENTOS
que descrevem a operao e o uso dos
programas.
Caractersticas do Software
1- O software desenvolvido ou projetado
por engenharia, no manufaturado no
sentido clssico.
2- Software no se desgasta, mas se
deteriora.
3- A maioria dos softwares feita sob
medida em vez de ser montada a partir de
componentes existentes.
Curva de falhas para o hardware
tempo
desgaste
mortalidade
infantil
ndice
de
falhas
Curva de falhas do software
ndice de
falhas
mudana
curva real
curva idealizada
(continua na mesma
taxa at a
obsolescncia)
tempo
Apl i c a es do sof t w ar e
SOFTWARE BSICO - coleo de programas escritos
para dar apoio a outros programas.
SOFTWARE DE TEMPO REAL - software que
monitora, analisa e controla eventos do mundo real.
SOFTWARE COMERCIAL - facilita as operaes
comerciais e as tomadas de decises administrativas.
SOFTWARE CIENTFICO E DE ENGENHARIA -
caracterizado por algoritmos de processamento de
nmeros.
2
Apl i c a es do sof t w ar e
SOFTWARE EMBUTIDO - usado para controlar
produtos e sistemas para os mercados industriais e de
consumo
SOFTWARE DE COMPUTADOR PESSOAL -
envolve processamento de textos, planilhas eletrnicas,
diverses, etc.
SOFTWARE DE INTELIGNCIA ARTIFICIAL - faz
uso de algoritmos no-numricos para resolver problemas
complexos que no sejam favorveis computao ou
anlise direta.
Evol u o do sof t w ar e
(1950 - 1965)
; O hardware sofreu contnuas
mudanas;
; O software era uma arte "secundria"
para a qual havia poucos mtodos
sistemticos;
; O hardware era de propsito geral;
; O software era especfico para cada
aplicao;
; No havia documentao.
Evol u o do sof t w ar e
(1965 - 1975)
+ Multiprogramao e sistemas multiusurios;
+ Tcnicas interativas;
+ Sistemas de tempo real;
+ 1a. gerao de SGBDs;
+ Produto de sofwtare - software houses;
+ Bibliotecas de Software;
+ Cresce nro. de sistemas baseado em
computador;
+ Manuteno quase impossvel;
..... CRISE DE ..... CRISE DE SOFTWARE. SOFTWARE.
Evol u o do sof t w ar e
(1975 - 1985)
C Sistemas distribudos;
C Redes locais e globais;
C Uso generalizado de
microprocessadores - produtos
inteligentes;
C Hardware de baixo custo;
C C Impacto de consumo. Impacto de consumo.
Evoluo do software
(Quarta era do software: atualidade)
- Tecnologias orientadas o objetos;
- Sistemas especialistas e software de
inteligncia artificial usados na prtica;
- Software de rede neural artificial;
- Computao Paralela;
- Internet.
crise de software
Refere-se a um conjunto de problemas
encontrados no desenvolvimento de
software:
1- As estimativas de prazo e de custo freqentemente so As estimativas de prazo e de custo freqentemente so
imprecisas. imprecisas.
No dedicamos tempo para coletar dados sobre o
processo de desenvolvimento de software.
Sem nenhuma indicao slida de produtividade,
no podemos avaliar com preciso a eficcia de
novas ferramentas, mtodos ou padres.
3
crise de software
2- A produtividade das pessoas da rea de software A produtividade das pessoas da rea de software
no tem acompanhado a demanda no tem acompanhado a demandapor por seus seus
servios. servios.
Os projetos de desenvolvimento de software
normalmente so efetuados apenas com um
vago indcio das exigncias do cliente.
crise de software
3- A qualidade de software s vezes menos que A qualidade de software s vezes menos que
adequada. adequada.
S recentemente comeam a surgir conceitos
quantitativos slidos de garantia de qualidade
de software.
4- O software existente muito difcil de manter. O software existente muito difcil de manter.
A tarefa de manuteno devora o oramento
destinado ao software.
A facilidade de manuteno no foi enfatizada
como um critrio importante.
crise de software
- -estimativas de prazo e de custo estimativas de prazo e de custo
- -produtividade das pessoas produtividade das pessoas
- -qualidade de software qualidade de software
- -software difcil de manter software difcil de manter
Causas dos pr obl emas assoc i ados
crise de software
1. PRPRIO CARTER DO SOFTWARE 1. PRPRIO CARTER DO SOFTWARE
O software um elemento de sistema
lgico e no fsico. Conseqentemente,
o sucesso medido pela qualidade de
uma nica entidade e no pela
qualidade de muitas entidades
manufaturadas.
O software no se desgasta, mas se O software no se desgasta, mas se
deteriora deteriora
Causas dos pr obl emas assoc i ados
crise de software
2. FALHAS DAS PESSOAS RESPONSVEIS PELO 2. FALHAS DAS PESSOAS RESPONSVEIS PELO
DESENVOLVIMENTO DE SOFTWARE DESENVOLVIMENTO DE SOFTWARE
Gerentes sem nenhum background em
software;
Os profissionais da rea de software tm
recebido pouco treinamento formal em
novas tcnicas para o desenvolvimento de
software;
Resistncia s mudanas.
Causas dos pr obl emas assoc i ados
crise de software
3. MITOS DO SOFTWARE 3. MITOS DO SOFTWARE
Propagaram desinformao e confuso
4 4administrativos administrativos
4 4cliente cliente
4 4profissional profissional
4
Mi t os do sof t w ar e (ADMI NI STRATI VOS)
(1) (1) Mito Mito: : J temos um manual repleto de
padres e procedimentos para a construo
de software. Isso no oferecer ao meu
pessoal tudo o que eles precisam saber?
Realidade: Realidade: Ser que o manual usado?
Os profissionais sabem que ele existe?
Ele reflete a prtica moderna de desenvolvimento
de software? Ele completo?
Mi t os do sof t w ar e (ADMI NI STRATI VOS)
(2) (2) Mito Mito: : Meu pessoal tem ferramentas de
desenvolvimento de software de ltima
gerao; afinal lhes compramos os mais
novos computadores.
Realidade Realidade: : preciso muito mais do que os
mais recentes computadores para se fazer
um desenvolvimento de software de alta
qualidade.
Mi t os do sof t w ar e (ADMI NI STRATI VOS)
(3) (3) Mito Mito: : Se ns estamos atrasados nos
prazos, podemos adicionar mais
programadores e tirar o atraso.
Realidade Realidade: : O desenvolvimento de software
no um processo mecnico igual
manufatura. Acrescentar pessoas em um
projeto torna-o ainda mais atrasado.
Pessoas podem ser acrescentadas, mas
somente de uma forma planejada.
Mi t os do sof t w ar e (CLI ENTE)
(1) (1) Mito Mito: : Uma declarao geral dos objetivos
suficiente para se comear a escrever
programas - podemos preencher os detalhes
mais tarde.
Realidade Realidade: : Uma definio inicial ruim a principal causa de
fracassos dos esforos de desenvolvimento de software.
fundamental uma descrio formal e detalhada do domnio da
informao, funo, desempenho, interfaces, restries de
projeto e critrios de validao.
Mi t os do sof t w ar e (CLI ENTE)
(2) (2) Mito Mito: : Os requisitos de projeto
modificam-se continuamente, mas as
mudanas podem ser facilmente
acomodadas, porque o software
flexvel.
Realidade Realidade: : Uma mudana, quando solicitada
tardiamente num projeto, pode ser mais do
que uma ordem de magnitude mais
dispendiosa, do que a mesma mudana
solicitada inicialmente.
FASES CUSTO DE MANUTENO
DEFINIO 1 x
DESENVOLVIMENTO 1.5 - 6x
MANUTENO 60 - 100x
magnitude das mudanas magnitude das mudanas
5
Mi t os do sof t w ar e (PROFI SSI ONAL)
(1) (1) Mito Mito: : Assim que escrevermos o
programa e o colocarmos em
funcionamento nosso trabalho estar
completo.
Realidade Realidade: : Os dados da indstria indicam que
entre 50 e 70% de todo esforo gasto num
programa sero despendidos depois que ele
for entregue pela primeira vez ao cliente.
Mi t os do sof t w ar e (PROFI SSI ONAL)
(2) (2) Mito Mito: : Enquanto no tiver o programa
funcionando, eu no terei realmente
nenhuma maneira de avaliar sua
qualidade.
Realidade Realidade: : Uma das formas mais efetivas
para se avaliar a qualidade pode ser
aplicada desde o incio do projeto:
Revises Tcnicas Formais. Revises Tcnicas Formais.
Mi t os do sof t w ar e (PROFI SSI ONAL)
(3) (3) Mito Mito: : A nica coisa a ser entregue em
um projeto bem-sucedido o programa
funcionando.
Realidade Realidade: : Um programa funcionando
somente uma parte de uma Configurao de
Software que inclui todos os itens de
informao produzidos durante a construo
e manuteno do software.
abrange um conjunto de trs
elementos fundamentais:
Mtodos Mtodos, , Ferramentas Ferramentas e e
Procedimentos Procedimentos. .
Engenharia de Software
MTODOS MTODOS: proporcionam os detalhes de
como fazer para construir o software:
Planejamento e estimativa de projeto
Anlise de requisitos de software e de
sistemas;
Projeto da estrutura de dados;
Algoritmo de processamento;
Codificao;
Teste; e
Manuteno.
Engenharia de Software
FERRAMENTAS FERRAMENTAS: do suporte automatizado aos
mtodos.
=Existem atualmente ferramentas para
sustentar cada um dos mtodos;
=Quando as ferramentas so integradas
estabelecido um sistema de suporte ao
desenvolvimento de software chamado CASE -
Computer AidedSoftware Engineering.
6
Engenharia de Software
PROCEDIMENTOS PROCEDIMENTOS: constituem o elo de ligao
entre os mtodos e ferramentas:
C Seqncia em que os mtodos sero
aplicados;
C Produtos que se exige que sejam
entregues;
C Controles que ajudam assegurar a
qualidade e coordenar as alteraes;
C Marcos de referncia que possibilitam
administrar o progresso do software.
ENGENHARIA DE SOFTWARE ENGENHARIA DE SOFTWARE
Conjunto de etapas etapas que envolve
MTODOS MTODOS, FERRAMENTAS FERRAMENTAS e PROCEDIMENTOS PROCEDIMENTOS.
Essas etapas so conhecidas como
componentes de CICLOS DE VIDA DE CICLOS DE VIDA DE
SOFTWARE SOFTWARE; ;
Alguns ciclos de vida mais conhecidos so:
Ciclo de Ciclo de Vida Clssico Vida Clssico, Prototipao Prototipao, , Modelo Modelo
Espiral Espiral e Tcnicas de 4 Tcnicas de 4
a a
Gerao. Gerao.
Para escolha de um Ciclo de Vida de
software
Cnatureza do projeto e da aplicao;
Cmtodos e ferramentas a serem
usados;
Ccontroles e produtos que precisam
ser entregues.
Ciclo de Vida Clssico (Cascata)
modelo mais antigo e o mais
amplamente usado da engenharia de
software;
modelado em funo do ciclo da
engenharia convencional;
requer uma abordagem sistemtica,
seqencial ao desenvolvimento de
software.
Cascata Cascata
Engenharia de
Sistemas
Anlise de
Requisitos
Projeto
Codificao
Testes
Manuteno
At i vi dades do Ci c l o de Vi da
Cl ssi c o
ANLISE E ENGENHARIA DE ANLISE E ENGENHARIA DE
SISTEMAS SISTEMAS
envolve a coleta de requisitos em
nvel do sistema, pequena
quantidade de projeto e anlise de
alto nvel
viso essencial quando o software
deve fazer interface comoutros
elementos (hardware, pessoas ebanco
dedados)
Engenharia de
Sistemas
Anlise de
Requisitos
Projeto
Codificao
Testes
Manuteno
7
Engenharia de
Sistemas
Anlise de
Requisitos
Projeto
Codificao
Testes
Manuteno
At i vi dades do Ci c l o de Vi da
Cl ssi c o
ANLISE DE REQUISITOS DE ANLISE DE REQUISITOS DE
SOFTWARE SOFTWARE
processo de coleta dos requisitos
intensificado e concentrado
especificamente no software
deve-se compreender o domnio
da informao, funo,
desempenho e interfaces exigidos
os requisitos (parao sistemaeparao
software) so documentados e
revistos como cliente
At i vi dades do Ci c l o de Vi da
Cl ssi c o
PROJ ETO PROJ ETO
traduo dos requisitos do software para um
conjunto de representaes que podemser
avaliadas quanto qualidade, antes que a
codificao se inicie
se concentra em4 atributos do programa:
Estrutura de Dados,
Arquitetura de Software,
Detalhes Procedimentais e
Caracterizao de Interfaces
Engenharia de
Sistemas
Anlise de
Requisitos
Projeto
Codificao
Testes
Manuteno
At i vi dades do Ci c l o de Vi da
Cl ssi c o
CODIFICAO CODIFICAO
traduo das representaes
do projeto para uma linguagem
artificial resultando em
instrues executveis pelo
computador
Engenharia de
Sistemas
Anlise de
Requisitos
Projeto
Codificao
Testes
Manuteno
Engenharia de
Sistemas
Anlise de
Requisitos
Projeto
Codificao
Testes
Manuteno
At i vi dades do Ci c l o de Vi da
Cl ssi c o
TESTES TESTES
Concentram-se:
nos aspectos lgicos internos
do software, garantindo que
todas as instrues tenhamsido
testadas
nos aspectos funcionais
externos, para descobrir erros e
garantir que a entrada definida
produza resultados que
concordemcomos esperados.
At i vi dades do Ci c l o de Vi da
Cl ssi c o
MANUTENO MANUTENO
o software dever sofrer mudanas
depois que for entregue ao cliente
Engenharia de
Sistemas
Anlise de
Requisitos
Projeto
Codificao
Testes
Manuteno
causas das mudanas:
erros, adaptao do software
para acomodar mudanas em
seu ambiente externo e
exigncia do cliente para
acrscimos funcionais e de
desempenho
Problemas com o Ciclo de Vida Clssico
e
seqencial que o modelo prope;
elogo no in cio dif cil estabelecer
explicitamente todos os requisitos; no comeo dos
eo cliente deve ter pacincia; uma verso
executvel do software s fica dispon vel numa
etapa avanada do desenvolvimento.
8
- Embora o Ciclo de Vida Clssico Embora o Ciclo de Vida Clssico
tenha tenha fragilidades fragilidades, ele , ele
significativamente melhor do que uma significativamente melhor do que uma
abordagemcasual ao desenvolvimento abordagemcasual ao desenvolvimento
de software. de software.
Prototipao
+processo que possibilita que o desenvolvedor
crie um modelo do software que deve ser
construdo.
+ idealmente, o modelo (prottipo prottipo) serve como
um mecanismo para identificar os requisitos
de software.
+apropriado para quando o cliente definiu um
conjunto de objetivos gerais para o software,
mas no identificou requisitos de entrada,
processamento e sada com detalhes.
Prototipao Prototipao
construo
produto
refinamento
prottipo
avaliao
prottipo
construo
prottipo
projeto
rpido
obteno
dos
requisitos
At i vi dades da Pr ot ot i pa o
OBTENO DOS REQUISITOS: OBTENO DOS REQUISITOS:
desenvolvedor e cliente
definem os objetivos gerais do
software, identificam quais
requisitos so conhecidos e as
reas que necessitam de
definies adicionais.
PROJ ETO RPIDO: PROJ ETO RPIDO: representao
dos aspectos do software que
so visveis ao usurio
(abordagens de entrada e
formatos de sada).
construo
produto
refinament
o prottipo
avaliao
prottipo
constru
o
prottipo
projeto
rpido
obteno
dos
requisitos
At i vi dades da Pr ot ot i pa o
CONSTRUO PROTTIPO: CONSTRUO PROTTIPO:
implementao do
projeto rpido.
AVALIAO DO PROTTIPO: AVALIAO DO PROTTIPO:
cliente e desenvolvedor
avaliam o prottipo.
construo
produto
refinamento
prottipo
avaliao
prottipo
construo
prottipo
projeto
rpido
obteno
dos
requisitos
At i vi dades da Pr ot ot i pa o
REFINAMENTO DOS REFINAMENTO DOS
REQUISITOS: REQUISITOS: cliente e
desenvolvedor refinam os
requisitos do software a
ser desenvolvido. Ocorre
neste ponto umprocesso
de iterao iterao que pode
conduzir a atividade 1 at
que as necessidades do
cliente sejam satisfeitas e
o desenvolvedor
compreenda o que precisa
ser feito.
construo
produto
refinamento
prottipo
avaliao
prottipo
construo
prottipo
projeto
rpido
obteno
dos
requisitos
9
At i vi dades da Pr ot ot i pa o
CONSTRUO PRODUTO: CONSTRUO PRODUTO:
identificados os requisitos,
o prottipo deve ser
descartado descartado e a verso de
produo deve ser
construda considerando os
critrios de qualidade.
construo
produto
refinamento
prottipo
avaliao
prottipo
construo
prottipo
projeto
rpido
obteno
dos
requisitos
Problemas com a Prototipao
ecliente no sabe que o software que ele v no
considerou, durante o desenvolvimento, a
qualidade global e a manutenibilidade a longo
prazo. No aceita bema idia que a verso final do software vai
ser construda e "fora" a utilizao do prottipo como produto final
edesenvolvedor freqentemente faz uma
implementao comprometida (utilizando o que
est disponvel) com o objetivo de produzir
rapidamente um prottipo. Depois de umtempo ele
familiariza comessas escolhas, e esquece que elas no so apropriadas
para o produto final.
-ainda que possamocorrer problemas, a
prototipao umciclo de vida eficiente.
-a chave definir-se as regras do jogo logo no
comeo.
-o cliente e o desenvolvedor devemambos
concordar que o prottipo seja construdo para
servir como ummecanismo a fimde definir os
requisitos.
Ciclo de Vida em Espiral
Eengloba as melhores caractersticas do ciclo de vida
Clssico e da Prototipao, adicionando um novo
elemento: a Anlise de Risco;
Esegue a abordagem de passos sistemticos do Ciclo
de Vida Clssico incorporando-os numa estrutura
iterativaque reflete mais realisticamente o mundo real;
Eusa a Prototipao, em qualquer etapa da evoluo
do produto, como mecanismo de reduo de riscos.
Espiral Espiral
deciso de continuar ou no
avaliao
do cliente engenharia
anlise dos
riscos
planejamento
At i vi dades do Ci c l o de Vi da em Espi r al
PLANEJ AMENTO: PLANEJ AMENTO: determinao dos objetivos,
alternativas e restries;
ANLISE DE RISCO: ANLISE DE RISCO: anlise das alternativas e
identificao / resoluo dos riscos;
CONSTRUO: CONSTRUO: desenvolvimento do produto no nvel
seguinte;
AVALIAO DO CLIENTE: AVALIAO DO CLIENTE: avaliao do produto e
planejamento das novas fases.
10
Comentrios sobre o Ciclo de Vida
em Espiral
, atualmente, a abordagem mais realstica
para o desenvolvimento de software em grande
escala;
usa uma abordagem que capacita o
desenvolvedor e o cliente a entender e reagir
aos riscos em cada etapa evolutiva;
pode ser difcil convencer os clientes que uma
abordagem "evolutiva" controlvel;
exige considervel experincia na determinao
de riscos e depende dessa experincia para ter
sucesso;
Comentrios sobre o Ciclo de Vida
em Espiral
o modelo relativamente novo e no
tem sido amplamente usado; demorar
muitos anos at que a eficcia desse
modelo possa ser determinada com
certeza absoluta.
Tcnicas de 4
a
Gerao
Concentra-se na capacidade de se especificar o
software a uma mquina em um nvel que
esteja prximo linguagem natural.
Engloba um conjunto de ferramentas de
software que possibilitam que:
= o sistema seja especificado em uma linguagem de sistema seja especificado em uma linguagem de
alto nvel alto nvel e
=o cdigo fonte seja gerado automaticamente cdigo fonte seja gerado automaticamente a
partir dessas especificaes
4 4
a a
Gerao Gerao
Obteno dos
Requisitos
Estratgia do
Projeto
Implementao
usando 4GL
Testes
Ferramentas do ambiente de
desenvolvimento de software de 4
a
Gerao
O ambiente de desenvolvimento de software que sustenta o
ciclo de vida de 4
a
gerao inclui as ferramentas:
- linguagens no procedimentais para consulta de
banco de dados;
- gerao de relatrios;
- manipulao de dados;
- interao e definio de telas;
- gerao de cdigos;
- capacidade grfica de alto nvel; e
- capacidade de planilhas eletrnicas.
At i vi dades das Tc ni c as de 4
a
Ger a o
OBTENO DOS REQUISITOS: OBTENO DOS REQUISITOS: o
cliente descreve os requisitos
os quais so traduzidos para
um prottipo operacional.
Obteno dos
Requisitos
Estratgia do
Projeto
Implementa
o usando 4GL
Testes o cliente pode estar inseguro quanto aos requisitos;
o cliente pode ser incapaz de especificar as informaes
de um modo que uma ferramenta 4GL possa consumir;
as 4GLs atuais no so sofisticadas suficientemente
para acomodar a verdadeira "linguagem natural.
11
At i vi dades das Tc ni c as de 4
a
Ger a o
ESTRATGIA DE "PROJ ETO": ESTRATGIA DE "PROJ ETO": para
pequenas aplicaes possvel
mover-se do passo de Obteno Obteno
dos Requisitos dos Requisitos para o passo de
Implementao usando uma
Linguagem de 4a. Gerao; Linguagem de 4a. Gerao;
Para grandes projetos
necessrio desenvolver uma
estratgia de projeto. De outro
modo ocorrero os mesmos
problemas encontrados quando
se usa abordagem convencional
(baixa qualidade).
Obteno dos
Requisitos
Estratgia do
Projeto
Implementa
o usando 4GL
Testes
At i vi dades das Tc ni c as de 4
a
Ger a o
IMPLEMENTAO USANDO 4GL: IMPLEMENTAO USANDO 4GL:
os resultados desejados so
representados de modo que
haja gerao automtica de
cdigo. Deve existir uma
estrutura de dados com
informaes relevantes e que
seja acessvel pela 4GL.
Obteno dos
Requisitos
Estratgia do
Projeto
Implementa
o usando 4GL
Testes
TESTE: TESTE: o desenvolvedor deve efetuar testes e
desenvolver uma documentao significativa. O
software desenvolvido deve ser construdo de
maneira que a manuteno possa ser efetuada
prontamente.
Comentrios sobre as Tcnicas de 4
a
Gerao
PROPONENTES: PROPONENTES: reduo dramtica no tempo de
desenvolvimento do software (aumento de
produtividade).
OPONENTES OPONENTES: as 4GL atuais no so mais fceis de
usar do que as linguagens de programao.
=O cdigo fonte produzido ineficiente;
=A manutenibilidade de sistemas usando tcnicas 4GL
ainda questionvel.
Mudana na natureza de
desenvolvimento de software
mtodos
convencionais
aplicao de
tcnicas de 4
a
Gerao
demanda
global
demanda por
software
1970 1980 1990 2000
Combinao dos Mtodos de Ciclo de Vida
obteno dos requisitos
preliminares
modelo espiral tcnicas
4G
protomodelagem anlise dos
requisitos
projeto
codificao
testes
manuteno
protomodelagem
no. interao
protomodelagem
no. interao
tcnicas
4G
modelo espiral
no. interao
sistema completo
Engenharia de Software
uma viso genrica
O processo de desenvolvimento de processo de desenvolvimento de
software softwarecontm 3 fases genricas,
independentes do modelo de engenharia de
software escolhido:
DEFINIO DEFINIO,
DESENVOLVIMENTO DESENVOLVIMENTOe
MANUTENO MANUTENO.
12
Engenharia de Software
uma viso genrica
1. Revises
2. Documentao
3. Controle de
Mudanas
CCCooonnnssstttrrruuuooo
1. Entender
2. Modificar
3. Revalidar
Manuteno
mudanas
OOOpppeeerrraaaooo
SSSOOOFFFTTTWWWAAARRREEE
PPPRRROOODDDUUUTTTOOO
AAAtttiiivvviiidddaaadddeeesss dddeee AAApppoooiiiooo
1. Anlise de
Sistema
2. Planejamento
do Projeto
3. Anlise de
Requisitos
Definio
o que
Desenvolvimento
como
1. Projeto de
Software
2. Codificao
3. Teste
=
= =
'
Engenharia de Software
uma viso genrica
FASE DE DEFINIO: FASE DE DEFINIO: o que o que ser desenvolvido.
= =Anlise do Sistema Anlise do Sistema: : define o papel de cada elemento num
sistema baseado em computador, atribuindo em ltima anlise, o
papel que o software desempenhar.
= =Planejamento do Projeto de Software Planejamento do Projeto de Software: : assim que o escopo
do software estabelecido, os riscos so analisados, os recursos
so alocados, os custos so estimados e, tarefas e programao de
trabalho definidas.
= =Anlise de Requisitos Anlise de Requisitos: : o escopo definido para o software
proporciona uma direo, mas uma definio detalhada do domnio
da informao e da funo do software necessria antes que o
trabalho inicie.
Engenharia de Software
uma viso genrica
DESENVOLVIMENTO DESENVOLVIMENTO: : como como o software vai ser
desenvolvido.
= = Projeto de Software Projeto de Software: : traduz os requisitos do software num
conjunto de representaes (algumas grficas, outras tabulares ou
baseadas em linguagem) que descrevem a estrutura de dados, a arquitetura
do software, os procedimentos algortmicos e as caractersticas de
interface.
= = Codificao Codificao: : as representaes do projeto devem ser convertidas
numa linguagem artificial (a linguagem pode ser uma linguagem de
programao convencional ou uma linguagem no procedimental) que
resulte em instrues que possam ser executadas pelo computador.
= = Realizao de Testes do Software Realizao de Testes do Software: : logo que o software
implementado numa forma executvel por mquina, ele deve ser testado
para que se possa descobrir defeitos de funo, lgica e implementao.
Engenharia de Software
uma viso genrica
FASE DE MANUTENO: FASE DE MANUTENO: concentra-se nas
mudanas mudanas que ocorrero depois que o software
for liberado para uso operacional
C Correo
C Adaptao
C Melhoramento Funcional
Engenharia de Software
uma viso genrica
Correo: Correo: mesmo com as melhores atividades de
garantia de qualidade de software, provvel que
o cliente descubra defeitos no software. A
manuteno corretiva muda o software para
corrigir defeitos.
Adaptao: Adaptao: com o passar do tempo, o ambiente
original (por exemplo a CPU, o sistema operacional
e perifricos) para o qual o software foi
desenvolvido provavelmente mudar. A
manuteno adaptativa muda o software para
acomodar mudanas em seu ambiente.
Engenharia de Software
uma viso genrica
Melhoramento Funcional Melhoramento Funcional: : a medida que o
software usado, o cliente/ usurio
reconhecer funes adicionais que
oferecero benefcios.
A manuteno manuteno perfectiva perfectiva estende o software
para alm de suas exigncias funcionais
originais.
13
Engenharia de Software
uma viso genrica
ATIVIDADES DE PROTEO ATIVIDADES DE PROTEO - - as fases e etapas correlatas
descritas so complementadas por uma srie de
atividades de proteo.
Revises Revises: : efetuadas para garantir que a qualidade seja
mantida medida que cada etapa concluda.
Documentao Documentao: : desenvolvida e controlada para
garantir que informaes completas sobre o software
estejam disponveis para uso posterior.
Controle das Mudanas Controle das Mudanas: : institudo de forma que as
mudanas possam ser aprovadas e acompanhadas.
Concluso
ENGENHARIA DE SOFTWARE ENGENHARIA DE SOFTWARE pode ser vista
como uma abordagem de desenvolvimento de
software elaborada com disciplina e mtodos
bem definidos.
.....a construo por mltiplas
pessoas de um software de
mltiplas verses
[Parnas 1987]
Pr obl emas sel ec i onados
=1.1. Quais dos paradigmas da engenharia
de software apresentados seriam os mais
indicados s suas aplicaes de software
(futuro projeto de estgio ou da
disciplina)? Por qu?
=1.2. Desenvolva um prottipo, em papel
ou eletrnico usando uma linguagem de
sua preferncia, do software anterior.
Pr obl emas sel ec i onados
=1.3. Pesquise duas ou trs linguagens de
quarta gerao e apresente uma
discusso resumida. Quo ampla a sua
aplicabilidade?
Bi bl i ogr af i a
=PRESSMAN, R. S. Engenharia de
Software. 3.ed. So Paulo: Makron Books,
1995.
=Material Didtico da Disciplina SCE-186 do
ICMC-USP do segundo semestre de 1998.

Você também pode gostar