1366028577077

6
PROFESSORA POLYANNA P. GOMES FABRIS Especialista em Engenharia de SW com UML ANÁLISE DE SISTEMAS II Aula 2 Diagrama de Classe Classe e Operações Abstratas Uma classe abstrata não gera objetos, porque ela tem no mínimo uma operação abstrata nela definida. Uma operação é abstrata se ela é isenta de implementação. Representação na implementação Java Classe Abstrata abstract class NomeClasse{ } Operação Abstrata public abstract void nomeOperacao(); Representação na implementação C# Classe Abstrata abstract class NomeClasse{ } Operação Abstrata public abstract void nomeOperacao();

Transcript of 1366028577077

Page 1: 1366028577077

PROFESSORA POLYANNA P. GOMES FABRIS

Especialista em 

Engenharia de SW com UML

ANÁLISE DE SISTEMAS II

Aula 2

Diagrama de Classe

Classe e Operações Abstratas

Uma classe abstrata não gera objetos, porque ela tem no mínimo uma operação abstrata nela definida.

Uma operação é abstrata se ela é isenta de implementação.

Representação na implementação

JavaClasse Abstrataabstract class NomeClasse{}Operação Abstratapublic abstract void nomeOperacao();

Representação na implementação

C#Classe Abstrataabstract class NomeClasse{}Operação Abstratapublic abstract void nomeOperacao();

Page 2: 1366028577077

Herança

Herança – é a possibilidade de uma classe utilizar os atributos e operações de uma outra classe como se fossem seus.

Java:

public class ContaCorrente extends ContaBancaria {

}

C#:

class ContaCorrente: ContaBancaria{

}

Herança

Notação da Operação ‐ Visibilidade

[visibilidade] nome ([lista de parametros]) ‘:’[resultado do retorno]Refere‐se ao escopo de acesso permitido para um membro de uma classe.

Classe1

atributoPublicoatributoProtegidoatributoPrivado

operacaoPublica()operacaoProtegida()operacaoPrivada()

Classe1

atributoPublicoatributoProtegidoatributoPrivado

operacaoPublica()operacaoProtegida()operacaoPrivada()

Visibilidade da Operação

A Visibilidade é usada para reforçar o encapsulamento.

Pode ser público, protegido ou privado. 

Visibilidade da OperaçãoPúblico

É a OPERAÇÃO ou ATRIBUTO  acessível por MÉTODOS de qualquer CLASSE.

Público

Classe1

atributoPublicoatributoProtegidoatributoPrivado

operacaoPublica()operacaoProtegida()operacaoPrivada()

Classe1

atributoPublicoatributoProtegidoatributoPrivado

operacaoPublica()operacaoProtegida()operacaoPrivada()

Visibilidade da OperaçãoProtegido

É a OPERAÇÃO ou ATRIBUTO acessível por MÉTODOS de qualquer CLASSE descendente (subclasse) da CLASSE corrente.

ProtegidoClasse1

atributoPublicoatributoProtegidoatributoPrivado

operacaoPublica()operacaoProtegida()operacaoPrivada()

Classe1

atributoPublicoatributoProtegidoatributoPrivado

operacaoPublica()operacaoProtegida()operacaoPrivada()

Page 3: 1366028577077

Visibilidade da OperaçãoPrivado

É a OPERAÇÃO ou ATRIBUTO  acessível somente por MÉTODOS da própria CLASSE.

Classe1

atributoPublicoatributoProtegidoatributoPrivado

operacaoPublica()operacaoProtegida()operacaoPrivada()

Classe1

atributoPublicoatributoProtegidoatributoPrivado

operacaoPublica()operacaoProtegida()operacaoPrivada()

Privado

Visibilidade da Operação

Como saber qual visibilidade utilizar?

Se a mensagem estiver fora do objeto, use o “público”

Se for de uma subclasse, use o “protegido”

Se ele for próprio, use “privado”

“A visibilidade aplica‐se aos atributos assim como em operações.”

Atividade em sala 1

Possuímos 2 classes, ClasseA e ClasseB. Ambas estão com as operações definidas como pública. O que significa isso?

Qual a visibilidade devemos definir para que a operação2 e operação3 fiquem visíveis apenas para a própria classe?

Qual a visibilidade (diferente de pública) devemos definir para que a operação1 fique visível para a Classe C?

Atividade em sala 1

Notação da Operação ‐ Nome

[visibilidade] nome ([lista de parametros]) ‘:’ [ resultado do retorno]

O nome da operação identifica um recurso comportamental específico de uma classe de objeto.

