quarta-feira, 15 de agosto de 2012

Banco de Dados 1 - Introdução à Banco de Dados

1) O que é e como funciona o armazenamento de dados em arquivo?

Sistema de Banco de Dados consiste em uma coleção de dados inter-relacionados e uma
coleção de programas para prover o acesso a estes dados.
O armazenamento e feito em hds ou servidores.


2) O que é e como funcionam os SBGD? Explique a evolução dos arquivos, passando pelo BD até SGBD.

Um Sistema Gerenciador de Banco de Dados (SGBD) é o conjunto de softwares responsáveis pelo gerenciamento de uma base de dados, ele consiste em uma coleção de dados inter-relacionados e uma coleção de programas para prover o acesso a esses dados. O objetivo principal de um SGBD é prover um ambiente que seja adequado e eficiente para uso na recuperação e armazenamento de informações. Ele passou pelas seguintes evoluções: Sistemas de arquivos BD em rede BD hierárquico BD relacional Linguagem de orientada a Objeto Hipermídia Inteligência Artificial.



3) Quais são os tipos de conexão existentes com BD? Explique-as.

Time sharing: esta conexão é realizada em tempo real

Servidor de arquivos: conexão somente para armazenamento de dados

Cliente-servidor: servidor de dados e de manutenção de arquivos por usuários

Servidor de aplicações: servidor de aplicações em geral Servidor

Web: exclusivo para web


4) Quais são os modelos de dados existentes? Explique-os.

Modelo Hierárquico: Os dados estão estruturados em hierarquias ou árvores.Os nós das hierarquias contêm ocorrências de registros, onde cada registro é uma coleção de campos (atributos) cada um contendo apenas uma informação. O registro que em uma hierarquia precede outros se designa registro-pai dos outros registros que são chamados de registros-filhos. Uma ligação é uma associação entre dois registros.

Modelo em Rede:No modelo em rede os registros estão organizados em grafos. Nele aparece um único tipo de associação (set), que define uma relação de 1: N entre 2 tipos de registros: proprietário e membro.

Modelo Relacional: O modelo relacional apareceu devido a seguintes necessidades: aumentar a independência de dados nos sistemas gerenciadores de banco de dados; prover um conjunto de funções apoiadas em álgebra relacional para armazenamento e recuperação de dados; O Modelo relacional revelou-se ser o mais flexível e adequado ao solucionar os vários problemas que se colocam ao nível da concepção e implementação da base de dados. A estrutura fundamental do modelo relacional é a relação. Uma relação é constituída por um ou mais atributos (campos), que traduzem o tipo de dados a armazenar.

Modelo Orientado a Objetos: A habilidade para criar os tipos de dados necessários é uma característica das linguagens de programação orientada a objetos. Estes sistemas, porém, necessitam guardar representações das estruturas de dados que eles usam no armazenamento permanente. A estrutura padrão para o banco de dados objeto foi feita pelo Grupo de gerenciamento dados objetos (ODMG).

Sistemas Objetos-Relacionais: A área de atuação dos sistemas Objeto-Relacional tenta suprir a dificuldade dos sistemas relacionais convencionais, que é o de representar e manipular dados complexos. A solução proposta é a adição de facilidades para manusear tais dados utilizando-se das facilidades SQL existentes. Para isso foi necessário adicionar: extensões dos tipos básicos no contexto SQL; representações para objetos complexos no contexto SQL; herança no contexto SQL; sistema para produção de regras.


5) Quais são os aspectos relevantes que devem ser considerados para atingir a eficiência e eficácia do sistema informatizado? (na visão do BD).


6) Quais são as arquiteturas de SGBD’s? Explique-as.

As arquiteturas de SGBD's são , Plataformas centralizadas , Sistemas de Computador Pessoal , Banco de Dados Cliente-Servidor, Banco de Dados Distribuídos (N camadas).

Plataformas centralizadas - Na arquitetura centralizada, existe um computador com grande
capacidade de processamento que é o hospedeiro do SGBD e emuladores para os vários
aplicativos. Esta arquitetura tem como principal vantagem a segurança em poder manipular
grande volume de dados com muitos usuários. Sua principal desvantagem está no fato de se
ter alto custo, pois se deve ter ambiente especial para mainframes e soluções centralizadas.

