Anotações, resumos, trabalhos, provas e exercícios de Computação de Ensino Médio

Fundamentos do Modelo Relacional e Restrições de Integridade

Computação3,29 KB

Terminologia

  • Relação: Tabela bidimensional em que:
    • Linha: É uma tupla e representa um conjunto de valores relacionados;
    • Coluna: Devem ter nomes distintos e são chamadas de atributos (a quantidade de atributos define o grau de uma relação);
    • Domínio: Conjunto de valores possíveis em uma coluna.

Modelo Relacional

  • Chave Primária (Primary Key):
    • É o atributo (coluna) de uma relação (tabela) que identifica uma tupla.
    • Se houver mais de um atributo, ou um conjunto de atributos, que identifica unicamente uma relação, escolhe-se o menor ou o que é mais frequentemente utilizado como referência na tabela.
    • Todos os atributos ou conjuntos de atributos que podem ser tomados como chave primária são chamados de chave candidata ou chave concorrente.
  • Chave
...
Continue lendo "Fundamentos do Modelo Relacional e Restrições de Integridade" »

Fundamentos de Redes: Gerência, Protocolos e Comutação

Computação8,52 KB

Gerência de Redes OSI e o Protocolo CMIP

O modelo OSI de gerenciamento é baseado no modelo Agente/Gerente e utiliza o protocolo CMIP (Common Management Information Protocol), que é um protocolo complexo e robusto.

Atividades de Projeto e Desenvolvimento de Protocolos

