Você está na página 1de 18

http://esemfoco.blogspot.

com/ OtavioFerreira

==> Abordagem resumida sobre o processo unificado <== Processos Iterativos de desenvolvimento de software
Contextualizao ACrisedoSoftwarerealidadedesdemeadosdadcadade70.Clientesinsatisfeitos,atrasosnos prazos,custoinfinitoeprodutofinalcombaixaqualidadesoapenasalgumascaractersticasque marcamestacrise. ApesardaevoluotecnolgicaedasiniciativasdeintelectuaiscomoBarryBoehmnadcadade80e GustavKarnernadcadade90,quepropuserammtodosdeestimativas,atualmentepermanecem rarososexemplosdeprojetosdesoftwaredesenvolvidosforadospadresdacrisedescrita. Nocombateaocenriocatico,tornamsenecessriasacriaoeaadoodemetodologiasque auxiliemosprojetosdedesenvolvimento.Destaforma,possvelgerenciaracrise.Algumas tentativasforampropostas. Nadcadade80surgiuumtipodeprocessoconhecidocomoProcessoCascata(dooriginal,em ingls,WaterfallProcess).constitudobasicamenteporcincofasesseqenciais:descobertade requisitos,desenho,implementao,testeeimplantao.Comsuautilizao,percebeusequeo processonoatendiacompletamenteasnecessidadesdosprofissionais.Aconstantemudanade requisitos,adivisoinflexveldasatividadesearigidezimpostacolaboraramparaofracassodo processo. Jnoinciodadcadade90,umtipodeprocessoconhecidocomoProcessoEspiralsurgiucomouma boasoluoaosproblemasidentificadosnoProcessoCascat ,poisprottipossoconstrudosacada a cicloerefinadosnasfasesseguintes.Esteprocessopermitequeasfasessejamdefinidasdeacordo comobjetivosdoprojeto.Porm,amadequaoaoparadigmadeorientaoaobjetosdeterminouo fracassodesteprocesso.Omodoprocedimentaldecriaodesoftwarejnoerasuficientena resoluodeproblemascomplexosou,pelomenos,extensos. Asoluodefinitiva,consolidadanofinaldosanos90,foiacriaodeumtipodeprocessoconhecido comoProcessoIterativo.Neste,acadaiteraoosmodelossorefinadose,aofinaldecadaciclo,um prottipoentregueaosstakeholders,osinteressadosnoprojeto. OparadigmadoProcessoIterativoesuasrealizaes OProcessoIterativodefineumparadigma,ouseja,umaformadepensar.Estenopodeser consideradoumprocessocompletodedesenvolvimentodesoftware,poisnodiscriminaasatividades

http://esemfoco.blogspot.com/ OtavioFerreira necessriasparaqueesteobjetivosejaalcanado. UmarealizaodestaformadepensaroProcessoUnificado(UP),queseencaixanadefiniogeral deumprocessocompleto:umconjuntodeatividadesexecutadasparatransformarumconjuntode requisitosemumsistemadesoftware.EntretantooProcessoUnificadotambmumaestrutura genricadeprocessoquepodesercustomizadaadicionandoseouremovendoseatividadescombase nasnecessidadesespecficasenosrecursosdisponveisparaumprojeto.Tambmpodesofrer alteraesdeacordocomafilosofiadaempresaqueoemprega.OProcessoUnificadodaRational (RUP),porexemplo,umaversoespecializadadoProcessoUnificadoqueadicionaelementosasua estruturagenrica.SurgiudosesforosdeIvarJacobson,GradyBoocheJamesRumbaughem1998 naRational,recentementeadquiridapelaIBM. OMicrosoftSolutionsFramework(MSF),quetambmseencaixanadefiniogeraldeumprocesso completo,jumaoutrarealizaodoparadigmadoProcessoIterativo.Surgiudavastaexperincia emdesenvolvimentodesoftwareadquiridapelaMicrosoftaolongodesuaexistncia.Umavantagem evidentenautilizaodestametodologiaalcanadaparaasequipesqueutilizamouutilizaroo VisualStudio2005TeamSystem,poisestaferramentapossuidoismethodologytemplatesquepodem seradequadosdeacordocomasnecessidadesouutilizadoscomofundaonacriaodeumaverso especializadadoprocesso. Concluso Apesardeexistiremesforoseiniciativasnaunificaodosprocessoscompletosdedesenvolvimento desoftware,oquerealmenteaconteceufoioestabelecimentodeumparadigmacomosendoomais corretonogerenciamentodacrisedosoftware. Notequeeuutilizeiapalavragerenciamentoenosoluo.Estetipodecrisenopodeser extinta,elaexistetodaavezqueumaequipenosebaseiaemumametodologiacomprovadamente eficaz(cenrioaindamuitocomumnomercadobrasileiro).Otermogerenciamentoreferese possibilidadedemedir,deformacontroladaeadaptativa,otempoeocustodeumprojeto. Realmenteaunificaoapenasdoparadigmameparecemaiscorretadoqueaunificaodos processoscompletos,dadoquecadaempresapossuisuafilosofiaeoprocessoocorreinternamente.O mesmonoacontececomaslinguagensdemodelagem,queforamunificadasnaUMLparaqueas empresaspossamcompartilharmodelosecomponentes. Jqueaadoodeumametodologianecessria,selecioneaquelaqueseencaixemelhornoprojeto enosrecursosdisponveis.Consideretambmaferramentadedesenvolvimentoutilizadacomofator dedeciso.Porfim,tenhaemmentequeacriaodeumametodologiatambmbemvinda, contantoquesigaoparadigmaiterativo.