Sistemas de Computador Pessoal - Os computadores pessoais trabalham em sistema
stand-alone, ou seja fazem seus processamentos sozinhos. No começo esse processamento
era bastante limitado, porém com a evolução do hardware temos hoje PCs com grande
capacidade de processamento. Eles utilizam o padrão Xbase e quando se trata de SGBDs
funcionam como hospedeiros e terminais, desta maneira possuem um único aplicativo a ser
executado na máquina. A principal vantagem desta arquitetura é a simplicidade


Banco de Dados Cliente-Servidor - Na arquitetura Cliente-Servidor o cliente (front_end)
executa as tarefas do aplicativo, ou seja fornece a interface com o usuário (tela, e
processamento de entrada e saída). O servidor (back_end) executa as consultas no DBMS e
retorna os resultados ao cliente. Apesar de ser uma arquitetura bastante popular, para poder
implementá-la são necessárias soluções de softwares sofisticados que possibilitem: tratamento
de transações, confirmações de transações (commits), desfazer uma transação (rollbacks),
linguagens de consultas (stored procedures) e gatilhos (triggers). A principal vantagem desta
arquitetura é dividir o processamento entre dois sistemas reduzindo o tráfego de dados na
rede.


Banco de Dados Distribuídos (N camadas) - Nesta arquitetura a informação esta distribuída
em diversos servidores. Cada servidor atua como no sistema cliente-servidor, porém as11
consultas oriundas dos aplicativos são feitas para qualquer servidor indistintamente. Caso a
informação solicitada seja mantida por outro servidor ou servidores, o sistema encarrega-se
de
obter a informação necessária, de maneira transparente para o aplicativo, que passa a atuar
consultando a rede, independente de conhecer seus servidores. Exemplos típicos são bases
de dados corporativas, em que o volume de informação é muito grande e deve ser distribuído
por diversos servidores.

segunda-feira, 2 de abril de 2012

ROI (Retorno sobre o investimentos)


1) Quais são as principais características do ROI? Explique esse conceito.
O retorno do capital investido, e uma performance da organização: o capital total da organização dividido por seus retornos ou rendimentos. Também é definido como o retorno sobre ativos: os rendimentos de um determinado período divididos pelo valor dos ativos utilizados para produzir aquele rendimento. Para maximizar o retorno sobre um investimento diversas iniciativas apresentam grande contribuição como reduções de custos, ampliação dos retornos ou diminuição dos prazos de retorno.
Na maioria das vezes seus resultados são apresentados na forma financeira, como Fluxo de Caixa Líquido, tempo de retorno, entre outros. O maior problema encontrado em uma análise de ROI é a dificuldade de se estabelecer um custo de investimento real. O custo do investimento vêm no inicio e seu retorno durante os anos seguintes. É necessário considerar também o valor do capital ao longo do tempo.


2) Como calcular o ROI? Quais aspectos devem ser considerados?

O ROI possui diversas metodologias, algumas simples, outras nem tanto. Cada forma varia para qual finalidade que se deseja dar ao resultado.

ROI=(Lucro Líquido ÷ Vendas)×(Vendas ÷ Total de ativos)

representa a relação entre a lucratividade e o giro dos estoques.

ROI=Lucro líquido ÷ Total de ativos

Representa o retorno que o ativo total empregado oferece. Utilizado geralmente para determinar o retorno que uma empresa dá.

ROI=Lucro líquido ÷ Investimentos

representa o retorno que determinado investimento oferece. Geralmente é utilizado para determinar o retorno de investimentos isolados. Invertendo-se a relação (ROI=Investimento ÷ Lucro Líquido), obtém-se o tempo necessário para se reaver o capital investido.

Há também a Rentabilidade do Ativo Total Médio ou Taxa de Retorno sobre o Ativo Total Médio ou Taxa de Retorno sobre o Investimento Total

Taxa=[(Lucro Líquido do Exercício)/(Vendas Líquidas)]*[(Vendas Líquidas)/ATM]*100=[(Lucro Líquido do Exercício)/ATM]*100

ATM=Ativo Total Médio=(Ativo Inicial+Ativo Final)/2



3) O ROI deve ser um fator impeditivo na compra de TI? Justifique.

