Anotações, resumos, trabalhos, provas e problemas de Computação

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

Computação5,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 lendo "Questões Essenciais de Engenharia de Software: ISO 25000, Paradigmas e Testes" »

Guia de Maturidade: CMM, CMMI e Processos ISO 12207

Computação5,51 KB

1. Cinco Níveis de Maturidade do CMM

Nível 1: Inicial - Processo ad hoc (para isto, o projeto manda no processo e não o contrário; imediatismo) e caóticos (imprevisíveis em custo, prazo e escopo). O sucesso do projeto depende do heroísmo (sacrifício e não profissionalismo) e da competência das pessoas (e não competências da empresa; se perdeu os colaboradores, perdeu a competência) e não de processos estruturados. Há heróis e gurus: dependência de pessoas.

Nível 2: Repetível - A empresa possui um processo de desenvolvimento de software que é repetido a cada projeto. Sucessos e erros praticados em projetos anteriores podem ser repetidos e evitados, respectivamente, em novos projetos. Grande foco na gestão de projetos quanto...

Continue lendo "Guia de Maturidade: CMM, CMMI e Processos ISO 12207" »

Conceitos Essenciais em Engenharia de Software e Desenvolvimento

Computação13,32 KB

1. O que é Medição de Software?

A medição de software é a avaliação quantitativa de qualquer aspecto dos processos e produtos de software. Ela permite um melhor planejamento, controle e melhoria do que se produz e do que é produzido.

2. O que o Controle Estatístico faz pela Qualidade do Software?

Para que um software tenha qualidade, é preciso organizar a medição e planejar, verificar riscos e qualidades para que se obtenha um software com a qualidade esperada.

3. Qual o Ciclo do TDD (Test-Driven Development)?

  • Adicionar um teste
  • Executar todos os testes
  • Escrever código
  • Executar os testes automatizados
  • Refatorar código
  • Repetir tudo

4. O que são Fakes e Mocks?

A interface deve ser implementada de duas maneiras: uma que realmente acessa o...

Continue lendo "Conceitos Essenciais em Engenharia de Software e Desenvolvimento" »

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

Computação4,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 lendo "Controle de Concorrência e Recuperação em SGBDs" »

Guia Completo de Gestão de Projetos e EAP

Computação4,58 KB

WBS/EAP: Estrutura Analítica do Projeto

  • Representação gráfica da hierarquia do projeto.
  • Identifica o trabalho a ser executado e todas as fases do projeto; serve como um roteiro.
  • Deve conter as entregas do projeto.
  • Base onde o projeto é construído.
  • Força a reflexão.

WBS (Work Breakdown Structure): Consiste em subdividir os principais subprodutos e/ou fases do projeto em componentes menores e manejáveis.

  • Exemplo Nível 0: Projeto Automação Processo Elaboração de Edital.
  • Exemplo Nível 1: Iniciação do projeto, planejamento do projeto, etc.

Regras para Elaboração

  • Elaborado com a ajuda da equipe do projeto.
  • O primeiro nível deve ser feito antes que o projeto cresça.
  • Cada nível da WBS é um segmento menor do nível acima.
  • Todo projeto é incluído
...
Continue lendo "Guia Completo de Gestão de Projetos e EAP" »

Meios de Transmissão e o Modelo OSI: Guia Completo

Computação4,27 KB

Meios Físicos de Transmissão

Os principais meios de transmissão conhecidos são: fios de cobre, fibras de vidro, rádio, satélites, arrays de satélite, micro-ondas, infravermelho e luz laser.

Características

  • Meios guiados: fios, cabo coaxial, fibra de vidro.
  • Meios não guiados: rádio, micro-ondas, infravermelho, etc.

Fio de Cobre

É considerado o meio primário de transmissão de dados.

  • Vantagens: É barato e fácil de encontrar.

Par Trançado

Cabo com fios trançados entre si, o que altera as propriedades elétricas e reduz as emissões de ondas eletromagnéticas.

  • Vantagens: Barato e fácil de trabalhar.
  • Desvantagens: Baixa capacidade de taxa de dados e curto alcance.

Cabo Coaxial

Os cabos coaxiais são mais protegidos contra interferências magnéticas....

Continue lendo "Meios de Transmissão e o Modelo OSI: Guia Completo" »

Níveis de Maturidade CMMI: Guia Completo

Computação90,66 KB

Níveis de Capacidade

5 Optimizing: Gerenciado quantitativamente: modificado e adaptado a fim de atingir objetivos organizacionais, tanto atuais quanto futuros.

4 Quantitatively Managed: Definido e controlado: uso de técnicas estatísticas ou outras quantitativas.

3 Defined: Adaptado a partir do conjunto de processos padrões da organização de acordo com as diretrizes definidas pela organização.

2 Managed: Gerenciado: planejado e sua execução é acompanhada.

1 Performed: Executado: satisfaz todas as metas específicas de uma área de processo.

0 Incomplete: Processo não está sendo executado ainda, ou está parcialmente executado. Uma ou mais metas específicas da área de processo não são satisfeitas.

Meta Específica (da AP Planejamento

...
Continue lendo "Níveis de Maturidade CMMI: Guia Completo" »

Scrum: Guia Completo do Framework Ágil para Projetos

Computação14,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 lendo "Scrum: Guia Completo do Framework Ágil para Projetos" »

Gerenciamento de Memória em Sistemas Operacionais

Computação8,09 KB

Conceitos Fundamentais de Memória

Os programas precisam estar na RAM para serem executados. O Processador acessa diretamente a RAM.

  • Interação CPU LOAD: Move dados da RAM para um registro.
  • Interação CPU STORE: Move dados de um registro para a RAM (vice-versa).
  • HD (Disco Rígido): As informações são armazenadas por meio de escrita magnética nas lâminas.
  • Cache (MCache): Armazena arquivos mais frequentes para acesso rápido.

Gerenciamento de Memória

Administração da memória, verificando os espaços em uso, alocando e desalocando, e gerenciando as trocas da RAM com o HD.

Estratégias de Alocação de Memória

Alocação Contígua Simples

Presente nos primeiros Sistemas Operacionais (SO) monoprogramáveis. A memória é dividida em duas partições:...

Continue lendo "Gerenciamento de Memória em Sistemas Operacionais" »

Protocolos de Comunicação em Redes ATM e SDH

Computação5,31 KB

Protocolo H.245

Permite que os terminais negociem o algoritmo que vão usar em ordem dos diversos algoritmos de compactação. Ele também negocia outros aspectos da conexão, como a taxa de bits.

Protocolo H.225 (Q.931)

Protocolo para estabelecer e encerrar conexões, fornecer tons de discagem, gerar sons de chamada e o restante da telefonia padrão.

Protocolo H.225 (RAS)

Comunicação dos terminais com o gatekeeper. O canal do PC para o gatekeeper que ele gerencia é chamado canal RAS (Registration/Admission/Status). Esse canal permite que os terminais entrem e saiam da zona, solicitem e retornem a largura de banda e forneçam atualizações de status.

Protocolo RTP

O RTCP (Protocolo de Controle de Transporte em Tempo Real) é necessário para controlar...

Continue lendo "Protocolos de Comunicação em Redes ATM e SDH" »