http://esemfoco.blogspot.com/ OtavioFerreira

Princpios Fundamentais do Processo Unificado


OProcessoUnificado,umarealizaodoProcessoIterativ odeDesenvolvimentodeSoftware,possui trsprincpiosfundamentais. Aestabilizaoeaconsagraodesteprocessonomercadodevemse,principalmente,aestes princpios.Soeles: DirigidoporCasosdeUso Paracompreenderoconceito"CasodeUso",importanteconheceroconceito"Ator".Umatorpode serentendidocomumapessoaouumaentidadeno umanaqueinteragecomosistema,masest h foradele.Oexemplomaiscomumdeatoroprpriousurio,porm,bancosdedadoseoutros sistemastambmpodemserconsideradosatores. Poisbem,umcasodeusoumaseqnciadeaesexecutadasporatoresepelosistema,afimde satisfazermetasenecessidadesdestesatores. Oscasosdeusocompemaforacondutoradetodooprocessodedesenvolvimento,desdeacaptao inicialderequisitosataaceitaodocdigofonte,porvriasrazes:

Primeiramenteporsereme xpressossobaperspectivadousurio,emtextosdescritivosna lngualocaldocliente.Ostextosdevemserintuitivosebviosparaoleitor. Outropontofundamentalquepermitemumacompreensodiretadosrequisitosdosistema. Oscasosdeusonodevemapresentarambigidades,redundnciasoucontradies.Devem especificarumcontratoaseraceitoeseguidopelosintegrantesdaequipededesenvolvimento epelosclientes. Permitemtambmumaltograuderastreamentoderequisitosnosdiversosmodelosqueso desenvolvidosposteriormente.Manteroscasosdeusomodurantetodooprocessoporser decisivoparaoaceitedasoluo. Porfim,oscasosdeusofacilitamadistribuiodetarefaseaalocaodetrabalho.

CentradoemArquitetura Aarquiteturaaorganizaofundamentaldosistemacomoumtodo.Possuielementosestticose dinmicosqueexplicitamexatamentecomocadacomponenteconstrudoecomoesteserelaciona comosdemais. Umaboaarquiteturadeveproverumaltograudemanutenibilidade.Estefatofundamentalparaque

http://esemfoco.blogspot.com/ OtavioFerreira aequipededesenvolvimentopossaatenderasdemandasquesurgememumintervalodetempocada vezmenor,principalmenteapsaadoodaInternetcomocanaldecomunicaoprimrio. Inmerascorporaesmodelamseusnegciosdeacordocomatecnologiadisponvel,inviabilizando ainovao,mutaoe,emalgunscasos,atocrescimentodonegcio.SegundoconstatadoporPaul Strassmannem1997,narealidadeumasituaoinversadeveriaserempregada,ondeasseguintes caractersticassustentariamaidealposturadeumdepartamentodeTecnologiadaInformaoemuma organizao:deveriaagregarrealvaloraoplanodenegcios,nodeveriaresistirsmudanase deveriacombaterqualquertipoderesistnciaaelas,poissonecessrias. Partindodestepontodevista,essencialqueosoftwareseadapteaomodelodenegciosestipulado emumacorporao.Porm,comomodelosdenegciossomu tveis,aarquiteturadosoftwareem questodeveserflexvelosuficienteparaacompanhartaismudanaseexpansvelosuficientepara permitirocrescimento. Umaltograudemodularidadepodeserumgrandealiadonoalcancedealtosgrausde manutenibilidade,flexibilidadeeexpansibilidade. Ummdulopodeserentendidocomoumaporodecdigoencapsulada,coesaefracamente acoplada.Jograudemodularidadeestimaacoernciadeutilizaodemdulosnaarquiteturadeum sistema,obedecendocincocritrioseseisprincpios,descritosporBertrandMeyerem1988,exibidos naslistagensabaixo:

Critrios:

