Análise e Projeto de Sistemas

Slides:



Advertisements
Apresentações semelhantes
Análise e Projeto Orientado a Objetos
Advertisements

Análise e Projeto Orientado a Objetos
Rational Unified Process
UML Modelando um sistema.
UML Visões – Parte 2.
UML – Visões Parte 1 Modelando um sistema.
(Unified Modeling Language)
Engenharia de Software
Rational Unified Process(RUP)
UML Material retirado da apostila do Professor Cesar Augusto Tacla
Centrado na arquitetura
Metodologias Equipe do Curso de ES para SMA
Linguagens de Modelagem para SMA
SISTEMA É UMA ENTIDADE QUE MANTEM SUA EXISTÊNCIA ATRAVÉS DA INTERAÇÃO DE SUAS PARTES ( Bertalanffy ) Interação Mútua Diferente duma simples.
Introdução a diagrama de classes e UML
Análise Estruturada O mais amplamente usado dos métodos de modelagem de requisitos Modelos que retratam fluxo e o conteúdo da informação (dados e controle)
Análise e Projeto de Sistemas
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
Aspectos Avançados em Engenharia de Software Aula 3 Fernanda Campos
RUP: Fluxo de Análise e Projeto
Classes e objetos Modelagem
Modelagem para Web Aula de 11/04/2011.
Diagrama de Componentes
Engenharia de Software e Sistemas de Informação e Gestão
Aula 1 Minicurso: Astah Ministrantes: André Martins; Camila Brondani;
Introdução UML, Diagrama de Classes e Comunicação/Colabaração
DIAGRAMA DE CASO DE USO Prof. Fabíola Gonçalves C. Ribeiro.
Análise e Projeto de Sistemas UNIVERSIDADE DE CRUZ ALTA Ciência da Computação 2010/1.
Análise e Projeto de Sistemas
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Referências: Booch, G. et al. The Unified Modeling Language User Guide
Diagramas de Atividade
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática Disciplina: Interpretação de Projetos de Software Professor: Cheli dos S. Mendes.
Análise e Projeto de Sistemas
SISTEMAS DISTRIBUIDOS Aula 4
Bruno Silva Desenvolvido a partir de
O Processo Unificado (UP)
Banco de Dados Aplicado ao Desenvolvimento de Software
O que é? É o processo de investigação técnica com intuito de identificar a qualidade, a segurança e a exatidão do software desenvolvido. A validação do.
POO Aula 03 Projeto OO com UML Eduardo Figueiredo 11 de Março de 2010.
RUP - Cap. 4 – Processo Centrado na Arquitetura
METODOLOGIA, MÉTODOS E FERRAMENTAS
Laboratório de Programação
RUP - Cap. 3 – Processo Dirigido por Caso de Uso
Revisão 2º Bimestre Engenharia de Software I
Profº Henrique Vila Nova Unibratec CTD – 2º Período
Análise e Projeto de Sistemas
Integração de Ferramentas CASE
IEEE Melhores Práticas para Descrições de Projeto de Software (DPS)
UML e a Ferramenta Astah
Linguagem de Modelagem Unificada
Tarciane Andrade Análise de Casos de Uso Tarciane Andrade
Engenharia de Software e Sistemas
Modelagem Orientada a Objetos Use-Case Modeling. Objetivos básicos de um modelo use-case n Descrever o que um novo sistema deve fazer n Descrever o que.
Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.
Introdução a Orientação a Objetos
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
A linguagem unificada de modelagem
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
CIn-UFPE1 UML Uma linguagem unificada de modelagem Visão Geral.
Interações entre objetos
UML (Unified Modeling Language) A linguagem unificada de modelagem
Analisar Caso de Uso. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Analisar caso de uso | 2 Objetivos deste módulo.
1 Especificação de Sistemas de Software e a UML. 2 Modelagem de sistema A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema.
Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto.
Análise e Design de Software Site:
©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso.
O Processo Unificado (PU). 2 O que é o Processo Unificado (PU)? É um modelo de processo de software baseado no modelo incremental, visando a construção.
Transcrição da apresentação:

Análise e Projeto de Sistemas Aula 6 Professor: Italo Rodrigues Castro

A Linguagem de Modelagem Unificada (UML)

