64
PROF.VICENTE PROF.VICENTE MODELAGEM MODELAGEM INTRODUÇÃO INTRODUÇÃO O principal principal produto produto de de uma uma equipe equipe de de desenvolvimento desenvolvimento não não são são documentos documentos bonitos, bonitos, reuniões reuniões sofisticadas, sofisticadas, ótimos ótimos slogans slogans ou ou linhas linhas de de código código-fonte fonte O principal principal produto produto é um um bom bom software software que que satisfaça satisfaça as as necessidades necessidades do do usuário usuário e seus seus respectivos respectivos ANALISE E PROJETO DE SISTEMAS ANALISE E PROJETO DE SISTEMAS as as necessidades necessidades do do usuário usuário e seus seus respectivos respectivos negócios negócios A modelagem modelagem é uma uma parte parte central central de de todas todas as as atividades atividades que que levam levam à implantação implantação de de um um bom bom software software UM UM MODELO MODELO É UMA UMA SIMPLIFICAÇÃO SIMPLIFICAÇÃO DA DA REALIDADE REALIDADE Modelos Modelos são são construídos construídos para para compreender compreender melhor melhor o sistema sistema que que estamos estamos desenvolvendo desenvolvendo

PROF.VICENTE ANALISE E PROJETO DE SISTEMAS … - FUNDAMENTOS... · 2016-02-25 · reuniões sofisticadas, ótimos slogans ou linhas de código-fonte ... é um nome entre os simbolos

Embed Size (px)

Citation preview

PROF.VICENTEPROF.VICENTE

MODELAGEMMODELAGEM

INTRODUÇÃOINTRODUÇÃOOO principalprincipal produtoproduto dede umauma equipeequipe dededesenvolvimentodesenvolvimento nãonão sãosão documentosdocumentos bonitos,bonitos,reuniõesreuniões sofisticadas,sofisticadas, ótimosótimos slogansslogans ouou linhaslinhas dedecódigocódigo--fontefonteOO principalprincipal produtoproduto éé umum bombom softwaresoftware queque satisfaçasatisfaçaasas necessidadesnecessidades dodo usuáriousuário ee seusseus respectivosrespectivosnegóciosnegóciosAA modelagemmodelagem éé umauma parteparte centralcentral dede todastodas asasatividadesatividades queque levamlevam àà implantaçãoimplantação dede umum bombomsoftwaresoftware

UMUM MODELOMODELO ÉÉ UMAUMA SIMPLIFICAÇÃOSIMPLIFICAÇÃO DADA REALIDADEREALIDADE

ModelosModelos sãosão construídosconstruídos parapara compreendercompreender melhormelhor oosistemasistema queque estamosestamos desenvolvendodesenvolvendo

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

INTRODUÇÃOINTRODUÇÃOOO principalprincipal produtoproduto dede umauma equipeequipe dededesenvolvimentodesenvolvimento nãonão sãosão documentosdocumentos bonitos,bonitos,reuniõesreuniões sofisticadas,sofisticadas, ótimosótimos slogansslogans ouou linhaslinhas dedecódigocódigo--fontefonteOO principalprincipal produtoproduto éé umum bombom softwaresoftware queque satisfaçasatisfaçaasas necessidadesnecessidades dodo usuáriousuário ee seusseus respectivosrespectivosnegóciosnegóciosAA modelagemmodelagem éé umauma parteparte centralcentral dede todastodas asasatividadesatividades queque levamlevam àà implantaçãoimplantação dede umum bombomsoftwaresoftware

UMUM MODELOMODELO ÉÉ UMAUMA SIMPLIFICAÇÃOSIMPLIFICAÇÃO DADA REALIDADEREALIDADE

ModelosModelos sãosão construídosconstruídos parapara compreendercompreender melhormelhor oosistemasistema queque estamosestamos desenvolvendodesenvolvendo

PROF.VICENTEPROF.VICENTE

INTRODUÇÃOINTRODUÇÃOUmUm modelomodelo atingeatinge quatroquatro objetivosobjetivos::

AjudaAjuda aa visualizarvisualizar oo sistemasistema comocomo eleele éé ouou comocomodesejamosdesejamos queque sejaseja

PermitePermite especificarespecificar aa estruturaestrutura ouou oo comportamentocomportamento dedeumum sistemasistema

ProporcionaProporciona umum guiaguia parapara aa construçãoconstrução dodo sistemasistema

DocumentaDocumenta asas decisõesdecisões tomadastomadas

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

MODELAGEMMODELAGEM

INTRODUÇÃOINTRODUÇÃOUmUm modelomodelo atingeatinge quatroquatro objetivosobjetivos::

AjudaAjuda aa visualizarvisualizar oo sistemasistema comocomo eleele éé ouou comocomodesejamosdesejamos queque sejaseja

PermitePermite especificarespecificar aa estruturaestrutura ouou oo comportamentocomportamento dedeumum sistemasistema

ProporcionaProporciona umum guiaguia parapara aa construçãoconstrução dodo sistemasistema

DocumentaDocumenta asas decisõesdecisões tomadastomadas

PROF.VICENTEPROF.VICENTE

INTRODUÇÃOINTRODUÇÃO

AA visãovisão contemporâneacontemporânea nono desenvolvimentodesenvolvimento dedesoftwaresoftware adotaadota umauma perspectivaperspectiva orientadaorientada aa objetosobjetos

NessaNessa visão,visão, oo principalprincipal blocobloco dede construçãoconstrução éé ooOBJETOOBJETO ouou CLASSECLASSE

PoisPois oo DOODOO fornecefornece osos fundamentosfundamentos conceituaisconceituais paraparaaa montagemmontagem dede sistemassistemas aa partirpartir dede componentescomponentes comcomaa utilizaçãoutilização dasdas tecnologiastecnologias comocomo JEE,JEE, ..NET,NET, RubyRuby eeoutrasoutras

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

MODELAGEMMODELAGEM

INTRODUÇÃOINTRODUÇÃO

AA visãovisão contemporâneacontemporânea nono desenvolvimentodesenvolvimento dedesoftwaresoftware adotaadota umauma perspectivaperspectiva orientadaorientada aa objetosobjetos

NessaNessa visão,visão, oo principalprincipal blocobloco dede construçãoconstrução éé ooOBJETOOBJETO ouou CLASSECLASSE

PoisPois oo DOODOO fornecefornece osos fundamentosfundamentos conceituaisconceituais paraparaaa montagemmontagem dede sistemassistemas aa partirpartir dede componentescomponentes comcomaa utilizaçãoutilização dasdas tecnologiastecnologias comocomo JEE,JEE, ..NET,NET, RubyRuby eeoutrasoutras

PROF.VICENTEPROF.VICENTE

INTRODUÇÃOINTRODUÇÃOMuitos métodos e técnicas surgiram em relação aoMuitos métodos e técnicas surgiram em relação aoDOODOO

Rumbaugh se uniu a Booch na RationalRumbaugh se uniu a Booch na Rational

Jacobson se juntou à RationalJacobson se juntou à Rational

Esses três amigos criaram a UML em 1996Esses três amigos criaram a UML em 1996

A partir de sua versão 1.3, a UML passou aA partir de sua versão 1.3, a UML passou aser mantida pela OMG (Object Management Group)ser mantida pela OMG (Object Management Group)

A atual versão da UML é a 2.0A atual versão da UML é a 2.0

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

MODELAGEMMODELAGEM

INTRODUÇÃOINTRODUÇÃOMuitos métodos e técnicas surgiram em relação aoMuitos métodos e técnicas surgiram em relação aoDOODOO

Rumbaugh se uniu a Booch na RationalRumbaugh se uniu a Booch na Rational

Jacobson se juntou à RationalJacobson se juntou à Rational

Esses três amigos criaram a UML em 1996Esses três amigos criaram a UML em 1996