Decomposio:Capacidadededividiroproblemainicialemsubproblemas,ou mdulos,isolados. Composio:Capacidadedereutilizaodosmdulosnaconstruodenovos sistemas,possivelmenteemambientesligeiramentediferentes. Entendimento:Capacidadedecompreensodosmdulosdeformaindividualporum leitorhumano. Continuidade:Capacidadedealteraodosmdulossemimpactonosdemais, mantendoaarquiteturaeasrelaes. Proteo:Capacidadedesuporteacondiesanormaisdosmdulos,limitandoo escopodeumerroaoprpriomduloeprotegendoorestantedosistema.

Princpios:

Unidademodularsinttica:Ummdulodevecorresponderaumaunidadesintticada linguagem.

http://esemfoco.blogspot.com/ OtavioFerreira

Poucasinterfaces:Ummdulodevesecomunicarcomamenorquantidadedemdulos possvel,evitandorecurso. Interfacespequenas:Ummdulodevetrocaramenorquantidadedeinformaes possvelcomoutro. Interfacesexplcitas:Acomunicaoentredoismdulosdeveserexplcitaeclara. Informaesocultas:Osdadosdeummdulodevemserprivados,comrarasexcees dedadospblicos. Abertoefechado:Abertoparapequenasalteraes(semimpactonasinterfaces)e fechado,sugerindosuacompletudeedisponibilidadedeuso.

Aindatendoemvistaograudemodularidade,umaarquiteturadeveserelaboradaconsiderando diversosnveisdeabstrao.Quantomenoraabstraodeumcomponente,maiorserseupotencial dereuso.Estacaractersticafundamentalpodeseralcanadaatravsdautilizaodeframeworks,um conjuntodeclassesabstrataseconcretascomaltograudeespecializao. Reunindotodoesteconhecimento,somoscapazesdeminimizaraexistnciadetrspropriedades internasindesejveisnaarquitetura:

Rigidez:Amanutenoemumdeterminadopontodosistemaobrigaaodesenvolvedorajustar outraslocalidadesdiretamenterelacionadas,gerandoumacadeiademanuteno.Suas conseqnciassoconhecidascomoef eitodomin. Fragilidade:Amanutenoemumdeterminadopontodosistemageraproblemasemoutro pontonorelacionado,muitasvezesdistantedolocaldaalterao.Suasconseqnciasso conhecidascomoefeitoborboletamaremoto,nomenclaturaextradadaTeoriadoCaos.Esta teoriadefendequeosimplesbaterdeasasdeumaborboletaemumextremodomundo,pode seroestopimdeumtornadonooutroextremo. Imobilidade:Aotentarreutilizarumcomponentejdesenvolvido,classesnopertencentesa esteimpossibilitamaao,dadooforteacoplamentoexistente.Suasconseqnciasso conhecidascomoefeitobananagorila.

IterativoeIncremental Cadaprojetodivididoemiteraes.Cadaiteraopodeserconsideradaumminiprojetodecurta duraoquetemporobjetivooferecerumamelhoraincrementalaosistema. Sobenefciosdestaformadeorganizao:

http://esemfoco.blogspot.com/ OtavioFerreira

umprogressolgicoparaqueumaarquiteturarobustasejaalcanada.Duranteasiteraes iniciais,umaarquiteturacandidataproposta.Suaevoluoserumafundaoslidaparao restantedosistema. EmcontrastecommetodologiasqueseguemoparadigmadoProcessoCasc ata,ondetodosos requisitossolevantadosnoinicioenuncamaisrevisados,oProcessoUnificadopreva negociaoprogressivaderequisitos,priorizandoaquelesquerepresentamriscosmais significativosaoprojeto. Possibilitamaiorflexibilidadeparaquemudanasocorramnoplanodeatuaodaequipede desenvolvimento.Umaavaliaoaofinaldeumaiteraopermiteisolarumeventualproblema identificadoelidarcomeleemumaescaladareduzida,sempropagarseusefeitos. Casooincrementodeumaiteraosejaumcomponenteoumdulo,esteintegradoaos demaisexistentes.Umaintegraomuitasvezesrepresentaaconquistademaisumrequisito. Aevoluodotrabalhotornasemaisevidenteaosinteressados. Porfim,anaturezaiterativapermitequenovosintegrantesdaequipededesenvolvimento iniciemsuasatividadessemquesejamsubmetidosatreinamentosextensosquecubramtodoo projeto.

A estrutura do Processo Unificado


Emartigosanteriores,apresenteioconceitoquedefineoparadigmadoProcessoIterati oeos v princpiosfundamentaisquedefinemumadesuasrealizaesmaisevidentes,oProcessoUnificado. MascomooUP(dooriginal,emingls,UnifiedProcess)estruturado?

Figura1:Intensidade decadaumadasdisciplinasnodecorrerdasfasesemumciclo.

http://esemfoco.blogspot.com/ OtavioFerreira Poisbem,avidadeumsistemadesoftwarecompostaporumasriedeciclos.Aofinaldecada ciclo,umaversooperacionaldosistemaentregueaosinteressados.Conformeilustradopelafigura 1,umcicloaindadivididoemquatrofases:Concepo,Elaborao,ConstruoeTransio. Resumidamente:

AConcepoafaseondeosobjetivosdociclodevidasoidentificados.Estafasedizoque deveserfeito.Odomnioanalisadoeosrequisitos(funcionaisenofuncionais)so compreendidoseselecionados. AElaboraoresponsvelpelaarquiteturadosistemaqueserdistribudoaofinaldoclico devida.Estafasedizcomodeveserfeito.importantereforarqueaarquiteturadeve suportartodososrequisitosselecionados.Lembresequeumdosprincpiosfundamentaisdo UPofatodesteserCentradoemArquitetura,ouseja,aElaboraotendeaserumafase crucial,recheadadedesafiosequestescomplexas. NaConstruo,comooprprionomesugere,osistemaimplementadodeacordocomoque foielaboradonafaseanterior.Questespuramentetcnicascomooencapsulamentodeclasses lgicasemcomponentesfsicosmarcamafase.Osistemadevepossuiracapacidade operacionaladequada. Porfim,aTransiomarcadapelaliberaodoprodutoaosinteressados.Oprojetodeveser preparadoparapossveisciclosfuturos.

Cadafasecompostaporumaseqnciadeiteraes.Tipicamente,aConcepocompostadeuma nicaiteraoeaTransiodenomximoduas.Porm,asfasesdeElaboraoedeConstruo contamcomumnmeromaiordeiteraes. Umacaractersticamarcante,tambmilustradanafigura1,ofatodetodasasiteraes,e conseqentementetodasasfases,serematravessadasportodasasdisciplinas,commaioroumenor intensidade. Soexatamenteasdisciplinasquepossuemartefatosassociados.Artefatossodocumentostextuais oudiagramasdaUMLquefacilitamacompreensodosistemaeacomunicaoentreosenvolvidos. Ouseja,possvelqueumartefatodecompreensododomniosejaincrementadoemmaisdeuma fase,mesmosabendoqueoentendimentododomnioumdosprincipaisobjetivosdafasede Concepo. Amaioriadosartefatosproduzidosaolongodosciclospertenceaumdosseismodelosapresentados nafigura2.Osmodelos,contendotodososseusartefatos,formamadocumentaocompletado processodedesenvolvimento.Estadocumentaodeveserdisponibilizadaaosenvolvidosacadanovo ciclo.

http://esemfoco.blogspot.com/ OtavioFerreira Ummodeloporsistambmpodeserconsideradoumartefato,porm,quepossuioutrosartefatos internos,comodiagramascompletosetextosestruturados.Podemosqualificarummodelocomoum agrupamentolgicosemanticamentefechado.

Figura2:OsseismodelosbsicosdoProcessoUnificado.

Mesmotendomencionadoqueumadocumentaoquecompreendaestesseismodelostidacomo completa,podemosadicionaroutrosdocumentosquesejamconsideradosrelevantes. Exemplosdedocumentoscomplementares:


ModelodeDomnio Documentoderequisitosnofuncionais Referncias

A disciplina de Requisitos
OfocodestadisciplinadoProcessoUnificadotrabalharparaconstruirosistemacerto.Noiniciodo primeirociclodeumprojeto,aindanosesabeexatamentequalosistemaaserconstrudo.O domnioobscuroeadescriodosrequisitospelosclientespodeviracom panhadadeambigidades, contradieseredundncias.

http://esemfoco.blogspot.com/ OtavioFerreira AEngenhariadeRequisitos,umdosbraosdaEngenhariadeSoftware,umacinciadestinada exclusivamentecompreensodasmetasedasnecessidadesdosclientesemumprojetode desenvolvimentodesoftware.Asprticas,tcnicaseferramentasprovidasporestacinciaso grandesaliadasparaumbomtrabalhonestadisciplina. GruposcomoTheRequirementsEngineeringSpecialistGroup,confernciasinternacionaise peridicosacadmicosnosdoidiadaamplitudedaEngenhariadeRequisitos.Nesteartigovamos nosreteradiscutirasatividadesbsicasexecutadasnadisciplina.Emartigosfuturospoderemosnos aprofundarnestetematocomplexo. Umpontointeressanteperceberquecinciassociais,cinciacognitivaerelacionamentointerpessoal socaractersticasimportantesemumEngenheirodeRequisitos.Nestemomentodoprocesso,existe umaforteinteraodesteprofissionalcomoclienteeprecisopreparoparaidentificaras ambigidades,ascontradieseasredundnciasqueeventualmenteaparecem. Quatroartefatossoproduzidosduranteestadisciplina.Soeles:

ModelodeDomnio: Estemodeloresponsvelporexibirosconceitosprincipaisdodomnioemqueosoftware estinseridoecomoestesserelacionam. frequentementerepresentadopordiagramasdeclassesconceituaisdaUML,ouseja,noso classesdeprojeto.Algunsconceitossomantidosetornamseclassesdeprojetonaelaborao daarquiteturaemiteraesfuturas,porm,comumquealgumasclassessejamapenas conceituaisenoparticipemdosoftwareefetivamente. Estemodelonospermitecompreendercommaisclarezaocenrioemqueosclientesesto envolvidos.Tambmutilizadocomofontedeinspiraoparaanomenclaturadeclassesem iteraesfuturas.

ModelodeCasosdeUso: Deveservistocomoumaguiaparatodooprocessodedesenvolvimento,representaafora condutora.Aidiaprincipalidentificarosrequisitosfuncionaisdosistema. UmavezqueumdosprincpiosfundamentaisdoProcessoUnificadoserdirigidoporcasos deuso,temosidiadoquofundamentalestemodelo. formadoporpacotesdecasosdeuso,representando,cadaumdeles,umagrupamentolgico dediagramasdecasosdeusodaUML.Complementandoomodelo,existemdescries textuaisestruturadasparacadacasodeuso.Asdescriesdevempossuir,pelomenos,as

http://esemfoco.blogspot.com/ OtavioFerreira seguintesinformaes:nomedocasodeuso,atorprincipal,prcondies,pscondies, fluxobsicoefluxosalternativosdeexecuo.

RequisitosNoFuncionais: Em1992,RobertGradylistoucincogruposdecategorizaoderequisitos.Alistafoi denominadaFURPS,acrnimocomoseguintesignificado,conformeooriginalemingls:


Functionality:Requisitosfuncionais. Usability:Requisitosdeusabilidade,comorecursosdeajudaeacessibilidade. Reliability:Requisitosdeconfiabilidade,comocapacidadederecuperaoapsfalha. Performance:Requisitosdedesempenho,comotempoderespostaedisponibilidade. Supportability:Requisitosdesuporte,comofacilidadedemanuteno/configuraoe internacionalizao.

ComoosrequisitosfuncionaisjsocobertospeloModelodeCasosdeUso,odocumentode requisitosnofuncionaisdeveconterapenasosquatrogruposrestantes,ouseja,umalista URPS.

Referncias: Estedocumentoapenasumasugestoepodeserformadoportrssees:Glossrio, PremissaseRefernciasbibliogrficaseeletrnicas. OGlossriodescreveosprincipaistermosaseremutilizadosnosistema.Criaumpadrode nomenclaturaaserutilizadopelaequipededesenvolvimentonosdilogosenaelaboraodos diversosartefatosduranteoprojeto.FrequentementeumaderivaodoModelodeDomnio. AsPremissassoconsideraesquejustificamalgumascaractersticasdosistema.Aidia fornecerumhistricodospensamentosedasdiscussesocorridasduranteodesenvolvimento. Estaseodeveauxiliarnamanutenodosistema. AsRefernciasbiogrficasapontamquaisoslivrosqueauxiliaramnodesenvolvimentopela suateoria.Analogamente,asRefernciaseletrnicasapontamaspginasdaInternetque foramutilizadasemeventuaispesquisas.

A disciplina de Anlise
comumdizerqueestadisciplinadoProcessoUnificadotemcomofocoprincipalrealizaroprimeiro cortenaarquitetura.Emgeral,cadacasodeusoselecionadoanalisadoemtermosdeclassesde anlise.Ouseja,temosumaprimeirarepresentaoestticadoscasosdeuso,umaarquitetura candidata.

http://esemfoco.blogspot.com/ OtavioFerreira

Poraindanoseremclassesdeprojeto(ouconcretas),estaestruturaestticasofreralteraesem iteraesfuturas.Mas,decertaforma,oprocessodedesenvolvimentocomeaasedistanciardos clienteseaganharumfocomaistcnico.Estefatoestilustradonafigura1dopostAestruturado ProcessoUnificado.NelapodemosperceberqueenquantoacurvadaAnlisevaiseintensificando,a curvadosRequisitosperdeintensidade.Nestemomento,provavelmenteoprocessoencontraseno iniciodafasedeElaborao. Umartefatoprincipalproduzidoduranteestadisciplina:

ModelodeAnlise Estemodeloformadoporpacotesdeanlise.Cadapacoterepresentaumagrupamentolgico dediagramasderobustezdaUMLdesenhadoscomclassesdeanlise(ouobjetosdeJacobson Sim,elemesmo,umdoscriadoresdaUML!),erelacionamentos.

Figura1:ObjetosdeJacobson.

CadaclassedeanliseclassificadacomoFronteira,ControleouEntidade.Fronteiraum tipodeclassequeinteragecomoator.OControledetmoconhecimentonecessrioparaa corretaexecuodocasodeuso,possuilgica.JaEntidade,representaumconceitodo domnio,muitasvezesmapeadaemumatabeladebancodedados.

