Sei sulla pagina 1di 33

ProcessodoSoftware

Grupodeatividadescoerentespara
especificao,projeto,implementao
etestedesistemasdesoftware.

Objetivos

Introduzirosprocessosdemodelagemde
software
Descreveralgunsmodelosdeprocessosequando
elesdevemserusados
Descreveremlinhasgeraisoprocessomodelo
paraosrequisitosdeengenharia,de
desenvolvimentodesoftare,seutesteeevoluo
IndroduziratecnologiaCASEparaoauxliodos
processosdesoftware

Tpicoscobertos

Modelosdoprocessodesoftware
Iteraoentreosprocessos
Especificaodesoftware
Projetoeimplementaodesoftware
Validaodosoftware
Evoluodosoftware
Processosautomatizadosdedesenvolvimento

Oprocessodosoftware

Umconjuntoestruturadodeatividadesnecessriaspara
desenvolverumsistemadesoftware

Especificao
Projeto
Validao
Evoluo

Ummodelodeprocessodesoftwareumarepresentao
abstratadoprocesso.Elaapresentaumadescriodo
processodealgumasperspectivasparticulares

Modelosgenricosdeprocessosde
software

Omodelocascata(waterfall)

Desenvolvimentoevolucionrio(ouprototipao)

Especificaoedesenvolvimentosointercalados

Modelodesistemaformal

Fasesseparadasedistintasdeespecificaoedesenvolvimento

Ummodelodesistemamatemticoformalmente
transformadonumaimplementao

Desenvolvimentobaseadoemreuso

Osistemaconstrudoapartirdecomponentesexistentes

Waterfallmodel
Requirements
definition
System and
software design
Implementation
and unit testing
Integr ation and
system testing
Operation and
maintenance

ModeloCascata
Sistemtico e seqencial

Waterfallmodelphases

Anlisederequisitosedefinies
Projetodosistemaedosoftware
Implementaoetestedeunidades
Integraoetestesdosistema
Manutenoeoperao
Umadeficinciadomodelocascataa
dificuldadeemacomodarmudanasdepoisqueo
processoseinicia.

AnliseeEngenhariadeSistemas

Estabelecerosrequisitosbsicosparatodosos
sistemasqueenvolvemosoftware,como
hardware,pessoasebancosdedados.
Envolveacoletadosrequisitosemnveldo
sistema,comumapequenaquantidadedeprojeto
eanlisedealtonvel.

AnalisedeRequisitosdeSw

Concentraacoletaderequisitosnosw.
Levacompreensododomniodainformao,a
funo,desempenhoeinterfacesexigidos.
Osrequisitosparaosistemaeparaoswso
documentadoserevistoscomocliente.

Projeto

Estruturadedados
Arquiteturadesw
Detalhesprocedimentais
Caracterizaodainterface
avaliadoantesdecomearaserimplementado
Juntocomasetapasanteriorestornaseparteda
documentaodosistema

Codificao

Projetotraduzidoparaalinguagemdo
computador.
Seoprojetoforexecutadodetalhadamente,a
codificaopodeserexecutadamecanicamente?

Testes

Concentrasenosaspectoslgicosinternosdosw.
Garantequetodasasinstruestenhamsido
testadas.
Aentradadefinidaproduzosresultadosexigidos?
Garbagein,garbageout?

Manuteno

Swembutidonemsempretemestaparte.
Errosencontrados.
Mudanasnoambienteexterno.
Acrscimosfuncionais.
Desempenho

ProblemascomaCascata

Omaisantigoeamplamenteusado.
Projetosreaisraramenteseguemofluxoseqencialque
eleprope.Ocorremiteraesquetrazemproblemasna
aplicaodoparadigma.
difcilparaoclientedeclarartodasasexigncias
explicitamente.difcilacomodarasincertezasnaturais
queexistemnocomeodemuitosprojetos.
Oclientedeveterpacincia.Umaversodoswsestar
disponvelemumpontotardiodocronograma.Umerro
crasso,podeserdesastroso.
Sapropriadoquandoosrequisitossobemconhecidos.

Desenvolvimentoevolucionrio

Desenvolvimentoexploratrio

Oobjetivotrabalharcomoclienteedesenvolverumsistema
finalapartirdasespecificaesiniciais.Deveiniciarcom
requisitosbemcompreendidos.

Jogarforaaprototipao

Oobjetivoentenderosrequisitosdosistema.Deveiniciar
comrequisitospoucocompreendidos.

Desenvolvimentoevolucionrio
Concurr ent
activities

Outline
description

Specification

Initial
version

Development

Intermediate
versions

Validation

Final
version

p
r

ria
d

o p

r od

Incio
Coletaerefinamento
dosrequisitos

jeto
Pro

Fim

uto

Prototipao

Co
do nstru
pr

ot o
tip
o

Eng
enh
a

ido

o
ent o
am
fin tip
Re prot
do

Avaliaodoprottipo
pelocliente

Desenvolvimentoevolucionrio

Problemas

Faltadevisibilidadesobreoprocesso.
Sistemageralmentepoucoestruturado.
Habilidadesespeciais(ex.emlinguagensparaumarpida
prototipao)sorequeridas.

Aplicabilidade