A partir de sua versão 1.3, a UML passou aA partir de sua versão 1.3, a UML passou aser mantida pela OMG (Object Management Group)ser mantida pela OMG (Object Management Group)

A atual versão da UML é a 2.0A atual versão da UML é a 2.0

PROF.VICENTEPROF.VICENTE

INTRODUÇÃOINTRODUÇÃOSíntese HistóricaSíntese Histórica

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

MODELAGEMMODELAGEM

PROF.VICENTEPROF.VICENTE

INTRODUÇÃOINTRODUÇÃOContribuições para a UMLContribuições para a UML

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

MODELAGEMMODELAGEM

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

O QUE É UML?O QUE É UML?ÉÉ umauma linguagemlinguagem padrãopadrão destinadadestinada aa::

VisualizarVisualizarEspecificarEspecificar

ConstruirConstruirDocumentarDocumentarosos artefatosartefatos dede umum sistemasistema dede softwaresoftware

Independe de processos e linguagens deIndepende de processos e linguagens deprogramaçãoprogramação

Fornece uma linguagem de MODELAGEM VISUAL deFornece uma linguagem de MODELAGEM VISUAL defácil uso, com amplas facilidades para a modelagem defácil uso, com amplas facilidades para a modelagem desistemas de softwaresistemas de software

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

O QUE É UML?O QUE É UML?ÉÉ umauma linguagemlinguagem padrãopadrão destinadadestinada aa::

VisualizarVisualizarEspecificarEspecificar

ConstruirConstruirDocumentarDocumentarosos artefatosartefatos dede umum sistemasistema dede softwaresoftware

Independe de processos e linguagens deIndepende de processos e linguagens deprogramaçãoprogramação

Fornece uma linguagem de MODELAGEM VISUAL deFornece uma linguagem de MODELAGEM VISUAL defácil uso, com amplas facilidades para a modelagem defácil uso, com amplas facilidades para a modelagem desistemas de softwaresistemas de software

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

MODELAGEM VISUALMODELAGEM VISUAL

CapturaCaptura asas partespartes essenciaisessenciais dodo sistemasistema (James(JamesRumbaugh)Rumbaugh)

Significa modelar com utilização de notaçõesSignifica modelar com utilização de notaçõespadronizadaspadronizadas

Facilita na captura de objetos e a lógica de negóciosFacilita na captura de objetos e a lógica de negóciosde um sistemade um sistema

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

MODELAGEM VISUALMODELAGEM VISUAL

CapturaCaptura asas partespartes essenciaisessenciais dodo sistemasistema (James(JamesRumbaugh)Rumbaugh)

Significa modelar com utilização de notaçõesSignifica modelar com utilização de notaçõespadronizadaspadronizadas

Facilita na captura de objetos e a lógica de negóciosFacilita na captura de objetos e a lógica de negóciosde um sistemade um sistema

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

MODELAGEM VISUALMODELAGEM VISUAL

FacilitaFacilita compreendercompreender aa complexidadecomplexidade

Define a arquitetura do softwareDefine a arquitetura do software

É uma ferramenta de comunicaçãoÉ uma ferramenta de comunicação

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

MODELAGEM VISUALMODELAGEM VISUAL

FacilitaFacilita compreendercompreender aa complexidadecomplexidade

Define a arquitetura do softwareDefine a arquitetura do software

É uma ferramenta de comunicaçãoÉ uma ferramenta de comunicação

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

MODELAGEM COM A UMLMODELAGEM COM A UML

ÉÉ efetuadaefetuada porpor váriosvários tipostipos dede diagramasdiagramas

Um diagrama UML é composto pelo relacionamentoUm diagrama UML é composto pelo relacionamentode vários elementos do modelode vários elementos do modelo

OsOs diagramasdiagramas dada UMLUML estãoestão basicamentebasicamenteclassificadosclassificados emem ESTRUTURAISESTRUTURAIS ee COMPORTAMENTAISCOMPORTAMENTAIS

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

MODELAGEM COM A UMLMODELAGEM COM A UML

ÉÉ efetuadaefetuada porpor váriosvários tipostipos dede diagramasdiagramas

Um diagrama UML é composto pelo relacionamentoUm diagrama UML é composto pelo relacionamentode vários elementos do modelode vários elementos do modelo

OsOs diagramasdiagramas dada UMLUML estãoestão basicamentebasicamenteclassificadosclassificados emem ESTRUTURAISESTRUTURAIS ee COMPORTAMENTAISCOMPORTAMENTAIS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

MODELAGEM COM A UMLMODELAGEM COM A UMLApresenta diversas visões sobre o sistema modeladoApresenta diversas visões sobre o sistema modelado

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMAS ESTRUTURAISDIAGRAMAS ESTRUTURAIS

ClassesClasses::relacionamentorelacionamento dede classesclassesObjetosObjetos::relacionamentorelacionamento dede classesclassesImplantaçãoImplantação::aspectosaspectos físicosfísicos dede umum sistemasistemaComponentesComponentes::relacionamentorelacionamento dede componentescomponentes

DIAGRAMASDIAGRAMAS COMPORTAMENTAISCOMPORTAMENTAIS

CasoCaso dede usouso::comportamentocomportamento dodo sistemasistemaEstadoEstado::comportamentocomportamento dede umum objetoobjetoSequênciaSequência::interaçõesinterações ordenadasordenadasColaboraçãoColaboração::organizaçãoorganização dosdos objetosobjetosAtividadeAtividade::fluxofluxo dasdas atividadesatividades dodo sistemasistema

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

DIAGRAMAS ESTRUTURAISDIAGRAMAS ESTRUTURAIS

ClassesClasses::relacionamentorelacionamento dede classesclassesObjetosObjetos::relacionamentorelacionamento dede classesclassesImplantaçãoImplantação::aspectosaspectos físicosfísicos dede umum sistemasistemaComponentesComponentes::relacionamentorelacionamento dede componentescomponentes

DIAGRAMASDIAGRAMAS COMPORTAMENTAISCOMPORTAMENTAIS

CasoCaso dede usouso::comportamentocomportamento dodo sistemasistemaEstadoEstado::comportamentocomportamento dede umum objetoobjetoSequênciaSequência::interaçõesinterações ordenadasordenadasColaboraçãoColaboração::organizaçãoorganização dosdos objetosobjetosAtividadeAtividade::fluxofluxo dasdas atividadesatividades dodo sistemasistema

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

CONCEITOS BÁSICOSCONCEITOS BÁSICOS

EstereótipoEstereótipo::ÉÉ oo mecanismomecanismo queque estendeestende oo significadosignificadodede umum determinadodeterminado elementoelemento emem umum diagramadiagrama.. UmUmestereótipoestereótipo podepode serser representadorepresentado porpor GráficoGráfico ouou porporRótuloRótuloGráficoGráfico::

RótuloRótulo::éé umum nomenome entreentre osos simbolossimbolos <<<< ee >>>>..ExemploExemplo:: <<interface>>,<<interface>>, <<tela>><<tela>>NotaNota ExplicativasExplicativas::éé umum comentáriocomentário ouou esclarecimentoesclarecimento

A T O R

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CONCEITOS BÁSICOSCONCEITOS BÁSICOS

EstereótipoEstereótipo::ÉÉ oo mecanismomecanismo queque estendeestende oo significadosignificadodede umum determinadodeterminado elementoelemento emem umum diagramadiagrama.. UmUmestereótipoestereótipo podepode serser representadorepresentado porpor GráficoGráfico ouou porporRótuloRótuloGráficoGráfico::

RótuloRótulo::éé umum nomenome entreentre osos simbolossimbolos <<<< ee >>>>..ExemploExemplo:: <<interface>>,<<interface>>, <<tela>><<tela>>NotaNota ExplicativasExplicativas::éé umum comentáriocomentário ouou esclarecimentoesclarecimento