Necessidade de um padrão Percebeu-se a necessidade de um padrão para a modelagem de sistemas, que fosse aceito e utilizado amplamente. Surge a UML (Unified Modeling Language) em 1996 como a melhor candidata para ser linguagem “unificadora” de notações.

Necessidade de um padrão Percebeu-se a necessidade de um padrão para a modelagem de sistemas, que fosse aceito e utilizado amplamente.

Necessidade de um padrão Surge a UML (Unified Modeling Language) em 1996 como a melhor candidata para ser linguagem “unificadora” de notações. Em 1997, a UML é aprovada como padrão pelo OMG. Desde então, a UML tem tido grande aceitação pela comunidade de desenvolvedores de sistemas. É uma linguagem ainda em desenvolvimento. Atualmente na versão 2.0.

Características da UML uma linguagem visual. independente de linguagem de programação. independente de processo de desenvolvimento. UML não é... uma linguagem programação. uma técnica de modelagem.

UML - Introdução O que é? Quando surgiu? A UML é uma linguagem para especificação, visualização, construção e documentação de modelos de sistema de software. Quando surgiu? Surgiu no final dos anos oitenta e no inicio dos anos noventa.

UML - Introdução A UML não tem as características de um método. Pois não representa uma sequência de passos para a resolução de um problema, como deveria ser no caso de um método. Então, a UML não é um método e sim uma linguagem.

Diagramas da UML Um processo de desenvolvimento que utilize a UML como linguagem de modelagem envolve a criação de diversos documentos. Estes documentos podem ser textuais ou gráficos. Estes documentos são denominados artefatos de software. São os artefatos que compõem as visões do sistema. Os artefatos gráficos produzidos durante o desenvolvimento de um sistema de software são definidos através da utilização dos diagramas da UML.

UML - Introdução A UML pode ser utilizada tanto no desenvolvimento de software como representar sistemas mecânicos sem nenhum software, descrevendo-os em termos de diagramas orientados a objetos.

UML - Introdução Existem várias metodologias de modelagem orientadas a objeto que, até o surgimento da UML, causavam uma guerra entre a comunidade de desenvolvedores orientado a objetos. A UML acabou com esta guerra, trazendo as melhores idéias de cada uma destas metodologias.

UML - Introdução A UML é uma tentativa de padronizar a modelagem orientada a objetos de uma forma que qualquer sistema, seja qual for o tipo, possa ser modelado corretamente, com consistência, fácil de se comunicar com outras aplicações, simples de ser atualizado e compreensível.

UML - Objetivos O objetivos da UML são: A modelagem de sistemas (não apenas de softwares) usando os conceitos da orientação a objetos. Estabelecer uma união fazendo com que métodos conceituais sejam também executáveis. Criar uma linguagem de modelagem usável tanto pelo homem quanto pela máquina.

UML – Uso da UML A UML é usada no desenvolvimento dos mais diversos tipos de sistemas. Ela abrange sempre qualquer características de um sistema em um de seus diagramas e é também aplicada em diferentes fases do desenvolvimento de um sistema, desde a especificação de análise de requisitos até a finalização com a fase de testes.

UML – Uso da UML Um dos objetivos da UML é descrever qualquer tipo de sistema, em termos de diagramas orientados a objetos, o uso mais comum é para criar modelos de software, mas também é usada para representar sistemas mecânicos. Veja alguns tipos de sistemas, que é utilizado a UML, com suas características mais comuns.

UML – Uso da UML Sistemas de Informação: Armazenar, pesquisar, editar e mostrar informações para usuários. Sistemas Técnicos: Manter e controlar equipamentos técnicos como de telecomunicações, equipamentos militares e ou processos industriais. Eles devem possuir interfaces especiais do equipamento e menos programação de software.

UML – Fases de Desenvolvimento Existem cinco fases no desenvolvimento de sistemas de software (devem ser executadas nesta ordem): Análise de Requisitos Análise Design (projeto) Programação Testes

UML – Fases de Desenvolvimento Análise de Requisitos: Captura as intenções e necessidades dos usuários do sistema a ser desenvolvido através do uso de funções chamadas “use-cases”. Através do desenvolvimento de use-cases, as entidades externas ao sistema (atores externos) que interagem e possuem interesse no sistema são modelados entre as funções que eles requerem, funções estas chamadas de use-cases.

