Académique Documents
Professionnel Documents
Culture Documents
Proposição - é todo o conjunto de palavras ou símbolos que exprimem um pensamento de sentido completo,
isto é, afirmam fatos ou exprimem juízos que formamos a respeito de determinados antes.
Exemplo:
a) a lua é um satélite da Terra;
b) P = PRT;
c) Brasília é a capital do Brasil.
Princípos Adotados como Regras Fundamentais do Pensamento, na Lógica Matemática
Princípio da não contradição - uma proposição não pode ser verdadeira e falsa ao mesmo tempo.
Princípio do terceiro excluído - toda proposição ou é verdadeira ou é falsa, isto é, verifica-se sempre um
destes casos e nunca um terceiro.
Valores Lógicos das Proposições - chama-se valor lógico de uma proposição a verdade se a proposição é
verdadeira e a falsidade se a proposição é falsa.
Valor Lógico Símbolo de Designação
Verdade V
Falsidade F
Toda proposição tem um e um só dos valores V, F (de acordo os dois princípios supracitados).
Exemplo:
a) o mercúrio é mais pesado que a água; valor lógico da proposição : verdade (V)
b) o sol gira em torno da Terra; valor lógico da proposição : falsidade (F)
Tipos de Proposição
Simples ou Atômicos - é a proposição que não contém nenhuma outra proposição como parte integrante de si
mesma. As proposições simples são geralmente designadas por letras minusculas p, q, r, s ..., chamadas letras
proposicionais.
Exemplo:
p: Oscar é prudente;
q: Mário é engenheiro;
r: Maria é morena.
Composta ou Molecular - é a proposição formada pela combinação de duas ou mais proposições. São
habitualmente designadas por letras maiúsculas P, Q, R, S ..., também denominadas letras proposicionais.
Exemplo:
p: Walter é engenheiro E Pedro é estudante;
q: Mauto é dedicado OU Pedro é trabalhador;
r: SE Flávio é estudioso ENTÃO será aprovado.
Observação: As proposições compostas são também denominadas fórmulas proposicionais ou apenas
fórmulas.
Quando interessa destacar que uma proposição composta P é formada pela combinação de proposições
simples, escreve-se: P (p, q, r ...);
Conectivos - são palavras (ou símbolos) que se usam para formar novas proposições a partir de outras.
Exemplo:
P: 6 é par E 8 é cubo perfeito;
Q: NÃO vai chover;
R: SE Mauro é médico, ENTÃO sabe biologia;
S: o triângulo ABC é isósceles OU equilátero;
T: o triângulo ABC é equilátero SE E SOMENTE SE é equilátero.
Tabela Verdade
Proposição simples - pelo princípio do terceiro excluído é verdade ou falsa, isto é, tem o valor lógico verdade
(V) ou o valor lógico falso (F).
Proposição composta - é a determinação do valor lógico.
Proposições simples componentes se fazem com base no seguinte princípio:
p
V
F
O valor lógico de qualquer proposição composta depende unicamente dos valores lógicos das proposições
simples componentes, ficando por eles unicamente determinados.
Dispositivo
Prático para determinação do valor lógico de uma proposição composta - TABELA VERDADE
Neste dispositivo figuram todos os possíveis valores lógicos das proposições compostas, correspondentes a
todas as possíveis atribuições de valores lógicos às proposições simples componentes.
Exemplos:
Proposição Composta - 02 proposições simples
p q
1 V V
2 V F
3 F V
4 F F
Observe-se que os valores lógicos V e F se alternam de dois em dos para a primeira proposição p e de um em
um para a segunda proposição q, e que, além disso, VV, VF, FV e FF são os arranjos binários com repetição
dos dois elementos V e F.
Proposição Composta - 03 proposições simples
p q r
1 V V V
2 V V F
3 V F V
4 V F F
5 F V V
6 F V F
7 F F V
8 F F F
Analogamente, observe-se que os valores lógicos V e F se alternam de quatro em quatro para a primeira
proposição p, de dois em dois para a segunda proposição q e de um em um para a terceira proposição r, e que,
além disso, VVV, VVF, VFV, VFF, FVV, FVF, FFV e FFF sãos os arranjos ternários com repetição dos dois
elementos V e F.
Notação - o valor lógico de uma proposição simples p indica-se por V(p). Assim, exprime-se que p é
verdadeira (V), escrevendo: V(p) = V.
Analogamente, exprime-se que p é falsa (F), escrevendo: V(p) = F.
Exemplos:
p : o sol é verde;
q : um hexágono tem nove diagonais;
r : 2 é raiz da equação x² + 3x - 4 = 0
V(p) = F
V(q) = V
V(r) = F
Operações Lógicas Fundamentais
Quando pensamos, efetuamos muitas vezes certas operações sobre proposições, chamadas operações lógicas.
As operações lógicas obedecem a regras de um cálculo, denominado cálculo proposicional.
Negação - chama-se negação de uma proposição p a proposição representada por "não p", cujo valor lógico é
verdade (V) quando p é falso e a falsidade quando p é verdadeiro.
Assim, “não p” tem valor lógico oposto daquele de p.
Simbologia - simbolicamente, a negação de p é indicada com notação “~ p”, que se lê “não p”.
p ~p p <-> ~ p
V F F
F V F
3 - Contingência - Chama-se contingência toda a proposição composta em cuja última coluna de sua tabela-
verdade figuram as letras V e F cada uma pelo menos uma vez.
Em outros termos, contingência é toda proposição composta que não é tautologia nem contradição.
As contingências são também denominadas proposições contingentes ou proposições indeterminadas.
p ~p p -> ~ p
V F F
F V V
Implicação Lógica
1 - Definição de Implicação Lógica
Diz-se que uma proposição P(p,q,r,...) implica logicamente ou apenas implica uma proposição Q(p,q,r,...), se
Q(p,q,r,...) é verdadeira (V) todas as vezes que P(p,q,r,...) é verdadeira (V).
P(p,q,r,...) => Q(p,q,r,...)
Em particular, toda proposição implica uma tautologia e somente uma contradição implica uma contradição.
2 - Propriedades da Implicação Lógica
É imediato que a relação de implicação lógica entre proposições goza das propriedades reflexiva (R) e
transitiva (T), isto é, simbolicamente.
(R) P(p,q,r,...) => P(p,q,r,...)
(T) Se P(p,q,r,...) => Q(p,q,r,...) e
Q(p,q,r,...) => R(p,q,r,...), então
P(p,q,r,...) => R(p,q,r,...)
Exemplo
p q P <-> q (p <-> q) ^ p (p <-> q) ^ p -> q
V V V V V
V F F F V
F V F F V
F F V F V
Portanto, simbolicamente: (p <-> q) ^ p => q
Álgebra das Proposições
1 - Propriedade da Conjunção
Sejam p, q e r proposições simples quaisquer e sejam t e c proposições também simples cujos valores lógicos
respectivos são V (Verdade) e F (Falsidade).
a - Idempotente : p ^ p <=> p
b - Comutativa: p ^ q <=> q ^ p
c - Associativa: (p ^ q) ^ r <=> p ^ (q ^ r)
d - Identidade: p ^ t <=> p e p ^ c <=> c
2 - Propriedade da Disjunção
Sejam p, q e r proposições simples quaisquer e sejam t e c proposições também simples valores lógicos
respectivos são V (Verdade) e F (Falsidade).
a - Idempotente : p V p <=> p
b - Comutativa: p V q <=> q V p
c - Associativa: (p V q) V r <=> p V (q V r)
d - Identidade: p V t <=> p e p V c <=> c
3 - Propriedade da Conjunção e da Disjunção
Sejam p, q e r proposições simples quaisquer.
a - Distributivas:
(i) p ^ (q V r) <=> (p ^ q) V (p ^ r)
(ii) p V (q ^ r) <=> (p V q) ^ (p V r)
b - Absorção:
(i) p ^ (q V q) <=> p
(ii) p V (q ^ q) <=> p
c - Regras de “DE MORGAN”:
(i) ~ (p ^ q) <=> ~ p V ~ q
(ii) ~ (p V q) <=> ~ p ^ ~ q
4 - Negação da Bicondicional
Como p <-> q <=> (p -> q) ^ (q -> p), temos:
p <-> q <=> (~ p V q) ^ (~ q V p) e, portanto:
~ (p <-> q) <=> ~ (p V q) V ~ (~ q V p)
~ (p <-> q) <=> (~ ~ p ^ ~ q) V (~ ~ q ^ ~ p)
Postulados
Como toda teoria matemática, um conjunto de afirmações (postulados) é aceito sem a necessidade de
demonstração. Tais postulados estabelecem os fundamentos da Álgebra de Boole, determinam os seus limites,
definem as operações e fornecem a sustentação para a demonstração de teoremas.
Quaisquer que sejam X, Y ou Z pertencentes ao conjunto S, considere os seguintes postulados:
P1. Associatividade das operações E e OU.
a) ( X+Y ) + Z = X + ( Y + Z )
b) ( X .Y ) . Z = X . ( Y . Z )
P2. Comutatividade das operações E e OU.
a) X + Y = Y + X
b) X . Y = Y . X
P3. Elemento unitário para a operação OU - Dizemos que um elemento pertencente a S é unitário numa dada
operação quando o seu relacionamento, através dessa operação, com um elemento X qualquer pertencente a S,
resulta no próprio elemento X.
P4. Elemento unitário para a operação E.
O unitário da operação E é o dígito 1, ou seja:
1.X=X
P5. Distributividade de E sobre a operação OU.
X+(Y+Z)=(X.Y)+(X.Z)
P6. Distributividade de OU sobre a operação E.
X+(Y.Z)=(X+Y).(X+Z)
P7. Existência de um elemento completo.
Qualquer que seja X, existe X barrado. também pertencente a S, denominado complemento de X, tal que:
X . X barrado = 0 e X + X barrado = 1
Os cinco primeiros postulados possuem equivalentes na álgebra tradicional. Os postulados P6 e P7 são
exclusivos da Álgebra de Boole e, por isso, responsáveis pelo estabelecimento das diferenças entre as duas
álgebras.
As regras de prioridade usadas na álgebra tradicional para parênteses, colchetes e chaves são válidas na
Álgebra de Boole. E mais, a operação E tem prioridade sobre a operação OU.
Lei da Dualidade
Se substituirmos numa expressão lógica o símbolo da operação OU pelo da operação E (e vice-versa),
substituirmos o dígito 0 por 1 (e vice-versa), então obteremos uma nova expressão, também verdadeira,
denominada DUAL da expressão original.
0 + X = X DUAL: 1 . X = X
( X + Y ) + Z = X + ( Y + Z ) DUAL: ( X . Y ) . Z = X . ( Y . Z )
Teoremas Fundamentais
A lei da dualidade pode ser aplicada nos teoremas demonstrados para a obtenção de novos teoremas.
Quaisquer que sejam X e Y pertencentes a S, podemos afirmar:
T1. Teorema dos elementos nulos.
A soma de um elemento X qualquer com 1 é igual a 1. Ou seja, X + 1 = 1
T2. Dual do teorema dos elementos nulos.
O produto de X por 0 é igual a 0. Ou seja, X . 0 = 0
T3. Teorema da Idempotência (parte a).
A soma de um elemento X qualquer com ele mesmo é igual a X. Ou seja, X + X = X
T4. Teorema da Idempotência (parte b).
O produto de um elemento X qualquer, pertencente a S, por ele mesmo é igual a X. Ou seja, X . X = X
T5. Teorema da Convolução.
O complemento do complemento de um elemento X é igual ao próprio elemento X. Ou seja,
Tabelas de Combinações
Métodos:
- incluir
- alterar
- excluir
Venda:
Dados:
- id_cliente
- id_vendedor
- data_venda
- produto
Métodos:
- registrar
- calcular_comissão
- calcular_fatura
Roteiro das Atividades
Análise:
- Identificar as classes de objetos do negócio
- Desenhar o Modelo de Objetos
- Definir as operações que deverão ser possíveis de serem realizadas com o sistema
- Desenhar o Modelo de Estados para as classes com comportamento dinâmico significativo
- Desenhar as principais interfaces com o usuário
Projeto:
- Desenhar o Modelo de Eventos, abrangendo todas as operações previstas para o sistema.
- Projetar as Bases de Dados
- Especificar as Classes de Objetos do Negócio.
- Especificar as Funções do Negócio.
- Especificar as Interfaces
Atributos ou Dados Membros - é aquilo que é próprio de um ser, com características qualitativa ou
quantitativa que identifica um membro de um conjunto observado
- caráter parte essencial de uma substância.
- uma parte de um objeto.
- são os dados pertencentes a um sujeito.
Métodos ou Funções Membros - é o caminho pelo qual se chega a um determinado resultado, ainda que esse
caminho não tenha sido fixado de antemão de modo deliberado.
- uma operação relativa a um objeto, definida como parte de declaração da classe.
- todos os métodos são operações, mas nem todas operações são métodos.
- o termo mensagem, método e operação são usualmente intercambiáveis.
- as funções membro compõem a interface com a classe.
Mensagem - é uma operação que um objeto executa sobre outro. Os termos mensagem, método e operação
são usualmente intercambiáveis.
Exemplo: MenuPrincipal.Seleciona (segunda Opção);
Onde: MenuPrincipal = Objeto Seleciona = Método Segunda Opção = Parâmetro
Estado - são resultados cumulativos do comportamento do objeto - uma das possíveis condições na qual o
objeto existe, caracterizada pelas quantidades que são distintas de outras quantidades.
Em qualquer ponto do tempo, o estado do objeto abraça todas as (usualmente estática) propriedades do objeto
mais os atuais (normalmente dinâmico) valores dessa propriedade.
Comportamento - é como um objeto age e reage, em termos de mudança de seu estado e envio de mensagem
externamente visível e comprovada atividade.
Agregação - é o relacionamento "parte-todo" ou "uma-parte-de" no qual os objetos que representam os
componentes de alguma coisa são associados a um objeto que representa a estrutura inteira.
Transição de Estados - os principais conceitos de Modelo de Transição de Estados:
- Eventos = estímulos externos
- Estados = valores do objeto
Evento é um estímulo individual, que acontece num certo momento e não tem duração.
Relata os aspectos de um sistema que são relativos ao tempo e às modificações.
Projeto
Regras para o Projeto
- A base de dados correspondente a uma classe de objetos deve ser projetada independentemente das demais.
- Deve haver uma nítida separação física entre as bases de cada classe de objetos.
- Classes diferentes podem utilizar deferentes gerenciadores.
Como Projetar
- Normalizar os atributos (eliminar ocorrências)
- Analisar atributos opcionais visando economia de espaço
- Levantar a freqüência e a criticidade das operações
- Definir a necessidade de índices secundários
- Desenhar o diagrama
- Criar a base de dados no SGBD
UML - Linguagem de Modelagem Unificada
A UML é uma linguagem de modelagem gráfica para descrever um projeto de software. Ela simplifica o
complexo processo de análise, projeto e construção de software criando visões do sistema que esta sendo
construído.
É uma linguagem para especificação, construção, visualização e documentação de sistemas.
A UML (Unified Modeling Language) era o que faltava para consolidar e alavancar a utilização da Orientação
a Objetos como técnica para automatizar a produção de software. As técnicas são utilizadas para incrementar
a qualidade e reduzir os custos, além de gerenciar a complexidade dos sistemas, que aumentam cada vez mais
em escopo e escala.
Esta linguagem pode ser usada com todos os processos, durante todo o ciclo de desenvolvimento, e com
diferentes tecnologias de implementação.
A UML pode ser utilizada para:
- Mostrar a periferia de um sistema e suas maiores funções usando Casos de Uso e Atores
- Ilustrar realizações de Casos de Uso com Diagramas de Iterações
- Representar a estrutura estática de um sistema usando Diagramas de Classes
- Modelar o comportamento de objetos com Diagramas de Transições de Estado
- Revelar a arquitetura de implementação física com Diagramas de Componentes e Distribuição
- Estender sua funcionalidade com Estereótipos
Diagramas de Classes
Um diagrama de classes mostra uma coleção declarativa (estática) de elementos do modelo, como classes,
tipos e os seus conteúdos e relações, mostra a existência de classes e suas relações com a visão lógica do
sistema.
Existem alguns elementos de UML que são presentes nos Diagramas de Classes, tais como:
- Classes, suas estruturas internas e comportamento
- Associações, agregações, dependências, e relações de herança
- Multiplicidade e indicadores de navegação
- Nomes de papéis (O que uma classe representa para outra)
Classes
Uma classe é uma coleção de objetos com estrutura, comportamento, relações e semânticas comuns. É a
descrição de um conjunto de objetos que compartilham os mesmos atributos, operações, métodos, relações e
semântica. Uma classe é uma implementação de tipo.
Estas classes são descobertas pelo exame dos objetos nos Diagramas de Seqüência e Colaboração.
As classes devem possuir padrões de nomenclatura.
Comportamento
O comportamento de uma classe é representado pelas suas operações ou eventos, incluindo seus resultados,
que podem ser encontradas examinando-se os Diagramas de Interação.
Estrutura
A estrutura de uma classe é representada pelos seus atributos, que podem ser encontrados pelo exame das
definições de classes, requisitos de problemas, e pela aplicação do conhecimento do domínio.
Relacionamento
As relações entre classes e objetos fornecem um caminho para a comunicação entre eles. Os Diagramas de
Seqüência e/ou Colaboração são examinados para determinar quais ligações entre objetos precisam existir
para se chegar ao comportamento desejado. No caso de dois objetos precisem “conversar” deverá haver uma
ligação entre elas.
Há três tipos de relações:
- Associação: é uma conexão bi-direcional entre classes;
- Agregação: é um tipo mais forte de conexão, aonde a relação é entre o todo e suas partes;
- Dependência: é uma forma mais fraca de relação, mostrando uma relação entre duas entidades externas,
aonde uma não tem conhecimento semântico da outra.
Herança
Herança é uma relação entre uma superclasse e suas sub-classes, isto é, o mecanismo pelo qual, elementos
mais específicos incorporam estrutura e comportamento de elementos mais gerais relacionados.
Há duas formas de se descobrir heranças:
- Generalização
- Especialização
Detalhamento de Atividades de Ciclo de Vida Interativo
As atividades de Ciclo de Vida de uma Abordagem Iterativa divide-se em:
- Planejamento de Iteração: antes da iteração iniciar, os objetivos gerais da iteração deveriam ser
estabelecidos; determinam-se os critérios de avaliação para esta iteração e prepara-se um plano de iteração
detalhado para inclusão no planejamento de desenvolvimento;
- Captura de Requisitos: selecionam-se/definem-se casos de uso para serem implementados nesta iteração;
atualiza-se o modelo de objetos para refletir novas classes e associações descobertas e desenvolve-se um
plano de teste para a iteração;
- Análise e Projeto: determinam-se quais classes serão desenvolvidas ou atualizadas nesta iteração; atualiza-se
o modelo de objetos para refletir novas classes de projeto e associações descobertas; atualiza-se o documento
de arquitetura, caso necessário e inicia-se o desenvolvimento dos procedimentos de testes;
- Implementação: gera-se código automaticamente a partir do modelo; desenvolve-se código para operações
(manualmente); completam-se os procedimentos de testes e conduzem-se testes de unidade e de integração;
- Testes: integra-se e testa-se o código desenvolvido contra outros sistemas ou contra lançamentos anteriores;
capturam-se e revisam-se os resultados; avaliam-se os resultados relativos aos critérios de avaliação e conduz-
se uma avaliação da iteração onde prepara-se a descrição do lançamento, sincronizam-se o código e os
modelos e guardam-se os produtos da iteração em bibliotecas controladas.
Lembre-se da razão principal para se utilizar o ciclo de vida iterativo:
- Você não tem toda a informação que precisa no início do processo;
- Os elementos mudam durante o projeto.
Você deve supor que:
- Alguns riscos não serão eliminados como planejado
- Você irá descobrir novos riscos no caminho
- Algum re-trabalho será necessário; algumas linhas de código escritas para uma iteração serão jogadas fora
- Requisitos irão mudar no caminho.
Diagramas de Interação
Diagramas de Interação descrevem como casos de uso são realizados como interações entre associações de
objetos. Há dois tipos de Diagramas de Interação:
- Diagramas de Seqüência: mostra interações entre objetos organizadas seqüencialmente no tempo. Em
particular, mostra os objetos participando de uma interação e a sucessão de mensagens trocadas entre eles. Ao
contrário de um diagrama de colaboração, um diagrama de seqüência inclui a seqüência de tempo, mas não
inclui as relações entre os objetos. Um diagrama de seqüência pode existir em uma forma genérica (descreve
todos as possíveis) e em uma forma de instância (descreve um cenário real). Diagramas de seqüência e
diagramas de colaboração expressam informação semelhante, mas a apresentam de modo diferente. Mostra
interações de objetos ordenados numa seqüência de tempo;
- Diagramas de Colaboração: mostra as interações de objetos organizadas entre os objetos e seus vínculos. Ao
contrário de um diagrama de seqüência os diagramas de colaboração mostram as relações entre os objetos.
Diagramas de seqüência e colaboração expressam uma informação semelhante, mas a apresentam de modo
diferente.
Diagramas de Interação
Os Diagramas de Componentes ilustram a organização e dependências entre componentes de software.