Notas de Aula 06: Diagrama de classes de domínio

Tamanho: px
Começar a partir da página:

Download "Notas de Aula 06: Diagrama de classes de domínio"

Transcrição

1 Notas de Aula 06: Diagrama de classes de domínio Objetivos da aula: Compreender um modelo de negócio pela representação das classes de uma entidade Modelar as entidades e seus relacionamentos de um domínio por meio de um diagrama de classes Discutir decisões de modelagem Recordando... Na aula passada você estudou um exemplo de descrição de um caso de uso. Ao descrever um caso de uso podemos definir uma interface homem-máquina que determina quais as informações são relevantes para uma determinada funcionalidade. Mais do que isso, foi possível perceber que as informações eram pertinentes a uma conjunto de descrições que iam além das funcionalidades e podiam ser aplicadas mais de uma vez... Introdução Os casos de uso são uma excelente forma de demonstrar o comportamento de um sistema sob o ponto de vista de uma funcionalidade ou um conjunto de tarefas. Ao descrever uma funcionalidade do sistema, estamos também relatando quais dados (variáveis) são importantes para uma interação com um determinado ator. A visão de um sistema por casos de um uso é uma visão tradicional de desenvolvimento de um sistema. Legado da abordagem procedimental, a visão simplista do sistema como um conjunto de funções traz problemas de reutilização, pois, invariavelmente, certo conjunto de dados é utilizado em mais de uma função. Por exemplo, seja o domínio de uma universidade. Para um caso de uso de Inserir Professor, necessitaremos de dados referentes a uma entidade do mundo real neste caso um Professor (CPF, endereço, telefone, etc.). Para o caso de uso Alocar Turma, também precisaremos, ao menos, do CPF do professor a ser alocado. Não é difícil enxergar que o atributo de uma

2 determinada entidade (neste exemplo o CPF de um professor) pode ser utilizado para duas ou mais funções diferentes. Isso não significa que os casos de uso são dispensáveis. Os casos de uso necessitam de uma complementação para que a visão sobre o sistema seja mais aderente ao real e ao mesmo tempo pragmática. Classes e objetos A Orientação a Objetos (OO) une duas características fundamentais a serem feitas em um sistema: os dados mais as funções (que operam sobre estes dados). Os diagramas de classes da UML ajudam em dois aspectos do problema: visualizar o modelo de negócio e implementar o projeto de software. Uma das grandes vantagens de se utilizar a OO é a conversão direta do modelo de negócios (diagrama de classes de domínio) para artefatos de software (diagrama de classes de projeto). A literatura correlata separa ainda os diagramas de classes em três níveis: conceitual (domínio), lógico (projeto) e de implementação (projeto estendido). É evidente, então, que o elemento fundamental da OO é a classe. Uma classe descreve uma entidade do mundo real, abstrata ou não, relevante para um domínio de sistema. Uma classe descreve os atributos e as operações que são comuns a uma entidade. Os atributos endereço, telefone e nome descrevem uma classe PessoaJuridica mas também descrevem uma classe PessoaFisica. Na inexistência de diferenças entre estas classes, podemos descrevê-las genericamente como uma classe que atenda ambos os casos. Que tal uma classe Pessoa? Na UML, uma classe é representada como um retângulo. O nome da classe vem na parte superior. Na segunda parte do retângulo vêm os atributos de uma classe. A terceira parte do retângulo se destina as operações de uma classe, assunto que será visto posteriormente. A UML sugere que os nomes de classes sejam no singular e comecem com a primeira letra maiúscula. Além disso, nomes de atributos começam com letras minúsculas. Classes ou Atributos com nomes compostos tem o segundo nome subsequente, sem caractere separador, com a primeira letra maiúscula. Exemplo: PessoaJuridica, endereçocomercial.

3 De fato, entender como uma classe deve ser descrita não possui uma receita de bolo. A descrição de uma classe por meio de seus atributos é uma solução que varia de domínio para domínio. Por exemplo, se estivéssemos criando um sistema para um estacionamento, não faria muito sentido descrever o carro com um atributo chamado financiado (indica se o carro está financiado ou não). A informação de financiamento para cadastro de um carro não tem relevância para um sistema de estacionamentos (ao contrário do atributo mensalista). No entanto, se estivéssemos fazendo um sistema para uma concessionária de carros, tal informação seria vital para o modelo de negócios. Cabe ao Analista de Sistemas decidir sobre o que é relevante. Concessionária Estacionamento A manifestação de uma classe é chamada de objeto ou instância. Os objetos são ocorrência de uma classe. Por exemplo, uma instância de um objeto da classe Pessoa é Manoel, que possui o CPF , mora na Rua dos Canudos n. 17 e possui telefone (23) Da classe Carro (do domínio estacionamento), um possível objeto da classe é Pálio, cor prata, placa ERJ 1608 e não é mensalista. Outro objeto desta mesma classe é Ka, cor branca,

4 placa XYZ 1909 e é mensalista. Depreende-se, então, que uma classe pode possui diversos objetos. Outros exemplos: CLASSE OBJETOS Carro Meu Gol Seu Corsa Pálio dele Empregado João Ana Carlos Formulários Demissão Cadastro Vendas Associação de classes No mundo real, as entidades não estão sozinhas e a sua existência está intrinsicamente relacionada com a existência de outros objetos. A descrição de domínios complexos não está limitada a criação de classes sem nenhum tipo de interação com outras classes. Além da própria existência da classe, as associações entre classes constituem um dos agente promotores da reutilização de código. Afinal, o que é uma associação de classes? A associação de classes é um relacionamento estrutural que especifica objetos de um item conectados a objetos de outro item. A associação indica que existe uma ligação entre objetos das classes associadas. Cada associação pode ter um nome que descreve a natureza do relacionamento. Herança O conceito de herança permite estabelecer uma hierarquia entre as classes. É um mecanismo que permite a uma classe herdar as operações e os atributos de outra classe. Com o uso da herança, quando se escreve uma classe é necessário especificar apenas no que ela é diferente da classe-mãe, classebase ou superclasse. O mecanismo da herança dá acesso automático às informações contidas na classe base. Através da herança, uma classe possui imediatamente toda a funcionalidade de uma classe já existente. A classe que herda características da outra é chamada subclasse ou classe-filha e a classe que fornece a herança é chamada superclasse ou classe-mãe. Quando estávamos aprendendo o conceito de classes, foi utilizado como exemplo a classe PessoaJuridica e a classe PessoaFisica. Em um determinado momento percebeu-se que as duas classes possuíam atributos em comum. O resultado foi a fusão destas classes em uma classe mais genérica chamada