UML – Fases de Desenvolvimento Análise de Requisitos: Os atores externos e os use-cases são modelados com relacionamentos que possuem comunicação associativa entre eles ou são desmembrados em hierarquia. O diagrama de use-cases mostrará o que os atores externos, ou seja, os usuários do futuro sistema deverão esperar do aplicativo, conhecendo TODA a sua funcionalidade, sem importar como será implementada.

UML – Fases de Desenvolvimento Análise: A fase de análise está preocupada com as primeiras abstrações (classes e objetos) e mecanismos que estarão presentes no domínio do problema. As classes são modeladas e ligadas através de relacionamentos com outras classes, e são descritas no diagrama de Classes.

UML – Fases de Desenvolvimento Análise: As colaborações entre classes também são mostradas neste diagrama para desenvolver os use-cases modelados anteriormente. Nesta fase somente serão modeladas classes que pertençam ao domínio principal do problema do software, ou seja, classes técnicas que gerenciem banco de dados, interface, comunicação, concorrência e outros não estarão presentes neste diagrama.

UML – Fases de Desenvolvimento Design (Projeto): Nesta fase, o resultado da análise é expandido em soluções. Novas classes serão adicionadas para prover uma infra-estrutura técnica: a interface do usuário e de periféricos, gerenciamento de banco de dados, comunicação com outros sistemas etc.

UML – Fases de Desenvolvimento Design (Projeto): As classes do domínio do problema modeladas na fase de análise são mescladas nessa nova infra-estrutura técnica tornando possível alterar tanto o domínio do problema quanto à infra-estrutura. Resulta no detalhamento das especificações para a fase de programação do sistema.

UML – Fases de Desenvolvimento Programação: Nesta fase as classes provenientes do design são convertidas para o código da linguagem orientada a objeto escolhida. O grau de dificuldade depende da escolha da linguagem. Não é aconselhável traduzir mentalmente os modelos de análise e design em UML no momento de sua criação.

UML – Fases de Desenvolvimento Programação: Os modelos criados nas fases passadas são o significado do entendimento e da estrutura do sistema, porém ainda podem ser alterados caso o analista julgue necessário, o que não pode é alterar a programação sem alterar os modelos anteriores senão estes não estarão mais demonstrando o real perfil do sistema. È uma fase separada e distinta onde os modelos criados são convertidos em código.

UML – Fases de Desenvolvimento Testes: Temos 3 tipos de testes: Unidade: são para classes individuais ou grupos de classes e são geralmente testados pelo programador. Integração: são aplicados já usando as classes e componentes integrados para se confirmar se as classes estão cooperando uma com as outras como especificado nos modelos. Aceitação: observam o sistema como uma “caixa preta” e verificam se o sistema esta funcionando como o especificado nos primeiros diagramas de use-cases.

UML – Notação da Linguagem Das 5 fases de desenvolvimento da UML, as fases de análise de requisitos, análise e design utilizam em seu desenvolvimento: Cinco tipos de visões Treze tipos de diagramas Vários modelos de elementos

UML – Visões O sistema é descrito por várias visões, cada uma representando uma projeção da descrição completa e mostrando aspectos particulares do sistema. Cada visão é descrita por um numero de diagramas que contém informações que dão ênfase aos aspectos particulares do sistema.

UML – Visões Existem em alguns casos de sobreposições entre os diagramas -> isto significa que um diagrama pode fazer parte de mais de uma visão. Os diagramas contém os modelos dos elementos do sistema.

UML – Visões As Visões que compõe um sistema são:

UML – Visões Visão Use-Case: Descreve a funcionalidade do sistema desempenhada pelos atores externos do sistema (usuários). Visão use-cases é central, já que seu conteúdo é base do desenvolvimento das outras visões do sistema. Montada sobre os diagramas de use-cases e eventualmente sobre diagramas de atividade.

UML – Visões Visão Lógica: Descreve como a funcionalidade do sistema está implementada. Feita principalmente por analistas e desenvolvedores. Ao contrário da visão use-cases, a visão lógica observa e estuda o sistema internamente.