A T O R

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

CASOS DE USOCASOS DE USODescreve uma sequência de açõesDescreve uma sequência de açõesUmaUma macroatividademacroatividade queque possuipossui diversasdiversas tarefastarefasMoldaMolda osos requisitosrequisitos funcionaisfuncionais dodo sistemasistemaMostraMostra oo queque executarexecutar semsem definirdefinir comocomo éé feitofeitoMOSTRAMOSTRA QUEMQUEM FAZFAZ OO QUEQUE COMCOM OO SISTEMASISTEMA SEMSEMCONSIDERARCONSIDERAR OO COMPORTAMENTOCOMPORTAMENTO INTERNOINTERNO DODOSISTEMASISTEMAEspecíficaEspecífica aa realizaçãorealização dede umum procedimentoprocedimento semsemrelacionarrelacionar detalhesdetalhes dede implementaçãoimplementaçãoCOMOCOMO EXPRESSAEXPRESSA REQUISITOSREQUISITOS DODO SISTEMASISTEMA

▼▼ÉÉ USADOUSADO EMEM TODOTODO OO PROCESSOPROCESSO DEDE DESENVOLVIMENTODESENVOLVIMENTO

SeSe relacionarelaciona comcom outrosoutros casoscasos dede usouso ouou comcom atoresatores(PESSOAS,(PESSOAS, ORGANIZAÇÕES,ORGANIZAÇÕES, OUTROSOUTROS SISTEMAS,SISTEMAS,EQUIPAMENTOS)EQUIPAMENTOS)

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USOCASOS DE USODescreve uma sequência de açõesDescreve uma sequência de açõesUmaUma macroatividademacroatividade queque possuipossui diversasdiversas tarefastarefasMoldaMolda osos requisitosrequisitos funcionaisfuncionais dodo sistemasistemaMostraMostra oo queque executarexecutar semsem definirdefinir comocomo éé feitofeitoMOSTRAMOSTRA QUEMQUEM FAZFAZ OO QUEQUE COMCOM OO SISTEMASISTEMA SEMSEMCONSIDERARCONSIDERAR OO COMPORTAMENTOCOMPORTAMENTO INTERNOINTERNO DODOSISTEMASISTEMAEspecíficaEspecífica aa realizaçãorealização dede umum procedimentoprocedimento semsemrelacionarrelacionar detalhesdetalhes dede implementaçãoimplementaçãoCOMOCOMO EXPRESSAEXPRESSA REQUISITOSREQUISITOS DODO SISTEMASISTEMA

▼▼ÉÉ USADOUSADO EMEM TODOTODO OO PROCESSOPROCESSO DEDE DESENVOLVIMENTODESENVOLVIMENTO

SeSe relacionarelaciona comcom outrosoutros casoscasos dede usouso ouou comcom atoresatores(PESSOAS,(PESSOAS, ORGANIZAÇÕES,ORGANIZAÇÕES, OUTROSOUTROS SISTEMAS,SISTEMAS,EQUIPAMENTOS)EQUIPAMENTOS)

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)ATORATORCorrespondeCorresponde aa umum papelpapel representadorepresentado emem relaçãorelação aoaosistemasistema..ExemploExemplo::UmaUma mesmamesma pessoapessoa podepode serser umum FuncionárioFuncionário emem certocertomomentomomento..EmEm outrooutro momentomomento podepode serser umum ClienteCliente..OO nomenome dede umum atorator devedeve lembrarlembrar oo seuseu papelpapel nonosistemasistemaÉÉ importanteimportante estabelecerestabelecer aa fronteirafronteira dodo sistemasistema

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USO(Cont.)CASOS DE USO(Cont.)ATORATORCorrespondeCorresponde aa umum papelpapel representadorepresentado emem relaçãorelação aoaosistemasistema..ExemploExemplo::UmaUma mesmamesma pessoapessoa podepode serser umum FuncionárioFuncionário emem certocertomomentomomento..EmEm outrooutro momentomomento podepode serser umum ClienteCliente..OO nomenome dede umum atorator devedeve lembrarlembrar oo seuseu papelpapel nonosistemasistemaÉÉ importanteimportante estabelecerestabelecer aa fronteirafronteira dodo sistemasistema

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)RelacionamentosRelacionamentosAssociaçãoAssociação::ComunicaçãoComunicação entreentre umum casocaso dede usouso ee umumatoratorGeneralizaçãoGeneralização::QuandoQuando sese temtem doisdois elementoselementossemelhantes,semelhantes, sendosendo queque umum delesdeles realizarealiza algoalgo aa maismais..ExemploExemplo::FuncionarioFuncionario éé umum atorator genérico,genérico, masmasFuncionarioFuncionario AdministrativoAdministrativo ee MedicoMedico sãosão específicosespecíficos..

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USO(Cont.)CASOS DE USO(Cont.)RelacionamentosRelacionamentosAssociaçãoAssociação::ComunicaçãoComunicação entreentre umum casocaso dede usouso ee umumatoratorGeneralizaçãoGeneralização::QuandoQuando sese temtem doisdois elementoselementossemelhantes,semelhantes, sendosendo queque umum delesdeles realizarealiza algoalgo aa maismais..ExemploExemplo::FuncionarioFuncionario éé umum atorator genérico,genérico, masmasFuncionarioFuncionario AdministrativoAdministrativo ee MedicoMedico sãosão específicosespecíficos..

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)RelacionamentosRelacionamentosExtensãoExtensão (Extended)(Extended)::OcorreOcorre quandoquando umum casocaso dede usousofazfaz parteparte dede outrooutro (denominado(denominado dede base),base), MasMas nemnemsempresempre éé executadoexecutado..MuitoMuito usadousado parapara::

DesmembramentoDesmembramento dede umum casocaso dede usousoDescriçõesDescrições (rotinas)(rotinas) dede execuçãoexecuçãoSepararSeparar umum trechotrecho específicoespecífico

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USO(Cont.)CASOS DE USO(Cont.)RelacionamentosRelacionamentosExtensãoExtensão (Extended)(Extended)::OcorreOcorre quandoquando umum casocaso dede usousofazfaz parteparte dede outrooutro (denominado(denominado dede base),base), MasMas nemnemsempresempre éé executadoexecutado..MuitoMuito usadousado parapara::

DesmembramentoDesmembramento dede umum casocaso dede usousoDescriçõesDescrições (rotinas)(rotinas) dede execuçãoexecuçãoSepararSeparar umum trechotrecho específicoespecífico

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)RelacionamentosRelacionamentosInclusãoInclusão (Include)(Include)::ÉÉ umum casocaso dede usouso queque sese relacionarelacionacomcom outrooutro (denominado(denominado dede base)base) ee sempresempre éé executadoexecutado..

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

RepresentaçãoGráfica deCasos de

Uso

Casos de uso “Extendidos” e “incluidos” são abstratos,pois não são iniciados por um ator

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)

Descrição de Caso de UsoDescrição de Caso de Uso

AlémAlém dada representaçãorepresentação gráfica,gráfica, umum casocaso dede usousopossuipossui umauma representaçãorepresentação descritiva,descritiva, denominadadenominada dedeDESCRIÇÃODESCRIÇÃO DEDE CASOCASO DEDE USO,queUSO,que podepode serser::

ContínuaContínua::

NumeradaNumerada

ParticionadaParticionada

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USO(Cont.)CASOS DE USO(Cont.)

Descrição de Caso de UsoDescrição de Caso de Uso

AlémAlém dada representaçãorepresentação gráfica,gráfica, umum casocaso dede usousopossuipossui umauma representaçãorepresentação descritiva,descritiva, denominadadenominada dedeDESCRIÇÃODESCRIÇÃO DEDE CASOCASO DEDE USO,queUSO,que podepode serser::