5 Pessoa. Se o nosso domínio de problema fosse bem restritivo, esta solução estaria suficiente. Ocorre que no mundo real, apesar de terem vários atributos em comum, em algum momento deveremos colocar os atributos que são específicos para cada entidade. Por exemplo, se colocarmos o atributo cnpj, que é aplicado a uma empresa na classe Pessoa, estaremos cometendo um erro no nosso modelo, pois os objetos da classe Pessoa que efetivamente são cidadãos não terão informação para preencher neste caso (isso pode acarretar problemas computacionais também). O correto então, é especificar três classes por meio de uma herança e colocar os atributos que são pertinentes a todas as classes filhas na classe mãe e especificar os atributos que são aplicáveis para cada classe: A herança é, portanto, o compartilhamento de atributos e operações entre classes, baseado em um relacionamento hierárquico do tipo pai-filho (ou mãefilho), em que a classe pai possui definições que podem ser utilizadas nas classes filhas. Estas funcionam como uma especialização da classe pai (as filhas estendem a sua utilização básica da classe pai para outras utilizações mais especializadas). A seguir uma figura ilustrativa do conceito de herança.

6 Uma superclasse direta é a superclasse a partir da qual a subclasse herda explicitamente. Uma superclasse indireta é qualquer superclasse acima da superclasse direta. Desta forma, no exemplo acima, Mamífero é uma superclasse direta de SerHumano e Animal é uma superclasse indireta de SerHumano. Na UML, uma herança pode ser definida como múltipla, o que significa que uma classe filha pode ter mais de uma classe mãe. Além de trazer problemas conceituais severos, a herança múltipla é rejeitada por diversas linguagens de programação. Assim, verifique se a herança múltipla não pode ser convertida em outro tipo de associação. Associações simples As classes de um domínio possuem outras associações que não estão em uma estrutura hierárquica. A modelagem compreende a tarefa de identificar que classes cooperam no entendimento do problema. Na UML existe uma maneira de representar esta compressão por meio dos conectores associativos e suas multiplicidades. Seja o nosso domínio da concessionárias de carros além da classe Pessoa já definida anteriormente. Ao descrevermos o problema, percebemos que todo carro tem uma pessoa como proprietária. Uma maneira de representar a relação que existe entre o proprietário e o carro é liga-los através de uma associação simples (uma linha que liga duas classes e possui um nome opcional):

7 Além da ligação conceitual que estas classes têm, a quantificação de ocorrências desta ligação é muito importante. É a multiplicidade que determina quantas vezes um objeto se relaciona com outro objetos da classe associada. As associações estabelecem uma multiplicidade mínima e uma multiplicidade máxima de ocorrência. Se, ao informar que uma pessoa tem ao menos um carro, então a multiplicidade deve garantir que o modelo esteja especificando que para cada objeto do tipo Pessoa existirá ao menos um objeto do tipo Carro. Da mesma forma, podemos dizer que uma pessoa terá no máximo cinco carros associados, o que significa que um objeto da classe Pessoa estará associado a um máximo de cinco objetos da classe Carro. Devemos especificar a multiplicidade nas duas vias. Se do ponto de vista de um objeto da classe Pessoa a associação já está resolvida, as condições não estão associados para os objetos da classe Carro. Se for afirmado que um carro não necessariamente possui um dono, então a multiplicidade mínima é zero. Além disso, se dissermos que um carro deverá ter exatamente um dono, então a multiplicidade máxima é um.

8 Muitas vezes não conseguimos determinar a multiplicidade máxima ou simplesmente torna-se perigoso presumi-la. Por exemplo, poderíamos dizer que uma pessoa tem ao menos um carro e no máximo muitos (sem especificar quantos). A multiplicidade máxima pode ser definida com um * que deixa em aberto o valor máximo. A multiplicidade máxima com * é a padrão quando averiguado omissão. Pelo princípio da herança, as classes PessoaJuridica e PessoaFisica também podem ser proprietárias de um carro:

9 Classes associativas Alguns objetos de classes do nosso modelo só fazem sentido existir quando para a ocorrência de uma certa associação. Classes associativas expressam classes cujos objetos dependem da existência de outros objetos em conjunto. Por exemplo, a classe Turma. Uma turma (que não é a atriz isso era para ser uma piada) corresponde a uma disciplina e tem um professor alocado. Uma possível solução é esta: A leitura deste modelo corresponde a Um professor pode estar alocado em alguma turma e uma turma tem um professor e Uma disciplina pode ter várias turmas e uma turma é de uma disciplina. Apesar de não estar errada, o valor semântico do modelo é pobre, pois dá a entender a existência de um objeto que de fato não faz sentido sem um objeto da classe Professor ou da classe Disciplina. O mais adequado é modelar a classe Turma como uma classe associativa, de forma que fique explícito que a existência de um objeto desta classe está conceitualmente ligada a existência dos objetos da classe Professor e Disciplina. Assim, um professor leciona uma ou mais disciplinas e uma disciplina é lecionada por um ou mais professores. A

10 manifestação dessa associação implica na existência de um objeto da classe Turma, que entre outras coisas, pode conter os atributos horário e sala. Contudo, uma classe associativa não está limitada as classes de origem. A classe Turma pode ter relacionamentos simples. Por exemplo, uma turma deve ter ao menos um aluno e no máximo 50.

11 Agregação e composição A granularidade de uma classe varia bastante até mesmo em um único domínio. Muitas vezes queremos demonstrar que uma classe ajuda a compor o entendimento da outra, em uma relação todo-parte. O relacionamento todoparte expressa uma classe que é o todo (totalidade) e as classes que forma este todos são expressas como partes. Apenas a leitura em conjunto expressa conceitualmente a ideia. O relacionamento é dito faz parte de ou tem um. A representação é feita com um losango na extremidade do todo. As associações de todo-parte cuja parte é independente do todo são chamadas de agregação. A existência dos objetos considerados partes não estão condicionadas a existência do objeto todo. Para a agregação, a representação do losango é aberta. Seja, por exemplo, um cinema. Um combo é composto de ao menos um refrigerante e exatamente uma pipoca. Uma pipoca ou refrigerante pode ser comercializado em nenhum combo ou em vários combos. As associações de todo-parte cuja parte é dependente do todo são chamadas de composição. A existência dos objetos considerados partes estão condicionadas a existência do objeto todo. Em função da dependência, o objeto parte sempre estará associado a apenas um objeto todo. Para associação de composição, o losango é fechado. Seja, por exemplo, um sistema empresarial. Uma empresa é composta de departamentos e um departamento pertence a uma única empresa. A exclusão do objeto empresa implica, necessariamente, na exclusão do objeto departamento.

