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

Ordenar por
Matéria
Nível

Arquitetura de Software: Modelagem, Visões e Componentes UML

Classificado em Computação

Escrito em em português com um tamanho de 6,29 KB

Modelagem da Arquitetura: Visões do Projeto

A modelagem da arquitetura de software abrange diversas visões:

  • Visão do Projeto (Lógica): Inclui Diagrama de Estado, Diagrama de Classes e Diagrama de Interação.
  • Visão Implementação: Utiliza Diagramas de Componentes.
  • Visão Processo: Representada pelo Diagrama de Processos.
  • Visão Implantação: Utiliza o Diagrama de Implantação.
  • Visão de Casos de Uso: Envolve Diagramas de Casos de Uso e Sequência.

Projeto de Software: Níveis de Detalhamento

O projeto de software é composto por duas atividades principais:

  1. Projeto de Arquitetura de Software: É de alto nível, com granularidade macro, definindo componentes e suas interfaces de comunicação. O objetivo é satisfazer os requisitos de qualidade.
... Continue a ler "Arquitetura de Software: Modelagem, Visões e Componentes UML" »

Protocolos e Serviços de Transporte: TCP, UDP e RDT

Classificado em Computação

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

Protocolos e Serviços de Transporte

Fornecem comunicação lógica entre processos de aplicação em diferentes hospedeiros.

Os protocolos de transporte são executados nos sistemas finais:

  • Lado emissor: quebra mensagens da aplicação em segmentos e envia para a camada de rede.
  • Lado receptor: remonta os segmentos em mensagens e passa para a camada de aplicação.

Camada de Transporte vs. Camada de Rede

  • Camada de Transporte: Comunicação lógica entre os processos; depende dos serviços da camada de rede (para garantir a entrega).
  • Camada de Rede: Comunicação lógica entre os hospedeiros.