ContínuaContínua::

NumeradaNumerada

ParticionadaParticionada

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)Descrição ContínuaDescrição ContínuaOO clientecliente insereinsere cartãocartão nono caixacaixa eletrônicoeletrônico..OO sistemasistemasolicitasolicita aa senhasenha dodo clientecliente.. ApósApós aa digitação/validaçãodigitação/validaçãodada senha,senha, oo sistemasistema mostramostra opçõesopções..DescriçãoDescrição NumeradaNumerada11..OO clientecliente insereinsere seuseu cartãocartão nono caixacaixa eletrônicoeletrônico22..OO sistemasistema solicitasolicita aa senhasenha dodo clientecliente33..ApósApós digitação/validaçãodigitação/validação dada senha,osenha,o sistemasistemamostramostra opçõesopçõesDescriçãoDescrição ParticionadaParticionada

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USO(Cont.)CASOS DE USO(Cont.)Descrição ContínuaDescrição ContínuaOO clientecliente insereinsere cartãocartão nono caixacaixa eletrônicoeletrônico..OO sistemasistemasolicitasolicita aa senhasenha dodo clientecliente.. ApósApós aa digitação/validaçãodigitação/validaçãodada senha,senha, oo sistemasistema mostramostra opçõesopções..DescriçãoDescrição NumeradaNumerada11..OO clientecliente insereinsere seuseu cartãocartão nono caixacaixa eletrônicoeletrônico22..OO sistemasistema solicitasolicita aa senhasenha dodo clientecliente33..ApósApós digitação/validaçãodigitação/validação dada senha,osenha,o sistemasistemamostramostra opçõesopçõesDescriçãoDescrição ParticionadaParticionada

Cliente SistemaInsere cartão no caixaeletrônico

Solicita senha do cliente

Digita senha Valida senha/apresentaopções

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)Descrição >> DetalhesDescrição >> Detalhes

UmaUma descriçãodescrição podepode serser ESSENCIALESSENCIAL (não(não mencionamencionatecnologia)tecnologia) ouou REALREAL (menciona(menciona tecnologia)tecnologia)UtilizarUtilizar aa “REGRA“REGRA PRÁTICAPRÁTICA DOSDOS 100100 ANOS”ANOS” parapara trástrásouou parapara frentefrente (Eduardo(Eduardo Bezerra)Bezerra)FluxoFluxo principalprincipal:: DescreveDescreve asas açõesações normaisnormaisFluxoFluxo alternativoalternativo:: DescreveDescreve açõesações opcionaisopcionais (ou(ouexepcionais)exepcionais)PréPré--condiçãocondição::CondiçãoCondição queque podepode existirexistir antesantes queque oocasocaso dede usouso sejaseja iniciadoiniciadoPósPós--condiçãocondição::CondiçãoCondição queque podepode ocorrerocorrer quandoquando oocasocaso dede usouso terminetermine

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USO(Cont.)CASOS DE USO(Cont.)Descrição >> DetalhesDescrição >> Detalhes

UmaUma descriçãodescrição podepode serser ESSENCIALESSENCIAL (não(não mencionamencionatecnologia)tecnologia) ouou REALREAL (menciona(menciona tecnologia)tecnologia)UtilizarUtilizar aa “REGRA“REGRA PRÁTICAPRÁTICA DOSDOS 100100 ANOS”ANOS” parapara trástrásouou parapara frentefrente (Eduardo(Eduardo Bezerra)Bezerra)FluxoFluxo principalprincipal:: DescreveDescreve asas açõesações normaisnormaisFluxoFluxo alternativoalternativo:: DescreveDescreve açõesações opcionaisopcionais (ou(ouexepcionais)exepcionais)PréPré--condiçãocondição::CondiçãoCondição queque podepode existirexistir antesantes queque oocasocaso dede usouso sejaseja iniciadoiniciadoPósPós--condiçãocondição::CondiçãoCondição queque podepode ocorrerocorrer quandoquando oocasocaso dede usouso terminetermine

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)Nomeando casos de usoNomeando casos de uso

DeveDeve sese iniciariniciar comcom umum verboverbo nono infinitivoinfinitivo eeserser seguidoseguido porpor substantivossubstantivos ee outrosoutroscomplementoscomplementos quequeIdentifiqueIdentifique corretamentecorretamente oo casocaso dede uso,uso,especificandoespecificando oo objetivoobjetivo dodo atorator

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USO(Cont.)CASOS DE USO(Cont.)Nomeando casos de usoNomeando casos de uso

DeveDeve sese iniciariniciar comcom umum verboverbo nono infinitivoinfinitivo eeserser seguidoseguido porpor substantivossubstantivos ee outrosoutroscomplementoscomplementos quequeIdentifiqueIdentifique corretamentecorretamente oo casocaso dede uso,uso,especificandoespecificando oo objetivoobjetivo dodo atorator

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)Atores >> DetalhesAtores >> Detalhes

ÉÉ alguémalguém ouou algoalgo queque interageinterage comcom oo sistemasistema.. ÉÉsempresempre externoexterno aoao sistemasistema..

PodePode serser umauma PESSOA,PESSOA, umum HARDWAREHARDWARE externo,externo, umaumaENTIDADEENTIDADE específicaespecífica ouou umum SISTEMASISTEMA..

UmUm atorator efetuaefetua umum papelpapel específicoespecífico ee possuipossuiresponsabilidadesresponsabilidades

AtorAtor primárioprimário:: GeralmenteGeralmente éé oo atorator queque possuipossui acessoacessodiretodireto aoao sistemasistema..

AtorAtor secundáriosecundário (ou(ou dede suporte)suporte):: GeralmenteGeralmente provêprovêumum serviço,serviço, nãonão diretamente,diretamente, aoao sistemasistema..

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USO(Cont.)CASOS DE USO(Cont.)Atores >> DetalhesAtores >> Detalhes

ÉÉ alguémalguém ouou algoalgo queque interageinterage comcom oo sistemasistema.. ÉÉsempresempre externoexterno aoao sistemasistema..

PodePode serser umauma PESSOA,PESSOA, umum HARDWAREHARDWARE externo,externo, umaumaENTIDADEENTIDADE específicaespecífica ouou umum SISTEMASISTEMA..

UmUm atorator efetuaefetua umum papelpapel específicoespecífico ee possuipossuiresponsabilidadesresponsabilidades

AtorAtor primárioprimário:: GeralmenteGeralmente éé oo atorator queque possuipossui acessoacessodiretodireto aoao sistemasistema..

AtorAtor secundáriosecundário (ou(ou dede suporte)suporte):: GeralmenteGeralmente provêprovêumum serviço,serviço, nãonão diretamente,diretamente, aoao sistemasistema..

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)Representação gráfica geralRepresentação gráfica geral

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USOCASOS DE USOExemplo de descrição (Waslawick/Ernani)Exemplo de descrição (Waslawick/Ernani)

Caso de uso:Caso de uso: Efetuar locação de DVDEfetuar locação de DVDIdentificação:Identificação: UC01UC01Atores:Atores: Balconista(funcionário) e ClienteBalconista(funcionário) e ClienteInteressados:Interessados: Gerência geralGerência geralPréPré--condições:condições: Os DVDs estão todos registrados noOs DVDs estão todos registrados nosistema, com seus respectivos códigossistema, com seus respectivos códigosPósPós--condições:condições: O cliente fica com os DVDs e com umaO cliente fica com os DVDs e com umacópia do cupom de locação (constando prazo decópia do cupom de locação (constando prazo dedevolução e valor total da locação)devolução e valor total da locação)Requisitos relacionados:Requisitos relacionados: F1,F2,F5F1,F2,F5--F10F10

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USOCASOS DE USOExemplo de descrição (Waslawick/Ernani)Exemplo de descrição (Waslawick/Ernani)