12 Auto associação Os modelos de classes reais podem apresentar situações onde uma classe possui uma relação recursiva, isto é, quando existe associação de uma classe consigo própria. Seja, por exemplo, um funcionário de uma empresa. É dito dentro de uma cadeia de comandos de uma empresa que um funcionário supervisiona outro funcionário. Uma solução possível perfaz-se pela criação de classes diferentes para o funcionário supervisionado e outra para o funcionário supervisor. Ocorre que esta não é uma solução válida. Primeiro, estamos limitando conceitualmente um objeto. Estamos definindo, implicitamente, que uma vez sendo objeto da classe FuncionarioSupervisor não será objeto da classe FuncionarioSupervisionado. Esta assunção é errônea já que é razoável cogitar que um funcionário pode ser supervisor e ser supervisionado por outro funcionário.

13 Uma outra possibilidade para manter este modelo é criar dois objetos como instâncias se referenciando a uma mesma entidade. Se conceitualmente já era ruim, agora computacionalmente é pior. A melhor solução reside numa auto referência. Nesta abordagem, os objetos de uma mesma classe estão associados entre si e precisam comunicar-se uns com os outros. Estas associações também são chamadas de associação reflexiva ou associação unária e diferenciam pelo papel que exercem (neste exemplo supervisor e supervisionado) Discussão: é um atributo, são vários atributos ou é uma classe? Uma questão recorrente durante o processo de modelagem é a definição da informação como um atributo, vários atributos ou uma classe. Por exemplo, seja a classe Pessoa. Na primeira definição da classe o atributo endereço engloba todas as características de um endereço, tais como CEP, tipo de logradouro (rua, avenida, beco, estrada, etc.), logradouro, bairro, cidade, estado e país. Ao adotar um atributo único para representação de uma informação composta, estamos deixando a cargo da interface homemmáquina estabelecer o critério para preenchimento do endereço. As informações do endereço estarão estabelecidas de uma maneira sequencial em um único atributo e a grande vantagem desta abordagem reside no fato de ser escalável pois não entra no mérito do padrão de formação do endereço. Nos Estados Unidos, por exemplo, o padrão de formação dos endereços é diferente.

14 Nesta abordagem, as informações do endereço estarão estabelecidas de uma maneira sequencial em um único atributo, o que pode dificultar a decomposição futura. Por exemplo, como saber quais são as pessoas que moram na cidade do Rio de Janeiro? Será necessário fazer uma análise (parser) todas as vezes que a informação necessitar ser decomposta. Uma possibilidade, então, é criar atributos separados: Fica claro que um padrão rígido de endereço perde a aplicabilidade para outros países. Contudo, a grande vantagem é que as informações estão decompostas e permitem operações de maneira mais simplificada. Utilizar um atributo composto ou decompor em vários atributos simples tem implicação direta no modelo de negócios. O sistema será (ou pretende ser) utilizado em outros países? Você muito provavelmente está inclinado a adotar o padrão flexível, pois este não limita a expansão. No entanto, lembre-se que existe um custo em relação a isso: em algum momento, o seu código e a sua interface homem-máquina terá de lidar com o parser. Não existe uma resposta definitiva. O Analista de Sistemas deverá pesar os prós e contras de cada abordagem para cada domínio de problema.

15 Uma outra questão recorrente é: em associações um-para-um, não existe uma real necessidade de criarmos uma classe. Se uma pessoa só possui um endereço, então não é necessário criarmos uma classe chamada endereço. De forma composta ou não, o endereço pode ser um atributo da classe Pessoa, o que facilitará a implementação (menos um objeto a ser instanciado). No entanto, esta não é uma boa prática. Em razão da legibilidade, atributos compostos tem grande potencial para virarem uma classe. Fica mais simples decompormos o atributo composto em atributos simples em um classe separada para tal. Além disso, esses atributos tendem a ser mostrar com multiplicidade crescente durante o desenvolvimento do sistema. O seu cliente pode jurar de pés juntos que a pessoa cadastrada no sistema só deverá ter um endereço. No entanto, com passar do tempo, ele poderá mudar de ideia e dizer que uma pessoa tem endereço comercial e um endereço residencial (nem pense em repetir atributos...). Se você modelou desde o início como uma classe separada, isso irá significar apenas a mudança de multiplicidade e a instanciação de mais objetos. Se a abordagem tivesse sido outra, muitas outras coisas teriam de ser mudadas: a criação de uma nova classe, a remoção do atributo na classe antiga, a adequação do modelo de dados, etc. Então, mesmo que a multiplicidade seja um-para-um, analise a possibilidade de crescimento do sistema e defina se a criação de uma classe é válida. Esta discussão não é aplicável para atributos simples, pois não dá para caracterizá-los como classes. Alguns de vocês dirão que o atributo nome pode ser uma classe com dois atributos (primeironome, sobrenome). Forçação de barra total! Uma pessoa não tem vários nomes de registro que justifiquem uma mudança de multiplicidade. Talvez em um domínio muito específico. Mas, no caso geral, não justifica.

16 Exercícios 1. Como os diagramas de classes podem ajudar a compreender melhor um modelo de negócios? 2. A agregação e a composição são dois tipos de relações com objetivos conceituais claros. No entanto, a agregação tem difícil compreensão prática quando comparada a uma composição. Você concorda? Apresente seus argumentos. 3. Explique de que forma a herança aumenta a riqueza semântica da descrição do domínio. 4. Dada as seguintes afirmações, faça o diagrama de classes. Em uma fábrica, um carro é composto por exatamente cinco rodas (quatro + um estepe). Uma roda, que possui um tamanho de aro, está associada a um carro. Uma fábrica de carros tem um nome e um número de carros fabricados por mês. A fábrica é montadora exclusiva de uma marca de carros que possui um nome e um país sede. Uma marca de carro tem ao menos uma fábrica. Uma fábrica de carros tem um nome e uma cidade de fornecimento. A fábrica não é montadora exclusiva de uma marca de carros e tem uma cota de carros fabricados por mês. Uma marca de carro tem ao menos uma fábrica. Um pessoa é casada com no mínimo zero ou no máximo 1 pessoa. 5. Faça o diagrama de classes de domínio do estudo de caso 1 (disponível no site).

Engenharia de Software

Engenharia de Software Prof. M.Sc. Ronaldo C. de Oliveira ronaldooliveira@facom.ufu.br FACOM - 2011 Exemplo de Diagrama de Caso de Uso Sistema de Locadora de Filmes Sistema de Vídeo Locadora Você foi contratado para desenvolver

Leia mais