A disciplina de Projeto
Estadisciplinaaprincipalresponsvelpelaelaboraodaarquitetura.Elautilizasedosartefatos produzidosnafasedeAnlisecomobaseparaaelaboraodeumaarquiteturabaseadaemclassesde projeto,ouclassesconcretas.Emgeralprocuraseunificarosdiagramasenomaismanterumpara cadacasodeuso.Nesteestgioprecisoterumaidiamaisampladaarquiteturacomoumtodo, inclusivenoquedizrespeitoaquestescomoflexibilidade,expansibilidade,manutenibilidadee reuso. AdisciplinadeProjetofundamentalemumametodologiacentradaemarquitetura.Realizarbemas tarefasnestemomentopodegarantirumbomtempoderespostanasatualizaesdosoftware futuramente.

http://esemfoco.blogspot.com/ OtavioFerreira Questescomodistribuiodeobjetoseutilizaodeframeworkstambmsoconsideradas. EstadisciplinapossuiamesmacurvadeintensidadedadisciplinadeAnlise.Realmente,aanliseeo projetoorientadosaobjetosestoaltamenterelacionadosesecomplementam. Doisartefatossoproduzidosduranteestadisciplina.Soeles:

ModelodeProjeto: Estemodeloformadoporpacotesdeprojeto.Cadapacoterepresentaumagrupamentolgico dediagramasestticos,comoodiagramadeclasses,edinmicos,comoodiagramade seqnciaeodiagramadeobjetos. Osdiagramasestticossoresponsveispordiscriminarosrelacionamentosentreasclassesde projeto.Devesebuscarumbaixoacoplamento. Josdiagramasdinmicosexibemcomocadaumadasclassesdeprojetosecomportaem tempodeexecuo.TcnicascomoaInversodeDependnciaspodemser isualizadasem v diagramasdestetipo.

ModelodeInstalao: Defineaorganizaofsicadosistemaemtermosdenscomputacionais,osquaissopeas dehardwarequerepresentamumrecurso,comoumservidor,umaestaodetrabalhoou algumoutrosoftware. Oscomponentesqueformamaarquiteturaresidemnosnscomputacionais.Alistagemdos componentesdeveserapresentadanointeriordecadan. OprincipalartefatodestemodeloodiagramadeinstalaodaUML,quediscriminacomoos nsserelacionam.Osdiagramaspodemseragrupadoslogicamenteempacotes,denominados pacotesdeinstalao. Outroobjetivodestemodeloapresentaraoclientequalainfraestruturanecessriaparaa corretaexecuodosoftware.Estetipodeinformao,quandoentregueaofinaldafasede Elaborao,fazqueoclientetenhatempoparaprepararoambiente.

A disciplina de Implementao
Oobjetivofundamentalnestadisciplinaconstruirumaversooperacionaldosistemaaserentregue aosclientes.Casooprojetoencontresenoprimeirociclo,comumqueestaversodosistemaseja beta,ouseja,serdisponibilizadaparaavaliao.

http://esemfoco.blogspot.com/ OtavioFerreira Quandoestadisciplinaaumentasuaintensidade,oprojetoprovavelmenteestnafasedeConstruoe asdiscussespassamaserpuramentetcnicas.Nesteestgioaarquiteturadesenhadaemtermosde componentes. Acriaodocdigofontetambmumaatividadedestadisciplina. Doisartefatossoproduzidosduranteestadisciplina.Soeles:

ModelodeImplementao Estemodeloformadoporpacotesdeimplementao.Cadapacoterepresentaum agrupamentolgicodediagramasdecomponentesdaUML.Estesdiagramassoresponsveis pordiscriminarosrelacionamentosexistentesentreoscomponentes.Predominantemente,so modeladasasdependnciaseasconexesentreinterfacesexigidaseinterfacesfornecidas. Cadacomponentepodecompreendermaisdeumaclassedeprojeto.

componente.

Figura1:PrincipalelementodosdiagramasdecomponentesdaUML:

Estemodelopodeserconsideradocorretoquandocontemtodososcomponentesnecessrios pararealizarasfuncionalidadesespecificadaspeloscasosdeusoeosrequisitosno funcionais.

Cdiofonte arealizaotecnolgicadosmodelosnalinguagemdeprogramaoescolhida. importantequeumpadrodecodificaosejaseguidoeocdigocomentadoparafacilitara leituraemfuturasmanutenes.Osmodeloseocdigodevemsempreestarsincronizados, refletindoasmaisrecentesatualizaes.

A disciplina de Teste
Oobjetivofundamentalverificaraqualidadedosistema.Estadisciplinaganhaintensidadeaolongo dafasedeConstruoetendeaperderestaintensidadeapenasnoinciodafasedeTransio.Ouseja, implementaoetestenodevemseratividadesserializadas.Equipesdedesenvolvimentoeteste podemtrabalhardeformaparalela.Emgeralissooqueaconteceentreasdemaisdisciplinas tambm,masestexplicitamentedescritonestepostparaquealgunsparadigmastradicionais,como estequeenvolveimplementaoeteste,sejamesquecidos.