Caso de uso:Caso de uso: Efetuar locação de DVDEfetuar locação de DVDIdentificação:Identificação: UC01UC01Atores:Atores: Balconista(funcionário) e ClienteBalconista(funcionário) e ClienteInteressados:Interessados: Gerência geralGerência geralPréPré--condições:condições: Os DVDs estão todos registrados noOs DVDs estão todos registrados nosistema, com seus respectivos códigossistema, com seus respectivos códigosPósPós--condições:condições: O cliente fica com os DVDs e com umaO cliente fica com os DVDs e com umacópia do cupom de locação (constando prazo decópia do cupom de locação (constando prazo dedevolução e valor total da locação)devolução e valor total da locação)Requisitos relacionados:Requisitos relacionados: F1,F2,F5F1,F2,F5--F10F10

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USOCASOS DE USOCaso de uso:Caso de uso: Efetuar locação de DVD(cont.)Efetuar locação de DVD(cont.)

Variações tecnológicas:Variações tecnológicas: A identificação do clienteA identificação do clientepoderá ocorrer com cartões magnéticos ou através depoderá ocorrer com cartões magnéticos ou através deum código numérico gerado pelo sistema. Aum código numérico gerado pelo sistema. Aidentificação dos DVDs poderá ser realizada pelaidentificação dos DVDs poderá ser realizada pelasimples digitação de um código ou pela leitura atravéssimples digitação de um código ou pela leitura atravésde código de barras.de código de barras.Questões em aberto:Questões em aberto:1.Os prazos de locação poder ocorrer de DVD para DVD1.Os prazos de locação poder ocorrer de DVD para DVDou simplesmente por categoria comoou simplesmente por categoria comocatálogo,promocional, etc.?catálogo,promocional, etc.?2.Pode ocorrer variação nos preços de locação por DVD2.Pode ocorrer variação nos preços de locação por DVDou por categoria ou ainda por promoções específicasou por categoria ou ainda por promoções específicascomo levar mais DVDs e pagar menos?como levar mais DVDs e pagar menos?

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USOCASOS DE USOCaso de uso:Caso de uso: Efetuar locação de DVD(cont.)Efetuar locação de DVD(cont.)

Variações tecnológicas:Variações tecnológicas: A identificação do clienteA identificação do clientepoderá ocorrer com cartões magnéticos ou através depoderá ocorrer com cartões magnéticos ou através deum código numérico gerado pelo sistema. Aum código numérico gerado pelo sistema. Aidentificação dos DVDs poderá ser realizada pelaidentificação dos DVDs poderá ser realizada pelasimples digitação de um código ou pela leitura atravéssimples digitação de um código ou pela leitura atravésde código de barras.de código de barras.Questões em aberto:Questões em aberto:1.Os prazos de locação poder ocorrer de DVD para DVD1.Os prazos de locação poder ocorrer de DVD para DVDou simplesmente por categoria comoou simplesmente por categoria comocatálogo,promocional, etc.?catálogo,promocional, etc.?2.Pode ocorrer variação nos preços de locação por DVD2.Pode ocorrer variação nos preços de locação por DVDou por categoria ou ainda por promoções específicasou por categoria ou ainda por promoções específicascomo levar mais DVDs e pagar menos?como levar mais DVDs e pagar menos?

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)Caso de uso:Caso de uso: Efetuar locação de DVD(cont.)Efetuar locação de DVD(cont.)

Fluxo principalFluxo principal1.O cliente chega na recepção com os DVDs escolhidos1.O cliente chega na recepção com os DVDs escolhidos2.O cliente informa seu nome ou o seu código e entrega2.O cliente informa seu nome ou o seu código e entregaos DVDs escolhidosos DVDs escolhidos3.[EV] O balconista(funcionário) informa nome do3.[EV] O balconista(funcionário) informa nome docliente e inicia locaçãocliente e inicia locação4.[EV] O balconista registra cada DVD escolhido pelo4.[EV] O balconista registra cada DVD escolhido peloclientecliente5.[RS] O balconista finaliza a locação, devolvendo os5.[RS] O balconista finaliza a locação, devolvendo osDVDs ao cliente e informa a data de devolução e oDVDs ao cliente e informa a data de devolução e ovalor total da locaçãovalor total da locação6.O cliente vai embora com os DVDs6.O cliente vai embora com os DVDs

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

CASOS DE USO(Cont.)CASOS DE USO(Cont.)Caso de uso:Caso de uso: Efetuar locação de DVD(cont.)Efetuar locação de DVD(cont.)

Fluxo principalFluxo principal1.O cliente chega na recepção com os DVDs escolhidos1.O cliente chega na recepção com os DVDs escolhidos2.O cliente informa seu nome ou o seu código e entrega2.O cliente informa seu nome ou o seu código e entregaos DVDs escolhidosos DVDs escolhidos3.[EV] O balconista(funcionário) informa nome do3.[EV] O balconista(funcionário) informa nome docliente e inicia locaçãocliente e inicia locação4.[EV] O balconista registra cada DVD escolhido pelo4.[EV] O balconista registra cada DVD escolhido peloclientecliente5.[RS] O balconista finaliza a locação, devolvendo os5.[RS] O balconista finaliza a locação, devolvendo osDVDs ao cliente e informa a data de devolução e oDVDs ao cliente e informa a data de devolução e ovalor total da locaçãovalor total da locação6.O cliente vai embora com os DVDs6.O cliente vai embora com os DVDs

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)Caso de uso:Caso de uso: Efetuar locação (Continuação)Efetuar locação (Continuação)Fluxo alternativoFluxo alternativo

3a. O cliente não possui cadastro3a. O cliente não possui cadastro3a1. O cliente deve informar seus dados para o cadastro3a1. O cliente deve informar seus dados para o cadastro3a2. [EV] O balconista registra o cadastro do cliente3a2. [EV] O balconista registra o cadastro do cliente3a3. Retornar ao fluxo principal3a3. Retornar ao fluxo principal –– Passo 3Passo 3

3b. O cliente possui débitos3b. O cliente possui débitos3b1. O cliente efetua o pagamento do seu débito3b1. O cliente efetua o pagamento do seu débito

--Dinheiro: ver variante variante 5.aDinheiro: ver variante variante 5.a(exemplo de variante(exemplo de variante--como fluxo alternativo)como fluxo alternativo)--Cheque: ver extend “Pagar com cheque”Cheque: ver extend “Pagar com cheque”(exemplo de variante)(exemplo de variante)

--Cartão: ver extend “Pagar com cartão”Cartão: ver extend “Pagar com cartão”(exemplo de variante)(exemplo de variante)

3b2. [EV] O balconista registra o pagamento do débito,3b2. [EV] O balconista registra o pagamento do débito,eliminando pendênciaseliminando pendências

3b3. Retornar ao fluxo principal3b3. Retornar ao fluxo principal –– Passo 3Passo 3

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMASCASOS DE USO(Cont.)CASOS DE USO(Cont.)Caso de uso:Caso de uso: Efetuar locação (Continuação)Efetuar locação (Continuação)Fluxo alternativoFluxo alternativo

3a. O cliente não possui cadastro3a. O cliente não possui cadastro3a1. O cliente deve informar seus dados para o cadastro3a1. O cliente deve informar seus dados para o cadastro3a2. [EV] O balconista registra o cadastro do cliente3a2. [EV] O balconista registra o cadastro do cliente3a3. Retornar ao fluxo principal3a3. Retornar ao fluxo principal –– Passo 3Passo 3

3b. O cliente possui débitos3b. O cliente possui débitos3b1. O cliente efetua o pagamento do seu débito3b1. O cliente efetua o pagamento do seu débito