Modelo conceitual Aula 08

Modelo conceitual Aula 08 Universidade Federal de Mato Grosso do Sul Sistemas de Informação - CPCX Modelo conceitual Aula 08 Prof. Fernando Maia da Mota Slides gentilmente cedidos por Profa. Dra. Maria Istela Cagnin Machado UFMS/FACOM

Leia mais

UML: Diagrama de Casos de Uso, Diagrama de Classes

UML: Diagrama de Casos de Uso, Diagrama de Classes UML: Diagrama de Casos de Uso, Diagrama de Classes Diagrama de Casos de Uso O modelo de casos de uso visa responder a pergunta: Que usos (funcionalidades) o sistema terá? ou Para que aplicações o sistema

Leia mais

4.2. UML Diagramas de classes

4.2. UML Diagramas de classes Engenharia de Software 4.2. UML Diagramas de classes Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt Um diagrama de classes serve para modelar o vocabulário de um sistema Construído e refinado ao longo

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 17 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 17 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 17 PROFª BRUNO CALEGARO Santa Maria, 19 de Novembro de 2013. Revisão aula anterior Modelagem orientada a objetos com UML Software: Astah Community

Leia mais

Orientação a Objetos

Orientação a Objetos Orientação a Objetos Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Histórico A orientação a objetos (OO) foi concebida na década de 70. Origem na linguagem SIMULA-67 (década

Leia mais

Engenharia de Softwares e Sistema IF682 (2012.1) Bruno Medeiros(bmo@cin.ufpe.br)

Engenharia de Softwares e Sistema IF682 (2012.1) Bruno Medeiros(bmo@cin.ufpe.br) Engenharia de Softwares e Sistema IF682 (2012.1) Bruno Medeiros(bmo@cin.ufpe.br) Algumas definições Engenharia de Software conjunto de tecnologias e práticas usadas para construir software de qualidade

Leia mais

Bibliografia. Desenvolvimento Orientado a Objetos. Introdução. Bibliografia. O que você vê?

Bibliografia. Desenvolvimento Orientado a Objetos. Introdução. Bibliografia. O que você vê? Bibliografia Desenvolvimento Orientado a Objetos Prof.: Edson dos Santos Cordeiro LARMAN, Graig. Utilizando UML e padrões. Porto Alegre: Bookman, 2000. STAA, Arndt von. Programação modular. Rio de Janeiro:

Leia mais

Notas de Aula 05: Aplicação de um caso de uso

Notas de Aula 05: Aplicação de um caso de uso Notas de Aula 05: Aplicação de um caso de uso Objetivos da aula: Aprender a aplicar a técnica de casos de uso em um pequeno problema real Identificar as variáveis relevantes a serem consideradas Modelar

Leia mais

Ciclo de vida de um banco de dados relacional

Ciclo de vida de um banco de dados relacional Ciclo de vida de um banco de dados relacional 1. Formulação e análise de requisitos: a) Relacionamentos naturais entre os dados (independentes de processo). b) Requisitos de uso (dependentes de processo).

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

PROJETO DE BANCO DE DADOS -PROJETO CONCEITUAL. Prof. Angelo Augusto Frozza, M.Sc.

PROJETO DE BANCO DE DADOS -PROJETO CONCEITUAL. Prof. Angelo Augusto Frozza, M.Sc. PROJETO DE BANCO DE DADOS -PROJETO CONCEITUAL Prof. Angelo Augusto Frozza, M.Sc. PROJETO CONCEITUAL Levantamento de requisitos Modelagem Conceitual Modelo ER PROJETO CONCEITUAL Parte integrante do Projeto

Leia mais

Programação Orientada a Objetos Herança Técnico em Informática. Prof. Marcos André Pisching, M.Sc.

Programação Orientada a Objetos Herança Técnico em Informática. Prof. Marcos André Pisching, M.Sc. Herança Técnico em Informática, M.Sc. Herança 2 Herança Reutilização de código Exemplo Banco: Um banco oferece diversos serviços que podem ser contratados individualmente pelos clientes. Quando um serviço

Leia mais

Diagrama de classes. Ricardo Roberto de Lima UNIPÊ 2008.1 APS-I

Diagrama de classes. Ricardo Roberto de Lima UNIPÊ 2008.1 APS-I Diagrama de classes Ricardo Roberto de Lima UNIPÊ 2008.1 APS-I Diagrama de Classes Reúne os elementos mais importantes de um sistema orientado a objetos Exibe um conjunto de classes, interfaces e seus

Leia mais

Modelo Entidade-Relacionamento. Prof. Antonio Almeida de Barros Jr.

Modelo Entidade-Relacionamento. Prof. Antonio Almeida de Barros Jr. Modelo Entidade-Relacionamento Prof. Antonio Almeida de Barros Jr. Conteúdo Contexto Histórico A Importância da Modelagem de Dados Projeto de Banco de Dados Modelagem Conceitual Projeto Lógico Projeto

Leia mais

Modelagem OO com UML. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza

Modelagem OO com UML. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Modelagem OO com UML Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do Espírito Santo Modelos Maneira

Leia mais

3. PARADIGMA ORIENTADO A OBJETOS

3. PARADIGMA ORIENTADO A OBJETOS Paradigmas de Linguagens I 1 3. PARADIGMA ORIENTADO A OBJETOS Este paradigma é o que mais reflete os problemas atuais. Linguagens orientada a objetos (OO) são projetadas para implementar diretamente a

Leia mais

Guia para elaboração do Modelo de Domínio Metodologia Celepar

Guia para elaboração do Modelo de Domínio Metodologia Celepar Guia para elaboração do Modelo de Domínio Metodologia Celepar Agosto 2009 Sumário de Informações do Documento Documento: guiamodelagemclassesdominio.odt Número de páginas: 20 Versão Data Mudanças Autor

Leia mais

Unified Modeling Language UML - Notações

Unified Modeling Language UML - Notações Unified Modeling Language UML - Notações Prof. Ms. Elvio Gilberto da Silva elvio@fmr.edu.br UML Ponto de Vista É gerada com propósito geral de uma linguagem de modelagem visual usada para especificar,

Leia mais

A linguagem UML. UML e Diagramas de Casos de Uso e Classes. Por que usar UML? O que é modelagem?

A linguagem UML. UML e Diagramas de Casos de Uso e Classes. Por que usar UML? O que é modelagem? UML e Diagramas de Casos de Uso e Classes Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com A linguagem UML UML (Unified Modeling Language) Linguagem de Modelagem Unificada É uma linguagem de modelagem

Leia mais

Programa do Módulo 2. Fundações do Modelo Objeto

