Apontamentos, resumos, trabalhos, exames e problemas de Computação

Ordenar por
Matéria
Nível

Guia Completo: Requisitos de Software e Padrões de Documentação

Classificado em Computação

Escrito em em português com um tamanho de 37,22 KB

O que é um Requisito de Sistema?

Um requisito pode ser definido como um atributo necessário em um sistema, que pode representar uma habilidade, uma característica ou um fator de qualidade do sistema, de tal forma que é útil para os clientes ou usuários finais.

Um requisito é uma descrição de uma condição ou capacidade que um sistema deve atender, seja derivado de uma necessidade do usuário identificada, ou parte de um contrato, padrão, especificação ou outro documento formalmente imposto no início do processo.

Tipos de Requisitos de Software

Requisitos de software podem ser divididos em duas categorias principais: requisitos funcionais e requisitos não-funcionais.

  • Requisitos Funcionais: São aqueles que definem as funções que
... Continue a ler "Guia Completo: Requisitos de Software e Padrões de Documentação" »

Hierarquia de Armazenamento, Protocolos e Segurança de Rede

Classificado em Computação

Escrito em em português com um tamanho de 8,98 KB

Cache: É a forma de armazenamento mais rápida e mais cara. A memória cache é pequena e gerenciada pelo sistema operacional ou por uma controladora específica. Não é necessário se preocupar com o gerenciamento do armazenamento em cache em um sistema de banco de dados.

Memória Principal: É a mídia de armazenamento utilizada para os dados disponíveis para serem processados. As instruções de máquina operam sobre a memória principal. O conteúdo desta memória pode ser perdido em caso de falta de energia ou falha no sistema.

Memória Flash: Conhecida como EEPROM (electrically erasable programmable read-only memory), é diferente da memória principal, pois sobrevive à falta de energia. A leitura de seus dados é tão rápida quanto... Continue a ler "Hierarquia de Armazenamento, Protocolos e Segurança de Rede" »

Exercícios Resolvidos: Compiladores e Linguagens

Classificado em Computação

Escrito em em português com um tamanho de 3,12 KB

Exercício 1

[FUNIVERSA - 2012 - PC-DF - Perito Criminal – Informática] Com relação aos softwares básicos envolvidos no processo de transformação de um programa escrito em linguagem de alto nível para um código executável ou interpretado, assinale a alternativa correta:

  • A) No processo de análise semântica da compilação, é verificada a consistência dos tipos de variáveis envolvidas em operações aritméticas.

Exercício 2

[CESGRANRIO - 2010 - IBGE - Analista de Sistemas] Ao realizar testes durante a elaboração de um compilador, um analista descobriu um erro na checagem de tipos de variáveis em expressões, permitindo a multiplicação entre tipos de dados incompatíveis. Em compiladores, a checagem de tipos é uma função... Continue a ler "Exercícios Resolvidos: Compiladores e Linguagens" »

Exercícios Resolvidos: Compiladores, Montadores e DLLs

Classificado em Computação

Escrito em em português com um tamanho de 3,52 KB

Exercícios sobre Softwares de Sistema e Linguagens

Exercício 2: Parte fundamental no funcionamento dos equipamentos, os programas de computador são muitas vezes classificados em softwares de sistema e softwares de aplicação. Acerca dos softwares de sistema associados ao desenvolvimento de aplicações, analise as afirmativas abaixo:

  • I. Os programas denominados montadores (Assemblers) realizam a conversão de programas em linguagem de montagem para a linguagem de máquina.
  • Resposta: C) I e II, apenas.

Exercício 3: A construção de programas de computador possui características diferentes em função do tipo de linguagem utilizada. Assim, o uso de cada linguagem está ligado ao emprego de ferramentas específicas para a interpretação e... Continue a ler "Exercícios Resolvidos: Compiladores, Montadores e DLLs" »

Controle de Concorrência e Recuperação em SGBDs

Classificado em Computação

Escrito em em português com um tamanho de 4,28 KB

Bloqueios em Duas Fases

Tipos de Bloqueios:

  • Binários: bloqueado ou desbloqueado.
  • Compartilhado / Exclusivo (leitura/escrita): Depende do tipo de acesso ao dado.

Geralmente existe um bloqueio para cada item de dado do banco de dados. Eles são usados como meio de sincronizar o acesso a estes dados por transações concorrentes.

Serialização com Bloqueio em Duas Fases

Uma transação segue o protocolo de bloqueio em duas fases se todas as operações read_lock e write_lock precedem a primeira operação unlock na transação.

  • Fase de Expansão (primeira fase): Novos bloqueios podem ser adquiridos, mas não podem ser liberados.
  • Fase de Encolhimento (segunda fase): Bloqueios existentes podem ser liberados, mas novos bloqueios não podem ser adquiridos.
... Continue a ler "Controle de Concorrência e Recuperação em SGBDs" »

Exercícios de Estruturas de Dados e Algoritmos: Árvores, Grafos e C

Classificado em Computação

Escrito em em português com um tamanho de 4,21 KB

Questão 1: Árvore B*