--Dinheiro: ver variante variante 5.aDinheiro: ver variante variante 5.a(exemplo de variante(exemplo de variante--como fluxo alternativo)como fluxo alternativo)--Cheque: ver extend “Pagar com cheque”Cheque: ver extend “Pagar com cheque”(exemplo de variante)(exemplo de variante)

--Cartão: ver extend “Pagar com cartão”Cartão: ver extend “Pagar com cartão”(exemplo de variante)(exemplo de variante)

3b2. [EV] O balconista registra o pagamento do débito,3b2. [EV] O balconista registra o pagamento do débito,eliminando pendênciaseliminando pendências

3b3. Retornar ao fluxo principal3b3. Retornar ao fluxo principal –– Passo 3Passo 3

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)Caso de uso:Caso de uso: Efetuar locação (Continuação)Efetuar locação (Continuação)Fluxo alternativoFluxo alternativo4a. DVD já está reservado para outro cliente4a. DVD já está reservado para outro cliente

4a1. [RS] O balconista informa que o DVD não está4a1. [RS] O balconista informa que o DVD não estádisponível para locaçãodisponível para locação

4a2. O balconista continua registrar locação no4a2. O balconista continua registrar locação nopasso 4passo 44b. DVD está danificado4b. DVD está danificado

4b1. O balconista informa que o DVD está danificado4b1. O balconista informa que o DVD está danificado4b2. [EV] O balconista altera o cadastro do DVD para4b2. [EV] O balconista altera o cadastro do DVD para

danificado (?)danificado (?)4b3. O balconista verifica a disponibilidade de outro4b3. O balconista verifica a disponibilidade de outro

DVD do mesmo filmeDVD do mesmo filme4b4. Se existir, o balconista substitui DVD e4b4. Se existir, o balconista substitui DVD e

continua executar o passo 4continua executar o passo 4

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMASCASOS DE USO(Cont.)CASOS DE USO(Cont.)Caso de uso:Caso de uso: Efetuar locação (Continuação)Efetuar locação (Continuação)Fluxo alternativoFluxo alternativo4a. DVD já está reservado para outro cliente4a. DVD já está reservado para outro cliente

4a1. [RS] O balconista informa que o DVD não está4a1. [RS] O balconista informa que o DVD não estádisponível para locaçãodisponível para locação

4a2. O balconista continua registrar locação no4a2. O balconista continua registrar locação nopasso 4passo 44b. DVD está danificado4b. DVD está danificado

4b1. O balconista informa que o DVD está danificado4b1. O balconista informa que o DVD está danificado4b2. [EV] O balconista altera o cadastro do DVD para4b2. [EV] O balconista altera o cadastro do DVD para

danificado (?)danificado (?)4b3. O balconista verifica a disponibilidade de outro4b3. O balconista verifica a disponibilidade de outro

DVD do mesmo filmeDVD do mesmo filme4b4. Se existir, o balconista substitui DVD e4b4. Se existir, o balconista substitui DVD e

continua executar o passo 4continua executar o passo 4

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)Caso de uso:Caso de uso: Efetuar locação (Continuação)Efetuar locação (Continuação)VariantesVariantes5.a: Dinheiro:5.a: Dinheiro:

5.a.1. O cliente entrega a quantia em dinheiro.5.a.1. O cliente entrega a quantia em dinheiro.5.a.2. [EV] O funcionário registra a quantia.5.a.2. [EV] O funcionário registra a quantia.5.a.3. [RS] O sistema informa o troco.5.a.3. [RS] O sistema informa o troco.5.a.4. O funcionário entrega o troco ao cliente5.a.4. O funcionário entrega o troco ao cliente5.a.5. Voltar ao passo 3b5.a.5. Voltar ao passo 3b

Fluxo de ExceçãoFluxo de Exceção

Observações:Observações:

Dados:Dados:codigo do DVD, descr.filme, cpf, nome do cliente, tipo docodigo do DVD, descr.filme, cpf, nome do cliente, tipo doFilme e outrosFilme e outros

Analista de negócio:Analista de negócio:Área:Área:Data:Data:Versão:Versão:

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMASCASOS DE USO(Cont.)CASOS DE USO(Cont.)Caso de uso:Caso de uso: Efetuar locação (Continuação)Efetuar locação (Continuação)VariantesVariantes5.a: Dinheiro:5.a: Dinheiro:

5.a.1. O cliente entrega a quantia em dinheiro.5.a.1. O cliente entrega a quantia em dinheiro.5.a.2. [EV] O funcionário registra a quantia.5.a.2. [EV] O funcionário registra a quantia.5.a.3. [RS] O sistema informa o troco.5.a.3. [RS] O sistema informa o troco.5.a.4. O funcionário entrega o troco ao cliente5.a.4. O funcionário entrega o troco ao cliente5.a.5. Voltar ao passo 3b5.a.5. Voltar ao passo 3b

Fluxo de ExceçãoFluxo de Exceção

Observações:Observações:

Dados:Dados:codigo do DVD, descr.filme, cpf, nome do cliente, tipo docodigo do DVD, descr.filme, cpf, nome do cliente, tipo doFilme e outrosFilme e outros

Analista de negócio:Analista de negócio:Área:Área:Data:Data:Versão:Versão:

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)ReforçandoReforçandoO QUE UM CASO DE USO NÃO CONTEM:O QUE UM CASO DE USO NÃO CONTEM:

O caso de uso descreve a funcionalidade do sistema deuma perspectiva orientada a atividade (passos)

•Detalhes da interface de usuário (útil para protótipos);

• Objetivos de performace (requisito não funcional);

• Detalhes da arquitetura da aplicação (design);

• Requisitos não funcionais (eventualmente, notas)

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMASCASOS DE USO(Cont.)CASOS DE USO(Cont.)ReforçandoReforçandoO QUE UM CASO DE USO NÃO CONTEM:O QUE UM CASO DE USO NÃO CONTEM:

O caso de uso descreve a funcionalidade do sistema deuma perspectiva orientada a atividade (passos)

•Detalhes da interface de usuário (útil para protótipos);

• Objetivos de performace (requisito não funcional);

• Detalhes da arquitetura da aplicação (design);

• Requisitos não funcionais (eventualmente, notas)

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LCASOS DE USO(Cont.)CASOS DE USO(Cont.)ReforçandoReforçandoO QUE UM CASO DE USO NÃO CONTEMO QUE UM CASO DE USO NÃO CONTEM -- EXEMPLOSEXEMPLOS

“... O ator clica no botão OK...”

“... O sistema exibe um JTable com os...”

“... A resposta deverá ser retornada em menos de 10segs...”

“... O sistema inicia uma conexão com o servidor deaplicação...”

“... O usuário deverá entrar os códigos através dacaneta ótica ....”

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMASCASOS DE USO(Cont.)CASOS DE USO(Cont.)ReforçandoReforçandoO QUE UM CASO DE USO NÃO CONTEMO QUE UM CASO DE USO NÃO CONTEM -- EXEMPLOSEXEMPLOS

“... O ator clica no botão OK...”

“... O sistema exibe um JTable com os...”

“... A resposta deverá ser retornada em menos de 10segs...”

“... O sistema inicia uma conexão com o servidor deaplicação...”

“... O usuário deverá entrar os códigos através dacaneta ótica ....”

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

CASOS DE USO(Cont.)CASOS DE USO(Cont.)Representação gráfica da varianteRepresentação gráfica da variante

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LIDENTIFICAÇÃO DE CASOS DE USO E ATORESIDENTIFICAÇÃO DE CASOS DE USO E ATORES