O risco financeiro e aquele onde um fator não-tecnológico influencia a aplicação. Fusões, aquisições, mudanças no quadro gestor e pressões competitivas influenciam a infra-estrutura corporativa tecnológica e pode reduzir a chance de se obter o ROI que se espera.


4) Qual a relação do ROI com o profissional de TI? É possível inverter essa situação?

ROI, é um indicador largamente utilizado em toda a indústria de TI e serve de suporte na argumentação dos CIO para implementação de vários projetos da área.

ROI por si só, como qualquer indicador, não pode ser considerado de forma isolada, mas sim relativo ao seu ambiente para que ele possa ser válido como ferramenta. Em contrapartida, em organizações que já possuem processos automatizados, uma atualização destas aplicações que se traduza em ampliação das capacidades de auditoria ou geração de relatórios, como exemplo, gerará maiores benefícios indiretos como o aumento da eficiência ou redução de prazos.


5) Qual a relação do ROI com a sociedade atual? De que jeito isso prejudica a área de TI? E de que jeito ajuda a área de TI?

Embora muitos críticos digam que ele ainda é um exercício puro de matemática que sofre constantes alterações e padece de erros, o ROI significa o retorno de determinado investimento realizado e contabilizado em meses nos quais ele será amortizado para, então, começar a gerar lucros.

Recomenda não buscar números estratosféricos para fazer comparações, baseados em outras experiências de mercado. O retorno do investimento de uma companhia nunca é igual ao da outra.

O ROI foi sistematizado por uma série de ferramentas criadas pelo mercado, e muitos sistemas possuem um módulo que o contabiliza. No entanto, o ponto forte do ROI é levar a uma ampla exposição dos motivos, envolvendo toda a cúpula da empresa, em todos os níveis, para aprovar um investimento em um projeto. Os melhores resultados são obtidos quando existe um comprometimento global dos envolvidos.

ROI pode ser interferir na área de T.I quando não é bem planejado dando a entender que o investimento não trará nenhum retorno para empresa. Mas quando bem planejado e deixando bem transparente os benefícios do investimento pode tornar a área de T.I em melhorias para empresa toda, aumentando inclusive a credibilidade e responsabilidade da T.I.



sexta-feira, 16 de março de 2012

ENGENHARIA DE SOFTWARE

Natureza sistêmica:

Oque é ?

E e um conjunto de elementos que relacionados ajudam no desempenho de uma função.


Qual sua importância ?

A importância e que ela pode relacionar outros tipos de sistema em 1 só processo.


Qual o papel da informação?

O papel da informaçao e que e preciso fazer o levantamento de todos os dados dos processo e organizar todos os dados da pesquisa com as informaçoes conseguidas com as pesquisas e guarda todas as informações conseguidas no sistema.


Caracterizar

Sistema

É um conjunto de elementos interconectados , de modo a formar um todo organizado . Os sistemas informatizados e utilizado em varios e aspectos da medicina desde consultas ate aparelhagem de curas e tratamentos . O sistema informatizado hoje em dia e usado em todos os lugares.


Sistemas informatizados

Ele melhora o modo de gerenciar . Esse sistemas informatizados e utilizados em varios ramos e lugares na medicina ele e utilizado para colsutas ate aparelhos de cura.

Esses sistemas são usados em todos lugares deis de um simples mercado até uma grande multi nacional . E com a tecnologia cada dia mais avançada estao sempre aprimorando esses sistemas .

Programa

Levando a linha do programa de computador temos programa informatico que é uma de instruções que descrevem uma tarefa a ser realizada por um computador . O termo pode ser uma referencia ao codigo fonte , escrito em alguma linguagem de programação ,ou ao arquivo que contem forma executavel deste codigo fonte.

Dados

Os dados são todas as informações que são recolhidas das pesquisas q são feitas . Os dados podem ser deis de numeros , palavras , imagens , medições e observações desde animais e objetos que são todos armazenados em sistemas ligados a computadores que podem pesquisar mais essas informações e armazenar elas.


Informação

Informação é qualquer padrão representado. Esta visão não assume nem exatidão nem partes que comuniquem , diretamente mais em vez disso , assume uma separação entre objeto e sua representação, bem como o envolvimento de alguém capaz de entender este relacionamento . Logo está ponto de vista parece exigir uma mente consciente . Considere-se o seguinte exemplo dados em computação estatísticas e outros campos, são formas de informação neste sentido. Os padrões eletromagnéticos numa rede de computadores e dispositivos periféricos estão relacionados a algo além do padrão em si mesmo.