Protocolos Principais

  • TCP (Transmission Control Protocol): Confiável, garante ordem de entrega (inclui controle de congestionamento, controle de fluxo e é orientado
... Continue a ler "Protocolos e Serviços de Transporte: TCP, UDP e RDT" »

Aquisição de Conhecimento para Sistemas Especialistas e Engenharia de Ontologias

Classificado em Computação

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

Como Construir SBCs Funcionam com regras de produção ou programação em lógica. Possuem motor de inferência. Mas não sabemos de métodos para adquirir o conhecimento. Do domínio > como construir ontologias, Das tarefas => como construir uma boa base de regras. Item importante Reuso => em especial para ontologias.

Etapas da Engenharia do Conhecimento Aquisição, Formalização, Implementação, Refinamento. Possuem linguagem natural, representação de conhecimento e linguagens de programação.

Ciclo de Desenvolvimento de um Sistema Especialista Inicialização (Definição dos problemas, requisitos), Análise (Projeto, identificação das fontes de conhecimento), Prototipagem (Definição e representação do conhecimento, protótipos,... Continue a ler "Aquisição de Conhecimento para Sistemas Especialistas e Engenharia de Ontologias" »

Complexidade de Algoritmos: Busca Sequencial e Binária

Classificado em Computação

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

Módulo: Fatores de Método Eficiente

Fatores de método eficiente: Função de complexidade do algoritmo (f(n)), espaço de memória utilizado na ordenação, tamanho do conjunto de dados, ordenação inicial do conjunto de dados.

Sempre que estiver multiplicando é log2N |X|. Quando for +, a complexidade é divisão.

Complexidade de Algoritmo

Fornece a medida do trabalho envolvido na execução de um determinado algoritmo.

Notação ‘O’ (Big O)

A complexidade de algoritmos só tem sentido para problemas que envolvem uma grande quantidade de dados.

Passos para achar ‘O’

  1. Escreva a função que representa a complexidade.
  2. Faça cada coeficiente da função igual a 1.
  3. Mantenha o maior termo da função e descarte os demais termos.

Categorias de Grandezas

log... Continue a ler "Complexidade de Algoritmos: Busca Sequencial e Binária" »

Conceitos Fundamentais de Programação em C

Classificado em Computação

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

  1. Um algoritmo é uma expressão em linguagem natural, de forma clara, rigorosa e ordenada, dos passos necessários para resolver um problema.

  2. Um fluxograma é um tipo de diagrama que pode ser interpretado como uma representação esquemática de um processo. É uma estrutura visual que utiliza símbolos padronizados para representar os passos de um algoritmo, auxiliando na compreensão e execução do problema em um programa.

  3. Estrutura de Seleção if...else: Permite a seleção de blocos de código com base numa condição.

  4. Estrutura de Seleção switch: Permite a seleção de blocos de código com base em múltiplas escolhas ou valores.

  5. No ciclo do...while, as instruções são executadas pelo menos uma vez antes da condição ser verificada.

... Continue a ler "Conceitos Fundamentais de Programação em C" »

Tecnologia da Informação e Modelagem de Dados

Classificado em Computação

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

Tecnologia

Tecnologia: dar apoio às pessoas da organização, independente de sua área funcional ou nível hierárquico. A TI dá apoio aos processos empresariais que permitem às empresas operar na era digital, reagindo de modo rápido e adequado a mudanças.

Requisitos do profissional

Requisitos do profissional: desafios gerenciais, processo de desenvolvimento, aplicações empresariais, conceitos básicos e tecnologia da informação.

Competência

Competência: conhecimento, atitude e habilidade.

Problemas da análise

Problemas comuns na análise de sistemas:

  • Arquitetura insuficientemente definida;
  • Prazo não cumprido;
  • Custo elevado;
  • Falta de regras e técnicas;
  • Dificuldade de trabalho em equipe;
  • Falha na especificação;
  • Detalhamento insuficiente;
  • Retrabalho;
... Continue a ler "Tecnologia da Informação e Modelagem de Dados" »

Problemas Computacionais: Classificação e Conceitos

Classificado em Computação

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

Classifique, Conceitue e Exemplifique Problemas Computacionais (Classes e Subclasses):

Problemas Indecidíveis:

  • Impossíveis de serem solucionados;

Problemas Intratáveis:

  • Possíveis com recursos ilimitados, porém impossíveis com recursos limitados;

Problemas Tratáveis:

  • Possíveis de serem solucionados com recursos limitados;

Conjuntos Recursivos e Conjuntos Recursivamente Enumeráveis

Um conjunto é dito Recursivamente Enumerável se ele pode ser representado (solucionado) por uma procedure, e Recursivo se ele pode ser representado (solucionado) por um algoritmo.

Problemas Decidíveis e Indecidíveis X Algoritmos e Procedures

Um problema é decidível (tratável ou não) se e somente se ele é resolvível por um algoritmo, para qualquer entrada pertencente... Continue a ler "Problemas Computacionais: Classificação e Conceitos" »

O que significa um processo sofrer preempção

Classificado em Computação

Escrito em em português com um tamanho de 1,16 KB

Criação>Pronto:processo criado, recursos alocados, e está apto a disputar o uso da CPU.Pronto>Execução: o processo é o primeiro da fila de pronto e a CPU fica disponível.Execução>Pronto: o processo foi interrompido por fatia de tempo ou por prioridade. Ainda precisa de mais tempo na CPU pára terminar sua execução, não tem nenhuma intervenção pendente, por isso volta à fila de pronto pára disputar novamente o uso da CPU.Execução>Éspera:processo foi interrompido por E/S. Significa que deve permanecer no estado de éspera até que a interrupção seja tratada pelo sistema,o processo fica impedido de disputar o uso da CPU.Éspera>Pronto: Após o término do tratamento da interrupção, o processo volta à fila
... Continue a ler "O que significa um processo sofrer preempção" »

Governança de TI: Guia Completo

Classificado em Computação

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

Características Essenciais da Computação em Nuvem

  • Rede Ubíqua
  • Demanda “Self-Service”
  • Elasticidade Rápida
  • Multi-Tenancy
  • Medição dos Serviços
  • “Pool” de Recursos

Modelos de Serviço em Nuvem

  • Software como Serviço (SaaS)
  • Plataforma como Serviço (PaaS)
  • Infraestrutura como Serviço (IaaS)

Modelos de Implantação em Nuvem

  • Nuvem Privada
  • Nuvem Comunitária
  • Nuvem Pública
  • Nuvem Híbrida

Complexidade na Avaliação de Sistemas de TI

Valor Estratégico

  • Alto: Prioridades e vantagens competitivas
  • Baixo: Menores prioridades e necessidades operacionais

Decisão entre “Fazer” e “Comprar”

  • Alto + Desenvolvimento Interno: Serviços Estratégicos
  • Alto + Aliança Estratégica: Nichos de Mercado
  • Baixo + Aquisição de Pacotes: Commodities
  • Baixo + Aquisição de
... Continue a ler "Governança de TI: Guia Completo" »

Guia Prático de SQL: Comandos, Restrições e Consultas

Classificado em Computação

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

Conceitos Fundamentais de Banco de Dados

Modelo Lógico: É a implementação dos relacionamentos na estrutura de dados.

Linguagens de BD Relacional: SQL, Oracle, MySQL, etc.

SQL: Significa Structured Query Language (Linguagem de Consulta Estruturada).

Comandos de Banco de Dados

  • DDL (Data Definition Language): Descreve a estrutura de armazenamento do BD. Permite criar, alterar e destruir objetos da base de dados.
  • DML (Data Manipulation Language): Linguagem de manipulação de dados.
  • DCL (Data Control Language): Linguagem de controle de dados.

Integrity Constraints (Restrições de Integridade)

Permitem definir requisitos para a qualidade dos dados que o BD deve seguir:

  • Not Null: Por padrão, todas as colunas aceitam valores nulos.
  • Unique Key: Não permite
... Continue a ler "Guia Prático de SQL: Comandos, Restrições e Consultas" »