ComoComo umum casocaso dede usouso descrevedescreve situaçõessituações coerentescoerentes dede comocomo oosistemasistema iráirá sese comportarcomportar..............Então,Então, devedeve--sese estabelecerestabelecer umauma visãovisão geralgeral dodo projetoprojetoIdentificarIdentificar osos atoresatores ee responsabilidadesresponsabilidadesProcureProcure identificaridentificar osos papéispapéis diferentesdiferentes queque umum indivíduoindivíduoespecíficoespecífico podepode assumirassumir nono sistemasistemaAA melhormelhor formaforma dede identificaridentificar casoscasos dede usouso éé focalizarfocalizar ososprocessosprocessos queque cadacada atorator participaparticipaNãoNão esqueceresquecer::NomeNome dodo casocaso devedeve iniciariniciar comcom verboverbo nono infinitivoinfinitivoIDENTIFIQUEIDENTIFIQUE ASAS ITERAÇÕESITERAÇÕES DODO USUÁRIOUSUÁRIODESCREVADESCREVA ASAS FUNÇÕESFUNÇÕES QUEQUE OO USUÁRIOUSUÁRIO DESEJADESEJA DODOSISTEMASISTEMADESCREVADESCREVA ASAS FUNÇÕESFUNÇÕES QUEQUE CRIAM,CRIAM, LEIAM,LEIAM, ATUALIZAMATUALIZAM EEEXCLUEMEXCLUEM INFORMAÇÕESINFORMAÇÕES (CRUD,(CRUD,......))DESCREVADESCREVA COMOCOMO OO ATORATOR NECESSITARÁNECESSITARÁ INFORMARINFORMAR AOAOSISTEMASISTEMA EVENTOSEVENTOS OCORRIDOSOCORRIDOS

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

IDENTIFICAÇÃO DE CASOS DE USO E ATORESIDENTIFICAÇÃO DE CASOS DE USO E ATORES

ComoComo umum casocaso dede usouso descrevedescreve situaçõessituações coerentescoerentes dede comocomo oosistemasistema iráirá sese comportarcomportar..............Então,Então, devedeve--sese estabelecerestabelecer umauma visãovisão geralgeral dodo projetoprojetoIdentificarIdentificar osos atoresatores ee responsabilidadesresponsabilidadesProcureProcure identificaridentificar osos papéispapéis diferentesdiferentes queque umum indivíduoindivíduoespecíficoespecífico podepode assumirassumir nono sistemasistemaAA melhormelhor formaforma dede identificaridentificar casoscasos dede usouso éé focalizarfocalizar ososprocessosprocessos queque cadacada atorator participaparticipaNãoNão esqueceresquecer::NomeNome dodo casocaso devedeve iniciariniciar comcom verboverbo nono infinitivoinfinitivoIDENTIFIQUEIDENTIFIQUE ASAS ITERAÇÕESITERAÇÕES DODO USUÁRIOUSUÁRIODESCREVADESCREVA ASAS FUNÇÕESFUNÇÕES QUEQUE OO USUÁRIOUSUÁRIO DESEJADESEJA DODOSISTEMASISTEMADESCREVADESCREVA ASAS FUNÇÕESFUNÇÕES QUEQUE CRIAM,CRIAM, LEIAM,LEIAM, ATUALIZAMATUALIZAM EEEXCLUEMEXCLUEM INFORMAÇÕESINFORMAÇÕES (CRUD,(CRUD,......))DESCREVADESCREVA COMOCOMO OO ATORATOR NECESSITARÁNECESSITARÁ INFORMARINFORMAR AOAOSISTEMASISTEMA EVENTOSEVENTOS OCORRIDOSOCORRIDOS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE SEQUÊNCIADIAGRAMA DE SEQUÊNCIA

RepresentaRepresenta umauma sequênciasequência ordenadaordenada dede eventoseventos nonotempotempo

AuxiliaAuxilia nana composiçãocomposição dede tarefastarefas estabelecidasestabelecidas ememumum casocaso dede usouso

MelhoraMelhora oo diagramadiagrama dede classes,classes,acrescentando/retirandoacrescentando/retirando métodosmétodos e/oue/ou atributosatributos

NaNa fasefase dede análiseanálise consideraconsidera--sese apenasapenas elementoselementosexternosexternos aoao sistemasistema

NaNa fasefase dede análiseanálise oo sistemasistema éé umauma CAIXACAIXA PRETAPRETA

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

DIAGRAMA DE SEQUÊNCIADIAGRAMA DE SEQUÊNCIA

RepresentaRepresenta umauma sequênciasequência ordenadaordenada dede eventoseventos nonotempotempo

AuxiliaAuxilia nana composiçãocomposição dede tarefastarefas estabelecidasestabelecidas ememumum casocaso dede usouso

MelhoraMelhora oo diagramadiagrama dede classes,classes,acrescentando/retirandoacrescentando/retirando métodosmétodos e/oue/ou atributosatributos

NaNa fasefase dede análiseanálise consideraconsidera--sese apenasapenas elementoselementosexternosexternos aoao sistemasistema

NaNa fasefase dede análiseanálise oo sistemasistema éé umauma CAIXACAIXA PRETAPRETA

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE SEQUÊNCIA (Cont.)DIAGRAMA DE SEQUÊNCIA (Cont.)SímbolosSímbolos

Objeto:classe

Linha doTempo

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

**Mensagem de retorno(normal/tracejada) são opcionais, dependendo do padrãodefinido pela equipe de desenvolvimento

Mensagementre objetos

Destruição doobjeto

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE ATIVIDADESDIAGRAMA DE ATIVIDADES

PermitePermite modelarmodelar oo comportamentocomportamento dodo sistema,sistema,denotandodenotando osos caminhoscaminhos lógicoslógicos queque umum processoprocesso podepodeseguirseguir

SeSe baseiabaseia nono conceitoconceito dada REDEREDE PETRI,PETRI, queque possuipossui ososnósnós TRANSIÇÃOTRANSIÇÃO (o(o evento)evento) ee LUGARLUGAR (onde(onde oo eventoeventoocorre)ocorre)

UmUm eventoevento (ou(ou atividade)atividade) éé representadorepresentado porpor umumRETÂNGULORETÂNGULO ee umum lugarlugar éé indicadoindicado porpor PARTIÇÕESPARTIÇÕES

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

DIAGRAMA DE ATIVIDADESDIAGRAMA DE ATIVIDADES

PermitePermite modelarmodelar oo comportamentocomportamento dodo sistema,sistema,denotandodenotando osos caminhoscaminhos lógicoslógicos queque umum processoprocesso podepodeseguirseguir

SeSe baseiabaseia nono conceitoconceito dada REDEREDE PETRI,PETRI, queque possuipossui ososnósnós TRANSIÇÃOTRANSIÇÃO (o(o evento)evento) ee LUGARLUGAR (onde(onde oo eventoeventoocorre)ocorre)

UmUm eventoevento (ou(ou atividade)atividade) éé representadorepresentado porpor umumRETÂNGULORETÂNGULO ee umum lugarlugar éé indicadoindicado porpor PARTIÇÕESPARTIÇÕES

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE ATIVIDADES (Cont.)DIAGRAMA DE ATIVIDADES (Cont.)SimbolosSimbolos

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE ATIVIDADES (Cont.)DIAGRAMA DE ATIVIDADES (Cont.)ExemploExemplo

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE COLABORAÇÃODIAGRAMA DE COLABORAÇÃO

PermitePermite modelarmodelar oo relacionamentorelacionamento entreentre osos objetosobjetos

PossuiPossui asas mesmasmesmas informaçõesinformações existentesexistentes nonodiagramadiagrama dede sequência,sequência, masmas permitepermite aa visualizaçãovisualização dosdosfluxosfluxos dede mensagensmensagens entreentre osos objetosobjetos

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

DIAGRAMA DE COLABORAÇÃODIAGRAMA DE COLABORAÇÃO

PermitePermite modelarmodelar oo relacionamentorelacionamento entreentre osos objetosobjetos