Considere a seguinte Árvore B* de ordem m=2 (ou seja, os nós internos podem ter no mínimo dois elementos):

  1. a. Inserções na Árvore B*

    Esquematize como ficaria a árvore após as seguintes inserções: 72, 75, 95, 110 e 115.

  2. b. Remoções na Árvore B*

    Considerando as chaves do item (a) inseridas, esquematize como ficaria a árvore após as seguintes remoções: 60, 29, 45, 52 e 70.

Questão 2: Grafos e Busca em Largura (BFS)

Seja um grafo G cujos vértices são os inteiros de 1 a 8 e os vértices adjacentes a cada vértice são dados pela tabela abaixo:

Vértice | Vértice Adjacente
--------|------------------
1       | 4, 3 e 2
2       | 1, 3, 4 e 5
3       | 1, 2 e 4
...

Assuma que, em um caminhamento de G, os vértices... Continue a ler "Exercícios de Estruturas de Dados e Algoritmos: Árvores, Grafos e C" »

Scrum: Guia Completo do Framework Ágil para Projetos

Classificado em Computação

Escrito em em português com um tamanho de 14,9 KB

O que é Scrum?

Scrum surge da necessidade de aumentar o índice ou taxa de sucesso em projetos.

Scrum vs. Métodos Tradicionais

Enquanto métodos tradicionais focam no triângulo de escopo, custo e prazo, Scrum se destaca ao integrar a qualidade, visando gerar projetos ágeis e de alta qualidade.

A concentração exclusiva em escopo e requisitos pré-estabelecidos nem sempre resulta em valor.

Agilidade significa entregar resultados e valor de forma contínua.

Características da Agilidade

  • Método ágil para gerenciamento de projetos
  • Pequenos times auto-organizados
  • Flexibilidade - um "Framework"
  • Visibilidade e Adaptação

Manifesto Ágil

Criado em 2001, o Manifesto Ágil visa melhorar o desenvolvimento de software, priorizando:

  • Indivíduos e interações
... Continue a ler "Scrum: Guia Completo do Framework Ágil para Projetos" »

Questões Essenciais de Engenharia de Software: ISO 25000, Paradigmas e Testes

Classificado em Computação

Escrito em em português com um tamanho de 5,17 KB

Atributos ISO/IEC 25000 em Cenários de Software

Para cada uma das histórias abaixo, enumere e justifique os atributos aplicáveis (Grupo/Atributo, Ex: Funcionalidade/Acurácia):

  1. O sistema X possui um programa de instalação no Windows, porém, para instalar no Linux, o usuário precisa recorrer a um processo manual - Portabilidade/Capacidade para ser Instalado.
  2. Quando temos que efetuar alguma manutenção no software Y, em função da arquitetura ruim e do alto acoplamento entre os módulos, qualquer alteração no código pode facilmente contaminar negativamente uma série de funcionalidades presentes em diferentes módulos - Manutenibilidade/Estabilidade.
  3. O sistema Z permanece estável durante o tempo médio de uma semana, sendo observado
... Continue a ler "Questões Essenciais de Engenharia de Software: ISO 25000, Paradigmas e Testes" »

Conceitos Fundamentais da Programação Orientada a Objetos

Classificado em Computação

Escrito em em português com um tamanho de 2,91 KB

Conceitos Fundamentais da Programação Orientada a Objetos

Static

Quando for necessário que todos os objetos de uma mesma classe compartilhem uma única variável, podemos definir uma variável membro com o atributo static, que fará com que todos os objetos compartilhem uma única cópia da variável.

Classe

Uma classe é um tipo definido pelo usuário, semelhante a uma estrutura, com o adicional de que funções também podem ser inseridas. Estas funções (métodos) agem sobre os dados (atributos) da classe.

Encapsulamento

É a proteção dos dados contra alterações indevidas. O encapsulamento mantém escondidos dados e métodos do objeto. Pode-se declarar explicitamente o grau de visibilidade de atributos e métodos:

  • public: métodos e atributos
... Continue a ler "Conceitos Fundamentais da Programação Orientada a Objetos" »

Lei de Amdahl e Camadas de Programação em Grid

Enviado por nath e classificado em Computação

Escrito em em português com um tamanho de 2,36 KB

Lei de Amdahl

A Lei de Amdahl, nomeada em homenagem ao arquiteto de computadores Gene Amdahl, é a lei que governa o speedup (ganho de velocidade) na utilização de processadores paralelos em relação ao uso de apenas um processador. Ela determina o potencial de aumento de velocidade a partir da percentagem paralelizável de um programa.

O ganho de desempenho que pode ser obtido ao melhorar uma determinada parte do sistema é limitado pela fração de tempo que essa parte é utilizada. Este ganho depende de dois fatores:

  • Fração de melhoria (Fm): Fração do tempo de computação que pode tirar proveito da melhoria feita. Esta fração é sempre menor ou igual a 1.
  • Ganho de execução (Ge): Ganho obtido com a melhoria na parte específica modificada
... Continue a ler "Lei de Amdahl e Camadas de Programação em Grid" »