Parasistemasinterativospequenosoumdios.
Parapartesdedegrandessistemas(ex.Ainterfacecomo
usurio).
Parasistemascompoucotempodevida.

Modelodedesenvolvimento
formal

Baseadonatransformaodeumaespecificao
matemticaatravsdediferentesrepresentaes
emumprogramaexecutvel.
Astransformaespreservamacorretudedas
especificaes,sendofcildemonstrarquequeo
programasegueestasltimas.
BaseadonaabordagemCleanroomparao
desenvolvimentodesoftware.

Modelodedesenvolvimento
formal

Requirements
definition

Formal
specification

Formal
transformation

Integration and
system testing

Transformaesformais
Formal transformations
T1

Formal
specification

T2

R1

P1

T3

R2

P2

T4

Executable
program

R3

P3

Proofs of transformation correctness

P4

Desenvolvimentoformal

Problemas

Sonecessriashabilidadesespeciaisetreinamentoparaaplicar
atcnica.
Dificuldadeparaformalizarespecificamentealgunsaspectosdo
sistema,comoainterfacecomousurio.

Aplicabilidade

Sistemascrticos,especialmenteaquelesemqueumaverso
seguradeveserfeitaantesdosistemaentraremoperao.

Desenvolvimentoorientadoa
reutilizao

Baseadonasistemticadoreuse,ondeossistemas
sointegradosapartirdecomponentesexistentes
ousistemasCOTS(Commercialofftheshelf).
Estgiosdoprocesso

Anlisedoscomponentes
Modificaodosrequisitos
Projetodosistemacomreutilizao
Desenvolvimentoeintegrao

Estaabordagemestsetornandomaisimportante,
pormaindahpoucaexperinciacomela.

Reuseorienteddevelopment

Requirements
specification

Component
analysis

Requirements
modification

System design
with reuse

Development
and integration

System
validation

Processodeiterao

Osrequisitosdosistemasempreevoluemao
longodoprojeto,entooprocessodeiteraodos
estgiosanterioresretrabalhadoevirapartedo
processoparagrandessistemas.
Iteraopodeseraplicadaaqualquermodelo
genricodeciclodevida.
Duasabordagenssemelhantes:

Desenvolvimentoincremental
Desenvolvimentoespiral

Desenvolvimentoincremental

Aoinvsdeentreagarosistemaumanicavez,o
desenvolvimentoeaentregasopartidosem
incrementos,quefornecempartedas
funcionalidadesrequeridas.
Osrequisitosdousuriossodispostos
hierarquicamente,eosrequisitosdeprioridades
maisaltassoincludosnasprimeirasentregas.
Quandoodesenvolvimentodeumincremento
iniciado,osrequisitossocongeladosdeforma
queosrequisitosparaincrementosposteriores
possamcontinuaraevoluir.

Incrementaldevelopment
Define outline
requirements

Develop system
increment

Assign requirements
to increments

Valida te
increment

Design system
architecture

Integrate
increment

Valida te
system
Final
system

System incomplete

Vantagensdodesenvolvimento
incremental

Valoraoclientetendeaserentregueacada
incremento,entoafuncionalidadedossistema
tendeaseravaliadamaiscedo.
Osprimeirosincrementosfuncionamcomoum
prottipoparaajudaraesclarecerosrequisitos
paraosprximosincrementos.
Baixoriscodeoprojetofalharcompletamente.
Astarefasdemaisaltaprioridade,tendema
recebermaistestes.

Extremeprogramming(XP)

Novaabordagemdedesenvolvimentobaseadano
desenvolvimentoeentregadepequenos
incrementosdefuncionalidade.
Funcionacommelhoriascontnuasnocdigo,
envolvimentodousurionotimede
desenvolvimentoeprogramaoempares.
Ostestesaparecemantesdacodificao.

Desenvolvimentoemespiral

OProcessorepresentadocomoumespiralaoinvsde
umasequnciadeatividadescomvoltasparatrs.
Cadavoltanoespiral representa uma fase no processo.
No h fases fixas como especificao ou projeto. As
voltas no espiral so escolhidas dependendo do que
requisitado
Os riscos so explicitamente avaliados e resolvidos
durante todo o processo

Spiralmodelofthesoftwareprocess
Determine objectives
alternatives and
constraints

Risk
analysis

Evaluate alternatives
identify, resolve risks

Risk
analysis
Risk
analysis

REVIEW
Requirements plan
Life-cycle plan

Development
plan

Plan next phase

Integration
and test plan

Prototype 3
Prototype 2

Risk
analy sis Prototype 1

Operational
protoype

Simulations, models, benchmarks


Concept of
Operation

S/W
requirements

Requirement
validation

Product
design

Detailed
design

Code
Unit test
Design
V&V
Integr ation
test
Acceptance
test
Develop, verify
Service
next-level product

Setoresdomodeloespiral

Definiodosobjetivos

Avaliaoereduoderiscos

Osriscossoavaliadoseasatividadesorganizadaspara
reduzirosriscoschave.

Desenvolvimentoevalidao

Osobjetivosespecficosparaafasesoidentificados.

Ummodelodedesenvolvimentoparaosistemaescolhido,
quepodeserqualquerumdosmodelosgenricos.

Planejamento

Oprojetorevistoeaprximafasedaespiralplanejada.

Potrebbero piacerti anche