http://esemfoco.blogspot.com/ OtavioFerreira

Apenasumartefatoproduzidonestadisciplina:

ModelodeTeste EstemodelodefineumPlanodeTeste,formadoporduasfasesprincipais:testesunitriose testesdeintegrao. Ostesteunitriossofundamentaisparagarantirquecadaumdoscomponentesintegrantesda arquiteturadosoftwareestejasecomportandoadequandamente.Estetipodetesteconsistena criaodecasosdeteste. Cadacasodetestepossuiumaresponsabilidadebemespecfica,geralmenteaverificaoda execuodeummtododocomponente.Ocasodetestedevepreveraexecuodetodosos caminhospossveisaserempercorridosduranteaexecuo.importantequeocasodeteste tambmprevejavariaesnosdadosrecebidos(dadosnormais,dadoslimiteedadosruins). Vamossuporqueumdeterminadocomponentedaarquiteturadoseusistemasejaresponsvel porclculosmatemticoscomplexos.Certaoperaodestecomponentesepropeacalcularo valorfatorialdeumnmerointeiroqualquer.Porsetratardeumclculoqueenvolvevalores muitoaltos,aoperaopossuiumtratamentoparaconsiderarapenasosvaloresentre1e100. Nestecaso,dadosnormaissovalorescomo20,50,70.Josdadoslimites,compreendem valorescomo0,1,2,99,100,101.Porfim,osdadosruinsseriamnmeroscomo10,1,110, 200. Apsvalidaroscomponentes,estesdevemserintegrados. Ostestesdeintegraopodemserorientadosporcasosdeteste.Porm,nestecaso, procuramosvalidarcomportamentosmaisabstratos,demaiorgranularidade.

OEngenheirodeTesteumprofissionalespecializadoemmetodologiasparaestefim.Noexterior, estaumaposiodemuitoprestgioemumaequipededesenvolvimento,complanodecarreirabem definidoealtaremunerao.oprofissionalqueefetivamenteautorizaapublicaodeum determinadosistema. Infelizmente,estarealidadenopercebidaemnossopas...

A fase de Concepo
Estafasecaracterizadapelapresenadoclienteementrevistasparaqueaequipede desenvolvimentocompreendaodomnio.Combasenestacompreenso,soidentificadose

http://esemfoco.blogspot.com/ OtavioFerreira selecionadososrequisitosfuncionais,emformadecasosdeuso,eosrequisitosnofuncionais. AConcepodeveserumafaseesclarecedora.Nestemomentofundamentalofoconasmetasenas necessidadesdosusurios. Tersucessoepoderserconsideradaconcludaquandoseatingeumamaturidadeconsidervelnos artefatosdadisciplinadeRequisitos.Destaforma,esperasequeestejaclaroqualosistemaaser construdo. Comoasdisciplinasatravessamafase Ospontosaseguirapresentamumabrevedescriodecomocadaumadasdisciplinasatravessaafase deConcepoemtermosdetarefas.

Requisitos:aprincipaldisciplinadestafase.Astarefaschavesochegaraumacordoentre osinteressadossobreocontextodosistema,conformeexpressonoModelodeDomnio,e identificarosrequisitosfuncionaisenofuncionais. Anlise:Elaborar,mesmoquedeformabreve,umaarquiteturacandidata. Projeto:Iniciarumesforomentaldeunificaodosdiagramasrelativosarquitetura candidata. Implementao:Frequentemente,nenhumatarefarelativaaestadisciplinarealizada,ano serquesejanecessriocriarumprottipoparasatisfazereventuaispreocupaesdosclientes. Teste:Estadisciplinasserrelevanteparaverificarumpossvelprottipoquetenhasido criadonadisciplinadeImplementao.

Avaliao Existemalgumasquestesqueauxiliamnaavaliaodafasequandoseimaginaqueestconcluda:

Estclarooqueestdentroeoqueestforadosistema? Osrequisitosforamcompreendidosetodosconcordamcomeles? Existeumesforoinicialdeelaboraodeumaarquiteturacandidata? Asestimativasdetempoecustoforamcumpridas?

Seasrespostassatisfizeremmaioriadosinteressados,afasepodeserconsideradaconcludacom xito.Casocontrrio,talvezomelhorsejaacrescentarmaisumaiteraoaestafaseparaaparar arestasefinalizaroqueestiverpendente.

http://esemfoco.blogspot.com/ OtavioFerreira

