PROGRAMA PARA O CARGO DE ANALISTA DE TECNOLOGIA DA INFORMAÇÃO 1 - Configuração e gerenciamento de servidores nas plataformas WINDOWS e LINUX. 2 -Arquitetura de Computadores: unidades básicas de um computador, representação dos tipos de dados e instruções, métodos de execução de programas. 3 - Estruturas de dados (vetores, matrizes, listas, pilhas, filas, árvores): definição e algoritmos de manipulação, busca e ordenação 4 - Organização de arquivos: seqüencial, seqüencial-indexado, indexado, direto e invertido, métodos de acesso e pesquisa. 5 – Programação orientada a objeto: abstração de dados, definição de classes, métodos e atributos, herança, polimorfismo, encapsulamento e reutilização de componentes, noções de Linguagens Orientadas a Objeto (DELPHI, Visual Basic e Java), noções de HTML, ASP, PHP, VB Script, JAVA SCRIPT. 6 - Programação Procedural: tipos primitivos de dados, declaração e inicialização de variáveis, utilização de literais e strings, categorias de operadores e precedência, controle de fluxo de programas e repetição, estrutura e construções básicas de um programa, conhecimento e interpretação de algoritmos, conhecimentos de Linguagem C. 7 - Análise de sistemas: análise essencial, análise de eventos, modelo ambiental, modelo comportamental, modelo de implementação, análise orientada a objetos: modelo de objetos, modelo dinâmico, modelo funcional, linguagem UML. 8 - Engenharia de Software: princípios da engenharia de software na solução de problemas de análise de sistemas; metodologias de desenvolvimento de software, ferramentas CASE, teste de programas, testes tipo caixa-branca e caixa-preta, teste de sistemas, técnicas informais de verificação e prova de programas. 9 - Projeto de Sistemas: projeto estruturado, acoplamento, coesão, análise de transformação, análise de transição, packaging, implementação, otimização e administração do projeto estruturado, projeto orientado a objetos. 10 - Bancos de dados: projeto conceitual e lógico, normalização de dados, modelo de dados relacional e modelo de dados semântico, linguagem SQL (operações de definição e manipulação de dados), recuperação e concorrência, bancos de dados distribuídos e arquitetura cliente/servidor, segurança. 11 - Rede de Computadores: conceitos de equipamentos de redes (como roteadores, switches, bridges, hubs e modems), conceitos de protocolos de redes de computadores , redes locais LAN e redes de longa distância WAN, arquitetura TCP/IP, serviços (como DNS, Firewall, Proxy, WEB, DHCP). 12 - Sistemas Operacionais: estruturas, gerenciamento de processos, gerenciamento de armazenamento, sistemas de I/O, sistemas distribuídos, proteção e segurança Bibliografia Sugerida: SEBESTA, R.W., Conceitos de Linguagem de Programação, 5ª Edição, Bookman, 2003. SCHILDT, H., C-Completo e Total, 3ª Edição, Makron, 1997. LEISERSON, C.E., et al., Algoritmos: Teoria e Prática, Campus, 2002. SANTOS, R., Introdução à Programação Orientada a Objetos Usando Java, Campus, 2003. DEITEL. H.M., DEITEL, P.J., Java – Como Programar, 6ª Edição, Bookman, 2005. ELMASRI, R., NAVATHE, S.B., Sistemas de Bancos de Dados, 4ª Edição, Pearson, 2005, DATE, C. J. Introdução a Sistemas de Bancos de Dados. 8 ed. Rio de Janeiro: Campus, 2004. PRESSMAN, R.S., Engenharia de Software, Makron, 1995, BOOCH, G., et al., UML: Guia do Usuário, 2ª Edição, Campus, 2005. TANENBAUM, Andrew S. Redes de Computadores, 4ª Edição, Campus, 2003. PETERSON, L.L., DAVIE, B.S, Redes de Computadores – Uma Abordagem de Sistemas, 3ª Edição, Campus, 2003. KUROSE, J. F.; ROSS, K.W., Redes de Computadores e a Internet, 3ª Edição, Pearson, 2007. SILBERSCHATZ, A., et. al6a edição, Ed. LTC, 2004