Programa do Módulo 2. Fundações do Modelo Objeto 2.1 Programa do Módulo 2 Orientação a Objetos Conceitos Básicos Análise Orientada a Objetos (UML) Processo Unificado (RUP) Fundações do Modelo Objeto 2.2 Programação Orientada a Objetos: é um método de

Leia mais

COLÉGIO ESTADUAL ULYSSES GUIMARÃES CURSO TÉCNICO PROFISSIONALIZANTE EM INFORMÁTICA ERINALDO SANCHES NASCIMENTO

COLÉGIO ESTADUAL ULYSSES GUIMARÃES CURSO TÉCNICO PROFISSIONALIZANTE EM INFORMÁTICA ERINALDO SANCHES NASCIMENTO COLÉGIO ESTADUAL ULYSSES GUIMARÃES CURSO TÉCNICO PROFISSIONALIZANTE EM INFORMÁTICA ERINALDO SANCHES NASCIMENTO MODELAGEM DA ESTRUTURA LÓGICA DE UM SISTEMA: CLASSES E DIAGRAMAS DE CLASSE FOZ DO IGUAÇU 2013

Leia mais

Engenharia de Software I: Análise e Projeto de Software Usando UML

Engenharia de Software I: Análise e Projeto de Software Usando UML Engenharia de Software I: Análise e Projeto de Software Usando UML Capítulo 1 Processo de Desenvolvimento de Software Metodologia de Desenvolvimento de Software Uma metodologia é um conjunto de métodos,

Leia mais

Banco de Dados 1 2º Semestre

Banco de Dados 1 2º Semestre Banco de Dados 1 2º Semestre Aula 07 Prof. Gladimir Ceroni Catarino gladimir@gmail.com SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL FACULDADE DE TECNOLOGIA SENAC PELOTAS o Uma coletânea de conceitos que

Leia mais

Engenharia de Software I

Engenharia de Software I Engenharia de Software I Curso de Desenvolvimento de Software Prof. Alessandro J de Souza ajdsouza@cefetrn.br 1 Rational Unified Process RUP Fase Elaboração 2 VISÃO GERAL Fase Elaboração. Visão Geral 3

Leia mais

Engenharia de Software I

Engenharia de Software I Engenharia de Software I Rogério Eduardo Garcia (rogerio@fct.unesp.br) Bacharelado em Ciência da Computação Aula 05 Material preparado por Fernanda Madeiral Delfim Tópicos Aula 5 Contextualização UML Astah

Leia mais

ProgramaTchê Programação OO com PHP

ProgramaTchê Programação OO com PHP Roteiro 1 Objetivos: * Apresentar conceitos de orientação a objetos; * Representar classes e objetos usando UML; Este roteiro tem como objetivo abordar os conceitos básicos de orientação a objetos. 1 Introdução

Leia mais

Disciplina Técnicas de Modelagem

Disciplina Técnicas de Modelagem T É C N I C A 3 MODELAGEM CONCEITUAL GENERALIZAÇÃO/ESPECIALIZAÇÃO, AGREGAÇÃO E COMPOSIÇÃO Generalização/Especialização Herança é o termo em orientação a objetos que se refere à criação de novas classes

Leia mais

3.1 Definições Uma classe é a descrição de um tipo de objeto.

3.1 Definições Uma classe é a descrição de um tipo de objeto. Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:

Leia mais

Algumas propriedades dos objetos:

Algumas propriedades dos objetos: Orientação a Objetos Vivemos num mundo de objetos. Esses objetos existem na natureza, nas entidades feitas pelo homem, nos negócios e nos produtos que usamos. Eles podem ser categorizados, descritos, organizados,

Leia mais

Modelo Entidade-Relacionamento

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento Banco de Dados I Fases do Projeto jt de BD Enunciado de requisitos entrevista com o usuário do banco de dados para entender e documentar seus requerimentos de dados. Projeto

Leia mais

Fernando Fonseca Ana Carolina

Fernando Fonseca Ana Carolina Banco de Dados Ciclo de Desenvolvimento de Sistemas de BD Investigação dos Dados Modelagem dos Dados Modelagem Conceitual Projeto do Banco de Dados Fernando Fonseca Ana Carolina Implementação do Banco

Leia mais

UML. Diagrama de Seqüência

UML. Diagrama de Seqüência UML Diagrama de Seqüência Introdução Diagramas de Seqüência apresentam a interação entre um grupo de objetos (ou classes) de um sistema, através de mensagens ou controles, em um determinado Cenário. Servem

Leia mais

Introdução! 1. Modelos de Domínio! 1. Identificação de classes conceituais! 2. Estratégia para identificar classes conceituais! 2

Introdução! 1. Modelos de Domínio! 1. Identificação de classes conceituais! 2. Estratégia para identificar classes conceituais! 2 Modelo de domínio Introdução! 1 Modelos de Domínio! 1 Identificação de classes conceituais! 2 Estratégia para identificar classes conceituais! 2 Passos para a elaboração do modelo de domínio! 2 Passo 1

Leia mais

Análise e Projeto de Sistemas

Análise e Projeto de Sistemas Análise e Projeto de Sistemas Rafael Vargas Mesquita http://www.ci.ifes.edu.br ftp://ftp.ci.ifes.edu.br/informatica/mesquita/ Herança O que é herança? Herdar é derivar características de gerações precedentes.

Leia mais

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - MÓDULO 3 - MODELAGEM DE SISTEMAS ORIENTADA A OBJETOS COM UML 1. INTRODUÇÃO A partir de 1980, diversos métodos de desenvolvimento de sistemas surgiram para apoiar o paradigma orientado a objetos com uma

Leia mais

Modelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1.

Modelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1. Modelos de Sistema Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1 Objetivos Explicar por que o contexto de um sistema deve ser modelado como parte do processo de RE Descrever

Leia mais

Prof. Claudio Passos Apresentação cedida pela Ceça Moraes

Prof. Claudio Passos Apresentação cedida pela Ceça Moraes Prof. Claudio Passos Apresentação cedida pela Ceça Moraes Programação Orientada a Objetos: os problemas de programação são pensados em termos de objetos Em vez de funções e rotinas Problema = desenvolver

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Engenharia de Software Engenharia de Requisitos. Análise Orientada a Objetos Prof. Edison A M Morais http://www.edison.eti.br prof@edison.eti.

Engenharia de Software Engenharia de Requisitos. Análise Orientada a Objetos Prof. Edison A M Morais http://www.edison.eti.br prof@edison.eti. Engenharia de Software Engenharia de Requisitos Análise Orientada a Objetos Prof. Edison A M Morais http://www.edison.eti.br prof@edison.eti.br 1 Contextualizando... Fonte: [1] O Processo de ER pode ser