Para ser eficaz, o nome deveráser o mais significativo e expressivo possível.

Notação da Operação –Lista de Parâmetro

[visibilidade] nome ([lista de parâmetros]) ‘:’ [ resultado do retorno]

A lista de parâmetros é uma lista dos atributos que, juntos definem a entrada para uma operação.

A lista de parâmetro não é obrigatória.

Page 4: 1366028577077

Notação da Operação –Resultado do retorno

[visibilidade] nome ([lista de parametros]) ‘:’ [ resultado do retorno]

O resultado do retorno é a saída da operação.

Por exemplo, quando eu peço o nome do evento, eu desejo que ele retorne uma string com o nome do evento.

Notação do Atributo

Esses elementos normalmente são expressos em uma única string de texto, utilizando a sintaxe:

[visibilidade] [/] nome [: tipo] 

A maioria das ferramentas trazem essas informações em campos separados, tornando assim mais fácil a visualização.

Notação do Atributo ‐ Visibilidade

Nos estágios iniciais da análise, normalmente émais fácil assumir todos os atributos como privado (‐), posteriormente, se necessário, pode ser alterado.

Notação do Atributo – Derivado  (/)

[visibilidade] [/] nome [: tipo] 

Uma barra na frente do nome do atributo, identifica o atributo derivado.

Um valor derivado é aquele que é calculado (ou descoberto), usando outros dados ou uma fórmula.

Notação do Atributo – Derivado  (/)

O atributo nome define um valor básico, pois o nome não pode ser calculado ou descoberto. Precisa ser fornecido pelo usuário.

A dataFim pode ser calculado usando a duração do evento e a dataInicio

Notação do Atributo – Nome

[visibilidade] [/] nome [: tipo] 

O nome do atributo é obrigatório. 

Deve ser exclusivo dentro da classe

Deve ser o mais descritivo possível para evitar confusão.

Page 5: 1366028577077

Notação do Atributo – Tipo de dado

[visibilidade] [/] nome [: tipo]

O tipo de dado explica a espécie de informação que pode ser armazenada no atributo.

Atividade em sala 2

Considere uma Classe Departamento e pessoa, faça as atividades abaixo seguindo a notação de atributo e operação. 

1. Defina a visibilidade protegido para o atributo nome e o tipo de dados como String. Defina o atributo qtdPessoa como derivado.

Atividade em sala 2

2. Crie uma operação para a classe pessoa, com o nome validarCPF, deixe com a visibilidade público, passe na lista de parâmetro a data de demissão, o resultado‐retorno um inteiro[visibilidade] nome ([lista de parametros]) ‘:’ [ resultado do retorno]

Atividade em sala 3

Analisar o estudo de caso e efetuar o Diagrama de Classe na Ferramenta Astah.

SISTEMA PARA CONTROLE DE ORDEM DE SERVIÇOS

Atividade em sala 3

A Computer & CIA é uma pequena empresa prestadora de serviços de equipamentos de informática, a empresa possui em seu quadro funcional 8 colaboradores, sendo: 3 técnicos, 2 vendedores, 1 secretária, 1 office boy e 1 assistente administrativo. O proprietário da empresa Sr. Joséde Castro está preocupado com a falta de controle nos atendimentos técnicos fornecidos aos seus clientes, sendo assim, o mesmo resolvera informatizar iniciando o processo pelas OS (Ordem de Serviços).

Atividade em sala 3

O Sistema para Controle de Ordem de Serviços deverá atender aos requisitos:

Controlar as OS em execução,  canceladas, abertas e concluídas;

Controlar os clientes que foram atendidos;

Controlar os serviços executados e as peças utilizadas.

Controlar os fornecedores.

Page 6: 1366028577077

Atividade em sala 3

O cliente solicita a abertura de uma OS para um determinado equipamento, seja um computador, uma impressora ou um periférico, o técnico realiza a abertura da ocorrência. Na abertura da OS, ficará registrado a data de abertura da OS. Todos os serviços devem ser executados no período máximo de 7 dias úteis. Será registrado o cliente, os dados do equipamento e a ocorrência(o que aconteceu com o equipamento).

Atividade em sala 3

Definir:Na Classe Ordem de Serviço

Atributos: Numero OS, visibilidade: publico

Data de Abertura, visibilidade: protegido

Data de Fechamento, visibilidade: protegido

Operações: Gravar , visibilidade: protegido

Pesquisar, visibilidade: publico

Resposta da Atividade na Ferramenta Case Astah Community

© 2013 – Todos os direitos reservados.Uso exclusivo no Sistema de Ensino Presencial Conectado.