A fase de Elaborao
Oncleodestafaseabuscaporumaboaarquitetura.Nopost"PrincpiosFundamentaisdoProcesso Unificado"ficaclaraapreocupaodesteprocessoemprovermeiosparaalcanaraltosgrausde manutenibilidade,flexibilidade,expansibilidadeereuso. Estafasetambmmarcadapelogradativoafastamentodosclientese,conseqentemente,pela gradativaaproximaodequestesmaistcnicas. Lembrandoquesoasdisciplinasquepossuemartefatosassociadosenoasfases,perfeitamente comumquealgunsdocumentosproduzidoscombastanteintensidadenafasedeConceposejam refinadosnestafase,comoocasododocumentodeRequisitosNoFuncionais,pertencente disciplinadeRequisitos. Porm,deformamaisintensaqueadisciplinadeRequisitos,asdisciplinasdeAnliseeProjetosoas maisevidentes.Aolongodafase,esperasequeumaarquiteturacandidatasejasubstituda gradativamenteporumaarquiteturamaisconcreta,ouseja,umafundaoslidaparaosistema. Comoasdisciplinasatravessamafase Ospargrafosaseguirapresentamumabrevedescriodecomocadaumadasdisciplinasatravessaa fasedeConcepoemtermosdetarefas.

Requisitos:Refinarosartefatosreferentesaosrequisitosfuncionaisenofuncionais. Anlise:Refinarosartefatosrelativosarquiteturacandidata. Projeto:aprincipaldisciplinadestafase.Astarefaschavesocriarumaarquiteturaslida, tendocomobaseosdiagramasproduzidosnadisciplinadeAnlise,eestruturarocenrioda instalaodosistemaemcomponentesdehardware. Implementao:Iniciar,aindaquesuperficialmente,amodelagemdecomponentizaode acordocomooquefoiproduzidonadisciplinadeProjeto. Teste:Necessriasomentesealgumcomponentetiversidoimplementado,oquepouco provvel.

Avaliao Existemalgumasquestesqueauxiliamnaavaliaodafasequandoseimaginaqueestconcluda:

Todosentendemeconcordamcomosrequisitosdetalhados? Existeumabasearquitetnicaslidaquepossaevoluirmedidaqueosrequisitosso exploradosemaisfuncionalidadessoadicionadasnosistema? Asestimativasdetempoecustoforamcumpridas?

http://esemfoco.blogspot.com/ OtavioFerreira

Seasrespostassatisfizeremmaioriadosinteressados,afasepodeserconsideradaconcludacom xito.Casocontrrio,talvezomelhorsejaacrescentarmaisumaiteraoaestafaseparaaparar arestasefinalizaroqueestiverpendente.

A fase de Construo
Nestemomentodociclodevidapodesedizerqueapenasquestestcnicassotratadas.A modelagem,acodificaoeostestesdoscomponentesmarcamestafase. afaseondeoModelodeImplementaoeoModelodeTestetendemaserbastantetrabalhados, consequentemente,omomentoondeosdesenvolvedoreseostestadoresmaisatuam. comumqueoModelodeCasosdeUso,oModelodeAnlise,oModelodeProjetoeoModelode Instalaoestejamconcludos,apesardeaindaseremrefinadosnestafasecomeventuaisdetalhes. Tersucessoepoderserconsideradaconcludaquandoseatingeumamaturidadeconsidervelnos artefatosdasdisciplinasdeImplementaoeTeste. Comoasdisciplinasatravessamafase Ospargrafosaseguirapresentamumabrevedescriodecomocadaumadasdisciplinasatravessaa fasedeConstruoemtermosdetarefas:

Requisitos:Estadisciplinafreqentementenotrabalhadanestafase,osrequisitosdevem estarclarosparatodosnaequipe. Anlise:Estadisciplinatambmpoucotrabalhadanestafase,aarquiteturacandidataj cedeuespaoparaumamaisslida. Projeto:Refinarosartefatosrelativosarquiteturaeinstalaodosistema. Implementao:Modelarecodificaroscomponentes. Teste:Verificaroscomponentesatravsdosdiversostiposdeteste.

Avaliao Existeapenasumaquestoaofinaldestafase:Osistemaestprontoparaserentregueaosclientes? Casoarespostasejanegativa,sernecessrioadicionarumaiteraoparaosajustesfinais.

http://esemfoco.blogspot.com/ OtavioFerreira

A fase de Transio
Consistebasicamenteementregarumaversooperacionaldosistemaaocliente. Deveseprepararumadivulgaoeumadocumentaodeusabilidadeparaousuriofinal;ajustaro softwarenoambientee,porfim,ministrartreinamentosquesejamnecessrios. Comoasdisciplinasatravessamafase Ascincodisciplinaspodemocorrernestafase,masoProcessoUnificadonoserefere especificamenteaestetpico.Nomomentoemqueosistemaatingiresteponto,elefuncionar comprovadamente. Avaliao Aavaliaodestafaseconsistebasicamenteemobservarseosclientesnotiveramdificuldadesna instalaoenausabilidadebsicadosistema. Nestaaltura,oPlanodeProjetoeosseisprincipaismodelosdevemestarfinalizados.Adocumentao completadoprocessodedesenvolvimentodeveserarmazenadaeutilizadacomobasecasoumnovo ciclosejanecessrio.