Leia mais

UML Unified Modeling Language

UML Unified Modeling Language UML Unified Modeling Language Linguagem de Modelagem Unificada A linguagem UML UML (Unified Modeling Language) Linguagem de Modelagem Unificada É uma linguagem para especificação, É uma linguagem para

Leia mais

Banco de Dados - Senado

Banco de Dados - Senado Banco de Dados - Senado Introdução Ilka Kawashita Material preparado :Prof. Marcio Vitorino Ementa do Curso n Banco de Dados n Sistemas de Apoio à Decisão (SAD) n ORACLE BANCO DE DADOS (BD) n Modelo Entidade

Leia mais

Disciplina: Unidade II: Prof.: E-mail: Período:

Disciplina: Unidade II: Prof.: E-mail: Período: Encontro 03 Disciplina: Sistemas de Banco de Dados Unidade II: Modelagem Conceitual de Dados Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM 2. Modelagem Conceitual de Dados (Modelo

Leia mais

4. Exemplo de Levantamento de Classes...26. 3. Levantamento das Classes...24. 1. Conceito de Classe e Objeto... 15. 1. Modelo de Casos de Uso...

4. Exemplo de Levantamento de Classes...26. 3. Levantamento das Classes...24. 1. Conceito de Classe e Objeto... 15. 1. Modelo de Casos de Uso... Projeto de Software usando UML Sumário Capítulo I : Casos de Uso...3 1. Modelo de Casos de Uso... 3 2. Diagramas de Casos de Uso... 3 3. Exemplo... 9 4. Conclusão... 13 Capítulo II : Levantamento de Classes...15

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Notas de Aula 04: Casos de uso de um sistema

Notas de Aula 04: Casos de uso de um sistema Notas de Aula 04: Casos de uso de um sistema Objetivos da aula: Aprender os elementos básicos da modelagem por casos de uso Utilizar as associações entre casos de uso, atores e demais artefatos Compreender

Leia mais

Análise Orientada a Objeto

Análise Orientada a Objeto Análise Orientada a Objeto Análise Orientada a Objeto ANÁLISE ORIENTADA A OBJETO É interessante observar como a análise orientada a objeto utiliza conceitos que aprendemos há muito tempo: objetos, atributos,

Leia mais

MC536 Bancos de Dados: Teoria e Prática

MC536 Bancos de Dados: Teoria e Prática Universidade Estadual de Campinas - UNICAMP Instituto de Computação - IC MC536 Bancos de Dados: Teoria e Prática Aula #3 : MER e MER Estendido Profs. Anderson Rocha e André Santanchè Campinas, 1 de Agosto

Leia mais

Introdução ao Paradigma Orientado a Objetos. Principais conceitos

Introdução ao Paradigma Orientado a Objetos. Principais conceitos Introdução ao Paradigma Orientado a Objetos Principais conceitos Paradigmas de Programação PROGRAMAÇÃO ESTRUTURADA X PROGRAMAÇÃO ORIENTADA A OBJETOS Paradigma Programação estruturada Na programação estrutura

Leia mais

Profº Aldo Rocha. Banco de Dados

Profº Aldo Rocha. Banco de Dados Profº Aldo Rocha Banco de Dados AULA 03: MODELO CONCEITUAL E DE ENTIDADES Turma: ASN102 BELÉM, 19 DE AGOSTO DE 2011 Aula Passada Na aula passada nós trabalhamos a introdução a Banco de dados e a AGENDA

Leia mais

Modelagem de Dados Usando o Modelo Entidade-Relacionamento

Modelagem de Dados Usando o Modelo Entidade-Relacionamento Usando o Modelo Entidade-Relacionamento MER 1 MER Levantamento e Análise de requisitos Entrevista Entender e documentar seus requisitos de dados Requisitos funcionais da aplicação empregadas ao banco de

Leia mais

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP 1) Introdução Programação Orientada a Objetos é um paradigma de programação bastante antigo. Entretanto somente nos últimos anos foi aceito realmente

Leia mais

BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR AULA 02. O Modelo Entidade-Relacionamento ( MER )

BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR AULA 02. O Modelo Entidade-Relacionamento ( MER ) AULA 02 BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR O Modelo Entidade-Relacionamento ( MER ) Fases do Projeto de Bases de Dados (EN94)- O Modelo Entidade- Relacionamento Definição : modelo

Leia mais

Diagrama de Classes. Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes.

Diagrama de Classes. Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes. 1 Diagrama de Classes Um diagrama de classes descreve a visão estática do sistema em termos de classes e relacionamentos entre as classes. Um dos objetivos do diagrama de classes é definir a base para

Leia mais

Programação com Objectos. Processamento de Dados I. 3. UML (Unified Modeling Language)

Programação com Objectos. Processamento de Dados I. 3. UML (Unified Modeling Language) Programação com Objectos Processamento de Dados I 3. UML (Unified Modeling Language) 1 Modelo UML Diagrama de classes Programação com Objectos / Processamento de Dados I 2 Modelo O desenvolvimento de programas

Leia mais

UML: Diagrama de Classes

UML: Diagrama de Classes UML: Diagrama de Classes UML Diagrama de Classes Introdução Diagrama de classes Elementos do diagrama de classes Exemplo: Sistema de matrícula Introdução - Diagrama de Classes Mostra um conjunto de classes

Leia mais

Ontologias. Profa. Lillian Alvares Faculdade de Ciência da Informação, Universidade de Brasília

Ontologias. Profa. Lillian Alvares Faculdade de Ciência da Informação, Universidade de Brasília Ontologias Profa. Lillian Alvares Faculdade de Ciência da Informação, Universidade de Brasília Origem Teoria sobre a natureza da existência Ramo da filosofia que lida com a natureza e organização da realidade.

Leia mais

Unified Modeling Language UML

Unified Modeling Language UML Unified Modeling Language UML Classe e Objeto Atributo Operação Associações (Delegações [SANTOS, 2003]) Dependência Simples: multiplicidade, papel, navegabilidade Com valor semântico adicional: agregação

Leia mais

Uma Abordagem usando PU

Uma Abordagem usando PU Uma Abordagem usando PU Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Baseada em: Rational Software Corpotation G. Booch, Ivar Jacobson,

Leia mais

Parte I. Orientação a objetos no PHP. Contato: Site: http://professores.chapeco.ifsc.edu.br/lara/

Parte I. Orientação a objetos no PHP. Contato: <lara.popov@ifsc.edu.br> Site: http://professores.chapeco.ifsc.edu.br/lara/ Parte I Programação para WEB II Orientação a objetos no PHP Contato: Site: http://professores.chapeco.ifsc.edu.br/lara/ Programação para WEB II 1 PHP Estruturado Os programadores