Conhecimento

É o ato ou efeito de abstrair ideia ou noção de alguma coisa , como por exemplo : conhecimento de leis , conhecimento de um fato , conhecimento de um documento , termo de recibo ou nota em que se declara ou aceite de um produto ou serviço : saber, instruções ou cabedal científico.


quarta-feira, 16 de novembro de 2011

QUESTIONÁRIO 8 - Método Quicksort

1 - Por que o método quicksort tem esse nome ? Existe outra versao do método ? Ele é conhecido pro qual outro nome ?

R: O método quicksort tem esse nome por ser o método mais rápido e ordenado dois vetores com n/2 elementos cada um , do que um com n de elementos . Além de versões recursiva , existe também a versão interativa do quicksort.

2- A ordenação pelo método quicksort é um dos mais simples . Qual a principal caracteristica do método ou como ele funciona ?

R: Adotando a estratégia dividir para conquistar o funcionamento resume-se a dividir o problema de ordenar um vetor de n posições em dois outros menores recursivamente ate atingir o objetivo de rearranjar todo vetor .

3 - Qual é a classificação do método quicksort ? Qual o seu grau de complexidade ?

R: Método recursivo e sua ordem de complexidade do algoritmo recursivo deste método é 0)n log n).

4- Dê um exemplo de aplicação do método quicksort , com as comparações , trocas e interações .

Usando o 5 como pivô:



5 - Demostre o codígo-fonte do método quicksort e coemente o mesmo .




A parte muito importante do algoritmo é a escolha de um pivô , o vetor estará particionado ao final em uma parte esquerda com chaves menores ou iguais . O vetor é percorrido a partir da direita até encontrar um V[i] < V[i] . Os valores V[i] e V[i] são trocados , i é incrementado de 1 e j é decrementado de 1 , o processo é repetido até que i e j se cruzem em um ponto do vetor . Quando são obitidos os dois segmentos do vetor por meio do processo de participação , realiza-se a ordenação de cada um deles de forma recursiva.

QUESTIONÁRIO 7 - Ordenação Método Mergersort

1 - Por que o método mergersort têm esse nome ? Existe outra versão do método ? Ele é conhecido por qual outro nome?

R: Merge sort , ou ordenação por mistura (fusão) e um exemplo algoritmo de ordenação do tipo dividir-para-conquistar.

2 - A ordenação pelo método mergesort é um dos mais simples . Qual principal caracteristica do metodo ou como ele funciona ?

R: Sua principal caracteristica e ordenação do tipo dividir para conquistar . Sua ideia básica é criar uma seguência ordenada a partir de duas outras também ordenadas . Para isso,ele divide a sequência original em pares de dados , ordena-das ; depois as agrupa em sequências de quatro elementos , e assim por diante , ate ter toda a sequência dividida em apenas duas partes .

3- Qual e a classificação do método mergersort ? Qual o seu grau de complexidade ?

R: Método recursivo e sua ordem de complexidade do algoritmo recursivo desde método é 0 (n log n).

4- Dê exemplo de aplicação do método mergersort , com as comparações trocas e interações.




5 - Demostre o código -fonte do método mergesort e comente o mesmo.




Na quinta e sexta linha do código definimos os ponteiros para o vetor 1 e 2 . A função de copia do vetor temporário para o que retornara atualizado se encontra no segundo for . Na parte final do código é definida a função principal do mergesort que determina a metade do vetor depois a primeira metade e a segunda metade a ultima linha combina as metades já ordenadas.

quarta-feira, 19 de outubro de 2011

QUESTIONÁRIO 06 - INSERÇÃO E MÉTODO SHELL

1- Por que o método shell têm esse nome? Existe outra versão do método? Ele é conhecido por qual outro nome?

R: O método de comparações e movimentações do ShellSort lembra o formato de uma concha.


2- A ordenação pelo método shell é um dos mais simples. Qual a principal característica do método ou como ele funciona?


R: Sua principal característica é utilizar a quebra sucessiva de seqüência a ser ordenada e implementa a ordenação na seqüência obtida


