CONTEDO
Conceitos de Modelagem de Software Mtodos e Linguagens de Modelagem UML Histrico e Caractersticas UML Principais diagramas
Modelos grficos e textuais que se complementam para descrever um sistema Facilitar a Compreenso do sistema Associada a um mtodo e uma linguagem de modelagem Implementada com o auxlio de ferramentas CASE(Computer-Aided Software Engeneering)
Anlise Estruturada
Retrata o fluxo e o contedo das informaes de um sistema Baseia-se no Paradigma Estruturado de Programao Ferramentas de modelagem: DFD(Diagrama de Fluxo de Dados), Dicionrios de dados, rvores/Tabelas de deciso Atualmente est perdendo espao para a Anlise Orientada a Objetos
Metodologia mais utilizada atualmente em novos projetos de software Baseia-se no Paradigma Orientado a Objetos Ferramentas de modelagem: UML(Unified Modeling Language)
Incio do desenvolvimento em 1994 Unificao dos mtodos Booch, OMT e OOSE. Participao de diversas empresas na especificao da linguagem, como HP, IBM, Microsoft, Linguagem No Proprietria
Padronizada e mantida pelo OMG(Object Management Group) No um mtodo, pode ser usada com um O mtodo RUP(Rational Unified Process) da IBM foi desenvolvido especificamente para trabalho integrado com a UML Regras de notao bem definidas
Descrevem as funcionalidades previstas para o sistema de forma intuitiva Ponte de Comunicao entre Usurios e analistas Base para outras tarefas como anlise e criao de diagramas Independentes de detalhes de implementao Ilustram interaes entre o sistema e seus usurios
Narrativa
Cenrios Principais Funcionamento perfeito Cenrios Alternativos Excees e erros previstos para o cenrio principal Atores Papis assumidos pelos usurios do sistema
Narrativa Exemplo
consultar saldo
efetuar depsito emitir extrato
efetuar saque
Narrativa Exemplo
1. Sistema l carto magntico
2. Sistema Solicita senha 3. Sistema valida senha
Cenrio Principal
Narrativa Exemplo
Cenrios Alternativos:
Alternativa: problemas na leitura do carto 1a Tentar leitura do carto novamente por no mximo mais 2 vezes. Se o problema persistir, pedir para o usurio efetuar a troca do carto e encerrar o caso de uso. Alternativa: Senha invlida: 3a Informar o erro ao usurio e solicitar novamente a senha por no mximo 2 vezes, aps isso bloquear a conta e encerrar caso de uso.
Narrativa Complementao
Informaes adicionais
Relacionamentos - Associao
Interao entre atores e casos de uso relacionamento binrio nico possvel entre atores e casos de uso. Ex: Ator Correntista envia e recebe mensagens do Caso de Uso Calcular Emprstimo Pessoal, atravs de um relacionamento de associao.
Relacionamentos Generalizao
Ex: Podemos criar um ator genrico Usurio e especializ-lo para os atores Gerente e Administrador.
Relacionamentos Extenso
Permite a um caso de uso em algum ponto de sua execuo chamar um outro caso, que uma extenso deste
Utilidades:
desmembramento de casos de uso muito grandes; separar comportamentos obrigatrios de opcionais; separar trechos executados condicionalmente; separar trechos de interao exclusiva com um determinado ator.
Relacionamentos Extenso
Exemplo:
Cenrio Principal 5. Escolher forma de pagamento 6. Se cliente VIP, calcular desconto especial. Extend(desconto ClienteVip)
Relacionamentos Incluso
Incluso - indica que um caso de uso pode ter seu procedimento copiado em outros casos de uso. Muito usado para representar rotinas que se repetem em vrias situaes.
Exemplo: a ao validar matrcula pode ser usada tanto para os casos de renovao de matrcula, novos alunos, emitir histrico escolar, lanar notas, etc Dessa forma transformado em um caso de incluso: Cenrio principal 1. O aluno digita sua matrcula. O sistema verifica se a matrcula vlida e ativa. Include(Validar Matrcula)
Diagrama
Representao grfica resumida Mostra atores, casos de uso e seus relacionamentos Facilita a otimizao dos casos de uso Permite uma viso geral da estrura de funcionalidades do sistema
Matricular Aluno
Pontos de Extenso: desconto ClienteVIP
Diagrama Atores
actor
Cliente
Cliente Sistema Acadmico
Diagrama Relacionamentos
Associao representado por uma linha slida, ligando o ator ao caso de uso
Diagrama Relacionamentos
Generalizao representado por uma linha slida com seta fechada no preenchida, partindo do caso/ator mais especfico para o mais genrico.
Cadastrar Funcionrio Vendedor
Cadastrar professor
Gerente
Diagrama Relacionamentos
Incluso representado por uma seta tracejada de ponta aberta, partindo do caso de uso base para o caso de uso que ser includo e contendo o texto include.
Caso de uso base Matricular Aluno Validar Matrcula
Diagrama Relacionamentos
Incluso representado por uma seta tracejada de ponta aberta, partindo do caso de uso base para o caso de uso que ser includo e contendo o texto include.
Caso de uso base Matricular Aluno Validar Matrcula
Diagrama Relacionamentos
Extenso representado por uma seta tracejada de ponta aberta, partindo do caso de uso extendido para o caso de uso base, contendo o texto extend. Tambm permitida pela UML a criao de condies atravs de notas.
Caso de uso de extenso Efetuar Venda Caso de base
Condition: (Perda de conexo com sistema de autorizao) extension point: Validao do Carto
Representam a estrutura de classes do sistema, com seus atributos, mtodos e relacionamentos Se aproximam mais da etapa de codificao Utilizam os casos de uso como base para a identificao das classes
Identificao de classes
Analisar cada caso de uso procurando classes candidatas (geralmente substantivos/ alguns verbos) Reduzir a lista de candidatas de acordo com sua relevancia para o sistema Identificar os atributos das classes Identificar relacionamentos entre classes Criar os diagramas representando as classes e seus relacionamentos
Elementos do Diagrama
Atributos da classe
Mtodos da classe
Elementos do Diagrama
Relacionamentos - Associao
Pr-requisito
Aluno Disciplina
+Atributo
Cursa
+Atributo #Mtodo
#Mtodo
Elementos do Diagrama
Relacionamentos - Generalizao
Pessoa +Atributo #Mtodo
Funcionrio +Atributo
#Mtodo
Elementos do Diagrama
Relacionamentos - Dependncia
AgendaConsultas
+Atributo
HorarioMedico
+Atributo
#Mtodo
#Mtodo
mostra uma sequncia de mensagens trocadas entre objetos Enfatiza a comunicao e passagem de controle entre objetos ao longo do tempo til para descrever uma sequncia particular de funcionamento, como por exemplo um cenrio principal de um caso de uso
Elementos do diagrama
Objetos Participantes retngulos com o nome do participante e uma linha tracejada representando sua linha de vida.
Participante 1
Participante 2
Elementos do diagrama
Mensagens Linhas com setas trocadas entre os participantes, contendo a ao da mensagem e algumas vezes argumentos e valores de retorno
Participante 1
Participante 2
Ao da mensagem
Diagrama de colaborao Diagrama de Interatividade Diagrama de atividade Diagrama de componentes Diagrama de estrutura composta Diagrama de instalao Diagrama de objetos Diagrama de pacotes Diagrama de tempo Diagrama de transio de estados
Facilidade de Construo dos diagramas Gerao parcial de cdigo Capacidades de intercambio de informaes e diagramas
BIBLIOGRAFIA
PDUA FILHO, W. Engenharia de Software: fundamentos, mtodos e padres. LTC, 2003. PRESSMAN, R. Engenharia de Software. 6a. ed. McGraw-Hill, 2006. SOMMERVILLE, I. Engenharia de Software. 8a. ed. Pearson Education, 2007. PFLEEGER, S. Engenharia de Software: teoria e prtica. Pearson Education, 2004.