Leia mais

Análise Orientada a Objetos

Análise Orientada a Objetos Análise Orientada a Objetos Breve Histórico: Fim da década de 80: amadurecimento da Orientação a Objeto Década de 1990: diversas proposições a partir de diversos autores, como Booch, Rumbaugh e Jacobson.

Leia mais

Modelo Entidade-Relacionamento

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento ome Designação Doc... #Disc... Docente Ensina Disciplina Abordagem proposta por Peter P. Chen (década de 70) para o processo de modelação de dados com ampla aceitação; Trabalho

Leia mais

Análise e Projeto Orientado a Objetos

Análise e Projeto Orientado a Objetos Análise e Projeto Orientado a Objetos Linguagem UML Modelagem Estrutural Modelagem Estrutural Anderson Belgamo Classes Definição: uma classe é uma descrição de um conjunto de objetos que compartilham os

Leia mais

MODELO ENTIDADE - RELACIONAMENTO

MODELO ENTIDADE - RELACIONAMENTO MODELO ENTIDADE - RELACIONAMENTO Modelo Entidade - Relacionamento = Percepção de que o mundo real é formado por um conjunto de objetos chamados entidades e pelo conjunto dos relacionamentos entre estes

Leia mais

Ferramentas Estruturadas de Análise. Dicionário de Dados Diagramas Entidade-Relacionamento. Resumo. Elementos da Análise Estruturada

Ferramentas Estruturadas de Análise. Dicionário de Dados Diagramas Entidade-Relacionamento. Resumo. Elementos da Análise Estruturada Ferramentas Estruturadas de Análise Dicionário de Dados Diagramas Entidade-Relacionamento Profa iriam Sayão Diagrama de Fluxo de Dados - Rede de processos inter-relacionados. Dicionário de Dados e - Detalham

Leia mais

Relacionamentos entre classes

Relacionamentos entre classes Relacionamentos entre classes Relacionamentos entre classes Relacionamentos estruturais entre classes Precisam ser criteriosamente definidos durante o projeto do software São obtidos a partir da análise

Leia mais

Banco de Dados I. Prof. Bal. Emerson Meneses Inocente

Banco de Dados I. Prof. Bal. Emerson Meneses Inocente Banco de Dados I Prof. Bal. Emerson Meneses Inocente Continuação aula 1 Arquitetura de SGBD Relacional ocaracterísticas: Independência de dados e programas; Suporte a múltiplas visões de usuários; Uso

Leia mais

MC302A Modelagem de Sistemas com UML. Prof. Fernando Vanini vanini@ic.unicamp.br

MC302A Modelagem de Sistemas com UML. Prof. Fernando Vanini vanini@ic.unicamp.br MC302A Modelagem de Sistemas com UML Prof. Fernando Vanini vanini@ic.unicamp.br Modelamento de Sistemas e Orientação a Objetos O paradigma de Orientação a Objetos oferece um conjunto de características

Leia mais

3 OOHDM e SHDM 3.1. OOHDM

3 OOHDM e SHDM 3.1. OOHDM 32 3 OOHDM e SHDM Com a disseminação em massa, desde a década de 80, de ambientes hipertexto e hipermídia, principalmente a Web, foi identificada a necessidade de elaborar métodos que estruturassem de

Leia mais

UML Aspectos de projetos em Diagramas de classes

UML Aspectos de projetos em Diagramas de classes UML Aspectos de projetos em Diagramas de classes Após ser definido o contexto da aplicação a ser gerada. Devemos pensar em detalhar o Diagrama de Classes com informações visando uma implementação Orientada

Leia mais

Modelagem de Casos de Uso (Parte 1)

Modelagem de Casos de Uso (Parte 1) Modelagem de Casos de Uso (Parte 1) Roteiro Introdução Descrição: Sistema de Ponto de Vendas Casos de Usos Atores Fluxo de Eventos Cenários Formato de Documentação de Casos de Uso Diagramas de Casos de

Leia mais

Análise e Projeto Orientados a Objetos Aula IX Modelo Conceitual do Sistema (Modelo de Domínio) Prof.: Bruno E. G. Gomes IFRN

Análise e Projeto Orientados a Objetos Aula IX Modelo Conceitual do Sistema (Modelo de Domínio) Prof.: Bruno E. G. Gomes IFRN Análise e Projeto Orientados a Objetos Aula IX Modelo Conceitual do Sistema (Modelo de Domínio) Prof.: Bruno E. G. Gomes IFRN 1 Introdução Análise de domínio Descoberta das informações que são gerenciadas

Leia mais

Estudo de Caso Sistema de Caixa Automático

Estudo de Caso Sistema de Caixa Automático Estudo de Caso Sistema de Caixa Automático Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Notas de Aula Ulrich Schiel Notas de Aula Ariadne

Leia mais

Prova de pré-requisito

Prova de pré-requisito Prova de pré-requisito Curso Python e Django 1. Ao se acessar o site www.google.com qual comando e parâmetros são enviados para o servidor pelo navegador? a. GET / b. GET www.google.com c. PAGE index.html

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

Material de Apoio 5. int getres() { return res; O que estas classes possuem em comum? 1) 2) 3)