3- Qual é a classificação do método shell? Qual o seu grau de complexidade?

R: É classificado dentre os de complexidade quadrática, seu grau de complexidade é O(n^2 )


4-Dê exemplo de aplicação do método shell, com as comparações, trocas e iterações.

R: - Temos o seguinte vetor de números inteiros :

V = (36 , 24 , 17 , 14 , 39 , 27)

- A cada passagem do método de inserção ShellSort , o Vetor vai sendo alterado da seguinte forma :

- Inicial: V=(36,24,17,14,39,47)

-Apos i=2 V=(24,36,17,14,39,27)

-Apos i=3 V=(17,24,36,14,39,27)

-Apos i=4 V=(14,17,24,36,39,27)

-Apos i=5 V=(14,17,24,36.39,27)

-Apos i=6 V=(14,17,24,27,36,39)


5- Demonstre o código-fonte do método shell e comente o mesmo.

void shell (int *v,int i) {

int x , j , valor;

int h = 1;

do{

h=3*h+1

}while(h< i);

do{

h/=3;

for(x = h; x < i; x++) {

valor = v [x]

j = x - h;

while (j>=0 && valor < v[j]) {

v [j + h] = v [j]

j = h

}

v [j + h] = valor

}

}while (h >1)

}


O algoritmo usa variável auxiliar denominada a distancia de comparação (h) , o valor de h e inicializado com um valor próximo de n/2.



quarta-feira, 5 de outubro de 2011

QUESTIONÁRIO 05 - ORDENAÇÃO E MÉTODO BOLHA

1) Ordenar é um processo de rearranjar um conjunto de objetos em uma ordem ascendente/crescente ou descendente/decrescente. Qual a importância da ordenação para qualquer processo e para informática? Dê exemplos práticos de utilização. Defina a complexidade dos métodos de ordenação e a sua classificação.

O objetivo principal da ordenação é facilitar a organização e a localização posterior de dados do conjunto ordenado. Pode-se citar uma lista telefônica. Imagine como seria consultar o telefone de uma pessoa se os nomes não estivessem classificados em ordem alfabética. Para algoritmos de ordenação interna, as medidas de complexidade relevantes contam o número de comparações entre chaves e o número de movimentações de itens do arquivo, os métodos de ordenação são classificados em dois grandes grupos: ordenação interna e externa.


2) Qual é a classificação dos métodos de ordenação? Qual a diferença entre eles? Quais são os métodos de ordenação mais utilizados ou principais?

1-ordenação interna: São os métodos que não necessitam de uma memória

2-Ordenação externa : Quando o arquivo a ser ordenado não cabe na memória principal e , por isso , tem de ser armazenado em fita ou disco .

ShellSort , QuickSort , HeapSort e MergeSort são considerados mais eficientes .


3) A ordenação pelo método bolha é um dos mais simples. Qual a principal característica do método ou como ele funciona?

O algortimo de “ordenação bolha”, ou “bubble sort”, recebeu este nome pela imagem pitoresca usada para descrevê-lo: os elementos maiores são mais leves, e sobem como bolhas até suas posições corretas.

A idéia fundamental é fazer uma série de comparações entre os elementos do vetor.

Quando dois elementos estão fora de ordem, há uma inversão e esses dois elementos são trocados de posição.

Assim, o primeiro elemento é comparado com o segundo. Se uma inversão for encontrada, a troca é feita.

. O processo continua até que o penúltimo elemento seja comparado com o último.


4) Qual é a classificação do método bolha? Qual o seu grau de complexidade?

O BubbleSort é um método de simples implementação e de ordem de complexidade quadrática.


5) Dê exemplo de aplicação do método bolha, com as comparações, trocas e iterações.


6) Demonstre o código-fonte do método bolha e comente o mesmo.

/* Ordenação bolha */

void bolha (int n, int* v)

{

int i,j,temp;

for (i=n-1; i>=1; i--)

for (j=0; j

if (v[j]>v[j+1]) { /* troca */

temp = v[j];

v[j] = v[j+1];

v[j+1] = temp;

}

}

Na quinta linha do código verifica-se os dois elementos se estão desordenados. Se os elementos não estiverem ordenados a troca exige uma variável de armazenamento temporário (temp = v[j+1];) do mesmo tipo que a dos elementos do array que está sendo ordenado.