UML – Visões Visão Lógica: Ela descreve e especifica a estrutura estática do sistema (classes, objetos e relacionamentos) e as colaborações dinâmicas quando os objetos enviarem mensagens uns para os outros para realizarem as funções do sistema. Persistência e concorrência são definidas nesta fase, bem como as interfaces e as estruturas de classes.

UML – Visões Visão Lógica: A estrutura estática é descrita pelos diagramas de classe e objetos. O modelo dinâmico é descrito pelos diagramas de estado, seqüência, colaboração e atividade.

UML – Visões Visão de Componentes: É uma descrição da implementação dos módulos e suas dependências. É principalmente executados por desenvolvedores, e consiste nos componentes dos diagramas.

UML – Visões Visão de Concorrência: Trata a divisão do sistema em processos e processadores. Este aspecto, que é uma propriedade não funcional do sistema, permite uma melhor utilização do ambiente onde o sistema se encontrará, se o mesmo possui execuções paralelas, e se existe dentro do sistema um gerenciamento de eventos assíncronos.

UML – Visões Visão de Concorrência: A visão de concorrência é suportada pelos diagramas dinâmicos, que são os diagramas de estado, sequência, colaboração e atividade, e pelos diagramas de implementação, que são os diagramas de componentes e execução.

UML – Visões Visão de Organização: Esta visão mostra a organização física do sistema, os computadores, os periféricos e como eles se conectam entre si. Esta visão é executada pelos desenvolvedores, integradores e testadores, e será representada pelo diagrama de execução.

UML – Diagramas A UML define em sua versão 2.0 treze tipos de diagramas, divididos em duas categorias: Diagramas Estruturais ou Estáticos : Mostram as características dos seu sistema que não mudam com o tempo. Diagramas Dinâmicos : Mostram como o sistema responde às requisições ou como o mesmo evolui durante o tempo.

UML – Diagramas * Diagramas criados na versão UML 2.0

UML – Diagramas Diagrama de Classe: Diagrama de Objetos: Apresenta elementos conectados por relacionamento. Usado para exibir atividades do mundo real, além de elementos de análise e projeto; Diagrama de Objetos: Apresenta objetivos e valores de dados. Corresponde a uma instancia do diagrama de classes, mostrando o estado de um sistema em um determinado ponto do tempo;

UML – Diagramas Diagrama de Componentes: Diagrama de Implantação : Mostra as dependências entre componentes de softwares, apresentando suas interfaces; Diagrama de Implantação : Mostra a arquitetura do sistema em tempo de execução, as plataformas de hardware, artefatos de softwares e ambientes de softwares (como sistemas operacionais e máquinas virtuais);

UML – Diagramas Diagrama de Pacotes: Diagrama de Estrutura Composta : Usados para organizar elementos de modelo e mostrar dependência entre eles; Diagrama de Estrutura Composta : Usados para mostrar a composição de uma estrutura. Útil em estruturas compostas de estruturas complexas ou em projetos baseados em componentes;

UML – Diagramas Diagrama de Caso de Uso: Diagrama de Visão Geral: Mostra os casos de uso, atores e seus relacionamentos que expressam a funcionalidade de um sistema; Diagrama de Visão Geral: Uma variação do diagrama de atividades que mostra de uma forma geral o fluxo de controle dentro de um sistema ou processo de negócios. Cada nó ou atividade dentro do diagrama pode representar outro diagrama de interação;

UML – Diagramas Diagrama de Seqüência: Diagrama Temporal: Mostra as interações que correspondem a um conjunto de mensagens trocadas entre objetos e a ordem que estas mensagens acontecem ; Diagrama Temporal: Mostra a mudança de estado de um objetivo numa passagem de tempo, em resposta a eventos externos;

UML – Diagramas Diagrama de Comunicação: Diagrama de Atividades: É o antigo diagrama de Colaboração, que mostra objetos, seus inter-relacionamentos e o fluxo de mensagem entre eles; Diagrama de Atividades: Representa a execução de ações ou atividades e os fluxos que são disparados pela conclusão de outras ações ou atividades;

UML – Diagramas Diagrama de Máquinas de Estados: Representa as ações ocorridas em resposta ao recebimento de eventos.