Material de Apoio 5. int getres() { return res; O que estas classes possuem em comum? 1) 2) 3) pg. 1/6 Material de Apoio 5 Herança Observe o código das classes Fatorial e Fibonacci apresentados abaixo. class Fatorial { class Fibonacci { private int n, res; private int n, res; public Fatorial( int

Leia mais

Programação Orientada a Objetos. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br

Programação Orientada a Objetos. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Programação Orientada a Objetos Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Programação Orientada a Objetos Na aula passada, vimos: Encapsulamento Programação Orientada

Leia mais

AULA 11-12. Entidade-Relacionamento

AULA 11-12. Entidade-Relacionamento AULA 11-12 Modelo Conceitual, Lógico e Físico, Entidade-Relacionamento Curso: Técnico em Informática (Integrado) Disciplina: Banco de Dados Prof. Abrahão Lopes abrahao.lopes@ifrn.edu.br Modelos de banco

Leia mais

Projeto de Banco de Dados

Projeto de Banco de Dados Projeto de Banco de Dados Atividade de modelagem de dados em diversos níveis de abstração Modelagem conceitual (projeto conceitual) abstração de mais alto nível objetivo: representação dos requisitos de

Leia mais

BPMN. Business Process Modeling Notation. Leandro C. López Agosto - 2015

BPMN. Business Process Modeling Notation. Leandro C. López Agosto - 2015 BPMN Business Process Modeling Notation Leandro C. López Agosto - 2015 Objetivos Conceitos Boas práticas de modelagem Elementos do BPMN Tipos de processos Apresentar os conceitos e elementos da notação

Leia mais

Uma visão mais clara da UML Sumário

Uma visão mais clara da UML Sumário Uma visão mais clara da UML Sumário 1 Método...2 2 Análise de requisitos...2 2.1 Diagramas de Casos de Uso...3 2.1.1 Ator...3 2.1.2 Casos de Uso (Use Case)...4 2.1.3 Cenário...4 2.1.4 Relacionamentos...6

Leia mais

Banco de Dados. Conceitos e Arquitetura de Sistemas de Banco de Dados. Profa. Flávia Cristina Bernardini

Banco de Dados. Conceitos e Arquitetura de Sistemas de Banco de Dados. Profa. Flávia Cristina Bernardini Banco de Dados Conceitos e Arquitetura de Sistemas de Banco de Dados Profa. Flávia Cristina Bernardini Relembrando... Vantagens da Utilização de SGBD Redundância controlada Consistência dos dados armazenados

Leia mais

Databases. Ferramentas gráficas na modelação lógica das BD. O Modelo Entidade-Relação (Associação) O Modelo de Classes no UML

Databases. Ferramentas gráficas na modelação lógica das BD. O Modelo Entidade-Relação (Associação) O Modelo de Classes no UML Databases Ferramentas gráficas na modelação lógica das BD O Modelo Entidade-Relação (Associação) O Modelo de Classes no UML Databases O Modelo Entidade-Relação ou Entidade-Associação 2 Modelo Entidade-Relação

Leia mais

Eduardo Bezerra. Editora Campus/Elsevier

Eduardo Bezerra. Editora Campus/Elsevier Princípios de Análise e Projeto de Sistemas com UML 2ª edição Eduardo Bezerra Editora Campus/Elsevier Capítulo 11 Arquitetura do sistema Nada que é visto, é visto de uma vez e por completo. --EUCLIDES

Leia mais

Guia de Modelagem de Casos de Uso

Guia de Modelagem de Casos de Uso Guia de Modelagem de Casos de Uso Sistema de e-commerce de Ações Versão 1.1 1 Histórico da Revisão. Data Versão Descrição Autor 13 de Setembro de 2008 1.0 Criação do documento Antonio Marques 28 de Setembro

Leia mais

Roteiro 3 Modelagem relacional

Roteiro 3 Modelagem relacional Roteiro 3 Modelagem relacional Objetivos: Explorar conceitos sobre: o Modelagem de bancos de dados projetos: conceitual, lógico e físico; o Conceitos sobre o modelo relacional: tuplas, atributo, entidades,

Leia mais

Sumário. Uma visão mais clara da UML

Sumário. Uma visão mais clara da UML Instituto Federal de Santa Catarina Câmpus Chapecó Ensino Médio Integrado em Informática Módulo V Unidade Curricular: Engenharia de Software Professora: Lara P. Z. B. Oberderfer Uma visão mais clara da

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 01 Orientação a Objetos Edirlei Soares de Lima Paradigmas de Programação Um paradigma de programação consiste na filosofia adotada na

Leia mais

Prof. Alexandre Unterstell Banco de Dados I

Prof. Alexandre Unterstell Banco de Dados I Prof. Alexandre Unterstell Banco de Dados I Etapas para o projeto de um BD Análise de requisitos Analista: Entrevista Necessidade do negócio As etapas não consideram ainda nenhuma característica específica

Leia mais

Modelagem de Dados Usando o Modelo Entidade-Relacionamento

Modelagem de Dados Usando o Modelo Entidade-Relacionamento Modelagem de Dados Usando o Modelo Entidade-Relacionamento Sumário Fases do Projeto de BD Conceitos Básicos do Modelo ER Tipos de entidade, atributos e chaves Tipos de relacionamento Restrições estruturais

Leia mais

MSc. Daniele Carvalho Oliveira

MSc. Daniele Carvalho Oliveira MSc. Daniele Carvalho Oliveira AULA 2 Administração de Banco de Dados: MSc. Daniele Oliveira 2 CONCEITOS FUNDAMENTAIS DE BANCO DE DADOS Administração de Banco de Dados: MSc. Daniele Oliveira 3 Conceitos

Leia mais

UML (Unified Modeling Language) Linguagem de Modelagem Unificada

UML (Unified Modeling Language) Linguagem de Modelagem Unificada UML (Unified Modeling Language) Linguagem de Modelagem Unificada Introdução É a padronização das metodologias de desenvolvimento de sistemas baseados na orientação a objetos. Foi criada por três grandes

Leia mais

A Linguagem de Modelagem Unificada

A Linguagem de Modelagem Unificada A Linguagem de Modelagem Unificada Modelagem de Dados 1 A linguagem de Modelagem Unificada (UML Unified Modeling Language) é uma linguagem gráfica para comunicar especificações de projeto para software.

Leia mais

Após a leitura desse capítulo, o leitor saberá:

Após a leitura desse capítulo, o leitor saberá: Estudo Dirigido Disciplina: Modelagem de sistemas Diagrama de Classe - Modelo de domínio Após a leitura desse capítulo, o leitor saberá: - identificar uma classe e objetos - definir os tipos de classes

Leia mais

Banco de Dados. Modelagem de Dados com MER. Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo.

Banco de Dados. Modelagem de Dados com MER. Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo. Banco de Dados Modelagem de Dados com MER Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo.com 2015 Modelagem de Dados Modelagem de Dados tem como objetivo transformar uma

Leia mais

UML. Unified Modeling Language

UML. Unified Modeling Language UML Unified Modeling Language 1 1. Introdução O desenvolvimento de sistemas de software de grande porte são suportados por métodos de análise e projeto que modelam esse sistema de modo a fornecer para

Leia mais

Engenharia de Software na Prática Hélio Engholm Jr.

Engenharia de Software na Prática Hélio Engholm Jr. Engenharia de Software na Prática Hélio Engholm Jr. Novatec Sumário Agradecimentos... 17 Sobre o autor... 18 Prefácio... 19 Capítulo 1 Desenvolvimento de software para o valor de negócios... 20 1.1 Qualidade

Leia mais

Reuso. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior

Reuso. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Reuso Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Reutilização de Software Na maioria das áreas de engenharia de software, sistemas são desenvolvidos

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

Concepção e Elaboração

Concepção e Elaboração UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Análise e Projeto Orientado a Objetos Concepção e Elaboração Estudo

Leia mais