As principais atividades relacionadas ao projeto e desenvolvimento de protocolos incluem:

  • Especificação Informal: Realizada em linguagem natural (português, inglês, etc.), mas apresenta problemas por ser dúbia.
  • Especificação Formal: Visa corrigir possíveis problemas existentes na especificação informal, através do uso de técnicas formais. Isso envolve:
    • Linguagens de programação de baixo e/ou alto nível.
    • Modelos de transição (Redes de Petri, Máquinas de Estados Finitos
...
Continue lendo "Fundamentos de Redes: Gerência, Protocolos e Comutação" »

Gerenciamento de Escopo e Ciclo de Vida de Projetos

Computação2,59 KB

Ciclo de Vida

O ciclo de vida serve para facilitar a elaboração progressiva do projeto e o controle do gerenciamento. O ciclo de vida consiste em diversas fases do projeto. Nessas fases, determinam-se as características e necessidades de cada projeto, onde se definem as pessoas e recursos que deverão ser envolvidos.

Fases:

  • Ideia;
  • Desenho;
  • Desenvolvimento;
  • Entrega.

Gerenciamento do Escopo

Inclui os processos necessários, de acordo com o PMBOK, para assegurar que o projeto inclua todo e somente o trabalho necessário para que seja bem-sucedido.

  • Escopo do Produto: Está relacionado ao conjunto de características e funções que o produto final deve possuir. É registrado em um documento de requisitos do produto.
  • Escopo do Projeto: É todo o trabalho
...
Continue lendo "Gerenciamento de Escopo e Ciclo de Vida de Projetos" »

Gerenciamento de Processos em Sistemas Operacionais

Computação5,32 KB

Conceito de Processo

Um Sistema Operacional (SO) executa uma variedade de programas:

  • Sistemas em batch (jobs)
  • Sistemas de tempo compartilhado (programas de usuário ou tarefas)

Os termos tarefa, job e processo são frequentemente usados como sinônimos.

Processo: Um programa em execução, cuja execução deve ser sequencial.

Um processo inclui:

  • Contador de programa
  • Pilha
  • Seção de dados

Diagrama de Estados de um Processo

À medida que o programa executa, seu estado muda:

  • Novo: O processo está sendo criado.
  • Em Execução: Instruções estão sendo executadas.
  • Em Espera (Bloqueado): O processo espera por um evento (ex: conclusão de I/O).
  • Pronto: O processo está esperando para ser atribuído a um processador (CPU).
  • Encerrado: O processo terminou sua execução.
...
Continue lendo "Gerenciamento de Processos em Sistemas Operacionais" »

Práticas Ágeis, Requisitos e Modelagem de Software

Computação5,36 KB

Práticas Ágeis e Desenvolvimento de Software

Test-Driven Development (TDD)

  • TDD é a técnica que permite fazer testes contínuos e não apenas na conclusão do sistema, melhorando a qualidade técnica do produto.
  • Incrementos desenvolvidos em tempo reduzido: releases pequenos, entregando funcionalidades em meses ou semanas, ao invés de anos.
  • Utilização de refatoração: melhorando o código e tornando-o mais fácil de manter constantemente.
  • Integração Contínua: quando o incremento está pronto, ele é integrado ao sistema como um todo, ou seja, isto é feito diariamente.

Programação em Par (Pair Programming)

Vantagens da Programação em Par

  • Compartilhamento do conhecimento
  • Correção de falhas
  • Manutenibilidade

Desvantagens da Programação em

...
Continue lendo "Práticas Ágeis, Requisitos e Modelagem de Software" »

Fundamentos de Bancos de Dados Relacionais

Computação15,77 KB

Domínio

  • Domínio: Conjunto de valores atômicos.
  • Um tipo de dado ou formato também é especificado para cada domínio.
  • Exemplos: numero_telefone, cadastro_pessoa_fisica, media_nota, idade_funcionario.

Esquema, Atributo e Grau

  • Esquema relacional: É composto de um nome de relação e uma lista de atributos.
  • Atributo: É o nome de um papel desempenhado por algum domínio no esquema de relação.
  • Grau (aridade): É o número de atributos desse esquema de relação.

Relação e Tuplas

  • Relação: É um conjunto de n tuplas.
  • Tuplas: É uma lista ordenada de n valores, em que cada valor é um elemento do domínio do atributo ou é um valor especial NULL.
  • Cada tupla é uma linha da relação (tabela).
  • Cada atributo corresponde a um cabeçalho de coluna.
  • Valores
...
Continue lendo "Fundamentos de Bancos de Dados Relacionais" »

Algoritmos de Busca e Ordenação em Estruturas de Dados

Computação3,61 KB

Algoritmos de Busca

Busca Sequencial

  • Percorre cada item do vetor até encontrar a informação solicitada.
  • Apresenta baixo desempenho quando se tem uma grande quantidade de registros.
  • Melhor desempenho quando os dados estão ordenados.

Busca Binária

  • Divide o vetor ao meio e compara o elemento central com o procurado.
  • Se o elemento procurado for menor, repete o processo no lado esquerdo; se for maior, repete no lado direito.
  • Os elementos devem estar ordenados.
  • Desempenho melhor que a busca sequencial.

Busca por Interpolação

  • É uma variação da busca binária.
  • Escolhe a próxima posição pesquisada com base em uma estimativa sobre a posição do elemento procurado em relação ao restante do vetor.
  • Pode ser mais eficiente do que a pesquisa binária,
...
Continue lendo "Algoritmos de Busca e Ordenação em Estruturas de Dados" »

Guia Completo de Gerenciamento de Projetos: Conceitos e Melhores Práticas

Computação299,44 KB

Aula 1: Fundamentos do Gerenciamento de Projetos

Definição de Projeto: Um projeto é um esforço temporário, empreendido para criar um produto, serviço ou resultado único. Ele é caracterizado por ser incomum e extraordinário devido a restrições de recursos, ter um ciclo de vida com início e fim definidos, e visar a criação de algo novo. Os resultados podem incluir recomendações, novas estruturas, eleições, conformidade com regras e leis. A unicidade do projeto se manifesta no contexto, na equipe e no planejamento, incluindo contingências.

Exemplos de projetos ocorrem tanto na vida pessoal quanto nas organizações, sendo um modelo de gestão aplicável em entidades públicas, privadas e sociais.

Gerenciar um Projeto

Gerenciar um...

Continue lendo "Guia Completo de Gerenciamento de Projetos: Conceitos e Melhores Práticas" »

Sistemas de Arquivos e Gerenciamento de Disco

Computação3,89 KB

Questões sobre Sistemas Operacionais

1. Explique qual é a finalidade dos sistemas de arquivos?

Resposta: É um conjunto de estruturas lógicas e de rotinas que permitem ao sistema operacional controlar o acesso ao disco rígido.

2. Explique o que são "clusters" ou unidades de alocação?

Resposta: É o nome dado a um sistema que seleciona dois ou mais computadores para que estes trabalhem de maneira conjunta no intuito de processar uma tarefa. Estas máquinas dividem entre si as atividades de processamento e executam este trabalho de maneira simultânea.

3. Comente sobre as vantagens e desvantagens em se definir grandes unidades de alocação em um disco rígido?

Resposta: Pode-se obter resultados tão bons quanto ou até superiores aos de um...

Continue lendo "Sistemas de Arquivos e Gerenciamento de Disco" »

Glossário de Sistemas Operacionais: Termos Essenciais

Computação3,62 KB

Conceitos Fundamentais de Sistemas Operacionais

Formatação Lógica

É o processo que cria o sistema de arquivos, no qual o sistema operacional armazena as estruturas de dados iniciais, incluindo o mapeamento dos espaços alocados e livres e um diretório vazio inicial.

Diretório

É uma estrutura de dados utilizada para organizar logicamente os diversos arquivos contidos em um dispositivo de armazenamento.

Compartilhamento de Recursos

É o processo de atribuição de recursos do computador a determinados programas que estão em execução.

Alocação Mutuamente Exclusiva

O programa precisa aguardar até que outro termine completamente seu processo para que possa ser executado.

Alocação Compartilhada

O programa não precisa aguardar que outro termine...

Continue lendo "Glossário de Sistemas Operacionais: Termos Essenciais" »