PossuiPossui asas mesmasmesmas informaçõesinformações existentesexistentes nonodiagramadiagrama dede sequência,sequência, masmas permitepermite aa visualizaçãovisualização dosdosfluxosfluxos dede mensagensmensagens entreentre osos objetosobjetos

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE CLASSESDIAGRAMA DE CLASSES

ApresentaApresenta umum quadroquadro estáticoestático dasdas peçaspeças (classes)(classes) dodosistemasistema ee osos relacionamentosrelacionamentos entreentre asas classesclasses dodosistemasistemaOsOs desenvolvedoresdesenvolvedores usamusam esseesse diagramadiagrama paraparadesenvolverdesenvolver asas classesclasses ee parapara instanciarinstanciar osos seusseusrespectivosrespectivos objetosobjetosOsOs analistasanalistas dede sistemassistemas usamusam esseesse diagramadiagrama paraparaavaliaravaliar ee mostrarmostrar osos detalhesdetalhes dodo sistemasistemaEsseEsse diagramadiagrama éé utilizadoutilizado tambémtambém parapara sese analisaranalisar oodesigndesign dodo sistemasistema

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

DIAGRAMA DE CLASSESDIAGRAMA DE CLASSES

ApresentaApresenta umum quadroquadro estáticoestático dasdas peçaspeças (classes)(classes) dodosistemasistema ee osos relacionamentosrelacionamentos entreentre asas classesclasses dodosistemasistemaOsOs desenvolvedoresdesenvolvedores usamusam esseesse diagramadiagrama paraparadesenvolverdesenvolver asas classesclasses ee parapara instanciarinstanciar osos seusseusrespectivosrespectivos objetosobjetosOsOs analistasanalistas dede sistemassistemas usamusam esseesse diagramadiagrama paraparaavaliaravaliar ee mostrarmostrar osos detalhesdetalhes dodo sistemasistemaEsseEsse diagramadiagrama éé utilizadoutilizado tambémtambém parapara sese analisaranalisar oodesigndesign dodo sistemasistema

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE CLASSES(Cont.)DIAGRAMA DE CLASSES(Cont.)Identificando classesIdentificando classes

IniciaInicia--se essa identificação no fluxo dos casos dese essa identificação no fluxo dos casos deuso, cujos substantivos (nomes) podem ser: um ator,uso, cujos substantivos (nomes) podem ser: um ator,uma classe ou um atributo de classeuma classe ou um atributo de classe

Os verbos nos casos de uso podem implicar emOs verbos nos casos de uso podem implicar em(comportamentos) métodos de uma classe(comportamentos) métodos de uma classe

Separar, posteriormente, as classes em pacotes e emSeparar, posteriormente, as classes em pacotes e emcamadas arquitetônicas (exemplo: MVC=Modelo, Visão,camadas arquitetônicas (exemplo: MVC=Modelo, Visão,Controle)Controle)

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

DIAGRAMA DE CLASSES(Cont.)DIAGRAMA DE CLASSES(Cont.)Identificando classesIdentificando classes

IniciaInicia--se essa identificação no fluxo dos casos dese essa identificação no fluxo dos casos deuso, cujos substantivos (nomes) podem ser: um ator,uso, cujos substantivos (nomes) podem ser: um ator,uma classe ou um atributo de classeuma classe ou um atributo de classe

Os verbos nos casos de uso podem implicar emOs verbos nos casos de uso podem implicar em(comportamentos) métodos de uma classe(comportamentos) métodos de uma classe

Separar, posteriormente, as classes em pacotes e emSeparar, posteriormente, as classes em pacotes e emcamadas arquitetônicas (exemplo: MVC=Modelo, Visão,camadas arquitetônicas (exemplo: MVC=Modelo, Visão,Controle)Controle)

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE CLASSES(Cont.)DIAGRAMA DE CLASSES(Cont.)Estereótipo de análiseEstereótipo de análise

Na fase de análise não se conhece ainda os elementosNa fase de análise não se conhece ainda os elementos(atributos e métodos) de uma classe(atributos e métodos) de uma classe

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE CLASSES(Cont.)DIAGRAMA DE CLASSES(Cont.)Modelo padrãoModelo padrão

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.L

DIAGRAMA DE CLASSES(Cont.)DIAGRAMA DE CLASSES(Cont.)RelacionamentosRelacionamentos

Generalização/Especialização

Interface

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

Dependência

Agregação

Composição

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAUsando o Enterprise Architect 5.0 (EAUsando o Enterprise Architect 5.0 (EA--5.0)5.0)

PermitePermite modelarmodelar diagramasdiagramas ee notaçãonotação UMLUML 22..00PermitePermite geraçãogeração ee engenhariaengenharia reversareversa dede classesclassesescritasescritas emem C++,C++, Java,Java, C#,C#, VB,VB, VBVB..NETNET ee PHPPHPOfereceOferece recursosrecursos parapara modelagemmodelagem dede dadosdados eeengenhariaengenharia reversareversa parapara diversosdiversos bancosbancosOfereceOferece recursosrecursos parapara geraçãogeração dede documentosdocumentos HTMLHTMLee exportaçãoexportação parapara XMLXMLOfereceOferece recursosrecursos parapara estimativasestimativas ee métricasmétricas porporcasocaso dede uso,uso, etcetc..PermitePermite tambémtambém aa modelagemmodelagem dede processosprocessos dedenegócionegócioOfereceOferece recursosrecursos parapara elaboraçãoelaboração dede interfaceinterface dedeusuáriousuárioMultiplataformaMultiplataforma

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

UML NA PRÁTICAUML NA PRÁTICAUsando o Enterprise Architect 5.0 (EAUsando o Enterprise Architect 5.0 (EA--5.0)5.0)

PermitePermite modelarmodelar diagramasdiagramas ee notaçãonotação UMLUML 22..00PermitePermite geraçãogeração ee engenhariaengenharia reversareversa dede classesclassesescritasescritas emem C++,C++, Java,Java, C#,C#, VB,VB, VBVB..NETNET ee PHPPHPOfereceOferece recursosrecursos parapara modelagemmodelagem dede dadosdados eeengenhariaengenharia reversareversa parapara diversosdiversos bancosbancosOfereceOferece recursosrecursos parapara geraçãogeração dede documentosdocumentos HTMLHTMLee exportaçãoexportação parapara XMLXMLOfereceOferece recursosrecursos parapara estimativasestimativas ee métricasmétricas porporcasocaso dede uso,uso, etcetc..PermitePermite tambémtambém aa modelagemmodelagem dede processosprocessos dedenegócionegócioOfereceOferece recursosrecursos parapara elaboraçãoelaboração dede interfaceinterface dedeusuáriousuárioMultiplataformaMultiplataforma

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAÁrea de Trabalho do EAÁrea de Trabalho do EAAo se criar um novo projeto, o EA apresenta a seguinteAo se criar um novo projeto, o EA apresenta a seguintetela:tela:

Modelo deProjetoBásico

-Não

alterar

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

Nome doArquivo com

Extensão.EAP

Modelo deProjetoBásico

-Não

alterar

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAÁrea de Trabalho do EAÁrea de Trabalho do EA

UML Toolbox

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

UML Toolbox

Área de desenho

As janelas possuem o botão AUTOHIDE para a respectiva ocultação

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAÁrea de Trabalho do EAÁrea de Trabalho do EA

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

Botões deRolagemdo grupo

deelementos

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAÁrea de Trabalho do EAÁrea de Trabalho do EA

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAÁrea de Trabalho do EAÁrea de Trabalho do EA

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS

PROF.VICENTEPROF.VICENTE

U.M.LU.M.LUML NA PRÁTICAUML NA PRÁTICAExercício Sistema de LojaExercício Sistema de Loja

ANALISE E PROJETO DE SISTEMASANALISE E PROJETO DE SISTEMAS