ACM Lost171
Upcoming SlideShare
Loading in...5
×
 

ACM Lost171

on

  • 895 views

 

Statistics

Views

Total Views
895
Views on SlideShare
618
Embed Views
277

Actions

Likes
0
Downloads
3
Comments
0

6 Embeds 277

http://lost171.blogspot.com 155
http://lost171.blogspot.com.br 114
http://www.lost171.blogspot.com.br 4
http://www.lost171.blogspot.com 2
http://lost171.blogspot.pt 1
http://lost171.blogspot.co.uk 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

ACM Lost171 ACM Lost171 Presentation Transcript

  • Áreas de Ciências da Computação Domênico Medeiros Travália, Ícaro da Silva Tôrres, João Geraldo de Santana Oliveira, Jonathas Santos da Silva. UFS – Universidade Federal de Sergipe Cidade Universitária “Prof. José Aloísio Campos”, Avenida Marechal Rondon, Jardim Rosa Elze São Cristóvão – SE – Brasil 557921056600 dm.travalia@hotmail.com, strukus__@hotmail.com, joaogeraldosb@gmail.com, jhon07hp@hotmail.com.ABSTRACT Ciência da Computação, suas definições e atuações. In this research we’ll shortly approach the Computer Science Finalizaremos com uma conclusão sobre as Áreas e Temas, eAreas, some important subjects of each area, basic applications teremos Previsões para o Futuro dessas Áreas.and use of these, concepts, information about after-graduationareas and which the main purposes of each one, and the ranking Categories and Subject Descriptorsof the best courses of computation in Brazil (Based in INFO B. Hardware; D. Software; F. Theory of Computation; G.Magazine). We’ll approach subjects related with the Mathematics of Computing; H. Information Systems; I.3Computation Theory as: Computability and Models of [COMPUTER GRAPHICS].Computation, Formal Languages and Automatons, Analysis ofAlgorithms and Computational Complexity, and also Logical Termos Geraisand Program Semantics. We’ll also have the Mathematics of Algoritmos, Teoria.Computation, with Symbolic Mathematics and AnalyticalModels, and Models of Simulation. We’ll talk aboutMethodology and Techniques of the Computation, treating to Palavras-chave Ciência da Computação, Áreas, Graduação, Pós-Graduação.the sub-areas: Programming languages, Software Engineering,Data base, Information Systems and Graphics. In Computersystems, the subjects: Hardware, Computer Systems 1. INTRODUÇÃOArchitecture, Software and Telematics. We will speak about As diversas Áreas da Ciência da Computação de hoje em dia,some after-graduations in the Computer Science Areas, their existem e colaboram com o homem em inúmeras atividades. Odefinitions and performances. And will finish with a conclusion homem passou a ter necessidade de computar a imensaabout the Areas and Subjects, and will have our Forecasts for the quantidade de informações que criadas por ele, transmiti-las paraFuture of these Areas. diferentes áreas do mundo com velocidade e segurança, gerencia-las, armazenar essas informações e dadosRESUMO sistematicamente e organizadamente, consultar esses dados eNesta pesquisa abordaremos resumidamente as Áreas da Ciência informações e adicionar outros novos quando preciso, resolverda Computação, alguns temas importantes de cada área, problemas complexos e de diversos tipos e ciências diferentesaplicações e uso dessas, conceitos básicos, informações sobre rapidamente. A partir dessas necessidades, com o passar doáreas de pós-graduação e quais as principais finalidades de cada tempo, o homem foi criando ferramentas e desenvolvendo áreasuma dessas áreas, e o ranking dos melhores cursos de de estudos sobre essas, para tornar viável e/ou facilitar váriascomputação no Brasil (Baseado na Revista INFO). tarefas. Surge assim a Ciência da Computação e algumas várias áreas. Outras surgem para resolver problemas de áreas jáAbordaremos temas relacionados com a Teoria da Computação existentes, interligar áreas que não se cruzavam ou adicionarcomo: Computabilidade e Modelos de Computação, Linguagens conhecimentos de ciências antes por fora da computação. SendoFormais e Autômatos, Análise de Algoritmos e Complexidade de assim, essas Áreas da Ciência da Computação, que apareceramComputação, e também Lógica e Semântica de Programas. ao longo dos anos, serão objeto do nosso estudo. Dentro daTeremos também a Matemática da Computação, abrangendo Seção 2. iremos abordar as Áreas de Ciências da Computação,Matemática Simbólica e Modelos Analíticos, e Modelos de discernindo sobre as áreas: Teoria da Computação, na SubseçãoSimulação. Falaremos de Metodologia e Técnicas da 2.1, incluindo os assuntos: Computabilidade e Modelos deComputação, tratando das subáreas: Linguagens de Computação, Linguagens Formais e Autômatos e mais Lógica eProgramação, Engenharia de Softwares, Banco de Dados, Semântica de Programas, Matemática da Computação, que seráSistemas de Informação e o Processamento Gráfico (Graphics). exposta na Subseção 2.2, e dentro dessa falaremos a respeito de:Em Sistemas de Computação, os temas: Hardwares, Arquiteturas Matemática Simbólica, Modelos Analíticos e Modelos dede Sistemas de Computação, Software Básico e Teleinformática. Simulação, na Subseção 2.3 entraremos no tema Metodologia eFalaremos a respeito de algumas pós-graduações nas Áreas de Técnicas da Computação, falando um pouco de Linguagens de Programação, Engenharia de Softwares, Banco de Dados, Sistemas de Informação e ainda Processamento Gráfico Este documento é de propriedade intelectual dos seus autores, não podendo ser copiado, fotocopiado, distribuído ou usado para qualquer outro fim que não (Graphics), Sistemas de Computação, na Subseção 2.4, com os educacional. Não deve ser produzido ou distribuído com fins lucrativos ou seguintes assuntos: Hardwares, Arquiteturas de Sistemas de vantagem comercial. Usá-lo apenas como fim educacional e de pesquisa, dentro do Computação, Software Básico e a Teleinformática, e para meio acadêmico. Turma de Fundamentos da Computação, Agosto de 2008, Aracaju, SE, Brasil. terminar a Seção 2., falaremos de algumas Pós-Graduações das Copyright 2008 Lost171. http://lost171.blogspot.com/ Áreas de Ciências da Computação, na Subseção 2.5. A seguir, na
  • Seção 3., colocaremos nossos pontos de vista sobre o abordado O início dos estudos se deu em 1950, com o objetivo denessa pesquisa, nossas previsões para o futuro sobre os Temas e desenvolver teorias relacionadas com a linguagem natural, logouma tabela de classificação dos 10 melhores cursos de foi verificado que era importante no estudo das linguagenscomputação do Brasil, de acordo com a Revista INFO, em nossa artificiais, em especial para as linguagens vindas da computaçãoConclusão. e informática. As aplicações mais recentes são em animações, hiper-textos e2. ÁREAS DE CIÊNCIAS DA hipermídias e em linguagens não lineares. COMPUTAÇÃO 2.1.3 Análise de Algoritmos e Complexidade de2.1 Teoria da Computação ComputaçãoO objetivo principal da Teoria da Computação de acordo com[5] é procurar fornecer fundamentos matemáticos rigorosos para i) Análise de Algoritmosas diversas áreas da computação. Para esta é de fundamental Segundo [27], “a análise de algoritmos estuda os recursos queimportância, pois apóia aspectos teóricos como fundamenta são necessários para executar um dado algoritmo”. Atravésdiversas aplicações computacionais. dessa disciplina é feito um estudo estimado sobre o que é necessário para que o problema computacional seja resolvidoEm relação ao campo cognitivo, [6] diz que a teoria da através de algoritmos. Dessa maneira, o objetivo é fazercomputação proporciona mais um estágio no raciocínio lógico algoritmos, ou seja, caminhos para a resolução do problema, que(destaque para o pensamento indutivo), possibilita uma maior realizem as suas tarefas da maneira mais eficiente possível.facilidade no desenvolvimento de demonstrações e de suas Através desse estudo, fica claro que a abordagem que se adotatécnicas e proporciona um grande desenvolvimento na ao resolver um algoritmo, está diretamente ligada à eficiência oucapacidade de abstração dos problemas (que é o princípio da “não eficiência” dele.redução de problemas). O estudo de Análise de Algoritmos é de grande importância paraUm dos principais focos da teoria da computação é buscar os interessados em seguir carreira como programador, analistadeterminar quais problemas podem ser e os que não podem ser de sistemas, entre outros.computados em um determinado modelo de computação, que é a ii) Complexidade de Computaçãoquestão da decidibilidade, explicando, por quê? De que forma? É a parte da Teoria da Computação que estuda a “quantidade deE com que complexidade? trabalho” utilizada para executar um algoritmo, como visto em [29]. Os recursos estudados são relacionados ao tempo e o2.1.1 Computabilidade e Modelos de Computação espaço. Aqueles relacionados ao espaço (ComplexidadeA computabilidade, fazendo um resumo geral, é a propriedade Espacial) representam o espaço de memória que o algoritmoelementar das máquinas ditas computáveis. Deste modo, temos precisa para ser executado. E os relacionados ao tempoque de acordo com [7], a finalidade do estudo de (Complexidade Temporal), se relacionam ao tempo necessário àcomputabilidade e modelos de computação é estudar a execução do algoritmo ou ao numero de passos necessários parasolucionabilidade de problemas, investigar a existência ou não isso.de algoritmos que solucionem determinada classe de problemase evitar a pesquisa de soluções inexistentes. Quando se trabalha com complexidade computacional são utilizadas três perspectivas: Melhor caso, caso médio e piorA computabilidade surge no momento em que a linguagem de caso. Esses são métodos de representar a complexidade de ummáquina, na qual o programa é construído, permite a construção algoritmo, analisando o problema proposto e assumindo que ade sentenças suficientemente poderosas, cuja execução permite a pior ou a melhor possibilidade irá acontecer.entrada de dados com uma linguagem abstrata, onde esta torna-se tão poderosa quanto a linguagem de máquina, de acordo com 2.1.4 Lógica e Semântica de Programas[8].Um dos primeiros modelos de computação de maior importância i) Lógica de Programas A Lógica é um elemento fundamental a qualquer programadorfoi a Máquina de Turing segundo [9], que foi criada por Alan na hora de elaborar um programa, e também a qualquerTuring em 1936, no qual é um modelo abstrato de computador, profissional da área de computação. Não é uma daquelas coisasque se restringe apenas aos aspectos lógicos do seu que se pode aprender na sala de aula ou em livros, o domínio dafuncionamento (memória, estados e transições) e não a sua lógica, vem junto com a prática.implementação física. Uma maneira muito interessante de utilizar a lógica são os2.1.2 Linguagens Formais e Autômatos fluxogramas, que são diagramas de blocos que contém o seuA teoria das linguagens formais e autômatos é entendido como o raciocínio lógico e estabelece a ordem das operações a seremestudo dos modelos matemáticos que permitem a especificação e executadas no seu programa. Como o fluxograma não detalharepresentação de linguagens baseado na Teoria da computação instruções ou comandos especificamente, o que caracteriza uma(suas classificações, estruturas, propriedades, características e linguagem de programação, a sua codificação pode ser feita eminter-relacionamento) de acordo com [10]. praticamente qualquer linguagem.As representações de linguagens podem ser feitas por Outra técnica, a mais importante, é a Programação Estruturada,reconhecedores e geradores. Os reconhecedores são dispositivos que pode ser vista em [28], que proporciona: a escrita e leituraformais que servem para verificar se uma determinada sentença da programação executadas mais fácil e rapidamente, e adada pertence ou não à uma determinada linguagem, são os verificação e correção dos erros dos programas. Essa técnica seautômatos.Segundo [11]os geradores são dispositivos formais divide em quatro passos: “A escrita das instruções emque permitem a geração sistemática de todas as sentenças de seqüências ligadas entre si; organiza-las em grupos pequenos euma linguagem, os principais são as gramáticas. combiná-las; distribuir módulos do programa entre os diferentes programadores que trabalharão no projeto; e fazer a revisão do
  • trabalho executado periodicamente, em reuniões em que todos 2.2.2 Modelos Analíticos e de Simulaçãoos programadores tenham o mesmo nível”. Prever o desempenho de um sistema, entender seu comportamento, observar prováveis falhas e erros, analisar oii) Semântica de Programas melhor caminho de sucesso do sistema, simular proposições eA semântica se dedica ao estudo da relação entre as palavras e ambientes de sistemas e encontrar soluções exatas ou muitoseus significados dentro de uma sentença em uma linguagem. aproximadas para o sistema desejado. Tudo isso pode ser feitoDentro das linguagens de programação a semântica é usada nas usando Modelos Analíticos e de Simulação de acordo com [1] esentenças que designam comandos ao computador. [25].Segundo [3], uma linguagem de programação é baseada na uniãoentre a gramática e semântica dessa gramática. Por exemplo: i) Modelos Analíticos Analíticos são como fórmulas, mostram exatamente ou muito“Quem casa, quer casa”. Numa mesma sentença, o termo “casa” aproximadamente, como se comporta o sistema analisado.apresenta dois significados diferentes. Isso mostra que é Observe na Figura 1 obtida em [1].impossível desenvolver uma linguagem sem o uso da semântica,ou seja, uma linguagem baseada apenas na gramática.2.2 Matemática da ComputaçãoÉ a área que trata do desenvolvimento de modelos matemáticos,para tratar de problemas complexos, e obtenção de soluçõesusando métodos numéricos conforme vemos em [24]. Essa áreanos auxilia a desenvolver programas que aplicando a matemáticaatravés de símbolos, resolvam problemas de interesse cientificoou computacional de maneira exata ou muito aproximada. Atuanos auxiliando na solução de problemas de ciências exatas ou deoutras diversas áreas. Colabora fortemente com a computação Figura 1: Exemplo de formula matemática. O modelocientífica, com três centros de estudo avançados no país. Um em analítico funciona como uma formula matemática.Belo Horizonte na UFMG, outro em Campinas na Unicamp emais um em São Carlos na USP. ii) Modelos de Simulação Simulações são procedimentos ou algoritmos que vão mostrar, numa escala de tempo, como vai se comportar o sistema, desde o2.2.1 Matemática Simbólica início ao fim da simulação.O uso de computadores na utilização de símbolos (simbólica) deequações e expressões, em oposição à manipulação de Um programa que vai calcular os avanços até terminar o testeaproximações a quantidades numéricas específicas representadas incrementalmente.pelos símbolos conforme se pode ver em [25]. Os modelos Analíticos e os Modelos de simulação possuemIntegração, diferenciação, substituição e simplificação de níveis de detalhamento.expressões, derivação e outras funções matemáticas podem serrealizadas com esses softwares. Alem de Testes de software sob 2.2.3 Níveis de Detalhamento dos Modeloso título de “execução simbólica” usado para analisar se e quando Analíticos e de Simulaçãoo código pode ter erros e para prever o que partes desse códigoiram fazer com inputs e outputs especificados nos testes. i) Modelo de Desempenho ao Nível dei) Sistema de Álgebra Computacional Sistema O nível de explicitação sobre o sistema é baixo, modelado comoOs Softwares de matemática simbólica normalmente são uma “caixa preta”, segundo [26]. É analisado como um conjuntochamados sistemas de álgebra computacional. Um Sistema de de componentes realizando a analise do funcionamento geralÁlgebra Computacional1 é um programa que facilita o cálculo na sem alto rigor de detalhes por componentes. Realiza analise dosmatemática simbólica, conforme [24]. componentes simultaneamente.Normalmente incluem: Precisão aritmética arbitrária, Motor demanipulação simbólica, Facilidades gráficas, Subsistema de ii) Modelo de Desempenho ao Nível deálgebra linear, Linguagem de programação de alto nível, Sistema Componentesde composição para expressões matemáticas. Considera diferentes recursos do sistema e o modo como as(podendo ter todas ou parte dessas funcionalidades). requisições usam os diferentes componentes. Discos e redes sãoO seu aparecimento começou na década de 1970 e evoluíram a considerados pelo modelo, mais preciso sobre o sistema e maispartir de pesquisas para inteligência artificial. Reduce, Macsyma lento lidando com os recursos representando-os como uma fila.e Derive foram os primeiros a se popularizarem. Atualmente oslíderes do mercado desses softwares são Maple e Mathematica, 2.3 Metodologia e Técnicas da Computaçãomuito usados por pesquisadores e cientistas de várias áreas.Um desses softwares comerciais, o MuPAD, foi um que ofereceu 2.3.1 Linguagens de Programaçãouma versão grátis para pesquisa não comercial e uso educacional Segundo [4], “Uma linguagem de Programação é um método(com sua interface e funções restritas). padronizado para expressar instruções para o computador”. AAlguns desses softwares atuam em áreas específicas, de interesse linguagem informa ao computador com quais informaçõesde seus desenvolvedores, que comumente são estudantes, e trabalhar, o tipo de armazenamento ou transmissão destas e quegeralmente esses softwares são gratuitos. tipos de ações vão efetuar com elas. A linguagem de programação se comunica com o computador através do código fonte, que traz a seqüência de ordens a serem executadas, esse
  • código é traduzido para o código de máquina que contem a 2.3.4 Sistemas de Informaçãolinguagem que o computador consegue compreender, composta Quando falamos em sistemas de informação, estamos nosde 0 e 1. referindo a um sistema automatizado (sistema de informaçãoAs linguagens de programação são de fundamental importância computadorizado) ou mesmo manual, que está estendido apara futuros programadores e engenheiros de software. pessoas, máquinas e métodos organizados para coletar, processar, transmitir e disseminar dados que representam informação ao usuário, de acordo com [12]. Representado na2.3.2 Engenharia de Softwares Figura 2.Desenvolver software é uma atividade crescente na nossasociedade contemporânea. A utilização de computadores pelasociedade se aplica em todas as áreas do conhecimento. Porcausa dessa utilização, tem causado uma grande necessidade porsoluções computadorizadas retirado [20].Esses problemas computadorizados têm gerado um aumento nacomplexidade da resolução desse problema. Neste cenáriodescrito, muitas vezes se torna impossível trabalhar de maneiraindividual. Por essa razão foi criada a Engenharia de Software,com a finalidade de unir profissionais para trabalhar em grupo.A Engenharia de Software planeja, coordena e acompanha, bemcomo não deixa passar a qualidade do que está sendo produzidoque é o software.Abordagem utilizada pela Engenharia de Software para resolvero problema, é decompor em partes menores (dividir paraconquistar). Para cada pedaço do problema uma solução deveser elaborada. Apoiando a resolução em métodos, técnicas e emferramentas para automatizar o trabalho. A Engenharia de Figura 2. Aplicação de um sistema de informação.Software trata do processo, métodos, técnicas, ferramentas parao desenvolvimento de software. Sistemas de informação também é um termo para descrever a área do conhecimento encarregada do estudo de sistemas de2.3.3 Banco de dados informação, tecnologia da informação e de suas relações comBanco de Dados são conjuntos de registros dispostos em organizações, dessa forma, sistemas de informação é comumenteestrutura regular que possibilita gravar e produzir informação classificada como uma Ciência Social Aplicada, ao contrário deretirada do [16]. Ciência da Computação que é uma Ciência Exata.Para acessar e ser mantido um Banco de Dados precisa de um Tendo também que sistemas de informação é consideradasoftware que é conhecido SGBD (Sistema Gerenciador de Banco também uma área multi-disciplinar ou trans-disciplinar devido asde Dados). Temos quatro tipos de Banco de Dados: Banco de relações com outras áreas como Ciência da Computação,Dados Distribuído, Banco de Dados Geográficos, Banco de Administração, Gestão da Informação, Economia, Direito,Dados Hierárquico e Banco de Dados Orientado à Objeto. Engenharia de produção, entre outras. O foco do estudo de sistemas de informação é direcionado parai) Banco de Dados Distribuído o desenvolvimento e aplicação de sistemas de informaçãoBanco de Dados Distribuído é uma coleção de vários Bancos de computadorizados nas organizações, tendo em vista uma melhorDados logicamente inter-relacionados, distribuídos por uma rede manipulação da informação.de computadores [16]. Os arquivos podem ser na rede de duasmaneiras: replicados ou fragmentados. Replicados em vários Pessoas, softwares, hardwares, redes e dados são oscomputadores sendo os dados todos iguais. Já fragmentados, os componentes de um sistema de informação, como é mostrado nadados são divididos na rede aonde cada computador tem um figura 3 tirada de [22].pedaço da tabela do Banco de Dados.ii) Banco de Dados GeográficosBanco de Dados Geográficos tem como principal objetivoarmazenar dados de mapas e imagem de satélites. Entre todos ostipos de Banco de Dados, o Geográfico é o que ocupa o maiorespaço.iii) Banco de Dados HierárquicoBanco de Dados Hierárquico gerencia os dados em forma deuma arvore de tal modo que cada registro tenha um únicopossuidor (conhecida como um-para-muitos), isso é relaçãohierárquica. Essas relações podem facilitar algumas repostas, Figura 3. Componentes de um sistema de informação.mas podem também dificultar outras. A classificação dos Sistemas de Informação baseado emiv) Banco de Dados Orientado à Objeto tecnologia da informação, de acordo com a informaçãoBanco de Dados Orientado à Objeto é uma evolução do processada pode ser operacionais, gerenciais e estratégicos.paradigma de Linguagem de Programação Orienta a Objetos. Observe a figura4 tirada de [22].
  • Memórias: dispositivos removíveis ou rígidos responsáveis por armazenar temporariamente ou em definitivo os dados trabalhados pelo sistema. Dispositivos de entrada e saída que são os meios de comunicação entre máquina e usuário, onde o mesmo entra com informações ou comandos e recebe as respostas por tais. i) Conexão dos Hardwares O computador precisa de conexões físicas que permitem seus componentes de hardware se comunicar e se relacionar entre Figura 4. Tipos de sistemas de informação. eles. O barramento constitui um sistema comum de interconexão, composto por um conjunto de vias ou trilhas que coordenam e transportam as informações entre as partes internasAlgumas especializações em sistemas de informação: Pós- e externas do computador. Uma conexão para comunicação emgraduação em segurança de sistemas de informação; Pós- série é feita através de um cabo ou grupo de cabos utilizadosgraduação em gestão da segurança da informação; Pós- para transferir informações entre a CPU e um dispositivo externograduação em Tecnologia e sistemas de informação; MBA em como o mouse e o teclado, um modem, um digitalizadorsistemas de informação; especialização em redes e segurança de (scanner) e alguns tipos de impressora. Esse tipo de conexãosistema. transfere um bit de dado de cada vez, muitas vezes de forma lenta. A vantagem da transmissão em série é que é mais eficaz a2.3.5 Processamento Gráfico (Graphics) longas distâncias.De acordo com [30], a cadeira de Processamento Gráfico se ii) Arquiteturas de Computadoresdivide em duas outras áreas: Processamento de Imagens e São os diferentes modos como os computadores são produzidosComputação Gráfica. e como são arquitetadas as interligações de seus componentes.i) Processamento de Imagens Diz-se que são basicamente as divergências entre as fabricaçõesAbrange os principais algoritmos de tratamento de imagens, dos computadores.ruídos e filtros. O tratamento de imagens se realiza com uma Com a crescente popularização dos computadores, surge aseqüência habitual de operações sobre a imagem: pré- necessidade da interação de um equipamento com o outro, e comprocessamento, segmentação e análise. O Pré-processamento isso também a necessidade de se criar um padrão. Em meados decorrige os defeitos de captura e melhora as imagens obtidas para 1980, somente duas, das arquiteturas existentes até então,facilitar a Segmentação, que reorganiza os pontos da imagem em resistiram ao tempo e se tornaram populares. Foram: o PCestruturas conhecidas. E os Algoritmos de Análise fazem (Personal Computer) em português Computador Pessoal,parâmetros para essas estruturas, separando-as em categorias. desenvolvido pela empresa IBM, e o Macintosh (ou apenas Mac como também é conhecido) desenvolvido pela Apple.ii) Computação GráficaEssa área ensina como é realizada a síntese de imagens: Como o PC da IBM se tornou na época a arquitetura dominante,Transformações espaciais (rotação, translações), Algoritmos de o padrão adotado para os computadores que conhecemos hoje serasterização que realizam a transformação de uma imagem tornou o padrão da IBM.vetorial em uma imagem matricial, ou seja, imagem raster iii) Arquiteturas abertas(pixels ou pontos), Modelos de iluminação e Tratamento de Foi Desenvolvida inicialmente pela IBM e é a mais aceitacolisão. atualmente. Consiste em permitir que outras empresas fabriquemE também há a analise de Pipeline Gráfico, que se refere ao computadores com a mesma arquitetura.conjunto de processos que via hardware que envolve desde a Pontos favoráveis ao usuário: Permite ao usuário maiores opçõesdefinição dos vértices da imagem até a sua renderização, de configuração e o poder de montar seu próprio computador dealgoritmo para exibir formas tridimensionais, na tela do acordo com necessidades e custos de cada usuário.computador. Pontos desfavoráveis: Os conflitos de hardware o computador funciona mais lento e com menor qualidade se comparado a computadores de arquitetura fechada.2.4 Sistemas de Computação iv) Arquiteturas fechadas2.4.1 Hardwares Implica em, uma empresa fabricante de certa arquitetura nãoOs Hardwares são dispositivos físicos que manipulam dados na permitir o uso da arquitetura por outras empresas, ou ter oforma digital, o que proporciona uma maneira confiável de controle sobre as empresas que fabricam computadores de suarepresentação e transmissão de dados, visto em [23]. Estudamos arquitetura.Hardwares para conhecermos o funcionamento dos recursos Pontos favoráveis ao usuário: Os conflitos de hardwarefísicos dos sistemas, suas funções, seus variados tipos de uso, diminuem muito, faz o computador funcionar mais rápido econtrole e manutenção. Um sistema computacional é um melhor.conjunto de circuitos eletrônicos interligados, (os Hardwares),que podem ser processadores, memórias, registradores, Pontos desfavoráveis: O usuário fica restrito a produtos daimpressoras, discos magnéticos e etc. São agrupados em três empresa e não pode montar o seu próprio computador.subsistemas básicos (Unidades funcionais). São elas:CPU (processador): o cérebro de todo sistema computacional. É v) Exceçãoa unidade lógica e aritmética de processamento. Podem também existir casos como o da Apple que não pertence somente a um tipo de arquitetura, mas sim a ambas as
  • arquiteturas, fazendo parte do mercado de compatíveis IBM,mas ao mesmo tempo sendo a única empresa que a produzircomputadores que podem rodar seu sistema operacionallegalmente.2.4.2 Arquiteturas de Sistemas de ComputaçãoO conjunto definido de instruções de máquina que fazemreferências a detalhes como registradores, modos deendereçamento e tipos de dados que caracterizam umprocessador e suas funcionalidades. Estudamos Arquiteturas deSistemas para conhecer melhor as disparidades entre as Figura 4. Relação entre o Software Básico e outrosarquiteturas, suas características, seus problemas, qual componentes do computador.arquitetura usar para fazer um programa, em qual arquiteturaatuará um programa desejado e como fazer isso tudo. 2.4.4 TeleinformáticaAs arquiteturas de Sistemas diferenciam-se na quantidade de Teleinformática é a parte da informática que trata das técnicas deinstruções, Modo de endereçamento, tipos de dados, transmissão de dados e suas aplicações. Tendo em base osfuncionalidades. Cada processador possui uma arquitetura, dados, enquanto representação da informação são classificadosdefinida pelo fabricante do equipamento. em dados analógicos e dados digitais, tendo com base [15].Um programa não pode ser executado em outra máquina de Os dados analógicos se variam de modo contínuo como valoresarquitetura diferente da que foi programado para atuar, pois de temperatura ou tonalidade e intensidade da voz humana. Já osinstruções de um processador é característica específica de cada dados digitais assumem valores discretos e em quantidades bemarquitetura e os comandos funções e resultados não seriam determinadas, como os números inteiros ou as letras de umcompatíveis entre elas. texto, neste caso poderão representar um código adequado, recorrendo, por exemplo, aos símbolos binários (dígitos 0 e 1) ei) Arquitetura RISC ao código ASCII.A sigla RISC vem da expressão em inglês (Reduced InstrutionSet Computer) e significa Conjunto Computacional de Tanto os dados analógicos como os dados digitais, podem serInstruções Reduzidas. traduzidos e convertidos para efeito de transmissão elétrica em sinais analógicos e sinais digitais.Possui poucas instruções de máquina, bastante simples,executadas diretamente pelo hardware. Maioria não acessa a A transmissão de sinal digital ao longo dos circuitos dememória principal, trabalha principalmente com registradores, telecomunicações exige, contudo, uma grande abertura de banda,que se apresentam em grande número neste tipo de processador. não estando, as linhas dos circuitos telefônicos tradicionais, preparadas, ainda em grande parte, para cumprir a estaPermitem que as instruções sejam executadas rapidamente, exigência. Usam-se assim dispositivos que convertem os sinaisfacilitam a implementação da técnica de pipelining3. digitais, em sinais analógicos com largura de banda relativamente reduzida, dando perfeitamente para serii) Arquitetura CISC transmitida. Estes dispositivos são os modens (modulador-A sigla CISC vem da expressão em inglês (Complex Instrution demodulador) que transformam sinais digitais em sinaisSet Computer) e é traduzida como Conjunto Computacional de analógicos e vice-versa.Instruções Complexas. Tendo em referência [14] assim o objetivo de se estudarPossuem instruções que são interpretadas por micro-programas teleinformática é dar teoria e prática necessária para lidar comdevido a sua maior complexidade. Possui um número menor de transmissão de dados, softwares operacionais (servidor cliente),registradores e qualquer instrução pode referenciar a memória placas de rede, swiches, modens, satélites, sistemas de rádio eprincipal. TV, fibras ópticas, e toda essa ligação entre telecomunicação eAs instruções são executadas mais devagar e a implementação da computação.técnica de pipelining3 é mais difícil. 2.5 Pós-Graduação2.4.3 Software Básico Mesmo após se formando em Ciências da Computação. OSoftware Básico é uma camada de software que trabalho em um bacharel em Ciências da Computação não tem estruturanível intermediário de acesso com o sistema operacional retido acadêmica para entrar no mercado de trabalho. É quase umade [18]. A área de Software Básico tem uma forte interação com regra já, sair da universidade e entrar uma especialização, depoishardware. O principal software básico é o sistema operacional quem sabe um mestrado e um doutorado.(Windows, Linux e Mac), a função principal dele é gerenciar edisponibilizar para o usuário os recursos da maquina e seus 2.5.1 Especializaçãoperiféricos, permitindo que o equipamento torne-se operável Uma Especialização, conhecida no MEC como especializaçãoretirado de [17], com pode ser observado pela figura X.X. Já Lato sensu3. Tem como meta a ampliação de uma área específicaprograma de aplicação (Corel Draw, Microsoft Office, Jogos, de Ciência da Computação voltada para o mercado de trabalho.entre outros) efetua tarefas que serve diretamente ao usuário.Com base na figura se observa bem a importância do softwarebásico na computação, se encontra entre o hardware e os 2.5.2 Mestrado Já um Mestrado é um curso de pós-graduação stricto sensu4.programas de aplicação. Observe Figura 4, referente a [18]. Tem como objetivo propiciar uma complementação na formação específica do aluno, conjugada com sua capacitação em explorar, com metodologia, os temas pertinentes à área e expressar a condução e os resultados de pesquisas e
  • desenvolvimentos realizados, de maneira autônoma e lúcida 3.1 Os 10 Melhores Cursos de Computaçãoretirado de [19]. O Mestrado se divide em dois: MestradoAcadêmico e Mestrado Profissionalizante. do Brasil Uma pesquisa feita pela INFO Online, o site da Revista INFO,Mestrado Acadêmico voltado para pesquisadores visando uma revista muito respeitada no ramo de computação no Brasil,aprofundamento na pesquisa cientifica. No Mestrado apontou um ranking com “Os melhores cursos de computaçãoProfissionalizante voltado para o mercado de trabalho formando no Brasil” segundo a Revista INFO [21]. Veja abaixo na Tabelaprofissionais aptos para elaborar novas técnicas e processos. 1, segundo pesquisa feita por [21], a classificação dos 10Essas divisões são mais conceituais, não havendo problemas melhores cursos de computação do Brasil.para mudar entre elas. Tabela 1. Os melhores da graduação2.5.3 Doutorado Universidade Nome do Velocidade Reputação AvaliaDoutorado, também é um curso de pós-graduação stricto sensu4. curso de conexão Acadêmica. çãoTem como objetivo estreitar ainda mais os estudos vistos no à internet 5 Final (em Mbps)Mestrado, criando uma solução para o problema proposto. Essesproblemas são mais difíceis de ser resolvido como no Mestrado, 1 Unicamp - Bacharelado 8 ou mais 10,00 794por isso sua contribuição é muito importante. O acesso ao Universidade em Ciência Estadual de daDoutorado pode ser pelo Mestrado, pelo Doutorado Direto ou Campinas ComputaçãoDoutorado Sanduíche. 2 Unicamp - Engenharia 8 ou mais 8,40 756Aqueles que podem fazer o Doutorado Direito são aqueles Universidade deexcelentes alunos na pós-graduação (tem umas regras para Estadual de computaçãocumprir). No Doutorado Sanduíche, trata-se de um acordo entre Campinasuma instituição de pesquisa do exterior com uma instituição 3 UFRGS - Ciência da 8 ou mais 9,70 753brasileira (tudo pelas regras do MEC). Na primeira fase é no Universidade ComputaçãoBrasil, mais há segunda fase é no exterior. Voltando para Federal do Riodefender sua tese no Brasil. 1 Grande do Sul 4 ICMC/USP/São Bacharelado 8 ou mais 6,10 7503. CONCLUSÃO Carlos - Instituto de em ciênciaEsse manuscrito mostra de forma rápida e prática todas as Áreas Ciências da Matemáticas e de computaçãode Ciência da Computação e seus respectivos conceitos. Como Computaçãofoi mostrado, as essas Áreas são a base de toda a tecnologiamoderna e se interligam com outras áreas do conhecimento. 5 USP/Poli - Escola Engenharia 8 ou mais 2,60 746 Politécnica da daMesmo assim, atualmente em algumas dessas áreas há uma Universidade de Computaçãocarência de profissionais para suprir a demanda do mercado de São Paulotrabalho. Levando em consideração essa carência e anecessidade das habilidades do profissional de computação, que 6 ITA - Instituto Engenharia 8 ou mais 3,80 745 Tecnológico de deo mundo tem atualmente, isto é, demanda de software, Aeronáutica computaçãoprofissionais treinados, e por soluções de determinadosproblemas, que todas as áreas de Ciência da Computação estão 7 Poli/USP - Escola Engenharia 8 ou mais 2,60 737 Politécnica da Elétrica -atrativas para a inclusão de formandos. Universidade de Ênfase em São Paulo Computação 8 UFRGS - Engenharia 8 ou mais 8,55 728 Universidade da Federal do Rio Computação Grande do Sul 9 UFMG - Bacharelado 8 ou mais 7,20 727 Universidade em Ciência Federal de Minas da Gerais Computação 10 UFRJ - Bacharelado 8 ou mais 7,90 712 Universidade em ciência Federal do Rio de da Janeiro computação 3.1.1 Previsões para o Futuro1 Assim como qualquer outra tecnologia, a computação tem se Da expressão em inglês “computer algebra system”. desenvolvido num ritmo muito acelerado. Mesmo assim, não é2 Pipelining refere-se à técnica que permite ao processador muito difícil pensar em algum tipo de inovação que ainda possa executar várias instruções em diferentes etapas. surgir. Dentre eles, podemos citar as aplicações da3 Do latim "em sentido amplo". teleinformática, é possível que nos próximos anos tenhamos uma4 Do latim “tema mais específico”. renovação na informática, que vá atingir os vários níveis da5 Para indicar a reputação acadêmica, Foi solicitado a cada tecnologia. universidade que listasse, em ordem decrescente de importância, os dez cursos mais respeitados do meio São muitos os benefícios que esse tipo de inovação possa trazer universitário. Os mais citados obtiveram avaliação melhor, como interatividade, facilidade de comunicação e transformada em pontos de 0 a 10, conforme informa [21]. entretenimento.
  • 4. REFERÊNCIAS [18] Prof. Msc. Delnir Monteiro de Lemos,[1] Graça Bressan - Modelagem e Simulação de Sistemas http://www.cti.furg.br/~dmlemos/. Acessado em 04 de maio Computacionais. de 2008. http://www.heliorocha.com.br/graduacao/sisinfo/DS/Graca [19] Univerdade Salvador, %20Bressan%20- http://www.ppgcomp.unifacs.br/faq.htm. Acessado em 12 %20Modelagem%20e%20Simulacao%20de%20Sistemas% de junho de 2008. 20Computacionais.ppt/ Acessado em 15 de Agosto 2008. [20] Ricardo de Almeida Falbo.[2] http://www.bitpop.info/alan-turing-o-pai-da-ciencia-da- http://www.inf.ufes.br/~falbo/download/aulas/es-g/2006- computacao.html , 07 de junho de 2008. 2/NotasDeAulaFormatoEconomico.pdf. Acessado em 12 de[3] Elaine Pimentel. Semântica de Programas. Publicado no 1º junho de 2008. semestre de 2005. Pesquisado em 01 de junho de 2008. [21] Os melhores na graduação. Info Online. Publicado em[4] Linguagem de Programação. Publicado em 15 de fevereiro http://info.abril.com.br/carreira/graduacao.shl. Acessado em de 2008. 25 de Abril de 2008. http://pt.wikipedia.org/wiki/Linguagem_de_programa%C3 [22] Tipos de Sistemas de Informação, %A7%C3%A3o. Acessado em 21 de maio de 2008. www.facape.br/celimar/sec/TIPOS_DE_SISTEMAS_DE_I[5] Teoria da Computação, Origem: Wikipédia, a enciclopédia NFORMACAO. Acessado em 26 de Maio de 2008. livre, [23] Hardware. Publicado em 14 de maio de 2008. http://pt.wikipedia.org/wiki/Teoria_da_computa%C3%A7 http://pt.wikipedia.org/wiki/hardware. Acessado em 5 de %C3%A3o, acessado em 15 junho de 2008. junho de 2008.[6] Profs. Tiaraju Diverio e Paulo Blauth Menez [24] Matemática. Publicado em 13 de janeiro de 2008. www.inf.ufrgs.br/~hgmcpad/disciplinas/teoriadacomputaca http://pt.wikipedia.org/wiki/Matem%C3%A1tica. Acessado o/capitulo6/cap6_2.doc, acessado em 15 de junho de 2008. em 19 de abril de 2008.[7] Lucilia Figueiredo, [25] Sistema de Álgebra Computacional. Publicado em 21 de http://homepages.dcc.ufmg.br/~lucilia/cursos/ftc/slides/ftc0 março de 2008. 1.pdf, acessado em 10 de julho de 2008. http://pt.wikipedia.org/wiki/%C3%81lgebra_computacional[8] Computabilidade. . Acessado em 19 de abril de 2008. www.dimap.ufrn.br/~jorge/textos/introdutorios/computabili [26] Jean Wanderlei, Martín Ravetti e André Lins. Validação de dade.html, acessado em 10 de julho de 2008. um Modelo Analítico para um Sistema de Processamento[9] Maquina de Turing. de Consultas. http://pt.wikipedia.org/wiki/M%C3%A1quina_de_Turing, http://homepages.dcc.ufmg.br/~nivio/cursos/pa02/seminari Acessado em 10 de julho de 2008. os/seminario1/seminario1.html acessado em 17 de Junho de 2008.[10] P. Blauth Menezes, http://www.inf.ufrgs.br/~avillavicencio/slides- [27] Análise de Algoritmos. Publicado em 13 de maio de 2008. lfa/LF1_040823b.pdf, acessado 23 de junho de 2008. http://pt.wikipedia.org/wiki/An%C3%A1lise_de_algoritmo s, acessado em 18 de maio de 2008 às 23:54.[11] Cubano.WS - Linguagem formal, http://cubano.ws/info- atual/linguagem-formal, acessado em 13 de junho de 2008. [28] Professor Marcio Ferreira de Jesus. Algoritmos + Pascal. http://www.mfjver.com/apostilas/algoritmos/apostila%20de[12] Sistemas de Informação, Origem Wikipédia, a enciclopédia %20algoritmos%20Modulo%201.pdf , acessado em 13 de livre, agosto de 2008. http://pt.wikipedia.org/wiki/Sistemas_de_informa%C3%A7 %C3%A3o, acessado em 26 de maio de 2008. [29] Complexidade Computacional. Publicado em 21 de maio de 2008.[13] Olinda Nogueira Paes Cardoso, http://pt.wikipedia.org/wiki/Complexidade_computacional, www.dcc.ufla.br/~olinda/arquivos/si%20tipos%20de%20si acessado em 15 de julho de 2008. .pdf, acessado em 26 de maio de 2008. [30] Fabio Fedrizzi Bernardon. Processamento Gráfico.[14] Almir Wirth Lima Junior, Engenheiro de Telecomunicações http://www.inf.ufrgs.br/~fabiofb/disciplinas/PG/index.html. Pós Graduado na Alemanha, e mestre em Teleinformática acessado em 12 de maio de 2008. pela Universidade Federal do Ceará (UFC), http://www.geocities.com/doceara1/TIxTeleinf.htm, acessado em 5 de Agosto de2008.[15] Alberto Neves, http://www.eppet.pt/data/linkserv/telei/curso_telei/m1_10.h tml, acessado 5 de agosto de 2008.[16] Banco de Dados, Origem Wikipédia, a enciclopédia livre, http://pt.wikipedia.org/wiki/Banco_de_dados. Acessado em 27 de maio de 2008.[17] Professor Eduardo Silvestri Ribeiro, http://www.eduardosilvestri.com.br/fmu/redes/sistop/2aula/ SO-Aula002.pdf/ Acessado em 05 de maio de 2008.