Boletim de Serviço Eletrônico em 01/07/2025

Timbre
Ministério da Educação
Universidade Federal do Amazonas
Câmara de Ensino de Graduação

 

RESOLUÇÃO Nº 047, DE 30 DE JUNHO DE 2025

 

REGULAMENTA o Projeto Pedagógico do Curso de Graduação em Inteligência Artificial, bacharelado, modalidade presencial, turno integral, de ingresso único por meio da Área Básica de Ingresso (ABI) Computação, vinculado ao Instituto de Computação (Icomp), da Universidade Federal do Amazonas (UFAM), versão 2026/1.

 

 

O PRESIDENTE DA SESSÃO ORDINÁRIA DA CÂMARA DE ENSINO DE GRADUAÇÃO, DO CONSELHO DE ENSINO, PESQUISA E EXTENSÃO DA UNIVERSIDADE FEDERAL DO AMAZONAS, no uso de suas atribuições estatutárias;

CONSIDERANDO a Lei Nº 9.394, de 20 de dezembro de 1996, que estabelece as diretrizes e bases da educação nacional;

CONSIDERANDO a Lei Nº 11.788, de 25 de setembro de 2008, que dispõe sobre o estágio de estudantes; altera a redação do art. 428 da Consolidação das Leis do Trabalho (CLT), aprovada pelo Decreto-Lei no 5.452, de 1º de maio de 1943, e a Lei no 9.394, de 20 de dezembro de 1996; revoga as Leis nos 6.494, de 7 de dezembro de 1977, e 8.859, de 23 de março de 1994, o parágrafo único do art. 82 da Lei no 9.394, de 20 de dezembro de 1996, e o art. 6º da Medida Provisória no 2.164-41, de 24 de agosto de 2001; e dá outras providências;

CONSIDERANDO o Decreto Nº 5.296, de 02 de dezembro de 2004, que regulamenta as Leis nos 10.048, de 8 de novembro de 2000, que dá prioridade de atendimento às pessoas que especifica, e 10.098, de 19 de dezembro de 2000, que estabelece normas gerais e critérios básicos para a promoção da acessibilidade das pessoas com deficiência ou com mobilidade reduzida, e dá outras providências;

CONSIDERANDO o Decreto Nº 5.625, de 22 de dezembro de 2005, que regulamenta a Lei nº 10.436, de 24 de abril de 2002, que dispõe sobre a Língua Brasileira de Sinais (Libras);

CONSIDERANDO a Resolução CNE/CP N° 01, de 17 de junho de 2004, que institui Diretrizes Curriculares Nacionais para a Educação das Relações Étnico-Raciais e para o Ensino de História e Cultura Afro-Brasileira e Africana; 

CONSIDERANDO a Resolução CNE/CES Nº 2, de 18 de junho de 2007, que dispõe sobre carga horária mínima e procedimentos relativos à integralização e duração dos cursos de graduação, bacharelados, na modalidade presencial;

CONSIDERANDO a Resolução CNE/CP Nº 01, de 30 de maio de 2012, que estabelece as Diretrizes Curriculares Nacionais para a Educação em Direitos Humanos;

CONSIDERANDO a Resolução CNE/CP Nº 2, de 15 de junho de 2012, que estabelece as Diretrizes Curriculares Nacionais para a Educação Ambiental; 

CONSIDERANDO a Resolução CNE/CES Nº 5, de 16 de novembro de 2016, que institui as Diretrizes Curriculares Nacionais para os cursos de graduação na área da Computação, abrangendo os cursos de bacharelado em Ciência da Computação, em Sistemas de Informação, em Engenharia de Computação, em Engenharia de Software e de licenciatura em Computação, e dá outras providências;

CONSIDERANDO a Resolução Nº 018, de 01 de agosto de 2007, CEG/CONSEPE, que regulamenta as Atividades Complementares dos Cursos de Graduação da Universidade Federal do Amazonas;

CONSIDERANDO a Resolução Nº 037, de 04 de julho de 2011, CEG/CONSEPE, que estabelece integralização dos tempos máximos de duração dos cursos de graduação presenciais da Universidade Federal do Amazonas;

CONSIDERANDO a Resolução Nº 067, de 30 de novembro de 2011, CEG/CONSEPE, que disciplina os estágios obrigatórios e não obrigatórios da Universidade Federal do Amazonas;

CONSIDERANDO a Resolução nº 020, de 16 de dezembro de 2019, CONSEPE, que regulamenta a criação de curso, criação e modificação curricular e extinção de curso superior no âmbito da UFAM;  

CONSIDERANDO a Resolução nº 044, de 04 de dezembro de 2023, CONSEPE, que dispõe sobre a regulamentação da Curricularização das ações de extensão Universitária nos Cursos de Graduação da Universidade Federal do Amazonas e dá outras providências;

CONSIDERANDO as diretrizes do Plano Brasileiro de Inteligência Artificial 2024-2028, que destaca a formação de talentos como uma prioridade nacional para atender à alta demanda por especialistas em IA e promover a autonomia tecnológica;

CONSIDERANDO o ofício nº 32/2025/CCCCOMP (2569855), no qual encaminha a proposta de criação do curso de Graduação em Inteligência Artificial (BIA), bacharelado, vinculado ao (Icomp);

CONSIDERANDO a ata do Conselho Diretor do Instituto de Computação - CONDIR (2570463), realizada no dia 28 de março de 2025;

CONSIDERANDO a Informação nº 22/2025/DAE - PROEG/PROEG/UFAM, (2652561), que trata da análise do processo de criação de curso, aprovação e regulamentação do Projeto Pedagógico do Curso de Graduação em Inteligência Artificial, bacharelado; 

CONSIDERANDO, finalmente, a Decisão (SEI nº 2661833), do plenário em reunião ordinária realizada em XX de XX de 2025,

 

RESOLVE:

 

Art. 1º REGULAMENTAR o Projeto Pedagógico do Curso de Graduação em Inteligência Artificial, bacharelado, modalidade presencial, turno integral, de ingresso único por meio da Área Básica de Ingresso (ABI) Computação, vinculado ao Instituto de Computação (Icomp), da Universidade Federal do Amazonas (UFAM), versão 2026/1.

Art. 2º A integralização curricular do Curso de Graduação em Inteligência Artificial, bacharelado, modalidade presencial, turno integral, de ingresso único por meio da Área Básica de Ingresso (ABI) Computação, versão 2026/1, dar-se-á com a conclusão da carga horária total de 3.200 (três mil e duzentas) horas/aula e 155 (cento e cinquenta e cinco) créditos, com a subdivisão que segue:

I - disciplinas obrigatórias do núcleo básico de formação - formação comum aos cursos de Graduação em Inteligência Artificial, Graduação em Tecnologia da Informação, Graduação em Engenharia de Software e Graduação em Ciência da Computação;

II - disciplinas obrigatórias do núcleo específico de formação do Curso;

III - disciplinas eletivas;

IV - disciplinas optativas;

V - Atividades Acadêmico-Científico-Culturais (AACC's);

VI - Atividades Curriculares de Extensão.

Art. 3º As disciplinas obrigatórias do núcleo básico de formação, correspondem ao total de 1.350 (mil trezentos e cinquenta) horas/aula e 84 (oitenta e quatro) créditos.

Art. 4º disciplinas obrigatórias do núcleo específico de formação, correspondem ao total de 1.050 (mil e cinquenta) horas/aula e 63 (sessenta e três) créditos.

Art. 5º As disciplinas eletivas correspondem ao total de 120 (cento e vinte) horas/aula, equivalentes a 04 (quatro) créditos.

Art. 6º As disciplinas optativas correspondem ao total de 120 (cento e vinte) horas/aula, equivalentes a 04 (quatro) créditos.

Art. 7º As Atividades Acadêmico-Científico-Culturais (AACC's) constituem componente curricular obrigatório e correspondem ao total de 240 (duzentos e quarenta) horas.

Art. 8º As Atividades Curriculares de Extensão correspondem ao total de 320 (trezentos e vinte) horas, que serão integralizadas por meio de disciplinas obrigatórias e modalidades extensionistas.

Art. 9º O curso será ofertado em regime presencial, de crédito semestral, turno integral, sendo permitida a matrícula em disciplinas, respeitando o limite máximo de 30 (trinta) e mínimo de 12 (doze) créditos por período.

Art. 10. A integralização curricular far-se-á em, no mínimo, quatro anos, equivalentes a oito períodos letivos, e, no máximo, seis anos, equivalentes a 12 (doze) períodos letivos no mínimo.

Art. 11. O desdobramento da Estrutura Curricular do Curso de Graduação em Inteligência Artificial, bacharelado, modalidade presencial, turno integral, de ingresso único por meio da Área Básica de Ingresso (ABI) Computação, versão 2026/1, está organizada em blocos de conteúdos, tópicos, por componentes curriculares, e contido no Anexo I desta Resolução.

Art. 12. A distribuição das disciplinas do currículo do Curso de Graduação em Inteligência Artificial, bacharelado, modalidade presencial, turno integral, de ingresso único por meio da Área Básica de Ingresso (ABI) Computação, versão 2026/1, por período letivo, far-se-á segundo o que estabelece a periodização e o quadro de disciplinas obrigatórias (do núcleo básico de formação), disciplinas obrigatórias (do núcleo específico de formação), eletivas, optativas e de extensão, contidos no Anexo II desta Resolução.

Art. 13. O programa de ensino das disciplinas do currículo do Curso de Graduação em Inteligência Artificial, bacharelado, modalidade presencial, turno integral, de ingresso único por meio da Área Básica de Ingresso (ABI) Computação, versão 2026/1, compõe o Anexo III desta Resolução.

Art. 14. As normas regulamentares das Atividades Acadêmico-Científico-Culturais do Curso de Graduação em Inteligência Artificial, bacharelado, modalidade presencial, turno integral, de ingresso único por meio da Área Básica de Ingresso (ABI) Computação, versão 2026/1, estão estabelecidas no Anexo IV desta Resolução.

Art. 15. As normas regulamentares do Trabalho de Conclusão de Curso (TCC) do Curso de Graduação em Inteligência Artificial, bacharelado, modalidade presencial, turno integral, de ingresso único por meio da Área Básica de Ingresso (ABI) Computação, versão 2026/1, estão estabelecidas no Anexo V desta Resolução.

Art. 16. As normas regulamentares das Atividades Curriculares de Extensão do Curso de Graduação em Inteligência Artificial, bacharelado, modalidade presencial, turno integral, de ingresso único por meio da Área Básica de Ingresso (ABI) Computação, versão 2026/1, estão estabelecidas no Anexo VI desta Resolução.

Art. 17. Aplicar-se-á esta Resolução aos discentes que ingressarem no Curso de Graduação em Inteligência Artificial, bacharelado, modalidade presencial, turno integral, de ingresso único por meio da Área Básica de Ingresso (ABI) Computação, versão 2026/1.

Art. 18. Esta Resolução entra em vigor na data de sua publicação.

 

PLENÁRIA DA CÂMARA DE ENSINO DE GRADUAÇÃO, DO CONSELHO DE ENSINO, PESQUISA E EXTENSÃO DA UNIVERSIDADE FEDERAL DO AMAZONAS, em Manaus, 30 de junho de 2025.

 

DAVID LOPES NETO

Presidente

 

ANEXO I

DESDOBRAMENTO DA ESTRUTURA CURRICULAR

 

1. Conteúdos Curriculares da Formação Tecnológica e Básica para todos os Cursos de Bacharelado e de Licenciatura

TÓPICOS

SIGLA

DISCIPLINAS DESDOBRADAS

CH

CR

sistemas operacionais

ICC065

SISTEMAS OPERACIONAIS I

60

4.4.0.0

compiladores

ICC066

INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

60

4.4.0.0

engenharia de software

ICC430

ENGENHARIA DE SOFTWARE I

60

4.4.0.0

ICC431

ENGENHARIA DE SOFTWARE II

60

4.4.0.0

interação humano-computador

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

ICC406

INTERAÇÃO HUMANO-COMPUTADOR

60

4.4.0.0

redes de computadores

ICC065

SISTEMAS OPERACIONAIS I

60

4.4.0.0

ICC062

ARQUITETURA DE COMPUTADORES

60

4.4.0.0

sistemas de tempo real

ICC062

ARQUITETURA DE COMPUTADORES

150

5.0.5.0

ICC114

COMPUTAÇÃO E UNIVERSIDADE

60

4.4.0.0

inteligência artificial e computacional

ICC260

FUNDAMENTOS DE INTELIGÊNCIA ARTIFICIAL

60

4.4.0.0

ICC253

CIÊNCIA DE DADOS

60

3.2.1.0

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

ICC258

REPRESENTAÇÃO DO CONHECIMENTO E RACIOCÍNIO

60

4.4.0.0

ICC209

RECUPERAÇÃO DE INFORMAÇÃO

60

4.4.0.0

ICC208

ENGENHARIA DE DADOS

60

4.4.0.0

ICC257

APRENDIZADO DE MÁQUINA II

60

3.2.1.0

ICC254

PROCESSAMENTO DE LINGUAGEM NATURAL

60

4.4.0.0

ICC259

IA MULTIMODAL

60

4.4.0.0

ICC261

SISTEMAS MULTIAGENTES

60

4.4.0.0

ICC262

IA NEURO-SIMBÓLICA

60

4.4.0.0

ICC263

ROBÓTICA

60

4.4.0.0

processamento de imagens

ICC114

COMPUTAÇÃO E UNIVERSIDADE

60

4.4.0.0

 

ICC259

IA MULTIMODAL

60

4.4.0.0

computação gráfica

ICC114

COMPUTAÇÃO E UNIVERSIDADE

60

4.4.0.0

 

ICC259

IA MULTIMODAL

60

4.4.0.0

banco de dados

ICC205

INTRODUÇÃO A BANCOS DE DADOS

60

4.4.0.0

 

ICC208

ENGENHARIA DE DADOS

60

4.4.0.0

dependabilidade

ICC065

SISTEMAS OPERACIONAIS I

60

4.4.0.0

segurança

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

multimídia

ICC114

COMPUTAÇÃO E UNIVERSIDADE

60

4.4.0.0

sistemas embarcados

ICC062

ARQUITETURA DE COMPUTADORES

150

5.0.5.0

processamento paralelo

ICC065

SISTEMAS OPERACIONAIS I

60

4.4.0.0

ICC261

SISTEMAS MULTIAGENTES

60

4.4.0.0

processamento distribuído

ICC065

SISTEMAS OPERACIONAIS I

60

4.4.0.0

ICC261

SISTEMAS MULTIAGENTES

60

4.4.0.0

robótica

ICC260

FUNDAMENTOS DE INTELIGÊNCIA ARTIFICIAL

60

4.4.0.0

ICC263

ROBÓTICA

60

4.4.0.0

realidade virtual

ICC259

IA MULTIMODAL

60

4.4.0.0

ICC114

COMPUTAÇÃO E UNIVERSIDADE

60

4.4.0.0

automação

ICC260

FUNDAMENTOS DE INTELIGÊNCIA ARTIFICIAL

60

4.4.0.0

novos paradigmas de computação

ICC114

COMPUTAÇÃO E UNIVERSIDADE

60

4.4.0.0

ICC257

APRENDIZADO DE MÁQUINA II

60

3.2.1.0

matemática discreta

ICC120

MATEMÁTICA DISCRETA

60

4.4.0.0

estruturas algébricas

ICC120

MATEMÁTICA DISCRETA

60

4.4.0.0

matemática do contínuo [cálculo, álgebra linear, equações diferenciais, geometria analítica; matemática aplicada (séries, transformadas), cálculo numérico]

IEM075

CÁLCULO DIFERENCIAL E INTEGRAL I

60

4.4.0.0

IEM076

CÁLCULO DIFERENCIAL E INTEGRAL II

60

4.4.0.0

IEM012

ÁLGEBRA LINEAR I

60

4.4.0.0

IEM022

ÁLGEBRA LINEAR II

60

4.4.0.0

teoria dos grafos

ICC006

PROJETO E ANÁLISE DE ALGORITMOS

60

4.4.0.0

ICC003

ALGORITMOS E ESTRUTURAS DE DADOS II

90

5.4.1.0

ICC120

MATEMÁTICA DISCRETA

60

4.4.0.0

análise combinatória

ICC120

MATEMÁTICA DISCRETA

60

4.4.0.0

probabilidade e estatística

IEE001

PROBABILIDADE E ESTATÍSTICA

60

4.4.0.0

pesquisa operacional e otimização

ICC006

PROJETO E ANÁLISE DE ALGORITMOS

60

4.4.0.0

ICC257

APRENDIZADO DE MÁQUINA II

60

3.2.1.0

teoria da computação

ICC040

LINGUAGENS FORMAIS E AUTÔMATOS

60

4.4.0.0

lógica

ICC120

MATEMÁTICA DISCRETA

60

4.4.0.0

algoritmos e complexidade

ICC001

INTRODUÇÃO À COMPUTAÇÃO

90

5.4.1.0

ICC002

ALGORITMOS E ESTRUTURAS DE DADOS I

90

5.4.1.0

ICC003

ALGORITMOS E ESTRUTURAS DE DADOS II

90

5.4.1.0

ICC006

PROJETO E ANÁLISE DE ALGORITMOS

60

4.4.0.0

linguagens formais e autômatos

ICC040

LINGUAGENS FORMAIS E AUTÔMATOS

60

4.4.0.0

abstração e estruturas de dados

ICC001

INTRODUÇÃO À COMPUTAÇÃO

90

5.4.1.0

ICC002

ALGORITMOS E ESTRUTURAS DE DADOS I

90

5.4.1.0

ICC003

ALGORITMOS E ESTRUTURAS DE DADOS II

90

5.4.1.0

fundamentos de linguagens (sintaxe, semântica e modelos)

ICC001

INTRODUÇÃO À COMPUTAÇÃO

90

5.4.1.0

programação

ICC001

INTRODUÇÃO À COMPUTAÇÃO

90

5.4.1.0

ICC002

ALGORITMOS E ESTRUTURAS DE DADOS I

90

5.4.1.0

ICC003

ALGORITMOS E ESTRUTURAS DE DADOS II

90

5.4.1.0

ICC027

PROGRAMAÇÃO ORIENTADA A OBJETOS

60

3.2.1.0

ICC007

PROGRAMAÇÃO PARA WEB

60

3.2.1.0

modelagem computacional

ICC205

INTRODUÇÃO A BANCOS DE DADOS

60

4.4.0.0

ICC431

ENGENHARIA DE SOFTWARE II

60

4.4.0.0

métodos formais

ICC120

MATEMÁTICA DISCRETA

60

4.4.0.0

análise, especificação, verificação e testes de sistemas

ICC430

ENGENHARIA DE SOFTWARE I

60

4.4.0.0

ICC431

ENGENHARIA DE SOFTWARE II

60

4.4.0.0

circuitos digitais

ICC066

INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

60

4.4.0.0

arquitetura e organização de computadores

ICC066

INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

60

4.4.0.0

ICC062

ARQUITETURA DE COMPUTADORES

60

4.4.0.0

avaliação de desempenho

ICC003

ALGORITMOS E ESTRUTURAS DE DADOS II

90

5.4.1.0

ICC066

INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

60

4.4.0.0

ICC062

ARQUITETURA DE COMPUTADORES

60

4.4.0.0

ética e legislação

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

empreendedorismo

ICC103

EMPREENDEDORISMO EM INFORMÁTICA

60

4.4.0.0

computação e sociedade

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

filosofia

ICC107

METODOLOGIA CIENTÍFICA EM COMPUTAÇÃO

60

4.4.0.0

metodologia científica

ICC107

METODOLOGIA CIENTÍFICA EM COMPUTAÇÃO

60

4.4.0.0

meio ambiente

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

fundamentos de administração

ICC103

EMPREENDEDORISMO EM INFORMÁTICA

60

4.4.0.0

fundamentos de economia

ICC103

EMPREENDEDORISMO EM INFORMÁTICA

60

4.4.0.0

 

2. Conteúdos Curriculares do Eixo 1: Fundamentos de Matemática, Estatística e Ciência da Computação

TÓPICOS

SIGLA

DISCIPLINAS DESDOBRADAS

CH

CR

Matemática Discreta (conjuntos, relações, funções)

ICC120

MATEMÁTICA DISCRETA

60

4.4.0.0

Fundamentos da Lógica Matemática

ICC120

MATEMÁTICA DISCRETA

60

4.4.0.0

Cálculo I e II

IEM075

CÁLCULO DIFERENCIAL E INTEGRAL I

60

4.4.0.0

IEM076

CÁLCULO DIFERENCIAL E INTEGRAL II

60

4.4.0.0

Estatística descritiva e inferencial

IEE001

PROBABILIDADE E ESTATÍSTICA

60

4.4.0.0

ICC253

CIÊNCIA DE DADOS

60

3.2.1.0

Álgebra Linear

IEM012

ÁLGEBRA LINEAR I

60

4.4.0.0

IEM022

ÁLGEBRA LINEAR II

60

4.4.0.0

Probabilidade e Estatística (Teorema de Bayes, valor esperado)

IEE001

PROBABILIDADE E ESTATÍSTICA

60

4.4.0.0

ICC253

CIÊNCIA DE DADOS

60

3.2.1.0

Pesquisa Operacional e Otimização (programação dinâmica, processos de Markov)

ICC006

PROJETO E ANÁLISE DE ALGORITMOS

60

4.4.0.0

ICC257

APRENDIZADO DE MÁQUINA II

60

3.2.1.0

Teoria dos Grafos

ICC003

ALGORITMOS E ESTRUTURAS DE DADOS II

90

5.4.1.0

ICC006

PROJETO E ANÁLISE DE ALGORITMOS

60

4.4.0.0

Algoritmos e Complexidade

ICC006

PROJETO E ANÁLISE DE ALGORITMOS

60

4.4.0.0

Processamento Paralelo e Distribuído

ICC065

SISTEMAS OPERACIONAIS I

60

4.4.0.0

ICC261

SISTEMAS MULTIAGENTES

60

4.4.0.0

Teoria da Computação

ICC040

LINGUAGENS FORMAIS E AUTÔMATOS

60

4.4.0.0

Criptografia

ICC120

MATEMÁTICA DISCRETA

60

4.4.0.0

Estruturas de Dados

ICC002

ALGORITMOS E ESTRUTURAS DE DADOS I

90

5.4.1.0

ICC003

ALGORITMOS E ESTRUTURAS DE DADOS II

90

5.4.1.0

Bancos de Dados

ICC205

INTRODUÇÃO A BANCOS DE DADOS

60

4.4.0.0

Técnicas de Programação

ICC027

PROGRAMAÇÃO ORIENTADA A OBJETOS

60

3.2.1.0

Avaliação de Desempenho

ICC003

ALGORITMOS E ESTRUTURAS DE DADOS II

90

5.4.1.0

ICC066

INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

60

4.4.0.0

ICC062

ARQUITETURA DE COMPUTADORES

60

4.4.0.0

Projeto de Algoritmos

ICC006

PROJETO E ANÁLISE DE ALGORITMOS

60

4.4.0.0

Cálculo Numérico

ICC253

CIÊNCIA DE DADOS

60

3.2.1.0

ICC003

ALGORITMOS E ESTRUTURAS DE DADOS II

90

5.4.1.0

ICC066

INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

60

4.4.0.0

IEM076

CÁLCULO DIFERENCIAL E INTEGRAL II

60

4.4.0.0

 

3. Conteúdos Curriculares do Eixo 2: Desenvolvimento e Gestão de Sistemas de IA

TÓPICOS

SIGLA

DISCIPLINAS DESDOBRADAS

CH

CR

Metodologia Científica

ICC107

METODOLOGIA CIENTÍFICA EM COMPUTAÇÃO

60

4.4.0.0

Métodos Formais de Desenvolvimento de Sistemas

ICC431

ENGENHARIA DE SOFTWARE II

60

4.4.0.0

Engenharia de Software (Agentes, Objetos, Dados)

ICC430

ENGENHARIA DE SOFTWARE I

60

4.4.0.0

ICC431

ENGENHARIA DE SOFTWARE II

60

4.4.0.0

Engenharia de Conhecimento (Ontologias, Grafos de Conhecimento)

ICC258

REPRESENTAÇÃO DO CONHECIMENTO E RACIOCÍNIO

60

4.4.0.0

Segurança em Sistemas Computacionais

ICC065

SISTEMAS OPERACIONAIS I

60

4.4.0.0

Arquiteturas de Agentes (ACT-R, SOAR, ICARUS, FORR)

ICC261

SISTEMAS MULTI-AGENTES

60

4.4.0.0

Curadoria de Dados

ICC208

ENGENHARIA DE DADOS

60

4.4.0.0

Computação em Nuvem

ICC062

ARQUITETURA DE COMPUTADORES

60

4.4.0.0

Sistemas Distribuídos e Concorrentes

ICC062

ARQUITETURA DE COMPUTADORES

60

4.4.0.0

Arquitetura e Organização de Computadores

ICC066

INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

60

4.4.0.0

ICC062

ARQUITETURA DE COMPUTADORES

60

4.4.0.0

Interação Humano-IA

ICC263

ROBÓTICA

60

4.4.0.0

Sistemas Operacionais

ICC065

SISTEMAS OPERACIONAIS I

60

4.4.0.0

Robótica Inteligente

ICC263

ROBÓTICA

60

4.4.0.0

IA Embarcada

ICC263

ROBÓTICA

60

4.4.0.0

Internet das Coisas (IoT)

ICC261

SISTEMAS MULTIAGENTES

60

4.4.0.0

Realidade Virtual e Aumentada

ICC259

IA MULTIMODAL

60

4.4.0.0

Programação de Aplicativos para Dispositivos Móveis

ICC007

PROGRAMAÇÃO PARA WEB

60

3.2.1.0

Empreendedorismo e Computação/IA e Sociedade

ICC103

EMPREENDEDORISMO EM INFORMÁTICA

60

4.4.0.0

Propriedade Intelectual e Ética em IA

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

Explicabilidade e Confiança em IA

ICC262

IA NEURO-SIMBÓLICA

60

4.4.0.0

ICC257

APRENDIZADO DE MÁQUINA II

60

3.2.1.0

 

4. Conteúdos Curriculares do Eixo 3: Representação de Conhecimento e Raciocínio

TÓPICOS

SIGLA

DISCIPLINAS DESDOBRADAS

CH

CR

Lógica Proposicional e de Primeira Ordem

ICC120

MATEMÁTICA DISCRETA

60

4.4.0.0

Lógica Não-Monotônica, Modal e de Descrições

ICC258

REPRESENTAÇÃO DO CONHECIMENTO E RACIOCÍNIO

60

4.4.0.0

ICC262

IA NEURO-SIMBÓLICA

60

4.4.0.0

Lógica Difusa

ICC262

IA NEURO-SIMBÓLICA

60

4.4.0.0

Teoria dos Jogos e Teoria da Utilidade

ICC261

SISTEMAS MULTIAGENTES

60

4.4.0.0

Agentes Inteligentes (BDI, Cognitivos, Deliberativos)

ICC261

SISTEMAS MULTIAGENTES

60

4.4.0.0

Ontologias e Web Semântica

ICC258

REPRESENTAÇÃO DO CONHECIMENTO E RACIOCÍNIO

60

4.4.0.0

Representação baseada em Espaço de Estados

ICC260

FUNDAMENTOS DE INTELIGÊNCIA ARTIFICIAL

60

4.4.0.0

ICC258

REPRESENTAÇÃO DO CONHECIMENTO E RACIOCÍNIO

60

4.4.0.0

Algoritmos de Busca (informada e não-informada)

ICC260

FUNDAMENTOS DE INTELIGÊNCIA ARTIFICIAL

60

4.4.0.0

Resolução de Restrições

ICC260

FUNDAMENTOS DE INTELIGÊNCIA ARTIFICIAL

60

4.4.0.0

Planejamento Automatizado

ICC260

FUNDAMENTOS DE INTELIGÊNCIA ARTIFICIAL

60

4.4.0.0

Raciocínio Probabilístico

ICC258

REPRESENTAÇÃO DO CONHECIMENTO E RACIOCÍNIO

60

4.4.0.0

Inferência Bayesiana

ICC258

REPRESENTAÇÃO DO CONHECIMENTO E RACIOCÍNIO

60

4.4.0.0

Cadeias e Processos de Markov

IEE001

PROBABILIDADE E ESTATÍSTICA

60

4.4.0.0

SAT-solvers

ICC258

REPRESENTAÇÃO DO CONHECIMENTO E RACIOCÍNIO

60

4.4.0.0

Planejamento Estocástico

ICC260

FUNDAMENTOS DE INTELIGÊNCIA ARTIFICIAL

60

4.4.0.0

Raciocínio Temporal (LTL, CTL)

ICC258

REPRESENTAÇÃO DO CONHECIMENTO E RACIOCÍNIO

60

4.4.0.0

Análise de Algoritmos

ICC006

PROJETO E ANÁLISE DE ALGORITMOS

60

4.4.0.0

Computação e Sociedade (Ética, Sustentabilidade)

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

 

5. Conteúdos Curriculares do Eixo 4: Ciência de Dados

TÓPICOS

SIGLA

DISCIPLINAS DESDOBRADAS

CH

CR

Alfabetização em Dados

ICC253

CIÊNCIA DE DADOS

60

3.2.1.0

Estatística e Probabilidade

IEE001

PROBABILIDADE E ESTATÍSTICA

60

4.4.0.0

Banco de Dados

ICC205

INTRODUÇÃO A BANCOS DE DADOS

60

4.4.0.0

Mineração de Dados

ICC253

CIÊNCIA DE DADOS

60

3.2.1.0

Grandes Modelos de Linguagem (LLMs)

ICC254

PROCESSAMENTO DE LINGUAGEM NATURAL

60

4.4.0.0

Técnicas de Visualização de Dados

ICC253

CIÊNCIA DE DADOS

60

3.2.1.0

Preprocessamento de Dados

ICC253

CIÊNCIA DE DADOS

60

3.2.1.0

Integração e Recuperação de Informação

ICC209

RECUPERAÇÃO DE INFORMAÇÃO

60

4.4.0.0

Sistemas Multimídia

ICC259

IA MULTIMODAL

60

4.4.0.0

Privacidade de Dados

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

Legislação Vigente (LGPD)

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

Ética e Segurança em IA

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

 

6. Conteúdos Curriculares do Eixo 5: Aprendizado de Máquina

TÓPICOS

SIGLA

DISCIPLINAS DESDOBRADAS

CH

CR

Paradigmas de AM (Supervisionado, Não-Supervisionado, Reforço)

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Classificação, Regressão e Agrupamento

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Descida de Gradiente

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Treinamento e Teste de Modelos

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Árvores de Decisão, Naive Bayes, Regressão Linear e Logística

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Redes Neurais (Simples e Profundas)

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

SVMs

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Redes Bayesianas

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Ensembles de Modelos

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Processos de Decisão Markovianos

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Métodos de Monte Carlo e Diferença Temporal

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Aprendizado por Reforço Profundo

ICC257

APRENDIZADO DE MÁQUINA II

60

3.2.1.0

Métricas de Avaliação (precisão, recall, F1, etc.)

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Ética e Legislação no uso de AM

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

Privacidade de Dados

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

 

7. Conteúdos Curriculares do Eixo 6: Percepção e Atuação (Visão Computacional, Processamento de Linguagem Natural, Robótica)

TÓPICOS

SIGLA

DISCIPLINAS DESDOBRADAS

CH

CR

Transformada de Fourier

ICC259

IA MULTIMODAL

60

4.4.0.0

Modelos HMM e GMM

ICC257

APRENDIZADO DE MÁQUINA II

60

3.2.1.0

Redes Convolucionais e Recorrentes

ICC256

APRENDIZADO DE MÁQUINA I

60

3.2.1.0

Processamento de Linguagem Natural (PLN)

ICC254

PROCESSAMENTO DE LINGUAGEM NATURAL

60

4.4.0.0

N-grams, Modelos de Espaço Vetorial, Técnicas de Sumarização

ICC254

PROCESSAMENTO DE LINGUAGEM NATURAL

60

4.4.0.0

Tradução de Linguagens

ICC254

PROCESSAMENTO DE LINGUAGEM NATURAL

60

4.4.0.0

Modelos de Linguagem Generativos (LLMs)

ICC254

PROCESSAMENTO DE LINGUAGEM NATURAL

60

4.4.0.0

Robótica: Sensores, Atuadores, Navegação e Planejamento

ICC263

ROBÓTICA

60

4.4.0.0

Coordenação de Multi-robôs

ICC261

SISTEMAS MULTIAGENTES

60

4.4.0.0

ICC263

ROBÓTICA

60

4.4.0.0

Interação Humano-Robô

ICC263

ROBÓTICA

60

4.4.0.0

Controle Baseado em Visão

ICC259

IA MULTIMODAL

60

4.4.0.0

Uso Ético e Responsável da Percepção Computacional

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

 

8. Conteúdos Curriculares do Eixo 7: Aperfeiçoamento Pessoal e Profissional

TÓPICOS

SIGLA

DISCIPLINAS DESDOBRADAS

CH

CR

Gestão de Tempo

ICC114

COMPUTAÇÃO E UNIVERSIDADE

60

4.4.0.0

Autorregulação da Aprendizagem

ICC114

COMPUTAÇÃO E UNIVERSIDADE

60

4.4.0.0

Comunicação Profissional

ICC112

TEXTOS ACADÊMICOS EM COMPUTAÇÃO

60

3.2.1.0

Inglês Técnico

ICC112

TEXTOS ACADÊMICOS EM COMPUTAÇÃO

60

3.2.1.0

Metodologia Científica

ICC107

METODOLOGIA CIENTÍFICA EM COMPUTAÇÃO

60

4.4.0.0

Aprendizagem Ativa e Baseada em Projetos

ICC112

TEXTOS ACADÊMICOS EM COMPUTAÇÃO

60

3.2.1.0

Inovação e Empreendedorismo

ICC103

EMPREENDEDORISMO EM INFORMÁTICA

60

4.4.0.0

Ética em IA e Propriedade Intelectual

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

Sociedade e Sustentabilidade em IA

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE

60

4.4.0.0

 

 

ANEXO II

ESTRUTURA CURRICULAR - DISCIPLINAS OBRIGATÓRIAS POR PERÍODOS

(NÚCLEO BÁSICO - FORMACÃO COMUM - ABI)

PER.

CÓD.

NOME DA DISCIPLINA

CRED.

CH

PRÉ-

REQ.

T

P

E

TOTAL

1

ICC001

INTRODUÇÃO À COMPUTAÇÃO

5.4.1.0

60

30

0

90

ICC112

TEXTOS ACADÊMICOS EM COMPUTAÇÃO 

3.2.1.0

30

30

0

60

IEM075

CÁLCULO DIFERENCIAL E INTEGRAL I

4.4.0.0

60

0

0

60

ICC120

MATEMÁTICA DISCRETA

4.4.0.0

60

0

0

60

ICC114

COMPUTAÇÃO E UNIVERSIDADE 

4.4.0.0

60

0

0

60

SUBTOTAL PERÍODO 1

20.18.2.0

270

60

0

330

 

2

ICC040

LINGUAGENS FORMAIS E AUTÔMATOS

4.4.0.0

60

0

0

60

ICC120

ICC002

ALGORITMOS E ESTRUTURAS DE DADOS I

5.4.1.0

60

30

0

90

ICC001

IEM076

CÁLCULO DIFERENCIAL E INTEGRAL II

4.4.0.0

60

0

0

60

IEM075

IEM012

ÁLGEBRA LINEAR I

4.4.0.0

60

0

0

60

ICC260

FUNDAMENTOS DE INTELIGÊNCIA ARTIFICIAL 

4.4.0.0

60

0

0

60

ICC120

ICC107

METODOLOGIA CIENTÍFICA EM COMPUTAÇÃO 

4.4.0.0

60

0

0

60

SUBTOTAL PERÍODO 2

25.24.1.0

360

30

0

390

 

3

ICC066

INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

4.4.0.0

60

0

0

60

ICC003

ALGORITMOS E ESTRUTURAS DE DADOS II

5.4.1.0

60

30

0

90

ICC002

ICC430

ENGENHARIA DE SOFTWARE I 

4.4.0.0

60

0

0

60

ICC001

IEM022

ÁLGEBRA LINEAR II

4.4.0.0

60

0

0

60

IEM012

IEE001

PROBABILIDADE E ESTATÍSTICA

4.4.0.0

60

0

0

60

SUBTOTAL PERÍODO 3

21.20.1.0

300

30

0

330

 

4

ICC253

CIÊNCIA DE DADOS 

3.2.1.0

30

30

0

60

ICC002

ICC027

PROGRAMAÇÃO ORIENTADA A OBJETOS 

3.2.1.0

30

30

0

60

ICC002

ICC431

ENGENHARIA DE SOFTWARE II 

4.4.0.0

60

0

0

60

ICC430

ICC065

SISTEMAS OPERACIONAIS I

4.4.0.0

60

0

0

60

ICC066

ICC205

INTRODUÇÃO A BANCOS DE DADOS

4.4.0.0

60

0

0

60

ICC003

SUBTOTAL PERÍODO 4

18.16.2.0

240

60

0

300

 

SUBTOTAL CICLO BÁSICO

84.78.6.0

1170

180

0

1350

 

 

(NÚCLEO ESPECÍFICO - FORMACÃO ESPECÍFICA DO CURSO)

PER.

CÓD.

NOME DA DISCIPLINA

CRED.

CH

PRÉ-

REQ.

T

P

E

TOTAL

5

ICC256

APRENDIZADO DE MÁQUINA I 

3.2.1.0

30

30

0

60

ICC253

ICC258

REPRESENTAÇÃO DO CONHECIMENTO E RACIOCÍNIO 

4.4.0.0

60

0

0

60

ICC260

ICC209

RECUPERAÇÃO DE INFORMAÇÃO 

4.4.0.0

60

0

0

60

ICC003

ICC062

ARQUITETURA DE COMPUTADORES

4.4.0.0

60

0

0

60

ICC061

ICC208

ENGENHARIA DE DADOS

4.4.0.0

60

0

0

60

ICC205

SUBTOTAL PERÍODO 5

19.18.1.0

270

30

0

300

 

6

ICC257

APRENDIZADO DE MÁQUINA II

3.2.1.0

30

30

0

60

ICC253

ICC006

PROJETO E ANÁLISE DE ALGORITMOS

4.4.0.0

60

0

0

60

ICC003

ICC254

PROCESSAMENTO DE LINGUAGEM NATURAL

4.4.0.0

60

0

0

60

ICC256

ICC259

IA MULTIMODAL

4.4.0.0

60

0

0

60

ICC256

ICC261

SISTEMAS MULTIAGENTES

4.4.0.0

60

0

0

60

ICC260

SUBTOTAL PERÍODO 6

19.18.1.0

270

30

0

300

 

7

ICC262

IA NEURO-SIMBÓLICA 

4.4.0.0

60

0

0

60

ICC260

ICC263

ROBÓTICA 

4.4.0.0

60

0

0

60

ICC027

ICC404

GERÊNCIA DE PROJETOS

4.4.0.0

60

0

0

60

ICC431

SUBTOTAL PERÍODO 7

12.12.0.0

180

0

0

180

 

8

ICC106

COMPUTAÇÃO, ÉTICA E SOCIEDADE 

4.4.0.0

60

0

0

60

ICC103

EMPREENDEDORISMO EM INFORMÁTICA

4.4.0.0

60

0

0

60

ICC150

TRABALHO DE CONCLUSÃO DE CURSO

5.0.5.0

0

150

0

150

ICC107, ICC431

SUBTOTAL PERÍODO 8

13.8.5.0

120

150

0

270

 

SUBTOTAL CICLO ESPECÍFICO BIA

63.56.7.0

840

210

0

1050

 

 

 

ESTRUTURA CURRICULAR - DISCIPLINAS ELETIVAS

PER.

CÓD.

NOME DA DISCIPLINA

CRED.

CH

PRÉ-

REQ.

T

P

E

TOTAL

2

IHE130

INGLÊS INSTRUMENTAL I

4.4.0.0

60

0

0

60

2

IEC082

CÁLCULO NUMÉRICO

4.4.0.0

60

0

0

60

IEM075

4

ICC004

ALGORITMOS E ESTRUTURAS DE DADOS AVANÇADOS

4.4.0.0

60

0

0

60

2

ICC021

PRÁTICA EM PROGRAMAÇÃO I

2.2.0.0

30

0

0

30

ICC001

3

ICC022

PRÁTICA EM PROGRAMAÇÃO II

2.2.0.0

30

0

0

30

ICC001

4

ICC023

PRÁTICA EM PROGRAMAÇÃO III

2.2.0.0

30

0

0

30

ICC001

4

ICC024

PRÁTICA EM PROGRAMAÇÃO IV

2.2.0.0

30

0

0

30

ICC001

3

ICC030

TÓPICOS ESPECIAIS EM PROGRAMAÇÃO I

4.4.0.0

60

0

0

60

ICC002

3

ICC031

TÓPICOS ESPECIAIS EM PROGRAMAÇÃO II

4.4.0.0

60

0

0

60

ICC002

3

ICC032

TÓPICOS ESPECIAIS EM PROGRAMAÇÃO III

4.4.0.0

60

0

0

60

ICC002

4

ICC033

TÓPICOS ESPECIAIS EM PROGRAMAÇÃO IV

4.4.0.0

60

0

0

60

ICC002

4

ICC034

TÓPICOS ESPECIAIS EM PROGRAMAÇÃO V

4.4.0.0

60

0

0

60

ICC002

4

ICC035

TÓPICOS ESPECIAIS EM PROGRAMAÇÃO VI

4.4.0.0

60

0

0

60

ICC002

2

ICC036

PROGRAMAÇÃO COMPETITIVA I

4.4.0.0

60

0

0

60

3

ICC037

PROGRAMAÇÃO COMPETITIVA II

4.4.0.0

60

0

0

60

4

ICC123

TÓPICOS ESPECIAIS EM ESTATÍSTICA APLICADA À COMPUTAÇÃO

4.4.0.0

60

0

0

60

1

ICC130

EXPERIÊNCIA CRIATIVA I

4.4.0.0

60

0

0

60

2

ICC131

EXPERIÊNCIA CRIATIVA II

4.4.0.0

60

0

0

60

2

ICC180

TÓPICOS ESPECIAIS EM CIÊNCIA DA COMPUTAÇÃO I

4.4.0.0

60

0

0

60

2

ICC181

TÓPICOS ESPECIAIS EM CIÊNCIA DA COMPUTAÇÃO II

4.4.0.0

60

0

0

60

2

ICC182

TÓPICOS AVANÇADOS EM CIÊNCIA DA COMPUTAÇÃO I

4.4.0.0

60

0

0

60

3

ICC183

TÓPICOS AVANÇADOS EM CIÊNCIA DA COMPUTAÇÃO II

4.4.0.0

60

0

0

60

3

ICC184

TÓPICOS ESPECIAIS EM CIÊNCIA DA COMPUTAÇÃO III

4.4.0.0

60

0

0

60

3

ICC185

TÓPICOS ESPECIAIS EM CIÊNCIA DA COMPUTAÇÃO IV

4.4.0.0

60

0

0

60

4

ICC186

TÓPICOS AVANÇADOS EM CIÊNCIA DA COMPUTAÇÃO III

4.4.0.0

60

0

0

60

4

ICC187

TÓPICOS AVANÇADOS EM CIÊNCIA DA COMPUTAÇÃO IV

4.4.0.0

60

0

0

60

3

ICC454

DESENVOLVIMENTO DE JOGOS DIGITAIS

4.4.0.0

60

0

0

60

ICC002

4

ICC455

DESENVOLVIMENTO DE JOGOS PARA DISPOSITIVOS MÓVEIS

4.4.0.0

60

0

0

60

ICC002

4

ICC503

VERIFICAÇÃO FORMAL DE SOFTWARE E SISTEMAS

4.4.0.0

60

0

0

60

4

ICC504

TÉCNICAS PARA VERIFICAÇÃO, SÍNTESE E TESTE DE SOFTWARE

4.4.0.0

60

0

0

60

4

ICC550

TÓPICOS ESPECIAIS EM PESQUISA EM EDUCAÇÃO EM COMPUTAÇÃO I

4.4.0.0

60

0

0

60

4

ICC551

TÓPICOS ESPECIAIS EM PESQUISA EM EDUCAÇÃO EM COMPUTAÇÃO II

4.4.0.0

60

0

0

60

 

ESTRUTURA CURRICULAR - DISCIPLINAS OPTATIVAS

CÓD.

NOME DA DISCIPLINA

CRED.

CH

PRÉ-

REQ.

T

P

E

TOTAL

IHP123

LÍNGUA BRASILEIRA DE SINAIS B

4.4.0.0

60

0

0

60

ICC900

INFORMÁTICA INSTRUMENTAL

3.2.1.0

30

30

0

60

ICC205

IEC111

INFORMÁTICA INSTRUMENTAL

3.2.1.0

30

30

0

60

ICC205

ICC901

INTRODUÇÃO À PROGRAMAÇÃO DE COMPUTADORES

3.2.1.0

30

30

0

60

ICC205

IEC037

INTRODUÇÃO À PROGRAMAÇÃO DE COMPUTADORES

3.2.1.0

30

30

0

60

ICC205

IEC081

INTRODUÇÃO À CIÊNCIA DOS COMPUTADORES

4.4.0.0

60

0

0

60

ICC205

ICC903

GERAÇÃO E USO DE BANCO DE DADOS

3.3.0.0

45

0

0

45

ICC205

IEC048

GERAÇÃO E USO DE BANCO DE DADOS

3.3.0.0

45

0

0

45

ICC205

 

ESTRUTURA CURRICULAR - DISCIPLINAS DE EXTENSÃO

PER.

CÓD.

NOME DA DISCIPLINA

CRED.

CH

PRÉ-

REQ.

T

P

E

TOTAL

7

ICC600

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO I

12.0.0.12

0

0

180

180

ICC001

7

ICC601

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO II

12.0.0.12

0

0

180

180

ICC001

7

ICC602

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO III

12.0.0.12

0

0

180

180

ICC001

8

ICC603

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO IV

12.0.0.12

0

0

180

180

8

ICC604

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO V

12.0.0.12

0

0

180

180

8

ICC605

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO VI

12.0.0.12

0

0

180

180

5

ICC606

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO VII

6.0.0.6

0

0

90

90

ICC001

5

ICC607

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO VIII

6.0.0.6

0

0

90

90

ICC001

6

ICC608

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO IX

6.0.0.6

0

0

90

90

ICC001

6

ICC609

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO X

6.0.0.6

0

0

90

90

ICC001

7

ICC610

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO XI

6.0.0.6

0

0

90

90

7

ICC611

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO XII

6.0.0.6

0

0

90

90

8

ICC612

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO XIII

6.0.0.6

0

0

90

90

8

ICC613

PRÁTICAS EXTENSIONISTAS EM COMPUTAÇÃO XIV

6.0.0.6

0

0

90

90

 

 

SUBTOTAL

120.0.0.120

0

0

1800

1800

 

 

ANEXO III

PROGRAMA DE ENSINO DAS DISCIPLINAS OBRIGATÓRIAS

1º PERÍODO - CICLO BÁSICO

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC001

Introdução à Computação

5.4.1.0

60h

30h

0h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

                 

  1. EMENTA

Introdução à Computação e cultura digital. Pensamento computacional: abstração, decomposição, identificação de padrões e construção de algoritmos. Métodos de resolução de problemas, com ênfase na abordagem de George Pólya. Representação e manipulação de dados: variáveis, vetores e matrizes. Estruturas de controle de fluxo: sequência, seleção e repetição. Introdução à linguagem de programação imperativa: sintaxe, tipos de dados e operadores. Modularização, procedimentos, funções e recursão. Conceitos de precisão, eficiência e boas práticas na implementação de algoritmos. Introdução a testes e depuração de programas.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos fundamentais da computação, incluindo métodos de solução de problemas, construção de algoritmos, lógica de programação, estruturas de dados e estruturas de controle. Desenvolver habilidades de pensamento computacional e capacidade de modelar e resolver problemas por meio de algoritmos e programas. Utilizar um ambiente de programação como recurso para construção, teste e reflexão sobre as soluções produzidas.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender a importância da lógica de programação e das estruturas de dados na resolução de problemas. Elaborar algoritmos para resolver problemas computacionais de forma estruturada. Implementar algoritmos utilizando uma linguagem de programação imperativa. Manipular estruturas de dados fundamentais, como variáveis, vetores e matrizes. Utilizar estruturas de controle de fluxo, como sequências, seleções e repetições, para definir o comportamento dos programas. Avaliar a corretude e eficiência de algoritmos e programas desenvolvidos. Desenvolver habilidades de trabalho em equipe e de comunicação técnica.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • DOXSEY, Caleb. Introdução à linguagem Go - Crie programas escaláveis e confiáveis. Novatec. 2016. ISBN: 978-85-7522-489-2.                     

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes. 4ed. Editora Novatec, 2024. ISBN 9788575228869.

  • POLYA, George. A Arte de Resolver Problemas: Um Novo Aspecto do Método Matemático. Rio de Janeiro. Ed. Interciência, 1995. ISBN 9788571931367.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • DONOVAN, Alan A. A.; KERNIGHAN, Brian W. A Linguagem de Programação Go. Novatec. 2017. ISBN: 978-85-7522-546-2

  • HERMAN, Ted. A Functional Start to Computing with Python. Chapman & Hall/CRC Textbooks in Computing, 2013. ISBN 9781466504554.

  • PERES, Fernando Eduardo; FEDELI, Ricardo Daniel; POLLONI, Enrico Giulio Franco. Introdução à Ciência da Computação, 2ª edição. Editora Cengage Learning, 2010. ISBN 9788522108459.

  • PIVA JR., Dilermando; ENGELBRECHT, Angela de Mendonça; NAKAMITI, Gilberto S.; BIANCHI, Francisco. Algoritmos e Programação de Computadores. 2. ed. Rio de Janeiro: GEN LTC, 2019. ISBN 9788535292480.

  • SOARES, Marcio; CONCILIO, Ricardo; GOMES, Marcelo; FURLAN, Marco A. Algoritmos e Lógica de Programação, 2ª edição. Editora Cengage Learning, 2011. ISBN 9788522111299.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC112

Textos Acadêmicos em Computação

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

 

  1. EMENTA

Leitura e compreensão de textos técnicos escritos em português ou inglês na área de Computação. Técnicas de leitura para compreensão geral e específica de textos escritos em inglês: skimming e scanning. Estratégias de leitura crítica e análise de textos acadêmicos escritos em português ou inglês. Mapas conceituais. Citações (diretas, paráfrases). Elaboração de referências bibliográficas. Clareza no texto escrito. Objetividade. Argumentação (conceitos básicos, tipos de argumentos, falhas de argumentação). Estruturação de parágrafos. Elaboração de gráficos e tabelas. Precisão vocabular. Coesão e coerência. Plágio acadêmico. Ferramentas digitais de preparação de documentos por marcação. Ferramentas digitais para tradução e aprimoramento da leitura de textos técnicos.

 

  1. OBJETIVOS GERAIS

Analisar e criticar textos na área de Computação. Decompor as ideias principais de um texto técnico em mapas conceituais. Compor textos argumentativos-dissertativos na área de computação, com clareza e objetividade. Adaptar o tom do texto conforme o tipo de documento, contexto, objetivo e público. Desenvolver linha de raciocínio organizada durante a composição de um texto escrito. Identificar e depurar falhas de argumentação em um texto técnico. Identificar problemas de elaboração de gráficos e tabelas. Diferenciar os tipos de plágio acadêmico e evitá-los. Editar textos básicos em sistemas de preparação de documentos por marcação (por exemplo, LaTeX ou similar).

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais ideias e detalhes em textos técnicos escritos em português e inglês. Praticar técnicas de leitura rápida (skimming) para obter uma visão geral de textos em inglês. Aplicar técnicas de leitura detalhada (scanning) para localizar informações específicas em textos técnicos. Construir mapas conceituais para organizar e sintetizar informações de textos acadêmicos. Diferenciar entre citações diretas e paráfrases, aplicando-as corretamente em textos acadêmicos. Elaborar referências bibliográficas de acordo com normas técnicas (ex.: SBC, APA). Desenvolver clareza e objetividade na escrita de textos técnicos e acadêmicos. Argumentar de forma consistente, utilizando tipos de argumentos e evitando falhas de argumentação. Estruturar parágrafos de forma lógica e coesa, garantindo a progressão de ideias. Criar gráficos e tabelas para apresentar dados de forma clara e precisa. Ampliar o vocabulário técnico em português e inglês, garantindo precisão na escrita. Revisar textos para garantir coesão e coerência, eliminando ambiguidades e inconsistências. Utilizar ferramentas de marcação (ex.: LaTeX) para preparação de documentos acadêmicos. Explorar ferramentas digitais de tradução e aprimoramento de leitura para textos técnicos. Refletir sobre a importância da integridade acadêmica e as consequências do plágio.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • SAUTCHUK, Inez. Perca O Medo De Escrever – Da Frase Ao Texto. 2ed. São Paulo: Saraiva, 2017. ISBN 978-8547218089.

  • WESTON, Anthony. A construção do argumento, 3 ed. São Paulo: Martins Fontes, 2009. ISBN 978-8578270902

  • CARNIELLI, Walter A.; EPSTEIN, Richard L. Pensamento crítico: o poder da lógica e da argumentação. 3. ed. Rideel, 2023. ISBN 978-8533960015

  • SOUZA, Adriana Grade Fiori. Leitura em língua inglesa: uma abordagem instrumental, 2. ed. São Paulo, SP: Disal, 2005. ISBN  9788578440626.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FIGUEIREDO, Luiz Carlos. A Redação pelo Parágrafo. Brasília: UnB, 1995. ISBN 978-8523003814

  • GARCEZ, Lucília Helena do Carmo. Técnica de redação: o que é preciso saber para bem escrever. 4ed. São Paulo: Martins Fontes, 2020. ISBN 978-8580633733

  • SACRINI, Marcus. Introdução à análise argumentativa: teoria e prática. 2. ed. São Paulo: Paulus, 2023. ISBN 978-6555627961

  • RAINBOLT, George W.; DWYER, Sandra L. Critical Thinking: The Art of Argument. 2nd ed. Belmont, CA: Wadsworth Cengage Learning, 2011. ISBN 978-1285197197

  • SOUZA, Graziela Ferreira. Mapas conceituais: estratégias para ensinar e aprender significativamente. 1ª ed. Curitiba: Editora CRV, 2021. ISBN 978-6525117805

  • WAZLAWICK, Raul. Metodologia de pesquisa para ciência da computação. 3. ed. Rio de Janeiro: GEN LTC, 2021. ISBN 978-8595151093

  • THOMPSON, Marco Aurélio. Inglês Instrumental. São Paulo: Saraiva, 2016. E-book. ISBN 9788536516806

  • CRUZ, Décio Torres. Inglês com textos para informática. São Paulo, SP: Disal, 2003. 189 p. ISBN 859017851X.

  • MITTELBACH, Frank; FISCHER, Ulrike. The LATEX Companion. 3. ed. Boston: Addison‑Wesley, 2023. ISBN 978-0138166489

  • The Comprehensive TeX Archive Network (CTAN). Disponível em https://ctan.org/

  • OLIVEIRA, Rodrigo; CAPPELLI, Claudia; OLIVEIRA, Jonice. Gráficos em Linguagem Simples: Orientações para criar gráficos mais fáceis de se entender.  Porto Alegre: Sociedade Brasileira de Computação, 2022. ISBN 9788576695455 (e-book). Disponível em: https://doi.org/10.5753/sbc.12145.5

  • SILVA, Alícia Victória Tamer da et al. English from zero [recurso eletrônico]: book 1. Organização de Tatiana Belmonte dos Santos Rodrigues e Edith Santos Corrêa. Manaus/AM: EDUA, 2021. Disponível em: https://bit.ly/3vqqu16

  • SILVA, Alícia Victória Tamer da et al. English from zero [recurso eletrônico]: book 2. Organização de Tatiana Belmonte dos Santos Rodrigues e Edith Santos Corrêa. Manaus/AM: EDUA, 2021. Disponível em: https://bit.ly/3hT9hcR

  • SILVA, Alícia Victória Tamer da et al. English from zero [recurso eletrônico]: book 3. Organização de Tatiana Belmonte dos Santos Rodrigues e Edith Santos Corrêa. Manaus/AM: EDUA, 2021. Disponível em: https://bit.ly/3g4uWwj

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC114

Computação e Universidade

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

      

  1. EMENTA

Apresentação dos cursos de graduação na área de Computação: Ciência da Computação, Engenharia de Software, Inteligência Artificial e Tecnologia da Informação. Áreas de formação e de atuação profissional em Computação. Desenvolvimento histórico da Computação e suas consequências tecnológicas, sociais e econômicas. Descobertas e invenções que representaram saltos tecnológicos. Currículos, disciplinas obrigatórias, eletivas e optativas, e demais componentes curriculares nos cursos Bacharelado em Computação. Computação e Sociedade: direitos de populações sub-representadas (mulheres, pessoas negras e afrodescendentes, povos originários, pessoas LGBTQIAPN+, pessoas com deficiência, imigrantes e refugiados, pessoas de comunidades rurais ou remotas, entre outras); impacto dos sistemas computacionais nas mudanças climáticas, na biodiversidade e na segurança alimentar e nutricional; vieses algorítmicos e diversidade étnico-racial e de gênero.

 

  1. OBJETIVOS GERAIS

Compreender a estrutura e o propósito dos cursos de graduação na área de Computação. Reconhecer o desenvolvimento histórico da Computação e seu impacto na sociedade. Refletir sobre os desafios contemporâneos da Computação, incluindo questões éticas, sociais e ambientais. Identificar as oportunidades e os desafios da carreira profissional em Computação.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as diferenças entre os cursos de Ciência da Computação, Engenharia de Software, Inteligência Artificial e Tecnologia da Informação. Explorar as áreas de formação e atuação profissional em Computação, incluindo tendências do mercado e oportunidades de carreira. Reconhecer os marcos históricos e as invenções que transformaram a Computação. Analisar os componentes curriculares dos cursos de Bacharelado em Computação e sua relevância para a formação profissional. Discutir o impacto da Computação nos direitos de populações sub-representadas. Avaliar as consequências ambientais dos sistemas computacionais. Refletir sobre os vieses algorítmicos e sua relação com a diversidade étnico-racial e de gênero. Promover a compreensão das competências técnicas e comportamentais valorizadas no mercado de trabalho em Computação.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FOROUZAN, Behrouz; MOSHARRAF, Firouz. Fundamentos da Ciência da Computação, tradução da 2ª edição internacional. Editora Cengage Learning, 2012. ISBN 9788522110537.

  • BROOKSHEAR, J. Glenn. Ciência da Computação: Uma Visão Abrangente, 11ª Edição. Editora: Bookman, 2013. ISBN: 9788582600306.

  • Dale, N. B.; Lewis, J. Ciência da computação. Rio de Janeiro: LTC Ed., 2011. ISBN: 9788521617419.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • HELLER, Daniel. Construindo uma Carreira em Software: Um guia completo para ter sucesso no mercado de software. São Paulo: Novatec, 2021. ISBN 978-65-86057-69-0.

  • ZIMMERMAN, Chris. As Regras da Programação: Como criar códigos melhores. São Paulo: Novatec, 2023. ISBN: 978-85-7522-854-8

  • OLIVEIRA, William. Navegando no universo da programação: Conselhos para aproveitar e contribuir para a área tech. São Paulo: Casa do Código, 2022. ISBN 978-85-5519-308-8.

  • OLIVEIRA, Beatriz; CARVALHO, Mariana. Mulheres em Tecnologia: Como a diversidade e inclusão vão mudar o jogo nas empresas e na sociedade. São Paulo: Casa do Código, 2024. ISBN 978-85-5519-369-9

  • HUNT, Andy. Pensamento e aprendizado pragmático: refatore seu cérebro. São Paulo: Casa do Código, 2019. ISBN 978-85-7254-021-6.

  • SAKATA, André Guimarães. Cultura humanizada no meio tech: Estratégias para pessoas e organizações construírem ambientes mais saudáveis. São Paulo: Casa do Código, 2023. ISBN 978-85-5519-323-1.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC120

Matemática Discreta

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

 

  1. EMENTA

Conjuntos, Contagem/Enumeração e Análise Combinatória; Relações e Funções; Funções Recursivas e suas fórmulas fechadas; Indução Matemática; Introdução à Lógica Formal; Lógica Proposicional; Lógica de Predicados; Técnicas de Demonstração; Introdução a Grafos.

 

  1. OBJETIVOS GERAIS

Reconhecer estruturas matemáticas em sistemas discretos. Descrever e representar problemas discretos utilizando notações matemáticas formais. Formalizar uma solução para problemas discretos de forma sequencial e precisa. Provar propriedades de estruturas discretas.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar conjuntos contáveis e quais ferramentas aplicar para determinar a cardinalidade dos conjuntos finitos e infinitos. Identificar e diferenciar relações e funções matemáticas e problemas modelados por esses formalismos. Compreender e aplicar os conceitos de recursão e Indução Matemática no contexto de computação e matemática. Formalizar estruturas/expressões lógicas utilizando a Lógica Proposicional e a Lógica de Predicados. Demonstrar formalmente propriedades matemáticas sobre conjuntos discretos, em particular, conjuntos enumeráveis. Compreender o conceito de grafos e sua conexão com relações matemáticas, sendo capaz de modelar problemas reais com esse formalismo. Aplicar, combinar e estender o conhecimento adquirido de forma criativa e personalizada para resolução de problemas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • GERSTING, Judith L. Fundamentos Matemáticos para a Ciência da Computação: um Tratamento Moderno de Matemática Discreta, 7a. edição. Livros Técnicos e Científicos, 2016. ISBN-13: 978-8521632597.

  • LIPSCHUTZ, Seymour; LIPSON, Marc. Matemática Discreta, 3ª edição. Editora Bookman, 2013. ISBN13 :9788565837736.

  • STEIN, Clifford; DRYSDALE, Robert; BOGART, Kenneth. Matemática Discreta para Ciência da Computação, 1a edição. Pearson, 2015.

  • ROSEN, Kenneth H. Matemática Discreta e suas Aplicações, 6ª edição. Editora McGraw Hill – Artmed, 2008. ISBN-13: 9788577260362.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • LIPSCHUTZ, Seymour & LIPSON, Marc. Schaum's Outline of Discrete Mathematics, 4th edition. McGraw-Hill, 2021. ISBN-13: 978-1264258802.

  • SCHEINERMAN, Edward R. Matemática Discreta: uma Introdução. Tradução da 2ª edição americana. Cengage Learning, 2010. ISBN-13: 978-8522107964.

  • HUNTER, David J. Fundamentos da Matemática Discreta. Editora LTC, 2011. ISBN-13: 9788521618102.

  • MENEZES, Paulo Blauth. Aprendendo Matemática Discreta com Exercícios. Editora Bookman, 2009. ISBN: 9788577804719.

  • GRAHAM, Ronald; KNUTH, Donald; PATASHNIK, O. Matemática Concreta: Fundamentos para a Ciência da Computação, 2ª Edição. Editora LTC, 1995. ISBN 9788521610403 (clássica).

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEM075

Cálculo Diferencial e Integral I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

                 

  1. EMENTA

Funções. Gráficos e Curvas. Limite e Continuidade. A Derivada. A Regra da Cadeia. O Teorema do Valor Médio. Funções Inversas. Integração. Teorema. Fundamental do Cálculo. Integrais Impróprias. Técnicas de Integração. Aplicação de Integrais.

 

  1. OBJETIVOS GERAIS

Estudar o Cálculo Diferencial e Integral para uma variável. Estudar o teorema fundamental do Cálculo Diferencial e Integral.

 

  1. OBJETIVOS ESPECÍFICOS

Reconhecer as consequências e obter contra-exemplos de cada teorema. Estudar Aplicações do Cálculo.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • ÁVILA, G. S. S. Cálculo. 7. ed. Rio de Janeiro: Livro Técnico e Científico, 2003. v. 1.

  • GUIDORIZZI, H. L. Um Curso de Cálculo. 5. ed. Rio de Janeiro: Livro Técnico e Científico, 2001. v. 1.

  • SWOKOWSKI, E. W. Cálculo com Geometria Analítica. 2. ed. São Paulo: Makron Books, 2000.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • LEITHOLD, L. O Cálculo com Geometria Analítica. 3. ed. São Paulo: Harbra, 2002. v. 1.

  • SANTOS, A. R.; BIANCHINI, W. Aprendendo Cálculo com Maple: Cálculo de Uma Variável. 1. ed. Rio de Janeiro: LTC, 2002.

  • STEWART, J. Cálculo. 6. ed. São Paulo: Cengage Learning, 200?. v. 1.

  • ANTON, H.; BIVENS, I.; DAVIS, S. Cálculo. 8. ed. São Paulo: Harbra, 200?. v. 1.

  • APOSTOL, T. M. Calculus. 2. ed. New York: Wiley, 200?. v. 1: One-variable calculus with an introduction to linear algebra.

 

 

 

2º PERÍODO - CICLO BÁSICO

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC002

Algoritmos e Estruturas de Dados I

5.4.1.0

60h

30h

0h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC001 Introdução à Computação

Engenharia de Software

Obrigatória

ICC001 Introdução à Computação

Inteligência Artificial

Obrigatória

ICC001 Introdução à Computação

Tecnologia da Informação

Obrigatória

ICC001 Introdução à Computação

 

  1. EMENTA

Estruturas elementares de dados. Operadores. Revisão de expressões. Revisão de instruções condicionais, incondicionais e de repetição. Revisão de subprogramas: funções, procedimentos. Escopo e visibilidade de variáveis. Recursão. Tipos definidos pelo programador. Estruturas compostas de dados: vetores, matrizes e registros. Manipulação básica de arquivos. Estruturas dinâmicas de dados: listas, filas e pilhas. Tipos abstratos de dados. Algoritmos de busca sequencial e busca binária. Algoritmos de ordenação por seleção, por inserção; quicksort e mergesort. Depuração por casos de teste e rastreamento de algoritmos.

 

  1. OBJETIVOS GERAIS

Aplicar o conceito de algoritmo e linguagem de programação de alto nível. Rastrear e testar algoritmos. Criar soluções algorítmicas e programas que manipulam estruturas de dados básicas armazenadas em memória principal. Diferenciar e implementar algoritmos importantes relacionados a ordenação e busca em vetores. Implementar operações básicas em estruturas de dados.

 

  1. OBJETIVOS ESPECÍFICOS

Revisar os conceitos básicos de operadores, expressões e instruções condicionais e de repetição. Aplicar os conceitos fundamentais de estruturas de dados, como vetores, matrizes, registros e listas, na criação de soluções algorítmicas que manipulem dados armazenados em memória principal. Implementar e testar algoritmos básicos de busca, como a busca sequencial e a busca binária, em diferentes tipos de dados, com foco em eficiência e correção. Desenvolver algoritmos de ordenação, incluindo os métodos por seleção, por inserção, quicksort e mergesort, analisando suas complexidades e aplicabilidade em diferentes contextos. Implementar operações básicas em estruturas dinâmicas de dados, como pilhas, filas e listas, e compreender a importância dessas estruturas em algoritmos eficientes. Conhecer e aplicar os conceitos de rastreamento, depuração e teste algoritmos, a fim de garantir a correção e eficiência dos programas desenvolvidos. Conhecer e aplicar o conceito de recursividade, entendendo os custos envolvidos na implementação de algoritmos recursivos.

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN 978-85-352-3699-6.

  • BACKES,  André Ricardo. Algoritmos e Estruturas de Dados em Linguagem C. Editora‎ LTC; 1ª edição, 2022. ISBN‏‎ 9788521638308.

  • CELES, Waldemar; CERQUEIRA, Renato; RANGEL, José Lucas. Introdução a Estruturas de Dados: com Técnicas de Programação em C. Editora Campus, 2008. ISBN 9788535212280.

  • ZIVIANI, Nivio. Projeto de Algoritmos com Implementação em Pascal e C. Cengage Learning, 2010. ISBN 9788522110506.

  • FEOFILOFF, Paulo. Algoritmos em Linguagem C. Campus, 2008. ISBN 9788535232493.

  • SEDGEWICK, Robert; WAYNE, Kevin. Algorithms. 4ed. Boston: Addison-Wesley, 2011.  ISBN 978-0321573513

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028

  • DEITEL, Harvey M. & DEITEL, Paul J. C: Como Programar, 6ª edição. Pearson, 2011. ISBN ‎978-8576059349

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 2ª edição. Editora Novatec, 2014. ISBN 978-8575224083

  • EDELWEISS, Nina; GALANTE, R. Estruturas de Dados, 1ª ed. São Paulo: Bookman, 2009. ISBN: 978-8577804504

  • PIVA JUNIOR, Dilermando; BIANCHI, Francisco; ENGELBRECHT, Angela de Mendonça; NAKAMITI, Gilberto Shigueo. Algoritmos e Programação de Computadores, Campus, 2012. ISBN 978-8535250312

  • PIVA JUNIOR, Dilermando; NAKAMITI, Gilberto Shigueo; FREITAS, Ricardo Luís de; ENGELBRECHT, Angela de Mendonça; BIANCHI, Francisco. Estrutura de Dados e Técnicas de Programação. Editora Campus, 2014. ISBN: 978-8535274370

  • KING, K. N. C Programming: A Modern Approach, 2ª edição. W W Norton Company, 2008. ISBN 978-0393979503.

  • HANLY, Jeri R.; KOFFMAN, Elliot B. Problem Solving and Program Design in C. 8th Edition. Addison Wesley, 2015. ISBN 978-0134014890

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC040

Linguagens Formais e Autômatos

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC120 Matemática Discreta

Engenharia de Software

Obrigatória

ICC120 Matemática Discreta

Inteligência Artificial

Obrigatória

ICC120 Matemática Discreta

Tecnologia da Informação

Obrigatória

ICC120 Matemática Discreta

    

  1. EMENTA

Introdução às Linguagens Formais; Linguagens Regulares, Autômatos Finitos, Gramáticas Regulares, Expressões Regulares e Lema do Bombeamento para Linguagens Regulares; Linguagens Livres de Contexto, Gramáticas Livres de Contexto, Autômatos de Pilha e Lema do Bombeamento para Linguagens Livres de Contexto; Linguagens Sensíveis ao Contexto, Linguagens Enumeráveis, Linguagens Recursivamente Enumeráveis e Máquinas de Turing; Computabilidade e Decidibilidade.

 

  1. OBJETIVOS GERAIS

Compreender conceitos essenciais sobre a estruturação das linguagens e os métodos pelos quais as máquinas as processam. Analisar os diferentes tipos de autômatos e seu papel no reconhecimento de padrões e linguagens formais. Desenvolver habilidades em pensamento lógico e abstrato, aplicáveis em diversas áreas da computação. Avaliar problemas decidíveis e indecidíveis para demonstrar uma compreensão clara dos limites da computabilidade.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os principais conceitos de sistemas formais, incluindo alfabetos, axiomas, regras de inferência e dedução lógica. Conhecer as diferentes classes de linguagens. Representar e manipular linguagens formais por meio de expressões regulares e autômatos finitos. Projetar e implementar gramáticas livres de contexto para modelagem de linguagens formais. Aplicar algoritmos de minimização e conversão entre modelos de autômatos. Usar Máquinas de Turing para avaliar a decidibilidade de problemas, diferenciando problemas decidíveis dos indecidíveis. Relacionar os modelos teóricos da computação com aplicações práticas na construção de linguagens de programação.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RAMOS, Marcus; JOSÉ NETO, João; VEGA, Italo. Linguagens Formais: Teorias e Conceitos. Editora Blucher, 2023. ISBN: 9786555067163.

  • VIEIRA, Newton José. Introdução aos Fundamentos da Computação – Linguagens e Máquinas. Editora Thomson Pioneira, 2006.  ISBN 8522105081.

  • HOPCROFT, John E.; ULLMAN, Jeffrei D.; MOTWANI, Rajeev. Introdução À Teoria de Autômatos, Linguagens e Computação. Editora Campus, 2002. ISBN 8535210725.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MENEZES, Paulo Blauth. Linguagens Formais e Autômatos, 6ª edição. Editora Bookman, 2010. ISBN 8577807657

  • SIPSER, Michael. Introdução à Teoria da Computação. Editora Thomson Pioneira, 2007. ISBN 8522104999.

  • PEDRO NETO, João; COELHO, Francisco. Teoria da Computação – Computabilidade e Complexidade. Editora Escolar Editora / Zamboni, 2010. ISBN 9789725922811.

  • SUDKAMP, Thomas A. Languages and Machines: An Introduction to the Theory of Computer Science, 3rd edition. Addison Wesley, 2005. ISBN 9780321322210.

  • PAPADIMITRIOU, Christos H.; LEWIS, Harry R. Elementos de Teoria da Computação, 2ª edição. Bookman, 2004. ISBN 9788573075342.

  • LINZ, Peter e RODGER, Susan. An Introduction to Formal Languages and Automata. Jones & Bartlett Publishers, 2022. ISBN 978-1284231601.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC107

Metodologia Científica em Computação

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

                 

  1. EMENTA

Bases filosóficas do método científico. Estruturação do trabalho científico: planos e projetos de trabalho. Pesquisa e organização das fontes de referência bibliográfica e citação. Elaboração, revisão, edição e apresentação do trabalho científico. Vieses na pesquisa científica: cognitivos, culturais, ideológicos, colonialidade.

 

  1. OBJETIVOS GERAIS

Compreender os fundamentos da metodologia científica e sua aplicação na Computação. Desenvolver habilidades para planejar, conduzir e apresentar pesquisas acadêmicas. Avaliar criticamente fontes de informação e metodologias de pesquisa. Identificar e refletir sobre vieses cognitivos, culturais e ideológicos na produção do conhecimento científico.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os principais conceitos e bases filosóficas do método científico. Identificar e aplicar diferentes planos e projetos de trabalho na pesquisa em Computação. Pesquisar, organizar e gerenciar fontes bibliográficas utilizando normas de citação adequadas. Elaborar textos científicos estruturados, coerentes e bem fundamentados. Revisar e editar produções acadêmicas com base em critérios de clareza, objetividade e rigor metodológico. Apresentar trabalhos científicos de forma oral e escrita, utilizando técnicas de comunicação eficazes. Analisar e mitigar vieses cognitivos, culturais, ideológicos e de colonialidade na produção e disseminação do conhecimento científico.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WAZLAWICK, Raul. Metodologia de pesquisa para ciência da computação. 3. ed. Rio de Janeiro: GEN LTC, 2021. ISBN 978-8595151093

  • MARCONI, Marina de Andrade; LAKATOS, Eva Maria. Fundamentos de metodologia científica. 8. ed. São Paulo, SP: Atlas, c2017. xx, 346 p. ISBN 9788597010121.

  • MARCONI, Marina de Andrade; LAKATOS, Eva Maria; MEDEIROS, João Bosco. Metodologia do trabalho científico: projetos de pesquisa, pesquisa bibliográfica, teses de doutorado, dissertações de mestrado, trabalhos de conclusão de curso. 8. ed. São Paulo, SP: Atlas, c2017. xiv, 239 p. ISBN 9788597010664 (broch.).

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SAUTCHUK, Inez. Perca O Medo De Escrever – Da Frase Ao Texto. 2ed. São Paulo: Saraiva, 2017. ISBN 978-8547218089.

  • JAFELICE, Luiz Carlos. Educação científica decolonial: incluindo o imensurável, inefável, improvável. São Paulo: Pimenta Cultural, 2023. Livro em PDF. ISBN 978-65-5939-838-6. Disponível em https://doi.org/10.31560/pimentacultural/2023.98386

  • ECO, Umberto. Como se faz uma tese. 25. ed. São Paulo, SP: Perspectiva, 2014. xxii, 207 p. (Estudos. Metodologia; v. 85). ISBN 9788527300797.

  • FACHIN, Odília. Fundamentos de Metodologia: Noções básicas de metodologia. 6. ed. São Paulo: Saraiva, 2017. E-book. ISBN 9788502636545.

  • MATTAR NETO, Joao Augusto. Metodologia Científica na era Digital. 4ed. São Paulo: Saraiva, 2017. E-book. ISBN 9788547220327

  • BASTOS, Cleverson Leite; KELLER, Vicente. Aprendendo a aprender: introdução à metodologia científica. 29. ed. Petrópolis,RJ: Vozes, 2015. 112 p. ISBN 9788532605863 (broch.).

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC260

Fundamentos de Inteligência Artificial

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC120 Matemática Discreta

Engenharia de Software

Obrigatória

ICC120 Matemática Discreta

Inteligência Artificial

Obrigatória

ICC120 Matemática Discreta

Tecnologia da Informação

Obrigatória

ICC120 Matemática Discreta

 

  1. EMENTA

Teoria de processos cognitivos. Evolução do conhecimento filosófico e científico. Heurísticas, resolução de problemas e modelagem. Solução criativa de problemas e modelagem.

Introdução à IA e Fundamentos Cognitivos. IA Simbólica e Agentes Artificiais Cognitivos. Representação do Conhecimento. Raciocínio e Inferência. Planejamento e Métodos de busca como ferramentas de planejamento. Aprendizado em IA Simbólica. Aprendizado em IA Simbólica e tipos de clássicos de aprendizado. Comunicação e Processamento de Linguagem Natural. Limitações da IA Simbólica e Incerteza na resolução de problemas. Abordagens Probabilísticas e Híbridas. IA Confiável, Impactos Éticos e Sociais do uso de IA.

 

  1. OBJETIVOS GERAIS

Compreender a integração das áreas fundamentais da IA e suas evoluções, desde modelos simbólicos até noções conexionistas e probabilísticas, capacitando-os a identificar problemas complexos, desenvolver soluções com técnicas adequadas a cada cenário e reconhecer quando abordagens avançadas são necessárias, visando ao benefício da humanidade com ênfase em responsabilidade ética, impacto social positivo e alinhamento com desafios contemporâneos como sustentabilidade, equidade e transparência.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender os conceitos fundamentais e teorias da IA. Identificar e formular problemas de IA, a reconhecer e definir diferentes tipos de problemas de IA em contextos práticos, desde aprendizado, planejamento até raciocínio automatizado. Selecionar e aplicar os algoritmos adequados para resolução de problemas (busca, planejamento, raciocínio automatizado etc.). Compreender os 4 tipos clássicos de aprendizado de máquina: supervisionado, não supervisionado, semi-supervisionado e por reforço. Aplicar e avaliar modelos de aprendizado de máquina em tarefas simples (indução, classificação, clustering, árvore de decisão, ações simples). Aplicar e avaliar modelos de agentes que aprendem por tentativa e erro e usam IA Generativa em problemas simples e agentes com aprendizado por reforço. Aplicar e avaliar as vantagens e desafios de modelos de IA neuro-simbólica para IA explicável, confiável e compreensível ao ser humano. Contextualizar de forma crítica os impactos e responsabilidade, desde a rigidez de IA simbólica como os vieses de dados e suas consequências em aplicações sociais. Integrar reflexões sobre ética, equidade e regulamentação em todos os projetos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RUSSELL, Stuart; NORVIG, Peter. Inteligência Artificial: Uma Abordagem Moderna. 4ed. Rio de Janeiro: GEN LTC, 2022. ISBN-13: 978-8595158870, ISBN: 9788535237016.

  • LUGER, George. Artificial Intelligence: Principles and Practice. Singapore: Springer, dezembro 2024. ISBN-13: 978-3031574368.

  • GARCEZ, Artur S. D’Avila; LAMB, Luís C.; GABBAY, Dov M. Neural-Symbolic Cognitive Reasoning. 1. ed. Berlin: Springer, 2009. ISBN-13: 978-3642092299.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • HAWKINS, Jeff. A Thousand Brains: A New Theory of Intelligence. New York: Basic Books, 2 mar. 2021. ISBN-13: 978-1541675810.

  • HUTH, Michael; RYAN, Mark. Lógica em Ciência da Computação. 2. ed. Rio de Janeiro: Editora LTC, 2008. ISBN-13: 978-8521616108.

  • GARCEZ, Artur S. D’Avila; LAMB, Luís C.; GABBAY, Dov M. Neural-Symbolic Cognitive Reasoning. 1. ed. Berlin: Springer, 2009. ISBN-13: 978-3642092299.

  • BRATKO, Ivan. Prolog Programming for Artificial Intelligence. 4ed. Boston: Addison-Wesley Educational Publishers Inc, 24 ago. 2011. ISBN-13: 978-0321417466.

  • KOPEC, Danny; SHETTY, S.; PILEGGI, C. Artificial Intelligence and Their Solutions. Dulles: Mercury Learning and Information, 2014. ISBN: 9781938549830.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEM012

Álgebra Linear I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

                 

  1. EMENTA

Matrizes. Cálculo de Determinantes. Sistemas de Equações Lineares. Vetores. Equações da Reta e do Plano. Ângulos. Distância e Intersecções. Geometria Analítica Plana.

 

  1. OBJETIVOS GERAIS

Estabelecer critérios para o tratamento de problemas de natureza vetorial, encontrados em diversas situações práticas como: linearidade, representação de grandeza física, programação linear e outras.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as propriedades e operações básicas de matrizes. Calcular determinantes e compreender sua relevância em sistemas lineares. Resolver sistemas de equações lineares utilizando métodos diretos e iterativos. Representar vetores geometricamente e algebricamente. Determinar equações da reta e do plano no espaço tridimensional. Analisar ângulos, distâncias e interseções entre objetos geométricos. Aplicar conceitos de geometria analítica plana em problemas práticos. Utilizar ferramentas computacionais para visualização e resolução de problemas de Álgebra Linear.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BOLDRINI, J. L. et al. Álgebra Linear. 3. ed. São Paulo: Harbra, 1986.

  • BOULOS, P.; CAMARGO, I. Geometria Analítica: Um Tratamento Vetorial. 3. ed. São Paulo: Pearson Prentice Hall, 2005.

  • STEINBRUCH, A.; WINTERLE, P. Geometria Analítica. 2. ed. São Paulo: Makron Books, 1987.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • LEON, S. J. Álgebra Linear com Aplicações. Rio de Janeiro: LTC, 1998.

  • STRANG, G. Introduction to Linear Algebra. Wellesley: Wellesley-Cambridge Press, 1998.

  • CALLIOLI, C.; DOMINGUES, H. H.; COSTA, R. Álgebra Linear e Aplicações. São Paulo: Atual, 1983.

  • LIMA, E. L. Álgebra Linear. Rio de Janeiro: SBM, 1996. (Coleção Matemática Universitária).

  • LIPSCHUTZ, S. Álgebra Linear. São Paulo: McGraw-Hill, 1971.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEM076

Cálculo Diferencial e Integral II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

IEM075 Cálculo Diferencial e Integral I

Engenharia de Software

Obrigatória

IEM075 Cálculo Diferencial e Integral I

Inteligência Artificial

Obrigatória

IEM075 Cálculo Diferencial e Integral I

Tecnologia da Informação

Obrigatória

IEM075 Cálculo Diferencial e Integral I

                 

  1. EMENTA

Derivação de Vetores. Regra da Cadeia. Funções de Várias Variáveis. Derivada Diferencial. Derivada de Ordem Superior. Máximos e Mínimos. Funções Potenciais e Integrais de Linha. Integrais Múltiplas. Mudança de Variável na Integral. Teorema de Green. Fórmula de Taylor e Séries.

 

  1. OBJETIVOS GERAIS

Ao final do curso o aluno deverá ser capaz de saber conceitos e operações básicas sobre funções de várias variáveis.

 

  1. OBJETIVOS ESPECÍFICOS

Ter noção sobre derivação de vetores, Regra da Cadeia, Séries. Compreender problemas envolvendo máximos e mínimos. Conhecer as derivadas de ordem superiores e derivada direcional. Conhecer as integrais múltiplas assim como sua interpretação geométrica. Resolver problemas envolvendo as integrais múltiplas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • ÁVILA, G. S. S. Cálculo. 7. ed. Rio de Janeiro: Livro Técnico e Científico, 2003. v. 1.

  • GUIDORIZZI, H. L. Um Curso de Cálculo. 5. ed. Rio de Janeiro: LTC, 2001. v. 2.

  • STEWART, J. Cálculo. 5. ed. São Paulo: Thomson, 2006. v. 2.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SIMMONS, G. F. Cálculo com Geometria Analítica. São Paulo: Makron Books, 1987. v. 2.

  • THOMAS, George B.; WEIR, Maurice D.; HASS, Joel. Cálculo. 12. ed. São Paulo, SP: Pearson Education do Brasil, c2013. 2 v. ISBN 9788581430867.

  • LARSON, R.; HOSTETLER, R.; EDWARDS, B. Cálculo. 8. ed. São Paulo: McGrawHill, 2006. v. 2.

  • STEWART, J. Calculus. 5. ed. [S. l.]: Thomson, 2003. International Student Edition.

  • MALTA, Iaci; PESCO, Sinésio; LOPES, Hélio. Cálculo a uma variável, volume 2 : derivada e integral. 2. ed. rev. Rio de Janeiro: Ed. PUC-Rio; São Paulo: Loyola, 2003. v. 2 (309 p.) CD-ROM (Matmídia) ISBN 8515024454.

 

 

 

3º PERÍODO - CICLO BÁSICO

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC003

Algoritmos e Estruturas de Dados II

5.4.1.0

60h

30h

0h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Engenharia de Software

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Inteligência Artificial

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Tecnologia da Informação

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

     

  1. EMENTA

Introdução à complexidade de algoritmos. Heap Binário. Algoritmos de ordenação heapsort, ordenação por contagem (counting sort, pigeonhole sort, bucketsort e radixsort). Tabelas hash por endereçamento aberto e por encadeamento. Árvores binárias de busca, árvores 2-3, árvores rubro-negras, Tries. Manipulação de arquivos: árvores B e ordenação externa. Representação de grafos e algoritmos de caminhamento em grafos. Algoritmo de Dijkstra.

 

  1. OBJETIVOS GERAIS

Descrever, discutir e implementar os algoritmos de ordenação estudados, com especial atenção à eficiência. Descrever formas eficientes de implementar algoritmos. Reconhecer os custos de algoritmos.  Diferenciar os diversos algoritmos e  estruturas de dados de busca e ordenação. Diferenciar as estruturas de vetores, árvores e hash como opções de contêineres de dados. Criar soluções algorítmicas para problemas práticos. Implementar algoritmos e estruturas de dados em memória externa.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender os conceitos de complexidade de algoritmos. Analisar o desempenho de algoritmos utilizando a complexidade temporal e espacial. Implementar e compreender o funcionamento do heap binário e seu uso em algoritmos de ordenação. Desenvolver e aplicar o algoritmo heapsort, avaliando sua eficiência em comparação com outros métodos de ordenação. Implementar algoritmos de ordenação não comparativa, como counting sort, pigeonhole sort, bucketsort e radixsort, e entender suas aplicações e limitações. Compreender as tabelas hash e implementar métodos de endereçamento aberto e encadeamento para resolução de colisões. Analisar a eficiência das operações em tabelas hash, incluindo inserção, busca e remoção de elementos. Estudar árvores binárias de busca e implementar diferentes tipos de árvores balanceadas, como árvores 2-3 e árvores rubro-negras.  Explorar a manipulação de arquivos utilizando árvores B e compreender sua relevância na ordenação externa de dados. Representar grafos em diferentes formas (listas de adjacência, matrizes de adjacência) e entender suas características. Implementar e aplicar algoritmos de caminhamento em grafos, como busca em profundidade (DFS) e busca em largura (BFS).

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN 978-8535236996.

  • BACKES,  André Ricardo. Algoritmos e Estruturas de Dados em Linguagem C. Editora LTC; 1ª edição, 2022. ISBN ‏‎ 978-8521638308.

  • ZIVIANI, Nivio. Projeto de Algoritmos com Implementação em Pascal e C. Cengage Learning, 2010. ISBN 978-8522110506.

  • SEDGEWICK, Robert; WAYNE, Kevin. Algorithms. 4ed. Boston: Addison-Wesley, 2011.  ISBN 978-0321573513.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028

  • DEITEL, Harvey M. & DEITEL, Paul J. C: Como Programar, 6ª edição. Pearson, 2011. ISBN ‎978-8576059349

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 2ª edição. Editora Novatec, 2014.  ISBN 978-8575224083

  • EDELWEISS, Nina; GALANTE, R. Estruturas de Dados, 1ª ed. São Paulo: Bookman, 2009. ISBN: 978-8577804504

  • PIVA JUNIOR, Dilermando; BIANCHI, Francisco; ENGELBRECHT, Angela de Mendonça; NAKAMITI, Gilberto Shigueo. Algoritmos e Programação de Computadores, Campus, 2012. ISBN 978-8535250312

  • PIVA JUNIOR, Dilermando; NAKAMITI, Gilberto Shigueo; FREITAS, Ricardo Luís de; ENGELBRECHT, Angela de Mendonça; BIANCHI, Francisco. Estrutura de Dados e Técnicas de Programação. Editora Campus, 2014.  ISBN 978-8535274370

  • KING, K. N. C Programming: A Modern Approach, 2ª edição. W W Norton Company, 2008. ISBN 978-0393979503.

  • HANLY, Jeri R. & KOFFMAN, Elliot B. Problem Solving and Program Design in C. 8th Edition. Addison Wesley, 2015. ISBN 978-0134014890

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC066

Introdução à Organização de Computadores

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

 

  1. EMENTA

Sistemas de Numeração, Álgebra de Boole. Projeto de Circuitos Combinacionais. Unidade lógica e aritmética (ULA). Latches e Flip-Flops. Análise de Circuitos Sequenciais. Arquitetura de von Neumann.  Hierarquia de Memória. Elementos da CPU e o Caminho de Dados. Noções de desempenho.

 

  1. OBJETIVOS

Fornecer os conceitos elementares dos sistemas de numeração, do funcionamento das principais portas lógicas digitais e sua formalização através da Álgebra Booleana. Fornecer ao aluno conhecimentos básicos sobre Organização de Computadores e sobre as técnicas básicas de projeto de máquinas programáveis. Capacitar o aluno para avaliar e comparar diferentes arquiteturas de computadores. Mostrar como apontar e diagnosticar problemas relacionados ao desempenho de sistemas ou subsistemas, bem como a prescrever soluções para otimizar o uso e desempenho de sistemas computacionais.

 

  1. OBJETIVOS ESPECÍFICOS

Converter números entre sistemas de numeração binária, decimal e hexadecimal. Representar números inteiros e de ponto flutuante utilizando complemento de dois e o padrão IEEE754. Aplicar os postulados e teoremas da álgebra de Boole para simplificar expressões lógicas. Identificar e utilizar formas normais disjuntivas e conjuntivas para representação de funções lógicas. Projetar circuitos lógicos utilizando portas lógicas básicas e combinacionais. Simplificar expressões lógicas utilizando mapas de Karnaugh. Implementar circuitos combinacionais, como multiplexadores, comparadores e somadores. Analisar o funcionamento de circuitos sequenciais, como flip-flops, contadores e registradores. Projetar circuitos básicos de memória. Utilizar ferramentas de simulação e prototipagem para testar e validar circuitos digitais. Colaborar em equipes para realizar projetos práticos em laboratório, desenvolvendo habilidades de trabalho em grupo.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • PATTERSON, D. A.;  HENNESSY, J. L. Organização e Projeto de Computadores. 4ed. Campus, 2014. ISBN 9788535235852.

  • HENNESSY, J.; PATTERSON, D. Arquitetura de Computadores: Uma Abordagem Quantitativa. 5 ed. Campus, 2013. ISBN 9788535261226.

  • NULL, L.; LOBUR, J. Princípios Básicos de Arquitetura e Organização de Computadores. Porto Alegre: Bookman, 2010. ISBN 978857780737.

  • TOKHEIM, R. Fundamentos de Eletrônica Digital. 7 ed. Porto Alegre: Bookman, 2013. v. 1. ISBN 9788580551921.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • TANENBAUM, A. S. Organização Estruturada de Computadores. 6 ed. Prentice Hall Brasil, 2014. ISBN  978-8581435398

  • STALLINGS, W. Arquitetura e Organização de Computadores. 8 ed. Prentice Hall Brasil, 2010. ISBN  978-8543020532

  • SMITH, B. Raspberry Pi Assembly Language. RASPBIAN Beginners: Hands On Guide. Create Space Independent Publishing Platform, 2013. ISBN 9781492135289.

  • BRITTON, R. MIPS Assembly Language Programming. Prentice Hall, 2003. ISBN 978-0131420441

  • SWEETMAN, D. See MIPS Run. 2 ed. Morgan Kaufmann, 2006. ISBN 978-0120884216

  • HARRIS, D.; HARRIS, S. Digital Design and Computer Architecture: ARM edition. Morgan Kaufmann, 2015. ISBN 978-0128000564

  • BRYANT, R. E.; O’HALLAR, D. R. Computer Systems: A Programmer's Perspective. 3 ed. Pearson, 2015. ISBN 9780134092669

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC430

Engenharia de Software I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC001 Introdução à Computação

Engenharia de Software

Obrigatória

ICC001 Introdução à Computação

Inteligência Artificial

Obrigatória

ICC001 Introdução à Computação

Tecnologia da Informação

Obrigatória

ICC001 Introdução à Computação

 

  1. EMENTA

Introdução a Software e Engenharia de Software. Princípios da Engenharia de Software. Qualidades esperadas em Engenharia de Software. Etapas Básicas da Engenharia de Software. Ciclos de vida em Desenvolvimento de Software. Processos de Desenvolvimento de Software – tradicionais e ágeis. Qualidade de Produto e Qualidade de Processo de Software. Engenharia de Requisitos e Tipos de Requisitos. Elicitação, Especificação e Gerência de Requisitos. Design Thinking aplicado à Engenharia de Requisitos. Técnicas de especificação: Histórias de Usuário e Casos de Uso. Medição e Estimativas de Projetos de Software.

 

  1. OBJETIVOS GERAIS

Compreender os fundamentos da Engenharia de Software e sua importância no desenvolvimento de sistemas. Explicar os princípios e qualidades esperadas na Engenharia de Software. Aplicar conceitos básicos de processos de desenvolvimento de software, incluindo abordagens tradicionais e ágeis. Identificar as principais etapas da Engenharia de Software e seus impactos no ciclo de vida do software. Compreender os conceitos e princípios de qualidade de produtos e processos de software. Identificar técnicas de medição de software. Desenvolver habilidades para elicitação, especificação e gerência de requisitos.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os conceitos fundamentais de software e Engenharia de Software. Descrever os princípios e qualidades esperadas no desenvolvimento de software. Explicar as principais etapas da Engenharia de Software e sua relevância no ciclo de vida do software. Comparar diferentes modelos de ciclo de vida e suas características. Diferenciar processos de desenvolvimento tradicionais e ágeis. Identificar os elementos básicos dos modelos de qualidade de processo. Aplicar conceitos básicos de medição em projetos de software. Identificar e descrever requisitos de software de forma estruturada. Classificar e diferenciar tipos de requisitos e suas características. Aplicar técnicas de elicitação, especificação e gerenciamento de requisitos, incluindo Histórias de Usuário e Casos de Uso. Explicar os fundamentos do Design Thinking e sua aplicação na Engenharia de Requisitos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • VALENTE, Marco Tulio. Engenharia de Software Moderna: Princípios e Práticas para Desenvolvimento de Software com Produtividade, Editora: Independente, 2020. ISBN: ‎ 978-6500019506

  • SOMMERVILLE, Ian. Engenharia de Software, 10ª edição. Editora Pearson do Brasil, 2019. ISBN: 978-8543024974

  • PRESSMAN, R. S. ; MAXIM, B. Engenharia de software: uma abordagem profissional. 9a edição. Editora: AMGH, 2021. ISBN: 978-6558040101

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • WASHIZAKI, H. (ed.). Guide to the Software Engineering Body of Knowledge (SWEBOK Guide), Version 4.0. IEEE Computer Society, 2024. Disponível em: www.swebok.org.

  • BROOKS JR., F. P. O Mítico Homem-Mês: Ensaios sobre Engenharia de Software. Alta Books, 2018. ISBN: 978-8550802756.

  • BECK, K. Desenvolvimento Guiado por Testes: Test Driven Development. Bookman Editora, 2004. ISBN: 978-8536303659.

  • COHN, M. User Stories Applied: For Agile Software Development. Addison-Wesley, 2004. ISBN: 978-0321205681.

  • COCKBURN, A. Writing Effective Use Cases. Addison-Wesley, 2000. ISBN: 978-0201702255.

  • FOX, A.; PATTERSON, D. Construindo Software como Serviço: Uma Abordagem Ágil Usando Computação em Nuvem. 1ª edição. Strawberry Canyon LLC, 2014. ISBN: 978-0984881277.

  • PAULA FILHO, Wilson de Padua. Engenharia de Software: Fundamentos, Métodos e Padrões - Produtos. 4a edição. Rio de Janeiro – RJ; Gen-LTC Editora, 2019. ISBN: 978-8521636687

  • PAULA FILHO, Wilson de Padua. Engenharia de Software: Fundamentos, Métodos e Padrões – Projetos e processos. 4a edição. Rio de Janeiro – RJ; Gen-LTC Editora, 2019. ISBN: 978-8521636694

  • PRIKLADNICKI, R.; WILLI, R.; MILANI, F. Métodos Ágeis para Desenvolvimento de Software. Bookman Editora, 2014. ISBN: 978-8582602089.

  • RIES, E. The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses. Crown Business, 2011. ISBN: 978-0307887894.

  • WAZLAWICK, R. S. Engenharia de Software: Conceitos e Práticas. 2ª edição. LTC, 2013. ISBN: 978-8535292725.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEE001

Probabilidade e Estatística

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

                 

  1. EMENTA

Estatística descritiva. Cálculo das probabilidades. Variáveis aleatórias. Valores característicos de uma variável aleatória. Modelos de distribuição discreta. Modelos de distribuição contínua. Amostragem e distribuição amostral. Estimação de parâmetros. Teste de Hipótese.

 

  1. OBJETIVOS GERAIS

Aplicar teoria e as técnicas de Probabilidade e Estatística na resolução de problemas.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever conjuntos de dados utilizando medidas de tendência central e dispersão. Calcular probabilidades de eventos em espaços amostrais discretos e contínuos. Definir variáveis aleatórias e suas funções de distribuição. Determinar valores esperados, variâncias e outros parâmetros de variáveis aleatórias. Identificar e aplicar modelos de distribuição discreta (como Binomial e Poisson). Identificar e aplicar modelos de distribuição contínua (como Normal e Exponencial). Analisar técnicas de amostragem e distribuições amostrais. Estimar parâmetros populacionais utilizando intervalos de confiança. Realizar testes de hipóteses para tomada de decisão baseada em dados. Utilizar ferramentas computacionais para simulação e análise estatística.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • HOEL, P.G. Estatística Elementar: Atlas, 1981.

  •  MORETTIN, P.A. Introdução à Estatística para Ciências Exatas: Editora, 1981.

  • SOARES, J.F.; Farias. Introdução à Estatística: Guanabara Koogan S.A,1991.

  • MEYER, P. Probabilidade Aplicações à Estatística: LTC.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BUSSAB, L.W.; Morettin, P.A.; Estatística Básica - 7a Ed. 2011 –Saraiva .

  • LARSON, R.; Farber, B.; Estatística Aplicada - 4a Ed. 2010 – Pearson.

  • WALPOLE, R.E.; Myers, R.H.; Meyers, S.L.; Ye, K. Probabilidade e Estatística para engenharia e ciências, 8a edição 2010- Pearson.

  • FARIAS, A. A.; SOARES, J. F.; CÉSAR, C. C. (2008). Introdução à Estatística. 2a Ed, LTC, Rio de Janeiro.

  • VIEIRA, Sônia (2012). Estatística Básica. São Paulo: Cengage Learning.

  • MORETTIN, P.A (2010). Estatística Básica Probabilidade e Inferência. Pearson Prentice Hall.

  • MORETTIN, Pedro Alberto & BUSSAB, Wilton de Oliveira. Métodos quantitativos para Economistas e Administradores, São Paulo : Atual, 1981.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEM022

Álgebra Linear II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

IEM012 Álgebra Linear I

Engenharia de Software

Obrigatória

IEM012 Álgebra Linear I

Inteligência Artificial

Obrigatória

IEM012 Álgebra Linear I

Tecnologia da Informação

Obrigatória

IEM012 Álgebra Linear I

                 

  1. EMENTA

Espaços Vetoriais. Aplicações Lineares. Núcleo e Imagem. Aplicações Lineares e Matrizes. Produto Interno. Formas Bilineares.

 

  1. OBJETIVOS GERAIS

Fornecer uma base sólida da teoria dos espaços vetoriais e dos operadores lineares de maneira a possibilitar suas aplicações nas diversas áreas da ciência e da tecnologia.

 

  1. OBJETIVOS ESPECÍFICOS

Definir espaços vetoriais e identificar suas propriedades fundamentais. Classificar transformações lineares quanto à injetividade, sobrejetividade e bijetividade. Determinar núcleo e imagem de aplicações lineares e suas relações com a teoria de sistemas lineares. Representar aplicações lineares por meio de matrizes em diferentes bases. Aplicar o conceito de produto interno em problemas de ortogonalização e projeção. Analisar formas bilineares e suas representações matriciais. Resolver problemas práticos envolvendo decomposições matriciais e diagonalização. Utilizar softwares matemáticos para implementação e visualização de conceitos abordados.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • ANTON, H., RORRES, C. Álgebra linear com aplicações. 8. ed. Porto Alegre: Bookman, 2001.

  • BOLDRINI, J. L.; COSTA, S. I. R.; RIBEIRO, V. L. et al. Álgebra Linear. São Paulo: Ed. Harper e Row do Brasil LTDA. 1983.

  • HEFEZ, A.; FERNANDEZ, C.S. Introdução à álgebra linear. SBM, 2012 (Coleção PROFMAT).

  • LIMA, E. L. Álgebra Linear. 7a ed. Rio de Janeiro: IMPA, 2008.

  • SANTOS, R. J. Álgebra Linear e Aplicações. Belo Horizonte: Imprensa Universitária da UFMG, 2010. Disponível no link https://mat.ufpb.br/~fagner/Santos.pdf acessado em 22/04/2025.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BUENO, H. P. Álgebra Linear: Um segundo curso. Sociedade Brasileira de Matemática, 2006.

  • COELHO, F. U. & LOURENÇO, M. L., Um Curso de Álgebra Linear, São Paulo: Edusp, 2005.

  • HOFFMAN, K. & Kunze, R. Linear Algebra, Prentice-Hall Inc. 1970.

  • LANG, S., Álgebra Linear, Editora Ciência Moderna, 2003.

  • LIPSCHUTZ, S. & LIPSON, M. Álgebra linear. Porto Alegre: Bookman, 2011.

  • STEINBRUCH, A. & WINTERLE, P., Álgebra Linear. 2a. edição. São Paulo: McGraw Hill, 1987.

 

 

 

 

4º PERÍODO - CICLO BÁSICO

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC027

Programação Orientada a Objetos

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Engenharia de Software

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Inteligência Artificial

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Tecnologia da Informação

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

 

  1. EMENTA

Conceitos de programação orientada a objetos: classes, objetos, atributos, estado, métodos, sobrecarga, sobreposição, mensagens, pacotes, encapsulamento, herança, hierarquia de classes, generalização, especialização, polimorfismo, classes abstratas, interfaces. Modelagem usando Unified Modeling Language. Coletor de lixo. Tratamento de exceções. Entrada e saída. Coleções genéricas. Aplicação dos conceitos usando outras tecnologias tais como threads, interface gráfica, banco de dados, programação de dispositivos móveis e/ou programação web.

 

  1. OBJETIVOS GERAIS

Conhecer e discutir os conceitos e termos relacionados à programação orientada a objetos. Modelar, projetar e implementar soluções baseadas na orientação a objetos. Exercitar os conceitos usando linguagens de programação orientadas a objetos, de acordo com o domínio e restrições das aplicações.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os diversos conceitos de orientação a objetos. Identificar as principais características da orientação a objetos como sobrecarga, sobreposição, classes abstratas e interfaces. Explicar a importância dos conceitos de encapsulamento, modularidade, herança e polimorfismo. Implementar classes e relacionamentos em uma linguagem orientada a objetos. Aplicar os conceitos para resolver problemas práticos em programação. Propor soluções que usem orientação a objetos na construção de sistemas complexos e escaláveis. Debater o uso de linguagens de programação como ferramentas a serem escolhidas na resolução de problemas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • DEITEL, Paul J.; DEITEL, Harvey M. Java: Java How To Program (Early Objects) (11th Edition). Pearson, 2017. ISBN 9780134743356.

  • McLAUGHLIN, Brett D.; POLLICE, Gary; WEST, Dave. Use a Cabeça! Análise & Projeto Orientado ao Objeto. Editora Alta Books, 2008. ISBN 9788576081456.

  • GRIFFITHS, David; GRIFFITHS, Dawn. Use a cabeça! Desenvolvendo para Android: desenvolvendo para Android. Alta Books, 2019. ISBN 9788550809052.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • VERSOLATTO, Fábio. Sistemas Orientados a Objetos: Conceitos e práticas. Freitas Bastos, 2023. ISBN 9786556752969.

  • WEST, David; MCLAUGHLIN, Brett; POLLICE, Gary. Head First Object-Oriented Analysis and Design: A Brain Friendly Guide to OOA&D. O'Reilly, 2011. ISBN 9780596008673.

  • DEITEL, P.; DEITEL, H.; DEITEL, A. Android: Como programar. 2. ed. Bookman, 2015. ISBN 9788582603475.

  • DEITEL, Harvey M.; DEITEL, Paul J. Java – Como Programar, 8ª edição. Editora Pearson, 2010. ISBN 9788543004792.

  • GAMMA, Erich; HELM, Richard; JOHNSON, Ralph; VLISSIDES, John. Padrões de Projetos: Soluções Reutilizáveis de Software Orientados a Objetos. Bookman, 2000. ISBN 9788577800469.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC065

Sistemas Operacionais I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC066 Introdução à Organização de Computadores

Engenharia de Software

Obrigatória

ICC066 Introdução à Organização de Computadores

Inteligência Artificial

Obrigatória

ICC066 Introdução à Organização de Computadores

Tecnologia da Informação

Obrigatória

ICC066 Introdução à Organização de Computadores

     

  1. EMENTA

Gerência de Processos: Estados de processo, troca de processos e escalonamento, simples, prioridade, justiça e multi-CPU. Gerência de Memória: Endereçamento, segmentação, paginação, swap. Concorrência: Threads, conceitos de concorrência, exclusão mútua, variáveis de condição, semáforos. Entrada e saída: HD, SSD, RAID, Sistemas de arquivo, integridade e journaling. Estudos de caso.

 

  1. OBJETIVOS GERAIS

Compreender o funcionamento de um Sistema Operacional. Identificar as principais funções de um Sistema Operacional. Compreender conceitos de multiprogramação, escalonamento de processos, paginação, memória virtual, sistema de arquivos, virtualização, entre outros. Utilizar de maneira adequada os recursos de Sistemas Operacionais atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os estados de um processo e compreender as técnicas de troca e escalonamento de processos. Implementar algoritmos de escalonamento, como simples, por prioridade e multi-CPU. Analisar técnicas de gerenciamento de memória, como endereçamento, segmentação, paginação e swap. Resolver problemas de concorrência utilizando threads, exclusão mútua, variáveis de condição e semáforos. Comparar diferentes tecnologias de armazenamento, como HD, SSD e RAID. Implementar e gerenciar sistemas de arquivos, incluindo técnicas de integridade e journaling. Estudar casos reais de sistemas operacionais para aplicar os conceitos aprendidos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MAIA, Luiz Paulo; MACHADO, Francis Berenger. Arquitetura de Sistemas Operacionais. 5. ed. Rio de Janeiro: LTC, 2013. ISBN 9788521622109.

  • ALVES, José Marques; FERREIRA, Paulo; RIBEIRO, Carlos; VEIGA, Luís; RODRIGUES, Rodrigo. Sistemas Operacionais. 1. ed. Rio de Janeiro: LTC, 2011. ISBN 9788521618072.

  • STUART, Brian L. Princípios de Sistemas Operacionais: Projetos e Aplicações. 1. ed. São Paulo: Cengage Learning, 2010. ISBN 9788522107339.

  • CARISSIMI, Alexandre; OLIVEIRA, Rômulo Silva de; TOSCANI, Simão. Sistemas Operacionais. 4ed. Porto Alegre: Bookman, 2010. ISBN 9788577805211.

  • MARQUES, José Alves. Sistemas Operacionais. 1. ed. Rio de Janeiro: LTC, 2011. ISBN 9788521618072.

  • SILBERSCHATZ, Abraham; GALVIN, Peter Baer; GAGNE, Greg. Fundamentos de Sistemas Operacionais: Conceitos e Aplicações. 8. ed. Rio de Janeiro: LTC, 2010. ISBN 9788521617471.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC205

Introdução a Bancos de Dados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Introdução à Tecnologia de Bancos de Dados: Abordagem de Bancos de Dados, Sistemas Gerenciadores de Bancos de Dados, Sistemas de Bancos de Dados; Modelo Relacional: Conceitos, Álgebra Relacional; Linguagem SQL: Comandos SQL, Restrições, Visões, Programação; Armazenamento e Recuperação de Dados em Memória Secundária: Dispositivos de Armazenamento, Representação de Dados, Organização de Arquivos, Campos, Registros e Blocos, Indexação; Processamento de Consultas: Otimização de Consultas, Execução de Consultas; Aspectos Operacionais de Bancos de Dados: Transações, Escalonamento, Controle de Concorrência, Recuperação de Falhas; Projeto de Bancos de Dados: Modelo Entidade-Relacionamento, Modelo ER Estendido, Mapeamento ER Relacional.

 

  1. OBJETIVOS GERAIS

Identificar os fundamentos da tecnologia de bancos de dados, incluindo seus principais recursos, características e aplicações. Reconhecer a arquitetura e o funcionamento de sistemas gerenciadores de bancos de dados. Identificar problemas relacionados ao controle de concorrência e à recuperação de falhas em bancos de dados e aplicar técnicas para resolver problemas de controle de concorrência e recuperação de falhas. Projetar bancos de dados considerando boas práticas e requisitos específicos. Implementar bancos de dados conforme as diretrizes de projeto estabelecidas.

 

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os conceitos fundamentais de bancos de dados e suas aplicações, demonstrando comprometimento com a construção de conhecimento técnico e teórico; diferenciar sistemas gerenciadores de bancos de dados e suas arquiteturas, adotando uma postura crítica e analítica na avaliação de suas características; utilizar a linguagem SQL para criação, manipulação e consulta de bancos de dados, demonstrando autonomia e precisão na escrita de comandos; modelar bancos de dados utilizando o modelo Entidade-Relacionamento e suas extensões, aplicando organização e atenção aos detalhes no desenvolvimento dos esquemas; implementar bancos de dados relacionais a partir de um projeto conceitual, demonstrando responsabilidade e rigor técnico na execução das tarefas; explicar os princípios de organização, armazenamento e indexação de dados em memória secundária, promovendo clareza na comunicação ao compartilhar conhecimentos; avaliar técnicas de processamento e otimização de consultas, adotando uma postura investigativa e analítica para encontrar soluções eficientes; examinar estratégias de controle de concorrência e recuperação de falhas, demonstrando proatividade na busca por estratégias eficazes; comparar diferentes abordagens de escalonamento de transações, adotando pensamento crítico para identificar vantagens e desvantagens de cada técnica; experimentar ferramentas e tecnologias utilizadas na implementação e gerenciamento de bancos de dados, demonstrando curiosidade e abertura ao aprendizado contínuo.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • GARCIA-MOLINA H., ULLMAN, J. D., WIDOM, J. Implementação de sistemas de banco de dados. Campus, 2001. ISBN: 9788535207491

  • RAMAKRISHNAN, R.; GEHRKE, J. Sistemas de Gerenciamentos de Bancos de Dados. 3ª ed., McGraw Hill Brasil, 2008. ISBN: 9788577260270

  • ELMASRI, Ramez; NAVATHE, Shamkant B. Sistemas de Banco de Dados, 6ª edição. Editora Pearson do Brasil, 2011. ISBN: 9788579360855.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SHASHA, Dennis Elliott; BONNET, Philippe. Database Tuning: Principles, Experiments, and Troubleshooting Techniques. Morgan Kaufmann, 2003. ISBN-13: 978-1558607538.

  • DATE, C. J. Introdução a Sistemas de Bancos de Dados, 1ª edição. Editora Campus, 2004. ISBN 978-85-352-1273-0.

  • SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Sistema de Banco de Dados. 6ª edição. Editora Campus, 2012. ISBN: 9788535245356.

  • WILLIAMS, Hugh, LANE David, Web Database Applications with PHP and MySQL, 2nd Edition O'Reilly Media. ISBN:978-0-596-00543-6.

  • HEUSER, Carlos Alberto. Projeto de Banco de Dados. 6a Ed., Bookman, 2008. ISBN 978-85-7780-382-8.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC253

Ciência de Dados

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Engenharia de Software

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Inteligência Artificial

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Tecnologia da Informação

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

                             

  1. EMENTA

Conceitos gerais, incluindo história, etapas de projeto, ciclo de vida de dados,  governança e questões éticas e legais. Exploração de dados com ênfase em conceitos de estatística e probabilidade, análise uni e multivariada e visualização de dados (incluindo storytelling). Engenharia de Dados cobrindo aspectos de qualidade de dados (lidar com falta, ruído, inconsistência etc), transformações diversas (e.g, normalização e anonimização), engenharia de atributos e balanceamento. Modelagem de Dados, incluindo amostragem, variabilidade, vieses e tarefas típicas de previsão, como classificação, regressão, agrupamento, associação e geração. Testes e avaliação, incluindo métricas, reamostragem de dados, testes de hipóteses, projeto experimental, ajustes de parâmetros, interpretação e explicação.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos fundamentais da área, incluindo o ciclo de vida dos dados, etapas de projeto, governança e questões éticas e legais. Integrar os conhecimentos teóricos e práticos necessários à exploração, engenharia, modelagem, testes e avaliação de dados. Analisar a aplicação dos métodos de análise estatística e visualização de dados no contexto da geração de insights para a tomada de decisão. Aplicar modelos rasos de classificação e regressão, como árvores de decisão, k-NN e regressão linear.

  1. OBJETIVOS ESPECÍFICOS

Identificar e descrever os fundamentos e as etapas de projeto da ciência de dados. Explorar dados aplicando conceitos de estatística, probabilidade, análise univariada e multivariada e técnicas de visualização e storytelling. Implementar processos de engenharia de dados para garantir a qualidade, transformação, normalização, anonimização, engenharia de atributos e balanceamento. Modelar dados por meio de amostragem, análise de variabilidade, identificação de vieses e aplicação de técnicas de previsão como classificação, regressão, agrupamento, associação e geração de dados. Realizar testes e avaliações utilizando métricas, testes de hipóteses, projetos experimentais, ajustes de parâmetros e interpretar os resultados para oferecer explicações fundamentadas. Empregar técnicas de reamostragem, como validação cruzada, hold-out e bagging para ajuste de hiperparâmetros e teste de modelos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CARVALHO, André C. P. L. F.; MENEZES, Angelo; BONIDIA, Robson. Ciência de Dados: Fundamentos e Aplicações. 1. ed. Rio de Janeiro: LTC, 2024. ISBN 978-85-216-3876-6.

  • MORETTIN, Pedro Alberto; SINGER, Julio da Motta. Estatística e Ciência de Dados. 2. ed. Rio de Janeiro: LTC, 2025. ISBN 978-85-216-3899-5.

  • GRUS, Joel. Data Science do Zero: Noções Fundamentais com Python. 2. ed. Rio de Janeiro: Alta Books, 2021. ISBN 978-85-508-1176-5.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FÁVERO, Luiz Paulo; BELFIORE, Patrícia. Manual de Análise de Dados: Estatística e Machine Learning com Excel, SPSS, Stata, R e Python. 2. ed. Rio de Janeiro: GEN LTC, 2024. ISBN 978-85-951-5992-1.

  • VASILIEV, Yuli. Python para Ciência de Dados: Uma introdução prática. 1. ed. São Paulo: Novatec Editora, 2023. ISBN 978-85-752-2848-7.

  • MCKINNEY, Wes. Python Para Análise de Dados: Tratamento de Dados com Pandas, NumPy & Jupyter. 3. ed. São Paulo: Novatec Editora, 2023. ISBN 978-85-752-2841-8.

  • BRUCE, Andrew; BRUCE, Peter. Estatística prática para cientistas de dados: 50 conceitos essenciais. 1. ed. Rio de Janeiro: Alta Books, 2019. ISBN 978-85-508-0603-7.

  • KNAFLIC, Cole Nussbaumer. Storytelling com dados: um guia sobre visualização de dados para profissionais de negócios. 2. ed. Rio de Janeiro: Alta Books, 2019. ISBN 978-85-508-0468-2.

  • VANDER PLAS, Jake. Python Data Science Handbook: Essential Tools for Working with Data. 2. ed. Sebastopol: O’Reilly Media, 2023. ISBN 978-10-981-2122-8.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC431

Engenharia de Software II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC430 Engenharia de Software I

Engenharia de Software

Obrigatória

ICC430 Engenharia de Software I

Inteligência Artificial

Obrigatória

ICC430 Engenharia de Software I

Tecnologia da Informação

Obrigatória

ICC430 Engenharia de Software I

 

  1. EMENTA

Princípios de Projeto de Software. Interação entre projeto e requisitos. Modelagem de Software e Representação de Sistemas. Notação UML e sua Aplicação no Projeto de Software (Diagramas de Classe, Sequência, Atividade e Máquina de Estados). Arquitetura de Software, Padrões e Estilos Arquiteturais. Padrões de Projeto e Reutilização de Software. Ferramentas de suporte a projeto. Refatoração e Evolução de Software.

 

  1. OBJETIVOS GERAIS

Compreender os princípios de projeto de software e sua relação com os requisitos do sistema. Aplicar técnicas de modelagem para representar sistemas de software de forma estruturada. Utilizar a notação UML para modelar aspectos estruturais e comportamentais de um sistema de software. Identificar e aplicar padrões e estilos arquiteturais no desenvolvimento de software. Aplicar padrões de projeto para promover a reutilização e a qualidade do software. Utilizar ferramentas de suporte ao projeto de software para modelagem e documentação.

 

  1. OBJETIVOS ESPECÍFICOS

Explicar os princípios fundamentais de projeto de software e sua importância na qualidade do sistema. Analisar a relação entre requisitos e decisões de projeto de software. Aplicar conceitos de modelagem para representar diferentes aspectos de um sistema de software. Elaborar diagramas UML, incluindo diagramas de classe, sequência, atividade e máquina de estados. Identificar e utilizar diferentes estilos e padrões arquiteturais. Aplicar padrões de projeto na solução de problemas recorrentes no desenvolvimento de software. Avaliar a aplicabilidade de ferramentas de suporte ao projeto de software para modelagem e documentação.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • VALENTE, Marco Tulio. Engenharia de Software Moderna: Princípios e Práticas para Desenvolvimento de Software com Produtividade, Editora: Independente, 2020. ISBN: ‎ 978-6500019506

  • SOMMERVILLE, Ian. Engenharia de Software, 10ª edição. Editora Pearson do Brasil, 2019. ISBN: 978-8543024974

  • BOOCH, G. UML: Guia do Usuário. Elsevier Brasil, 2006. ISBN: 978-8535217841.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FOWLER, M. Padrões de Arquitetura de Aplicações Corporativas. Bookman Editora, 2006. ISBN: 978-8536306384.

  • FOX, A.; PATTERSON, D. Construindo Software como Serviço: Uma Abordagem Ágil Usando Computação em Nuvem. 1ª edição. Strawberry Canyon LLC, 2014. ISBN: 978-0984881277.

  • GAMMA, E.; HELM, R.; JOHNSON, R.; VLISSIDES, J. Padrões de Projeto: Soluções Reutilizáveis de Software Orientados a Objetos. Bookman Editora, 2000. ISBN: 978-8536301235.

  • LARMAN, C. Utilizando UML e Padrões: Uma Introdução à Análise e ao Projeto Orientados a Objetos e ao Desenvolvimento Iterativo. 3ª edição. Bookman, 2007. ISBN: 978-8560031528.

  • MARTIN, R. C. Código Limpo: Habilidades Práticas do Agile Software. Alta Books, 2009. ISBN: 978-8576082675.

  • RICHARDS, N.; FORD, M. Fundamentos da Arquitetura de Software: Uma Abordagem de Engenharia. Rio de Janeiro: Alta Books, 2024. Ebook. ISBN: 978-8550819754.

 

 

 

 

 

5º PERÍODO - CICLO ESPECÍFICO

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC062

Arquitetura de Computadores

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC066 Introdução à Organização de Computadores

Engenharia de Software

Eletiva

ICC066 Introdução à Organização de Computadores

Inteligência Artificial

Obrigatória

ICC066 Introdução à Organização de Computadores

Tecnologia da Informação

Eletiva

ICC066 Introdução à Organização de Computadores

     

  1. EMENTA

Microprocessadores monociclo, multiciclo e pipeline. Diferenças entre CISC e RISC. Arquiteturas de Von Neumann e de Harvard. Conceitos sobre Hazards, Tratamento de Hazards e forwarding. Técnicas de desempenho: CPI, IPC, ILP, Branch prediction, Loop unrolling, execução fora de ordem e reorganização de instruções. Assembly: Codificação de 32 e 64 bits. Processamento paralelo: Conceitos e definições. Microprocessadores superescalares. Arquiteturas multinúcleo. Coerência de cache. SIMD e MIND. Placas GPU. Consumo de energia. Confiabilidade. Pipeline. CISC. RISC. Hazards e forwarding. CPI, IPC, ILP, Branch prediction, Loop unrolling. Out-of-order. Assembly 32 e 64 bits. Superescalar. Multinúcleo. Cache. SIMD e MIND. GPU. Energia. Confiabilidade.

 

  1. OBJETIVOS GERAIS

Compreender o desempenho dos microprocessadores, comparando abordagens monociclo, multiciclo e pipeline.  Entender as diferenças e implicações para o desempenho das arquiteturas RISC e CISC. Investigar a codificação assembly de 32 e 64 bits. Aplicar programação em baixo nível para relacionar com conceitos de compilação e tradução de linguagens de alto nível para linguagem de máquina. Calcular ganhos de desempenho e suas limitações, por exemplo, aplicando a Lei de Amhdal.

 

  1. OBJETIVOS ESPECÍFICOS

Programar no nível do hardware. Simular e entender pipeline. Simular uma hierarquia de memória. Experimentar com arquiteturas multicore. Experimentar com arquiteturas paralelas. Entender os requisitos energéticos das arquiteturas e seus impactos no meio ambiente.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • HENNESSY, John; PATTERSON, David. Arquitetura de Computadores – Uma Abordagem Quantitativa. Tradução da 6ª edição. Editora GEN LTC, 2019. ISBN 978-85-352-9174-2.

  • NULL, Linda; LOBUR, Julia. Princípios Básicos de Arquitetura e Organização de Computadores. Bookman, 2010. ISBN: 978857780737.

  • STALLINGS, William. Arquitetura e Organização de Computadores, 8ª Ed. Prentice Hall, 2010. ISBN 9788576055648.

  • HARRIS, D.; HARRIS, S. Digital Design and Computer Architecture: ARM edition. Morgan Kaufmann, 2015, ISBN 978-0128000564.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PATTERSON, David A.; HENNESSY, John L. Organização e Projeto de Computadores. Tradução da 5ª edição. Editora GEN LTC, 2017. ISBN-13: 978-85-352-8793-6.

  • BRYANT, Randal E. & O’HALLAR, David R. Computer Systems: A Programmer's Perspective. 2nd edition. Pearson, 2010. ISBN-13: 978-0136108047.

  • TANENBAUM, Andrew S. Organização Estruturada de Computadores, 6ª Ed. Pearson Education, 2013. ISBN 9788581435398.

  • FISHER, Joseph A.; FARABOSCHI, Paolo; YOUNG, Cliff. Embedded Computing: A VLIW Approach to Architecture, Compilers and Tools. Morgan Kaufmann, 2004. ISBN: 9781558607668

  • COOK, Shane. CUDA Programming: A Developer's Guide to Parallel Computing with GPUs (Applications of GPU Computing Series). Morgan Kaufmann, 2012. ISBN-13: 978-0124159334.

  • SCOTT, J Clark. But How Do It Know? - The Basic Principles of Computers for Everyone. 2009. ISBN 9780615303765

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC208

Engenharia de Dados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC205 Introdução a Bancos de Dados

Engenharia de Software

Eletiva

ICC205 Introdução a Bancos de Dados

Inteligência Artificial

Obrigatória

ICC205 Introdução a Bancos de Dados

Tecnologia da Informação

Eletiva

ICC205 Introdução a Bancos de Dados

 

  1. EMENTA

Conceitos Introdutórios:  Dados Massivos (Big Data), Processamento Analítico e Transacional, ETL (Extract, Transform, Load), Engenharia de Dados; Computação em Nuvem, Virtualização de Dados e Clusters Computacionais;  Plataformas de Dados de Alto Desempenho em Clusters; Bancos de Dados não-Relacionais: Teorema CAP,  Bancos de Dados Colunares, Bancos de Dados Chave-Valor, Bancos de Dados de Documentos, Bancos de Dados de Grafos; Processamento de Fluxo de Dados (Streaming);  Arquiteturas de Big Data, Data Warehouses e Data Lakes; Limpeza de Dados (Data Cleaning)

 

  1. OBJETIVOS GERAIS

Projetar, implementar e gerenciar pipelines e infraestruturas de dados escaláveis e de alto desempenho. Identificar, modelar e integrar grandes volumes de dados em ambientes distribuídos. Aplicar técnicas de processamento em lote e em fluxo contínuo para otimizar a ingestão, transformação e análise de dados. Utilizar arquiteturas modernas, incluindo Data Warehouses, Data Lakes e computação em nuvem, para armazenar, processar e disponibilizar dados de forma eficiente. Garantir qualidade, segurança e governança dos dados em diferentes contextos organizacionais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar e aplicar conceitos fundamentais da engenharia de dados para projetar, construir e otimizar pipelines de dados; implementar soluções escaláveis para ingestão, armazenamento e processamento de grandes volumes de dados em ambientes distribuídos; selecionar e utilizar bancos de dados relacionais e não relacionais de acordo com requisitos específicos de desempenho, escalabilidade e consistência; aplicar técnicas de processamento em lote e em fluxo contínuo para atender a demandas analíticas e operacionais; integrar e gerenciar dados em arquiteturas modernas, como Data Warehouses, Data Lakes e computação em nuvem; garantir a qualidade, segurança e governança dos dados, assegurando conformidade com padrões e regulamentações; avaliar impactos sociais e ambientais de soluções de engenharia de dados, promovendo práticas sustentáveis no uso e armazenamento de dados; aplicar princípios éticos na coleta, armazenamento, compartilhamento e processamento de dados, respeitando privacidade e legislação vigente; desenvolver habilidades de comunicação para relatar descobertas, justificar decisões técnicas e colaborar com equipes multidisciplinares; trabalhar em equipe de forma colaborativa, respeitando diferentes perspectivas e contribuindo para a resolução de problemas de engenharia de dados; analisar implicações organizacionais e estratégicas da engenharia de dados para apoiar a tomada de decisão em empresas e instituições; refletir sobre sua própria atuação como engenheiro de dados, buscando aprendizado contínuo e aprimoramento profissional.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • REIS, Joe; HOUSLEY, Matt. Fundamentos de Engenharia de Dados: Projete e Construa Sistemas de Dados Robustos. Novatec, 2023. ISBN: 978-857522876

  • SERRA, James. Decifrando Arquiteturas de Dados: Escolhendo entre data warehouse moderno, data fabric,data lakehouse e data mesh. Novatec, 2024. ISBN: 978-8575229217

  • AMARAL, Fernando. Introdução à ciência de dados: mineração de dados e big data. Rio de Janeiro: Alta Books, 2016. 304 p. ISBN 978-85-7608-934-6.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • HAN, Jiawei; KAMBER, Micheline; PEI, Jian. Data mining: concepts and techniques. 3. ed. Waltham, Massachusetts: Elsevier, 2012. xxxv, 703 p. ISBN 9780123814791.

  • WITTEN, I. H. et al. Data mining: practical machine learning tools and techniques . 4ed. Amsterdam, Holanda: Elsevier, 2017. xxxii, 621 p. ISBN 9780128042915.

  • HASTIE, Trevor; TIBSHIRANI, Robert; FRIEDMAN, J. H. The elements of statistical learning: data mining, inference, and prediction. 2nd ed. New York: Springer, c2009. xxii, 743 p. (Springer series in statistics) ISBN 978-0-387-84857-0.

  • ELMASRI, Ramez; NAVATHE, Sham. Sistemas de banco de dados. 7. ed. São Paulo, SP: Pearson Education do Brasil, c2019. xxvi, 1126 p. ISBN 9788543025001.

  • PROVOST, Foster,; FAWCETT, Tom. Data science para negócios: o que você precisa saber sobre mineração de dados e pensamento analítico de dados. Rio de Janeiro, RJ: Alta Books, 2016. xx, 383 p. ISBN 9788576089728 (broch.).

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC209

Recuperação da Informação

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Conceitos Gerais sobre Recuperação de Informação. Avaliação em sistemas de recuperação de informação: coleções de referência online e offline. Bias em sinais de relevância online e recuperação de informação contrafactual. Operações sobre texto: radical de palavras, lematização, vetorização e transformers. Modelos clássicos de recuperação de informação. Fontes de evidência de relevância: estudos de casos em diferentes ambientes de busca, fontes textuais, de estrutura e metainformação sobre os documentos, citações e de interação com usuários. Métodos de aprendizado de máquina para ordenação de resultados de busca. Algoritmos de indexação e processamento eficiente de consultas. Arquiteturas distribuídas para sistemas de busca. Compressão de Dados para Recuperação de Informação. Servidores de busca e sua integração com os conceitos aprendidos na disciplina.

 

  1. OBJETIVOS GERAIS

Conhecer e implementar técnicas e métricas de avaliação de sistemas de recuperação de informação.  Conhecer e implementar modelos clássicos  de recuperação de informação. Conhecer e implementar sistemas de busca que utilizam diferentes fontes de evidência de relevância e técnicas de aprendizado de máquina para combiná-las no desenvolvimento de sistemas de busca. Conhecer técnicas eficientes de indexação e processamento de consultas.

 

  1. OBJETIVOS ESPECÍFICOS

Conhecer e aplicar técnicas de avaliação de sistemas de recuperação de informação, incluindo a análise de coleções de referência online e offline, e entender os impactos do bias nos sinais de relevância. Implementar modelos clássicos de recuperação de informação, como o modelo vetorial e o modelo probabilístico, e avaliar seu desempenho em diferentes cenários de busca. Explorar e aplicar operações sobre texto, como radicalização de palavras, lematização, vetorização e o uso de transformers, no processamento e na representação eficiente de documentos em sistemas de busca. Integrar diferentes fontes de evidência de relevância, como estudos de casos, informações estruturais, metainformação, citações e interações com usuários, no desenvolvimento de sistemas de recuperação de informação mais eficientes. Implementar métodos de aprendizado de máquina para a ordenação de resultados de busca, combinando fontes de evidência de relevância e otimizando o processo de recuperação de informações. Conhecer e aplicar algoritmos de indexação eficientes, projetando e implementando sistemas de busca que suportem processamento de consultas em arquiteturas distribuídas, com foco na compressão de dados para maior desempenho.

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BAEZA-YATES, R.; RIBEIRO-NETO, B. Recuperação de informação: conceitos e tecnologias das máquinas de busca. 2. ed. Porto Alegre: Bookman, ISBN 978-8582600498. 2013.

  • IRWIN; Max; GRAINGER, Trey; TURNBULL, Doug; AI-Powered Search. Manning Publications; 1ª edição (27 agosto 2024).. ISBN  ‎978-1617296970. 2024.

  •  VAIDYA, Madhavi; SOWALE, Yashowardhan.  ‎Information Retrieval.  Wiley (20 julho 2021). ISBN 978-9354249419. 2021.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • Christopher D. Manning, Prabhakar Raghavan, Hinrich Schutze. Introduction to Information Retrieval.Cambridge University Press; 1 edition  ISBN 978-0521865715. 2008.

  • SONAWANE, Sheetal;  MAHALLE, Parikshit. Information Retrieval and Natural Language Processing: A Graph Theory Approach (Studies in Big Data Book 104) (English Edition) . ISBN 978-9811699955. 2022

  • Baeza-Yates, Omar Alonso. Information Retrieval: Advanced Topics and Techniques. ACM Books. ‎  ISBN 979-8400710506. 2024.

  • Query Understanding for Search Engines. Hongbo Deng, Yi Chang. Springer. ISBN  978-3030583347. 2020

  • Stefan Buettcher, Charles L. A. Clarke, Gordon V. Cormack. Information Retrieval: Implementing and Evaluating Search Engines. The MIT Press. ISBN 978-0262528870. 2016.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC256

Aprendizado de Máquina I

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC253 Ciência de Dados

Engenharia de Software

Eletiva

ICC253 Ciência de Dados

Inteligência Artificial

Obrigatória

ICC253 Ciência de Dados

Tecnologia da Informação

Eletiva

ICC253 Ciência de Dados

 

  1. EMENTA

Conceitos de Aprendizado de Máquina: definições e tipos (supervisionado, não supervisionado, por reforço). Formalização do processo de aprendizado: função-conceito, hipótese, busca. Modelos paramétricos e não paramétricos. Conceitos de aprendizado estatístico: teorema no-free lunch, fontes de erro e indecidibilidade, viés e variância. Espaço de hipóteses, capacidade do espaço de hipóteses e complexidade dos modelos. Generalização e aprendizado viciado, underfitting e overfitting. Teste de modelos: métricas de desempenho, técnicas de reamostragem. Modelos rasos. Regressores Logísticos. Ensembles. Redes neurais. Aprendizado profundo: extração automática de características, visualização de representações. Modelos profundos: redes totalmente conectadas, convolutivas, de sequência e geradoras. Transfer learning e composição de modelos.

 

  1. OBJETIVOS GERAIS

 

Formalizar os conhecimentos adquiridos em Ciência de Dados sob os fundamentos do Aprendizado de Máquina. Entender o equilíbrio entre viés e variância e lidar com situações de underfitting e overfitting. Analisar problemas que podem ser resolvidos com Aprendizado de Máquina e escolher modelos apropriados. Analisar a evolução dos modelos rasos e ensembles e sua transição para abordagens profundas. Avaliar a relevância da extração automática de características e da visualização de representações no contexto do desenvolvimento de sistemas inteligentes.

 

  1. OBJETIVOS ESPECÍFICOS

 

Entender as situações nas quais os diferentes tipos de aprendizado devem ser aplicados, suas finalidades, vantagens e desvantagens. Entender o formalismo por trás do Aprendizado de Máquina. Entender conceitualmente o funcionamento do aprendizado estatístico. Compreender e reconhecer na prática fontes de erro e indecidibilidade, viés e variância. Ajustar hiperparâmetros, selecionar atributos e trabalhar dados para lidar com generalização, underfitting e overfitting. Escolher quando empregar modelos rasos ou profundos. Escolher modelos adequados para problemas de Aprendizado de Máquina. Utilizar redes neurais como modelos de classificação e como extratores de características. Interpretar resultados experimentais e sintetizar conhecimentos obtidos a partir de estudos de caso e aplicações práticas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • GÉRON, Aurélien. Mãos à obra: aprendizado de máquina com Scikit-Learn, Keras & TensorFlow: conceitos, ferramentas e técnicas para a construção de sistemas inteligentes. Rio de Janeiro: Alta Books, 2021. ISBN 978-85-508-1548-0.

  • BISHOP, Christopher M.; BISHOP, Hugh. Deep learning: foundations and concepts. Cham: Springer, 2024. ISBN 978-3-031-45467-7.

  • ZHANG, Aston; LIPTON, Zachary C.; LI, Mu; SMOLA, Alexander J. Dive into deep learning. Cambridge: Cambridge University Press, 2023. ISBN 978-1-009-38943-3.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MURPHY, Kevin P. Probabilistic machine learning: advanced topics. Cambridge: MIT Press, 2023. ISBN 978-0-262-04843-9.

  • MURPHY, Kevin P. Probabilistic machine learning: an introduction. Cambridge: MIT Press, 2022. ISBN 978-0-262-04682-4.

  • CHOLLET, François. Deep learning with Python. 2. ed. New York: Manning Publications, 2021. ISBN 978-1-61729-686-4.

  • ALPAYDIN, Ethem. Introduction to machine learning. 4ed. Cambridge: MIT Press, 2020. ISBN 978-0-262-04379-3.

  • GOODFELLOW, Ian; BENGIO, Yoshua; COURVILLE, Aaron. Deep learning. Cambridge: MIT Press, 2016. ISBN 978-0-262-03561-3.

  • GÉRON, Aurélien. Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow. 3. ed. Sebastopol: O'Reilly Media, 2022. ISBN 978-1-098-12597-4.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC258

Representação do Conhecimento e Raciocínio

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Engenharia de Software

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Inteligência Artificial

Obrigatória

ICC260 Fundamentos de Inteligência Artificial

Tecnologia da Informação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

 

  1. EMENTA

Formalismos Clássicos: Lógica de primeira ordem. Redes semânticas e Frames. Ontologias, Sistemas de Regras e Raciocínio, sistemas SE ENTÃO. Encadeamento para frente/para trás. Raciocínio probabilístico com Redes Bayesianas e Lógica Difusa. Raciocínio Contextual e Não Monotônico. LLMs e aprendizado de  probabilidades implícitas em texto,  raciocínio causal explícito das redes bayesianas. Visualização de embeddings. Grafos de conhecimento, embeddings e raciocínio híbrido. Tokenização e Estruturas de Dados. Sequências de Tokens como representação de conhecimento em LLMs. Integração de RCR com PLN. Ética e Segurança em RCR. Viés em Ontologias e Mitigação de preconceitos. Consistência de RCR com regulamentação (ex. LGPD).

 

  1. OBJETIVOS GERAIS

Projetar sistemas de representação de conhecimento (KR) robustos e flexíveis, essenciais para o desenvolvimento de agentes inteligentes e modelos modernos de geração automática (LLMs, difusão de imagens), combinando formalismos clássicos com representações probabilísticas e distribuídas, conhecimento estruturado, raciocínio não monotônico, raciocínio derrotável (defeasible reasoning), raciocínio sob incerteza e vagueza, raciocínio sobre ações, explicação e diagnóstico, e o trade-off entre expressividade e tratabilidade.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender formalismos clássicos de Representação do Conhecimento:  lógica de primeira ordem, redes semânticas, grafos de conhecimento e ontologias,  sistemas de regras para modelagem de domínios complexos como diagnóstico médico. Desenvolver sistemas de inferência (encadeamento de regras, resolução lógica) e raciocínio probabilístico (redes Bayesianas), e senso comum raciocínio derrotável em  para problemas reais. Identificar as limitações  de abordagens clássicas de RCR e analisar o trade-off entre expressividade e tratabilidade. Saber diferenciar RCR e representações sub-simbólicas para lidar com ambiguidades, grandes volumes de informações e semântica implícitas. Entender e utilizar o conceito de embeddings para codificar conhecimento em espaço vetorial contínuo (RCR Embed). Aplicar embedding e grafos de conhecimento (KGs) para conectar representações simbólicas a dados não estruturados. Integrar RCR Embed com aprendizado de máquina preparando bases para sistemas híbridos. Entender como tokenização, embeddings e espaços latentes representam conhecimento em LLMs. Aplicar KR em agentes inteligentes e modelos gerativos, exemplos de geração ética de textos e imagens.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RUSSELL, Stuart; NORVIG, Peter. Inteligência Artificial: Uma Abordagem Moderna. 4ed. Rio de Janeiro: GEN LTC, 2022. ISBN: 9788535237016.

  • SOWA, John F. Knowledge Representation: Logical, Philosophical, and Computational Foundations. 1ed. Boston: Cengage Learning, 1999. ISBN-13: 978-0534949655..

  • VAN HARMELEM, Frank; PORTER, Bruce (Ed.). Handbook of Knowledge Representation. 1ed Amsterdam: Elsevier Science, 2008. ISBN-13: 978-0444522115.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • HUTH, Michael; RYAN, Mark. Lógica em Ciência da Computação. 2. ed. Rio de Janeiro: Editora LTC, 2008. ISBN-13: 978-8521616108.

  • GARCEZ, Artur S. D’Avila; LAMB, Luís C.; GABBAY, Dov M. Neural-Symbolic Cognitive Reasoning. 1. ed. Berlin: Springer, 2009. ISBN-13: 978-3642092299.

  • BRATKO, Ivan. Prolog Programming for Artificial Intelligence. 4ed. Boston: Addison-Wesley Educational Publishers Inc, 24 ago. 2011. ISBN-13: 978-0321417466.

  • ROSA, João Luís Garcia. Fundamentos da Inteligência Artificial. Rio de Janeiro: Editora LTC, 2011. ISBN-13: 978-8521605935.

  • KOPEC, Danny; SHETTY, S.; PILEGGI, C. Artificial Intelligence and Their Solutions. Dulles: Mercury Learning and Information, 2014. ISBN-13: 978-1938549830.

  • SILVA, Ivan N.; SPATTI, Danilo H.; FLAUZINO, Rogério A. Redes Neurais Artificiais para Engenharia e Ciências Aplicadas: Curso prático. São Paulo: Ed. ArtLiber, 2010. ISBN-13: 978-8588098879.

 

 

 

6º PERÍODO - CICLO ESPECÍFICO

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC006

Projeto e Análise de Algoritmos

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Fundamentos em Teoria da Computação. Técnicas de Análise de Algoritmos. Complexidade Computacional. Classes de Problemas Computacionais. Crescimento Assintótico de Funções. Somatórias e Resolução de Recorrências. Técnicas de Projeto de Algoritmos. Divisão e Conquista: Mergesort e Multiplicação de Matrizes. Algoritmos de Ordenação. Algoritmos de Busca. Método Guloso: Código de Huffman. Árvore Geradora Mínima (Prim e Kruskal). Caminho de Custo Mínimo (Dijkstra e Bellman-Ford). Programação Dinâmica: Multiplicações Matriciais, Maior Subsequência Comum, Distância de Edição. Árvore Binária de Busca. Árvores com Balanceamento e Hashs. Problemas Computacionais Clássicos. Grafos e suas Aplicações: Algoritmos Elementares. Teoria da NP-Completude: Problemas NP-Completos e NP-Difíceis. Redução Polinomial.

 

  1. OBJETIVOS GERAIS

Reconhecer e lidar com classes específicas de problemas. Identificar e propor soluções eficientes para classes de problemas, quando possível, por meio da aplicação das diversas técnicas de projeto e análise de algoritmos apresentadas.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar a complexidade computacional de algoritmos, identificando seu comportamento assintótico e relacionando-o com o tipo de problema a ser resolvido. Identificar e prever as demandas de tempo e recursos computacionais de um algoritmo na medida que o tamanho da entrada cresce. Aplicar técnicas de projeto de algoritmos, como divisão e conquista, programação dinâmica e método guloso, na construção de soluções eficientes para problemas computacionais clássicos. Identificar e classificar problemas computacionais em diferentes classes, como P, NP-completo e NP-difícil, e avaliar as implicações dessas classificações para a busca de soluções. Resolver problemas de otimização utilizando algoritmos de grafos, como o cálculo de árvore geradora mínima e caminho de custo mínimo, e aplicar esses conceitos a problemas práticos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • ZIVIANI, Nívio. Projeto de Algoritmos – Com Implementações em Pascal e C – 3ª edição revista e ampliada. Editora Cengage Learning, 2011. ISBN-13: 9788522110506.

  • GRAHAM, Ronald; KNUTH, Donald; PATASHNIK, O. Matemática Concreta: Fundamentos para a Ciência da Computação, 2ª Edição. Editora LTC, 1995. ISBN 9788521610403 (clássica)

  • SZWARCFITER, Jayme Luiz; MARKEZON, Lilian. Estruturas de Dados e Seus Algoritmos, 3ª Ed. LTC, 2010. ISBN 9788521617501.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • KLEINBERG, J.; TARDOS, E. Algorithm Design. Addison Wesley, 2005. ISBN-13: 978-0321295354.

  • ARORA, S., BARAK, B. Computational Complexity: A Modern Approach. Cambridge University Press, 2009. ISBN: 9780521424264.

  • GAREY, JOHNSON, D. Computers and Intractability: A Guide to the Theory of NP-Completeness (Series of Books in the Mathematical Sciences). W. H. Freeman & Co. New York, NY, USA, 1979. ISBN-13: 978-0716710455.

  • MANBER, U. Introduction to Algorithms: A Creative Approach. Addison-Wesley, 1989. ISBN-13: 978-0201120370.

  • PAPADIMITRIOU, C. Computational Complexity. Addison-Wesley, 1993. ISBN-13: 978-0201530827.

  • SEDGEWICK, Robert; FLAJOLET, Philippe. An Introduction to the Analysis of Algorithms. 2. ed. Boston: Addison-Wesley, 2013. ISBN  978-0321905758

  • SKIENA, Steven S. The Algorithm Design Manual, 2nd edition. Springer, 2010. ISBN-13: 978-1849967204.

  • SKIENA, S., Revilla, M. Programming Challenges: The Programming Contest Training Manual. Springer, 2003. ISBN-13: 978-0387001630

  • FORTNOW, Lance. The Golden Ticket: P, NP, and the Search for the Impossible. Princeton University Press, 2013. ISBN-13: 978-0691156491.

  • ZIVIANI, Nivio. Projeto de Algoritmos com Implementações em Java e C++. Thomson Learning, 2006. ISBN 9788522105250.

  • Ding-Zhu Du, Ker-I Ko (Eds.). Advances in Algorithms, Languages, and Complexity. Springer, 2012. ISBN 978-1461333968.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC254

Processamento de Linguagem Natural

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC256 Aprendizado de Máquina I

Engenharia de Software

Eletiva

ICC256 Aprendizado de Máquina I

Inteligência Artificial

Obrigatória

ICC256 Aprendizado de Máquina I

Tecnologia da Informação

Eletiva

ICC256 Aprendizado de Máquina I

 

  1. EMENTA

Introdução à Processamento de Linguagem Natural e Modelos de Linguagem. Classificação de palavras, trechos e documentos. Modelos de Linguagem de Grande Escala (LLMs): comparação de diferentes LLMs, Engenharia de Prompt; Retreino de LLMs focando em qualidade e eficiência. Métricas de avaliação. Geração aprimorada com recuperação e uso de LLMs como agentes. Aplicações de LLMs.

 

  1.  OBJETIVO GERAL

Capacitar os alunos a compreender, aplicar e desenvolver modelos para processamento de linguagem natural com foco em modelos de linguagem neurais. Entender conceitos fundamentais de processamento de linguagem natural, técnicas de pré-processamento, modelos probabilísticos, arquiteturas transformer, técnicas avançadas de ajuste fino (fine-tuning), quantização, recuperação aumentada com geração (RAG), e uso de LLMs como agentes.

 

  1. OBJETIVOS ESPECÍFICOS

Estudar os fundamentos teóricos de processamento de linguagem natural. Pesquisar sobre os diferentes modelos de linguagem e arquiteturas de LLMs disponíveis. Entender o efeito dos termos do contexto no resultado gerado (engenharia de prompt. Explorar a estrutura e funcionamento de redes neurais por exemplos práticos. Investigar a arquitetura dos Transformers em detalhes. Implementar treinamento contínuo e fine-tuning em LLMs com datasets de biotecnologia. Entender as implicações do uso de LLMs com relação a eficiência e custos energéticos. Utilizar LLMs como agentes inteligentes. Conhecer casos de uso práticos de LLMs.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • ALAMMAR, Jay; Grootendorst, Maarten. “Hands-On Large Language Models. 1st Ed. O’Reilly Media 2024.

  • JURAFSKY, Daniel; MARTIN, James H. Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition. 3rd ed. Prentice Hall, 2023.

  • RASCHKA, Sebastian. Build a Large Language Model from Scratch. 1st Ed. Manning Publications, 2024.

  • CHOLLET, François. Deep Learning with Python. 2nd ed. Manning Publications, 2021.

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • GOODFELLOW, Ian; BENGIO, Yoshua; COURVILLE, Aaron. Deep Learning. MIT Press, 2016.

  • RUSSELL, Stuart; NORVIG, Peter. Artificial Intelligence: A Modern Approach. 4th ed. Pearson, 2021.

  • BROWN, Tom B.; MANN, Benjamin; RYDER, Nick; SUBBIAH, Melanie; KAPLAN, Jared; DHARIWAL, Prafulla; NEELAKANTAN, Arvind; SHYAM, Pranav; SASTRY, Girish; ASKELL, Amanda; AGARWAL, Sandhini; HERBERT-VOSS, Ariel; KRUEGER, Gretchen; HENIGHAN, Tom; CHILD, Rewon; RAMESH, Aditya; ZIEGLER, Daniel M.; WU, Jeffrey; WINTER, Clemens; HESSE, Christopher; CHEN, Mark; SIGLER, Eric; LITWIN, Mateusz; GRAY, Scott; CHESS, Benjamin; CLARK, Jack; BERNER, Christopher; McCANDLISH, Sam; RADFORD, Alec; SUTSKEVER, Ilya; AMODEI, Dario; Language Models are Few-Shot Learners. In: Advances in Neural Information Processing Systems, 2020.

  • DEVLIN, Jacob; CHANG, Ming-Wei; LEE, Kenton; TOUTANOVA, Kristina; BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. In: NAACL-HLT, 2019.

  • LEWIS, Patrick; PEREZ, Ethan; PIKTUS, Aleksandra; PETRONI, Fabio; KARPUKHIN, Vladimir; GOYAL, Naman; KÜTTLER, Heinrich; LEWIS, Mike; YIH, Wen-tau; ROCKTÄSCHEL, Tim; RIEDEL, Sebastian; KIELA, Douwe. Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks. In: Advances in Neural Information Processing Systems, 2020.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC257

Aprendizado de Máquina II

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC253 Ciência de Dados

Engenharia de Software

Eletiva

ICC253 Ciência de Dados

Inteligência Artificial

Obrigatória

ICC253 Ciência de Dados

Tecnologia da Informação

Eletiva

ICC253 Ciência de Dados

 

  1. EMENTA

Métodos não supervisionados: agrupamento e associação. Interpretabilidade e Explicabilidade de Modelos. Aprendizado por Reforço: conceitos fundamentais e formalismos (processos de decisão de Markov e equação de Bellman);  exploração versus aproveitamento; métodos baseados em valor; métodos baseados em política; métodos baseados em modelo, incluindo os que combinam valor e política; aprendizado profundo por reforço com ênfase em autoaprendizado

 

  1. OBJETIVOS GERAIS

Compreender os fundamentos teóricos e práticos de métodos não supervisionados e os baseados em aprendizado por reforço, além de técnicas de interpretabilidade e explicabilidade de modelos de aprendizado de máquina em geral. Reconhecer as abordagens mais adequadas para diferentes cenários de aplicação.

 

  1. OBJETIVOS ESPECÍFICOS

Aplicar algoritmos de agrupamento e associação para identificar padrões e estruturas em dados. Interpretar técnicas de interpretabilidade e explicabilidade para aumentar a transparência dos modelos. Desenvolver modelos de aprendizado por reforço. Avaliar estratégias de exploração versus aproveitamento para otimizar a tomada de decisão em ambientes dinâmicos. Implementar métodos baseados em valor, em política e baseados em modelo. Experimentar técnicas de aprendizado profundo por reforço e suas aplicações mais atuais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • ALPAYDIN, Ethem. Introduction to machine learning. 4ed. Cambridge: MIT Press, 2020. ISBN 978-0-262-04379-3.

  • LAPAN, Maxim. Deep reinforcement learning hands-on: A practical and easy-to-follow guide to RL from Q-learning and DQNs to PPO and RLHF. 3. ed. Birmingham: Packt Publishing, 2024. ISBN 978-1-83588-270-2.

  • MUNN, Michael; PITMAN, David. Explainable AI for practitioners: Designing and implementing explainable machine learning solutions. 1. ed. Sebastopol: O'Reilly Media, 2022. ISBN 978-1-098-11913-3.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SUTTON, Richard S.; BARTO, Andrew G. Reinforcement learning: an introduction. 2. ed. Cambridge: MIT Press, 2018. ISBN 978-0-262-03924-6.

  • ALBRECHT, Stefano V.; CHRISTIANOS, Filippos; SCHÄFER, Lukas. Multi-agent reinforcement learning: Foundations and modern approaches. Cambridge: MIT Press, 2024. ISBN 978-0-262-04937-5.

  • BISHOP, Christopher M.; BISHOP, Hugh. Deep learning: foundations and concepts. Cham: Springer, 2024. ISBN 978-3-031-45467-7.

  • GÉRON, Aurélien. Mãos à obra: aprendizado de máquina com Scikit-Learn, Keras & TensorFlow: conceitos, ferramentas e técnicas para a construção de sistemas inteligentes. Rio de Janeiro: Alta Books, 2021. ISBN 978-85-508-1548-0.

  • ZHANG, Aston; LIPTON, Zachary C.; LI, Mu; SMOLA, Alexander J. Dive into deep learning. Cambridge: Cambridge University Press, 2023. ISBN 978-1-009-38943-3.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC259

Inteligência Artificial Multimodal

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC256 Aprendizado de Máquina I

Engenharia de Software

Eletiva

ICC256 Aprendizado de Máquina I

Inteligência Artificial

Obrigatória

ICC256 Aprendizado de Máquina I

Tecnologia da Informação

Eletiva

ICC256 Aprendizado de Máquina I

 

  1. EMENTA

Conceitos fundamentais relacionados ao aprendizado de máquina multimodal. Aprendizado de Representação. Tradução, mapeamento e alinhamento de modalidade. Raciocínio conjunto e compreensão de imagens/vídeos, texto, áudio e outras modalidades. Modelos Multimodais. Fusão de Modelos. Composição de Modelos.

 

  1. OBJETIVOS GERAIS

 Compreender conceitos e técnicas de aprendizado de máquina multimodal abordando alguns dos principais objetivos da inteligência artificial ao integrar e modelar duas ou mais modalidades de dados. Conhecer diferentes métodos de integração de diferentes modalidades em um sistema de representação ou raciocínio compartilhado, incluindo texto, áudio, imagens/vídeos e outras modalidades. Avaliar e aplicar métodos de aprendizado de máquina multimodal em tarefas práticas.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os principais conceitos e métodos de integração e modelagem de múltiplas modalidades comunicativas, incluindo mensagens linguísticas, acústicas e visuais. Aplicar métodos de aprendizado de máquina multimodal dada a heterogeneidade dos dados e a contingência frequentemente encontrada entre as modalidades. Compreender e aplicar conceitos matemáticos fundamentais relacionados a modelos multimodais, incluindo alinhamento e fusão multimodal, aprendizado de representação heterogênea e modelagem temporal. Aplicar métodos multimodais em problemas reais. Combinar e estender o conhecimento adquirido considerando os desafios atuais e futuros.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RUSSELL, Stuart; NORVIG, Peter. Inteligência Artificial: Uma Abordagem Moderna, 4ed. Editora GEN LTC, 2022. ISBN 9788595158870.

  • FACELI, Katti et al. Inteligência artificial: uma abordagem de aprendizado de máquina, 2ª Edição. Editora LTC, 2021. ISBN 978-8521637349.

  • GABRIEL FILHO, Oscar. Inteligência artificial e aprendizagem de máquina : aspectos teóricos e aplicações. Editora Blucher, 2023. ISBN 9786555066203

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BISHOP, C. M., BISHOP, H. & Cham, S. Deep Learning - Foundations and Concepts. Editora Springer, 2023. ISBN: 9783031454684.

  • SINGH, A., SINGH, K.K. Multimodal Generative AI. Editora Springer, 2025. ISBN 9789819623549.

  • KAMATH, U., GRAHAM K., EMARA W. Transformers for Machine Learning: A Deep Dive. Editora Chapman and Hall/CRC, 2022. ISBN 9781003170082.

  • TORRALBA, A., ISOLA, P., FREEMAN, W. T. Foundations of Computer Vision. Editora MIT Press, 2024. ISBN: 9780262048972

  • ŠKRLJ, B. From Unimodal to Multimodal Machine Learning: An Overview. Editora Springer Cham, 2024. ISBN: 9783031570155.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC261

Sistemas Multiagentes

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Engenharia de Software

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Inteligência Artificial

Obrigatória

ICC260 Fundamentos de Inteligência Artificial

Tecnologia da Informação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

 

  1. EMENTA

Agentes Inteligentes: Introdução aos agentes inteligentes. Definição. Arquiteturas: reativa, deliberativa, híbrida. Propriedades: raciocínio, aprendizagem, autonomia, proatividade, etc. Tipologia: agentes de interface, agentes de informação, sistemas heterogêneos. Sistemas Multiagente: Introdução aos sistemas inteligentes distribuídos. Comunicação. Padrões. Coordenação. Negociação. Planejamento distribuído. Votação. Leilões. Formação de coalizões. Tomada de decisão multiagente. Aplicações.

 

  1. OBJETIVOS GERAIS

Definir e explicar os conceitos fundamentais de agentes inteligentes e sistemas multiagentes, incluindo arquiteturas, propriedades e tipologias. Implementar e aplicar algoritmos centrais em sistemas multiagentes para resolver problemas práticos. Analisar e comparar técnicas de comunicação, planejamento distribuído e tomada de decisão. Projetar e desenvolver modelos de sistemas multiagentes para aplicações específicas. Criar e propor soluções para problemas em sistemas multiagentes, integrando múltiplas técnicas e estratégias.

 

  1. OBJETIVOS ESPECÍFICOS

Listas e explicar problemas e técnicas importantes na área de sistemas multiagentes. Explicar como funcionam os algoritmos centrais na área de sistemas multiagentes. Ser capaz de implementar algum algoritmo central na área de sistemas multiagentes. Avaliar e aplicar diferentes abordagens da teoria dos jogos. Projetar e utilizar leilões para alocação de recursos em um sistema multiagente. Modelar aspectos relevantes da tomada de decisão em sistemas multiagentes utilizando processos de decisão de Markov e lógica.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • SHOHAM, Yoav; LEYTON-BROWN, Kevin. Multiagent systems: Algorithmic, game-theoretic and logical foundations. Cambridge: Cambridge University Press, 2009. ISBN 9780521899437.

  • RUSSELL, Stuart; NORVIG, Peter. Inteligência artificial: uma abordagem moderna. 4ed. Rio de Janeiro: GEN LTC, 2022. ISBN 9788535237016.

  • HUTH, Michael; RYAN, Mark. Lógica em ciência da computação. 2. ed. Rio de Janeiro: LTC, 2008. ISBN 9788521616108.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • GARCEZ, Artur S. D'Avila; LAMB, Luís C.; GABBAY, Dov M. Neural-symbolic cognitive reasoning. 1st ed. Springer, 2009/2010. ISBN 978-3540732457.

  • BRATKO, Ivan. Prolog programming for artificial intelligence. 4th ed. Boston: Addison-Wesley, 2011. ISBN 978-0201416060.

  • ROSA, João Luís Garcia. Fundamentos da inteligência artificial. Rio de Janeiro: LTC, 2011. ISBN 9788521605935.

  • KOPEC, Danny; SHETTY, S.; PILEGGI, C. Artificial intelligence and their solutions. Mercury Learning and Information, 2014. ISBN 9781938549830.

  • SILVA, Ivan N.; SPATTI, Danilo H.; FLAUZINO, Rogério A. Redes neurais artificiais para engenharia e ciências aplicadas: curso prático. São Paulo: ArtLiber, 2010. ISBN 9788588098534.

 

 

 

7º PERÍODO - CICLO ESPECÍFICO

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC262

Inteligência Artificial Neurosimbólica

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Engenharia de Software

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Inteligência Artificial

Obrigatória

ICC260 Fundamentos de Inteligência Artificial

Tecnologia da Informação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

 

  1. EMENTA

Breve revisão de Lógicas clássicas e não-clássicas para IA Neurosimbólica, Anotações e programas generalizados elementos sintáticos e suas semântica de reticulado inferior. Arquiteturas clássicas de Redes Neurais Artificiais (RNA) e suas limitações: Redes Recorrentes, Redes Convolutivas, Redes Neurais de Grafos, Modelos Neuro-Simbólicos Clássicos (KBANN, CILP, LTN, etc), Modelos Neurosimbólicos para Incerteza (LBM, LNN, ProbLog, etc). Aprendizado com restrição-δILP, SATNet: MAXSAT, Symbol Grounding. Máquinas Gerativas Neurosimbólicas. Aplicações e seminários.

 

  1. OBJETIVOS GERAIS

Integrar lógica simbólica (clássica, fuzzy, modal) e redes neurais em sistemas neuro-simbólicos, capacitando os alunos a projetar modelos explicáveis, capazes de raciocínio estruturado, aprendizado relacional e generalização em domínios complexos, com aplicações em visão computacional, NLP, AI generativa e tomada de decisão ética.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender fundamentos teóricos: Unificar lógica proposicional, de primeira ordem e não clássica (fuzzy, modal, intuicionista) com arquiteturas neurais. Analisar técnicas de symbol grounding e anotações em redes semânticas. Implementar sistemas neuro-simbólicos. Desenvolver modelos como LTN (Logic Tensor Networks), LNN (Logical Neural Networks), LBM (Logical Boltzmann Machines) e NeurASP. Aplicar Differentiable Inductive Logic Programming (δILP) e SATNet para aprendizado com restrições. Explorar raciocínio avançado e modelos de aprendizado de máquina autorregressivos na geração de informação aplicado a commonsense reasoning, planejamento e explicabilidade. Aplicar em casos reais para desenvolver soluções para desafios como Visual Question Answering (VQA) e Vídeo Understanding, detecção de fake news.

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • GARCEZ, Artur S. D’Avila; LAMB, Luís C.; GABBAY, Dov M. Neural-Symbolic Cognitive Reasoning. 1. ed. Berlin: Springer, 2009. ISBN-13: 978-3642092299.

  • SHAKARIAN, Paulo; BARAL, Chitta; SIMARI, Gerardo I.; XI, B.; POKALA, L. Neuro Symbolic Learning and Reasoning.  SpringerBriefs in Computer Science. Springer, 2023. ISBN-13:978-3031391781

  • BHUYAN, Bikram Pratim; RAMDANE-CHERIF, Amar; SINGH, Thipendra P. Neuro-Symbolic Artificial Intelligence: Bridging Logic and Learning. (Studies in Computational Intelligence, 1176). Singapore: Springer, dezembro 2024. ISBN-13: 978-9819781706.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • DE RAEDT, Luc. Logical and Relational Learning. Berlin: Springer-Verlag, 2008.

  • GETOOR, Lise; TASKAR, Ben. Introduction to Statistical Relational Learning. Cambridge: The MIT Press, 2007.

  • GARCEZ, Artur S. D’Avila; BRODA, Krysia B.; GABBAY, Dov M. Neural-Symbolic Learning Systems: Foundations and Applications. Berlin: Springer, ago. 2002. ISBN-13: 978-1852335120.

  • DINGLI, Alexiei; FARRUGIA, David. Neuro-Symbolic AI: Design Transparent and Trustworthy Systems That Understand the World as You Do. Birmingham: Packt Publishing, maio 2023. ISBN-13: 978-1804617625.

  • HITZLER, Pascal; SARKER, K. (Ed.). Neuro-Symbolic Artificial Intelligence: The State of the Art. (Frontiers in Artificial Intelligence and Applications, 342). Amsterdam: IOS Press, jan. 2022. ISBN-13: 978-1643682440.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC263

Robótica

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC027 Programação Orientada a Objetos

Engenharia de Software

Eletiva

ICC027 Programação Orientada a Objetos

Inteligência Artificial

Obrigatória

ICC027 Programação Orientada a Objetos

Tecnologia da Informação

Eletiva

ICC027 Programação Orientada a Objetos

 

  1. EMENTA

Introdução à robótica e suas aplicações. Arquiteturas robóticas: reativas vs. deliberativas. Simulação de robôs: ferramentas e técnicas. Introdução ao Robot Operating System (ROS). Planejamento e controle de movimento. Localização e mapeamento (SLAM). Percepção e fusão sensorial. Aprendizado de máquina aplicado à robótica. Implementação e experimentação em simuladores e ambientes reais. Introdução ao Aprendizado por Reforço aplicado a robótica.

 

  1. OBJETIVOS GERAIS

Compreender fundamentos teóricos e práticos em robótica, desde conceitos básicos até aplicações avançadas. Aplicar técnicas para modelar, analisar e controlar robôs em contextos diversos. Avaliar soluções para problemas reais por meio de projetos práticos. Criar sistemas robóticos funcionais, integrando conhecimentos multidisciplinares para enfrentar demandas complexas da área.

 

  1. OBJETIVOS ESPECÍFICOS

Modelar um robô como um agente capaz de se mover em um ambiente de operação. Criar programas em Python ou em C++ para o robô de forma que ele seja capaz de executar tarefas pré-definidas. Validar, Verificar e Testar a execução das tarefas em ambientes de simulação e reais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • QUIGLEY, Morgan; GERKEY, Brian; SMART, William D. Programming robots with ROS: a practical introduction to the Robot Operating System. Sebastopol: O'Reilly, 2015. ISBN 978-1-449-32389-9.

  • CACACE, Jonathan. Ultimate robotics programming with ROS 2 and Python: design, develop, and implement intelligent robotics applications with advanced navigation, and industrial robots. [S.l.]: [s.n.], 2024. ISBN 978-9-348-10795-4.

  • THRUN, Sebastian; BULGARD, Wolfram; FOX, Dieter. Probabilistic robotics. Cambridge: MIT Press, 2005. ISBN 978-0-262-20162-9.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • JOSEPH, Lentin. Robot Operating System (ROS) for absolute beginners: robotics programming made easy. New York: Apress, 2018. ISBN 978-1-484-23404-4.

  • RENARD, Edouard. ROS 2 from scratch: get started with ROS 2 and create robotics applications with Python and C++. [S.l.]: [s.n.], 2024. ISBN 978-1-835-88140-8.

  • ZHANG, Aston; LIPTON, Zachary C.; LI, Mu; SMOLA, Alexander J. Dive into deep learning. Cambridge: Cambridge University Press, 2023. ISBN 978-1-009-38943-3.

  • DUDEK, Gregory,; JENKIN, Michael. Computational principles of mobile robotics. 2nd ed. New York: Cambridge University Press, 2010. xiii, 391 p. ISBN 9780521871570.

  • CHOSET, Howie; LYNCH, Kevin M.; HUTCHINSON, Seth; KANTOR, George A.; BURGARD, Wolfram. Principles of robot motion: theory, algorithms, and implementations. Cambridge: Bradford Books, 2005. ISBN 978-0262033275.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC404

Gerência de Projetos

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC431 Engenharia de Software II

Engenharia de Software

Obrigatória

ICC431 Engenharia de Software II

Inteligência Artificial

Obrigatória

ICC431 Engenharia de Software II

Tecnologia da Informação

Eletiva

ICC431 Engenharia de Software II

 

  1. EMENTA

O conceito e os objetivos da gerência de projetos. Abertura e definição do escopo de um projeto. Planejamento de um projeto. Adaptação do processo de desenvolvimento para a Gerência de Projeto. Execução, acompanhamento e controle de um projeto. Revisão e avaliação de um projeto. Fechamento de um projeto. Metodologias, técnicas e ferramentas da gerência de projetos. Modelo de gerenciamento de projeto do Project Management Institute. Gerência de Portfólio. Métodos Ágeis e o Gerenciamento de Projetos.

 

  1. OBJETIVOS GERAIS

Explicar, analisar e aplicar os fundamentos do gerenciamento de projetos de desenvolvimento, explorando técnicas, comportamentos, requisitos, métricas e fases do ciclo de vida de um projeto. Além disso, avaliar e utilizar ferramentas práticas e promover discussões que conectem os conceitos teóricos à prática profissional.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar grupos de processos, suas áreas de conhecimento e seus respectivos artefatos. Explicar qual o papel do gerente de projetos em uma organização de desenvolvimento de software. Distinguir entre processo de desenvolvimento de software e o arcabouço de gerenciamento de projetos para poder projetar os artefatos comuns entre os dois.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • PROJECT MANAGEMENT INSTITUTE. Um guia do Conjunto de Conhecimentos em Gerenciamento de Projetos (PMBOK Guide). 3ª ed, 2004.

  • HELDMAN, K. Gerência de projetos: Guia para o exame oficial do PMI. Tradução de Edson Furmankiewicz. Rio de Janeiro, 2003. 5ª Reimpressão. ISBN 9788535235685

  • PFEIFFER, P. Gerenciamento de Projetos de Desenvolvimento: conceitos, instrumentos e aplicações. Rio de Janeiro: Brasport, 2005. ISBN 9788574522104

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FIORINI, S. T., STAA. A. V., BAPTISTA, R. M. Engenharia de Software com CMM, Rio de Janeiro: Brasport, 1998. ISBN 9788585840846

  • KOSCIANSKI, A. SOARES, M. S. Qualidade de Software, 2ª ed. São Paulo: Novatec Editora, 2007. ISBN 9788575221129

  • SOMERVILLE, I. Engenharia de Software, 9ª ed. São Paulo: Pearson, 2011. ISBN  9788579361081

  • PRESSMAN, R. S. Engenharia de Software.  São Paulo:  McGraw-Hill, 2006. ISBN 9788586804571

  • CAMARGO, R. A. D.; RIBAS, T. Gestão ágil de projetos. São Paulo: Saraiva, 2019. ISBN: 978-8553131877

 

 

 

8º PERÍODO - CICLO ESPECÍFICO

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC103

Empreendedorismo em Informática

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

 

  1. EMENTA

Conceito de empreendedorismo. Perfil do empreendedor. Desafios, Atitudes e Habilidades. A Empresa. Negócios baseados em tecnologia. Formas de empresas. Identificação de oportunidades de negócios de base tecnológica. Análise de mercado. Concepção de produtos e serviços. Valor agregado. Estratégias competitivas. Conceito de oferta e demanda. Mercados. Setores empresariais. Marketing. Finanças e custos. Plano de Negócios. Capital de Risco e seus mecanismos de acesso. Fomento público a iniciativas empreendedoras.

 

  1. OBJETIVOS GERAIS

Compreender os fundamentos do empreendedorismo e sua aplicação no contexto da tecnologia da informação. Desenvolver a capacidade de identificar e avaliar oportunidades de negócios inovadores. Adquirir conhecimentos sobre o ecossistema empreendedor e as fontes de financiamento. Transformar os estudantes em atores conscientes no cenário de mudanças da economia mundial. Reconhecer a importância e benefícios do empreendedorismo de base tecnológica para a sociedade.

 

  1. OBJETIVOS ESPECÍFICOS

Despertar o interesse pela criação do próprio negócio. Analisar as tendências do mercado de tecnologia e identificar oportunidades de negócio. Elaborar um canvas model e outros modelos de negócios para empresas de tecnologia. Elaborar planos de negócios consistentes para empresas de tecnologia. Realizar projeções financeiras e análises de viabilidade econômica. Identificar as principais fontes de financiamento para startups.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • DOLABELA Chaves, Fernando Celso. O Segredo de Luísa – uma Ideia, uma Paixão e um Plano de Negócios: como nasce o empreendedor e se cria uma empresa. Editora Sextante, 2008. ISBN: 9788575423387

  • DORNELAS, José Carlos Assis. Empreendedorismo: Transformando Ideias em Negócios, 3ª edição. Elsevier, 2008. ISBN 9788535247589.

  • PESCE, Bel. A Menina do Vale. Ed. Casa da Palavra, 2012. ISBN 9788577342808.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • CHIAVENATO, Idalberto. Dando Asas ao Espírito Empreendedor. Ed. Manole, 2012. ISBN 978-8520432778.

  • FERRARI, Roberto. Empreendedorismo para Computação: Criando Negócios de Tecnologia. Editora Campus, 2009. ISBN 978-8535234176.

  • GALLAGHER, L. A história da Airbnb. Buzz Editora. 2018. ISBN 978-8593156380.

  • VIDAL, Camila. Como criar o seu negócio do zero. HarperCollins. 2022. ISBN 978-6555112764.

  • RAZ, G. A Jornada do Empreendedor. Editora Benvirá. 2023. ISBN 978-6558101369.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC106

Computação, Ética e Sociedade

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

Engenharia de Software

Obrigatória

Inteligência Artificial

Obrigatória

Tecnologia da Informação

Obrigatória

 

  1. EMENTA

Impactos da tecnologia na sociedade, com foco em aspectos éticos, ambientais, e sociais. Liberdade de expressão, desinformação e seus efeitos sobre grupos étnico-raciais, minorias e direitos humanos. Privacidade, liberdades civis, e a proteção de dados pessoais, em especial de grupos vulneráveis. Segurança, leis, crimes cibernéticos e questões de propriedade intelectual, incluindo o reconhecimento e proteção de conhecimentos tradicionais e culturais de povos afro-brasileiros e indígenas. Trabalho, carreira, formação profissional, e a inclusão de diversidade racial e de gênero no setor de TI. Controle e uso da tecnologia pela sociedade, com destaque para tecnologias que promovem inclusão digital, acessibilidade, sustentabilidade ambiental e enviesamento algorítmico. Riscos e consequências dos erros e falhas em sistemas, considerando o impacto  na comunidade e grupos vulneráveis. Ética e Responsabilidade profissional, promovendo o desenvolvimento de soluções tecnológicas inclusivas e sustentáveis. Integração dos princípios de sustentabilidade, diversidade, equidade, inclusão e acessibilidade, explorando como a tecnologia pode ser uma ferramenta de transformação social e ambiental. Design Universal; Ferramentas de Acessibilidade; Acessibilidade em Desenvolvimento de Software, Linguagens de Programação e Acessibilidade. Temas emergentes em impactos éticos e sociais da Computação.

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades de um profissional de informática comprometido com a solução de problemas culturais, éticos, ambientais e sociais na comunidade em que atua. Compreender a sua função social como profissional de informática para o desenvolvimento socioeconômico da sua região e do País. Identificar potenciais impactos das novas tecnologias de informação e comunicação nas comunidades e sociedades regionais. Compreender as principais questões éticas, sociais e ambientais relacionadas à informática e às tecnologias digitais. Analisar o impacto das tecnologias da informação na sociedade, com ênfase em direitos humanos, inclusão e sustentabilidade. Desenvolver uma postura crítica e ética em relação ao uso, desenvolvimento e gestão de tecnologias da informação.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os principais desafios éticos envolvidos no uso da tecnologia da informação, incluindo privacidade, segurança e direitos digitais. Analisar como as tecnologias digitais impactam a inclusão social e a acessibilidade para populações vulneráveis, como a população LGBTQIAPN+, pessoas com deficiência, povos originários e outros grupos étnico-raciais. Avaliar o papel da informática na promoção da sustentabilidade, focando em mudanças climáticas e preservação da biodiversidade. Aplicar princípios éticos e regulatórios em situações práticas relacionadas ao desenvolvimento e uso de software e sistemas informáticos. Propor soluções tecnológicas que promovam a inclusão, respeitem a diversidade e contribuam para a preservação ambiental e equidade social. Refletir sobre o impacto das decisões tecnológicas no ambiente de trabalho, promovendo ética profissional e respeito às diferenças. Explorar os desafios de inteligência artificial e automação no que diz respeito à responsabilidade ética, privacidade e impactos sociais. Criticar as implicações das tecnologias da informação no fortalecimento ou mitigação de desigualdades sociais, econômicas e culturais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BAASE, Sara; HENRY, Timothy M. A Gift of Fire: Social, Legal, and Ethical Issues for Computing Technology. 5. ed. Pearson, 2021. ISBN 9780137501946.

  • JOHNSON, Deborah G. Computer Ethics. 4ed. Pearson, 2008. ISBN 9780131112414.

  • Masiero, P. C. Ética em Computação. Editora da Universidade de São Paulo, 2000. ISBN 13: 978-85-314-0575-4

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FLORIDI, Luciano. The Ethics of Artificial Intelligence: Principles, Challenges, and Opportunities. Oxford University Press, 2023. ISBN 9780198883098.

  • BODDINGTON, Paula. AI Ethics: A Textbook. Artificial Intelligence: Foundations, Theory, and Algorithms. Springer Singapore, 2023.

  • MACIEL, Cristiano (ed.); VITERBO, José (ed.). Computação e Sociedade: A Profissão - Volume 1. 1. ed. UFMT; UFF, 2020. ISBN 978-65-5588-0. Disponível em https://books-sol.sbc.org.br/index.php/sbc/catalog/book/73

  • MACIEL, Cristiano (ed.); VITERBO, José (ed.). Computação e Sociedade: A Sociedade - Volume 2. 1. ed. UFMT; UFF, 2020. ISBN 978-65-5588-047-2.46-5. Disponível em https://books-sol.sbc.org.br/index.php/sbc/catalog/book/74

  • MACIEL, Cristiano (ed.); VITERBO, José (ed.). Computação e Sociedade: A Tecnologia - Volume 3. 1. ed. UFMT; UFF, 2020. ISBN 978-65-5588-048-9. Disponível em https://books-sol.sbc.org.br/index.php/sbc/catalog/book/75

  • ASSOCIATION FOR COMPUTING MACHINERY (ACM). Code of Ethics and Professional Conduct. 2022. Disponível em: https://www.acm.org/code-of-ethics.

  • SOCIEDADE BRASILEIRA DE COMPUTAÇÃO (SBC). Código de Ética. 2024 Disponível em: https://www.sbc.org.br/institucional-3/codigo-de-etica

  • MELO, Elisabete; BRAGA, Luciano. História da África e afro-brasileira: em busca de nossas origens. São Paulo: Selo Negro, 2010. ISBN 978858748405.

  • LEITÃO, Maria do Rosário de Fátima Andrade; CRUZ, Maria Helena Santana. Gênero e trabalho: diversidade de experiências em educação e comunidades tradicionais. Florianópolis, SC: Mulheres, 2012. ISBN 9788580470130.

  • HORTON, Sarah; QUESENBERY, Whitney. A Web for Everyone: Designing Accessible User Experiences. Brooklyn: Rosenfeld Media, 2014. ISBN  978-1933820972

  • World Wide Web Consortium (W3C). Diretrizes de Acessibilidade para Conteúdo Web (WCAG) 2.1,  05 de Junho de 2018. Disponível em https://www.w3c.br/traducoes/wcag/wcag21-pt-BR/

  • JAFELICE, Luiz Carlos. Educação científica decolonial: incluindo o imensurável, inefável, improvável. São Paulo: Pimenta Cultural, 2023. Livro em PDF. ISBN 978-65-5939-838-6. Disponível em https://doi.org/10.31560/pimentacultural/2023.98386

  • SARLET, G. B. S.; FAGGIANI, V.; D’ÁVILA, C.D.B. (orgs.). Tecnologia e Antidiscriminação. Londrina, PR; Thrth, 2024. ISBN: 978-65-5959-947-9

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC150

Trabalho de Conclusão de Curso

5.0.5.0

0h

150h

0h

150h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC107 Metodologia Científica em Computação

ICC431 Engenharia de Software II

Engenharia de Software

Obrigatória

ICC107 Metodologia Científica em Computação

ICC431 Engenharia de Software II

Inteligência Artificial

Obrigatória

ICC107 Metodologia Científica em Computação

ICC431 Engenharia de Software II

Tecnologia da Informação

Obrigatória

ICC107 Metodologia Científica em Computação

ICC431 Engenharia de Software II

     

  1. EMENTA

Especificação e desenvolvimento do trabalho final de graduação, por meio de pesquisa e documentação adequadas. Apresentação de um texto, de autoria própria ou de autoria principal, em caso de colaboração, como resultado do trabalho da pesquisa ou do desenvolvimento. Apresentação oral de trabalho acadêmico.

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades socioemocionais (resiliência, proatividade, pontualidade, compromisso) para elaborar e executar projetos de pesquisa ou de desenvolvimento de sistemas computacionais. Aplicar conhecimentos técnicos e teóricos na resolução de problemas da área de Computação. Promover a capacidade de comunicação científica por meio da escrita e apresentação de trabalhos acadêmicos.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar temas relevantes para pesquisa na área de Computação. Formular problemas de pesquisa e hipóteses. Selecionar e aplicar métodos e técnicas adequados para a investigação científica. Analisar e sintetizar informações a partir de revisão bibliográfica. Desenvolver soluções ou propostas inovadoras com base em evidências científicas. Redigir textos acadêmicos conforme normas técnicas e éticas. Apresentar e defender o trabalho de forma clara e coerente perante uma banca examinadora.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WAZLAWICK, Raul. Metodologia de pesquisa para ciência da computação. 3. ed. Rio de Janeiro: GEN LTC, 2021. ISBN 978-8595151093

  • MARCONI, Marina de Andrade; LAKATOS, Eva Maria; MEDEIROS, João Bosco. Metodologia do trabalho científico: projetos de pesquisa, pesquisa bibliográfica, teses de doutorado, dissertações de mestrado, trabalhos de conclusão de curso. 8. ed. São Paulo, SP: Atlas, c2017. xiv, 239 p. ISBN 9788597010664 (broch.).

  • POLITO, Rachel. Superdicas para um trabalho de conclusão de curso nota 10. São Paulo, SP: Saraiva, 2008. 136 p. (Superdicas). ISBN 9788502076396.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PROPESP, UFAM. Manual de Normatização de Trabalhos Acadêmicos. Manaus: EDUA, 2017. ISBN 978-85-7401-918-5. URI: https://edoc.ufam.edu.br/handle/123456789/9331

  • SAUTCHUK, Inez. Perca O Medo De Escrever – Da Frase Ao Texto. 2ed. São Paulo: Saraiva, 2017. ISBN 978-8547218089.

  • ECO, Umberto. Como se faz uma tese. 25. ed. São Paulo, SP: Perspectiva, 2014. xxii, 207 p. (Estudos. Metodologia; v. 85). ISBN 9788527300797.

  • GIL, Antônio Carlos. Como elaborar projetos de pesquisa. 6. ed. São Paulo, SP: Atlas, c2017. xvi, 173 p. ISBN 9788597012613.

  • MANZANO, A. L. N. G.; MANZANO, M. I. N. G. Trabalho de Conclusão de Curso. São Paulo: Saraiva, 2017. E-book. ISBN 9788536524917

  • FACHIN, Odília. Fundamentos de Metodologia: Noções básicas de metodologia. 6. ed. São Paulo: Saraiva, 2017. E-book. ISBN 9788502636545.

  • MATTAR NETO, Joao Augusto. Metodologia Científica na era Digital. 4ed. São Paulo: Saraiva, 2017. E-book. ISBN 9788547220327

 

 

 

ELETIVAS - CICLO BÁSICO

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEC082

Cálculo Numérico

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

IEM075 Cálculo Diferencial e Integral I

Engenharia de Software

Eletiva

IEM075 Cálculo Diferencial e Integral I

Inteligência Artificial

Eletiva

IEM075 Cálculo Diferencial e Integral I

Tecnologia da Informação

Eletiva

IEM075 Cálculo Diferencial e Integral I

 

  1. EMENTA

Sistemas Numéricos: Representação e manipulação de números em sistemas de ponto flutuante. Erros de arredondamento e truncamento. Sistemas Lineares: Métodos numéricos para resolver sistemas lineares, incluindo métodos diretos e iterativos. Interpolação: Interpolação polinomial e suas aplicações. Quadrados Mínimos Lineares: Aplicação dos mínimos quadrados para encontrar uma função que melhor se ajusta a um conjunto de dados. Zeros de Funções Reais: Métodos de busca de raízes de funções, como o método da bisseção, método de Newton-Raphson e método da secante. Integração Numérica: Métodos numéricos para calcular integrais definidas, como regra do trapézio, regra de Simpson e quadratura Gaussiana.

 

  1. OBJETIVOS GERAIS

 Compreender os princípios teóricos por trás dos métodos numéricos abordados. Desenvolver habilidades na implementação computacional desses métodos. Aplicar os métodos numéricos para resolver problemas práticos em diversas áreas da ciência e engenharia.

 

  1. OBJETIVOS ESPECÍFICOS

Representar números em sistemas de ponto flutuante e identificar fontes de erros como arredondamento e truncamento. Comparar métodos diretos e iterativos para resolver sistemas lineares, como eliminação de Gauss e métodos de Jacobi e Gauss-Seidel. Construir polinômios interpoladores para aproximação de funções e analisar seus erros. Aplicar o método dos mínimos quadrados para ajustar funções a conjuntos de dados. Implementar métodos numéricos para encontrar raízes de funções, como bisseção, Newton-Raphson e secante. Calcular integrais definidas utilizando técnicas como regra do trapézio, Simpson e quadratura Gaussiana. Interpretar resultados numéricos criticamente, considerando limitações e possíveis otimizações.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CAMPOS FILHO, Frederico. Algoritmos Numéricos, 2 ed. Rio de Janeiro: LTC, 2007.

  • ARENALES, Selma; DAREZZO FILHO, Artur. Cálculo numérico: aprendizagem com apoio de software. São Paulo: Thomson, 2008.

  • CLÁUDIO, Dalcídio Moraes; MARINS, Jussara Maria. Cálculo numérico computacional: teoria e prática, 3 ed. São Paulo: Atlas, 2000.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • RUGGIERO, Márcia A. Gomes; LOPES, Vera Lúcia da Rocha. Cálculo numérico: aspectos teóricos e computacionais, 2 ed. Pearson, 1997.

  • BARROSO, Leônidas Conceição. Cálculo numérico com aplicações, 2 ed. Harbra, 1987.

  • GILAT, Amos; SUBRAMANIAM, Vish. Métodos numéricos para engenheiros e cientistas. Porto Alegre: Bookman, 2008.

  • PUGA, Leila; TARCIA, José Henrique; PAZ, Álvaro. Cálculo Numérico. São Paulo: LCTE, 2012.

  • CHAPRA, Steve C.; CANALE, Raymond P. Métodos numéricos para engenharia. 7. ed. Porto Alegre: AMGH, 2016.

  • DO COUTTO, Felipe A. Brown; DO COUTTO FILHO, Milton Brown. Métodos Numéricos: Fundamentos e Implementação Computacional. Elsevier: 2017.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IHE130

Inglês Instrumental I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Estudo do discurso em texto autênticos complexos, tanto de interesse geral quanto específico. Funções comunicativa do texto. Estratégias de leitura. Análise de partes complexas do sistema linguístico-gramatical da língua inglesa. Estudo de informação contida em gráficos, quadros estatísticos e diagramas.

 

  1. OBJETIVOS GERAIS

Capacitar o aluno a ler textos nativos em inglês de interesse geral e específico, utilizando técnicas e estratégias que facilitem a compreensão.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os marcos históricos da educação de surdos no Brasil. Diferenciar as abordagens oralistas, gestuais e bilíngues no ensino de Libras. Aplicar os princípios básicos da estrutura gramatical da Libras em contextos comunicativos. Demonstrar expressões corporais e faciais adequadas para a sinalização. Utilizar a dramatização e a música como recursos pedagógicos no ensino de Libras. Interpretar as leis e políticas públicas que asseguram a inclusão educacional de surdos. Discutir os desafios e avanços na implementação da educação bilíngue para surdos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • SILVA, A. V.; CRUZ, D. T.; ROSAS, M. Inglês.com: Textos para Informática, Com Respostas dos Exercícios. São Paulo: Disal, 2003.

  • GALLO, L. R. Inglês Instrumental para Informática: Módulo I. São Paulo: Ícone, 2008.

  • MARINOTTO, D. Reading On Info Tech. 2 ed. São Paulo: Novatec, 2007.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SCHUMACHER, C.; COSTA, F. A.; UCICH, R. O Inglês na Tecnologia da Informação. São Paulo: Disal, 2009.

  • MUNHOZ, R. Inglês Instrumental: Estratégias de Leitura I. São Paulo: Textonovo, 2001.

  • COSTA, G. C.; MELLO, L. F.; ABSY, C. A. Leitura em Língua Inglesa: Uma Abordagem Instrumental. 2 ed. São Paulo: Disal, 2010.

  • GUANDALINI, E. O. Técnicas de Leitura em Inglês: Estágio 1. São Paulo: Textonovo, 2002.

  • VELLOSO, M. S. Inglês Instrumental: Texto, V. 2. Brasília: Vestcon, 2011.

  • ARMER, T. Cambridge English for Scientists. Cambridge: Cambridge University Press, 2011.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC004

Algoritmos e Estrutura de Dados Avançados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

     

  1. EMENTA

Estruturas de dados temporais (persistência e retroatividade), estruturas de dados espaciais, hierarquia de memória, otimalidade dinâmica, hashing, filas de prioridade avançadas, grafos dinâmicos.

 

  1. OBJETIVOS GERAIS

Explorar algoritmos e estruturas de dados avançadas, envolvendo estruturas de dados temporais (persistência e retroatividade), estruturas de dados espaciais, hierarquia de memória, otimalidade dinâmica, hashing, filas de prioridade avançadas, grafos dinâmicos.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender e aplicar técnicas avançadas de projeto de algoritmos. Dominar estruturas de dados complexas e suas aplicações. Reconhecer, manipular e aplicar estruturas de dados avançadas na resolução de problemas. Desenvolver habilidades para analisar e otimizar algoritmos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • TARJAN, Robert E. Data Structures and Network Algorithms. Society for Industrial and Applied Mathematics, 1987. ISBN 978-1107669376.

  • KLEINBERG, J.; TARDOS, É. Algorithm Design. Addison-Wesley Longman Pub., 2005. ISSN: 978-0-321-29535-4.

  • KNUTH, D. E. The Art of Computer Programming. Addison-Wesley, 1997.

  • MORIN, Pat. Open Data Structures: An Introduction (OPEL: Open Paths to Enriched Learning). Athabasca University Press; 31st ed. ed., 2013. ISSN: 978-1927356388.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SEDGEWICK, Robert, WAYNE, Kevin. Algorithms, 4th Edition. Addison-Wesley Professional, 2011. ISBN 978-0321573513.

  • ZINGARO, Daniel. Algorithmic Thinking: Learn Algorithms to Level Up Your Coding Skills, 2nd Edition. No Starch Press, 2024. ISBN 978-1718503229.

  • LA ROCCA, Marcello. Advanced Algorithms and Data Structures. Manning, 2021. ISBN 978-1617295485.

  • MCDOWELL, Gayle Laakmann. Cracking the Coding Interview: 189 Programming Questions and Solutions, 6th edition. CareerCup, 2015. ISBN 978-0984782857.

  • KOPEC, David. Problemas Clássicos de Ciência da Computação com Python. Novatec Editora, 2019. ISBN 978-8575228050.

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 1: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745521

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 2: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745514.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC021

Prática em Programação I

2.2.0.0

30h

0h

0h

30h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Atividades práticas de técnicas de programação e estruturas de dados, a critério do docente.

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades práticas na implementação de soluções de software. Aplicar conceitos fundamentais de programação em situações práticas e projetos reais. Aprimorar a capacidade de resolver problemas complexos usando técnicas de programação. Colaborar em projetos de programação, exercitando trabalho em equipe e gestão de tempo.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar soluções de software utilizando diferentes linguagens de programação. Praticar técnicas de depuração e otimização de código. Integrar bibliotecas e frameworks para resolver problemas específicos. Desenvolver projetos colaborativos, utilizando controle de versão e boas práticas de desenvolvimento. Testar e validar o funcionamento correto de programas, aplicando metodologias de teste automatizado e manual. Corrigir erros e bugs no código de forma eficiente, utilizando ferramentas e técnicas apropriadas. Aplicar padrões de projeto e boas práticas de programação em implementações práticas. Aprimorar habilidades de leitura e manutenção de código legado em projetos de software. Documentar adequadamente o código desenvolvido, assegurando a clareza e a reprodutibilidade. Explorar diferentes abordagens de solução para problemas complexos de programação, comparando suas vantagens e desvantagens, bem como considerando aspectos éticos, sociais e ambientais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC022

Prática em Programação II

2.2.0.0

30h

0h

0h

30h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Atividades práticas de técnicas de programação e estruturas de dados, a critério do docente.

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades práticas na implementação de soluções de software. Aplicar conceitos fundamentais de programação em situações práticas e projetos reais. Aprimorar a capacidade de resolver problemas complexos usando técnicas de programação. Colaborar em projetos de programação, exercitando trabalho em equipe e gestão de tempo.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar soluções de software utilizando diferentes linguagens de programação. Praticar técnicas de depuração e otimização de código. Integrar bibliotecas e frameworks para resolver problemas específicos. Desenvolver projetos colaborativos, utilizando controle de versão e boas práticas de desenvolvimento. Testar e validar o funcionamento correto de programas, aplicando metodologias de teste automatizado e manual. Corrigir erros e bugs no código de forma eficiente, utilizando ferramentas e técnicas apropriadas. Aplicar padrões de projeto e boas práticas de programação em implementações práticas. Aprimorar habilidades de leitura e manutenção de código legado em projetos de software. Documentar adequadamente o código desenvolvido, assegurando a clareza e a reprodutibilidade. Explorar diferentes abordagens de solução para problemas complexos de programação, comparando suas vantagens e desvantagens, bem como considerando aspectos éticos, sociais e ambientais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC023

Prática em Programação III

2.2.0.0

30h

0h

0h

30h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Atividades práticas de técnicas de programação e estruturas de dados, a critério do docente.

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades práticas na implementação de soluções de software. Aplicar conceitos fundamentais de programação em situações práticas e projetos reais. Aprimorar a capacidade de resolver problemas complexos usando técnicas de programação. Colaborar em projetos de programação, exercitando trabalho em equipe e gestão de tempo.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar soluções de software utilizando diferentes linguagens de programação. Praticar técnicas de depuração e otimização de código. Integrar bibliotecas e frameworks para resolver problemas específicos. Desenvolver projetos colaborativos, utilizando controle de versão e boas práticas de desenvolvimento. Testar e validar o funcionamento correto de programas, aplicando metodologias de teste automatizado e manual. Corrigir erros e bugs no código de forma eficiente, utilizando ferramentas e técnicas apropriadas. Aplicar padrões de projeto e boas práticas de programação em implementações práticas. Aprimorar habilidades de leitura e manutenção de código legado em projetos de software. Documentar adequadamente o código desenvolvido, assegurando a clareza e a reprodutibilidade. Explorar diferentes abordagens de solução para problemas complexos de programação, comparando suas vantagens e desvantagens, bem como considerando aspectos éticos, sociais e ambientais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC024

Prática em Programação IV

2.2.0.0

30h

0h

0h

30h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Atividades práticas de técnicas de programação e estruturas de dados, a critério do docente.

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades práticas na implementação de soluções de software. Aplicar conceitos fundamentais de programação em situações práticas e projetos reais. Aprimorar a capacidade de resolver problemas complexos usando técnicas de programação. Colaborar em projetos de programação, exercitando trabalho em equipe e gestão de tempo.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar soluções de software utilizando diferentes linguagens de programação. Praticar técnicas de depuração e otimização de código. Integrar bibliotecas e frameworks para resolver problemas específicos. Desenvolver projetos colaborativos, utilizando controle de versão e boas práticas de desenvolvimento. Testar e validar o funcionamento correto de programas, aplicando metodologias de teste automatizado e manual. Corrigir erros e bugs no código de forma eficiente, utilizando ferramentas e técnicas apropriadas. Aplicar padrões de projeto e boas práticas de programação em implementações práticas. Aprimorar habilidades de leitura e manutenção de código legado em projetos de software. Documentar adequadamente o código desenvolvido, assegurando a clareza e a reprodutibilidade. Explorar diferentes abordagens de solução para problemas complexos de programação, comparando suas vantagens e desvantagens, bem como considerando aspectos éticos, sociais e ambientais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC030

Tópicos Especiais em Programação I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC031

Tópicos Especiais em Programação II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC032

Tópicos Especiais em Programação III

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC033

Tópicos Especiais em Programação IV

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC034

Tópicos Especiais em Programação V

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC035

Tópicos Especiais em Programação VI

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC036

Programação Competitiva I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Estratégias de resolução de problemas, técnicas de projeto de algoritmos, estruturas de dados básicas e avançadas, estratégias de competição, leitura técnica de textos, elaboração de especificação de problemas, reconhecimento de padrões e reaproveitamento de código, padronização e boas práticas de codificação, com abordagens individuais e formação de times para práticas de trabalho colaborativo em grupo.

 

  1. OBJETIVOS GERAIS

Desenvolver e potencializar a capacidade de resolução de problemas por computador, envolvendo a compreensão, especificação e modelagem de problemas  para serem bem resolvidos por computador, por meio de aplicação de técnicas de projeto de algoritmos e estrutura de dados, em diferentes abordagens e desafios.

 

  1. OBJETIVOS ESPECÍFICOS

Desenvolver habilidades para resolver problemas de programação desafiadores, típicos de competições de programação. Promover a boa tomada de decisão usando o ferramental computacional para a resolução de problemas, sob pressão, de modo a refinar habilidades essenciais para um resolvedor de problemas e desenvolvedor diferenciado, tanto para a academia científica quanto para o mercado de trabalho. Resolver problemas de competições de programação, simulando ambientes reais de maratonas e hackathons. Colaborar em equipes para resolver desafios complexos, desenvolvendo habilidades de trabalho em grupo. Manipular conteúdos e tópicos computacionais essenciais para a resolução eficiente de problemas algorítmicos, com foco em competições como Olimpíadas de Informática, Maratonas de Programação e outras competições de programação. Identificar situações em que estruturas de dados avançadas (ex.: árvores balanceadas, filas de prioridades avançadas, tabelas de dispersão) são necessárias para otimizar soluções. Projetar e implementar algoritmos avançados, como os de programação dinâmica, para resolver problemas de otimização. Aplicar algoritmos em grafos (ex.: Dijkstra, Floyd-Warshall, Kruskal) para resolver problemas de caminhos mínimos, conectividade e fluxo. Adaptar soluções para problemas variáveis e atuais em competições de programação, utilizando técnicas inovadoras e analisando a complexidade temporal e/ou espacial dos algoritmos, garantindo eficiência nas soluções propostas. Avaliar soluções alternativas para um mesmo problema, comparando eficiência e clareza de implementação. Explorar ferramentas e plataformas de competição (ex.: Codeforces, TopCoder, LeetCode) para praticar e aprimorar habilidades. Criar problemas e casos de teste para desafios de programação, desenvolvendo a capacidade de pensar criticamente sobre soluções. Revisar códigos de outros competidores, identificando pontos de melhoria e boas práticas. Preparar-se para competições de programação, desenvolvendo estratégias eficazes de resolução sob pressão de tempo e de penalidades diversas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN 978-8595159907.

  • LAAKSONEN, Antti. Guide to Competitive Programming: Learning and Improving Algorithms Through Contests, 3rd ed. Springer, 2024. ISBN 978-3031617935.

  • SKIENA, Steven. The Algorithm Design Manual (Texts in Computer Science), 3ed. Springer, 2020. ISBN 978-3030542580.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • IZADKHAH, Habib; BEHZADIDOOST, Rashid. Challenging Programming in Python: A Problem Solving Perspective. Springer, 2024. ISBN 9783031399985.

  • SEDGEWICK, Robert ; WAYNE, Kevin. Algorithms, 4th Edition. Addison-Wesley Professional, 2011. ISBN 978-0321573513.

  • ZINGARO, Daniel. Algorithmic Thinking: Learn Algorithms to Level Up Your Coding Skills, 2nd Edition. No Starch Press, 2024. ISBN 978-1718503229.

  • LA ROCCA, Marcello. Advanced Algorithms and Data Structures. Manning, 2021. ISBN 978-1617295485.

  • MCDOWELL, Gayle Laakmann. Cracking the Coding Interview: 189 Programming Questions and Solutions, 6th edition. CareerCup, 2015. ISBN 978-0984782857.

  • KOPEC, David. Problemas Clássicos de Ciência da Computação com Python. Novatec Editora, 2019. ISBN 978-8575228050.

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 1: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745521

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 2: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745514.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC037

Programação Competitiva II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Estratégias de resolução de problemas, técnicas de projeto de algoritmos, estruturas de dados básicas e avançadas, estratégias de competição, leitura técnica de textos, elaboração de especificação de problemas, reconhecimento de padrões e reaproveitamento de código, padronização e boas práticas de codificação, com abordagens individuais e formação de times para práticas de trabalho colaborativo em grupo.

 

  1. OBJETIVOS GERAIS

Desenvolver e potencializar a capacidade de resolução de problemas por computador, envolvendo a compreensão, especificação e modelagem de problemas  para serem bem resolvidos por computador, por meio de aplicação de técnicas de projeto de algoritmos e estrutura de dados, em diferentes abordagens e desafios.

 

  1. OBJETIVOS ESPECÍFICOS

Desenvolver habilidades para resolver problemas de programação desafiadores, típicos de competições de programação. Promover a boa tomada de decisão usando o ferramental computacional para a resolução de problemas, sob pressão, de modo a refinar habilidades essenciais para um resolvedor de problemas e desenvolvedor diferenciado, tanto para a academia científica quanto para o mercado de trabalho. Resolver problemas de competições de programação, simulando ambientes reais de maratonas e hackathons. Colaborar em equipes para resolver desafios complexos, desenvolvendo habilidades de trabalho em grupo. Manipular conteúdos e tópicos computacionais essenciais para a resolução eficiente de problemas algorítmicos, com foco em competições como Olimpíadas de Informática, Maratonas de Programação e outras competições de programação. Identificar situações em que estruturas de dados avançadas (ex.: árvores balanceadas, filas de prioridades avançadas, tabelas de dispersão) são necessárias para otimizar soluções. Projetar e implementar algoritmos avançados, como os de programação dinâmica, para resolver problemas de otimização. Aplicar algoritmos em grafos (ex.: Dijkstra, Floyd-Warshall, Kruskal) para resolver problemas de caminhos mínimos, conectividade e fluxo. Adaptar soluções para problemas variáveis e atuais em competições de programação, utilizando técnicas inovadoras e analisando a complexidade temporal e/ou espacial dos algoritmos, garantindo eficiência nas soluções propostas. Avaliar soluções alternativas para um mesmo problema, comparando eficiência e clareza de implementação. Explorar ferramentas e plataformas de competição (ex.: Codeforces, TopCoder, LeetCode) para praticar e aprimorar habilidades. Criar problemas e casos de teste para desafios de programação, desenvolvendo a capacidade de pensar criticamente sobre soluções. Revisar códigos de outros competidores, identificando pontos de melhoria e boas práticas. Preparar-se para competições de programação, desenvolvendo estratégias eficazes de resolução sob pressão de tempo e de penalidades diversas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ª edição. ‎ GEN LTC; 2024. ISBN 978-8595159907.

  • LAAKSONEN, Antti. Guide to Competitive Programming: Learning and Improving Algorithms Through Contests, 3rd ed. Springer, 2024. ISBN 978-3031617935.

  • SKIENA, Steven. The Algorithm Design Manual (Texts in Computer Science), 3ed. Springer, 2020. ISBN 978-3030542580.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • IZADKHAH, Habib; BEHZADIDOOST, Rashid. Challenging Programming in Python: A Problem Solving Perspective. Springer, 2024. ISBN 9783031399985.

  • SEDGEWICK, Robert ; WAYNE, Kevin. Algorithms, 4th Edition. Addison-Wesley Professional, 2011. ISBN 978-0321573513.

  • ZINGARO, Daniel. Algorithmic Thinking: Learn Algorithms to Level Up Your Coding Skills, 2nd Edition. No Starch Press, 2024. ISBN 978-1718503229.

  • LA ROCCA, Marcello. Advanced Algorithms and Data Structures. Manning, 2021. ISBN 978-1617295485.

  • MCDOWELL, Gayle Laakmann. Cracking the Coding Interview: 189 Programming Questions and Solutions, 6th edition. CareerCup, 2015. ISBN 978-0984782857.

  • KOPEC, David. Problemas Clássicos de Ciência da Computação com Python. Novatec Editora, 2019. ISBN 978-8575228050.

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 1: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745521

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 2: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745514.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC123

Tópicos Especiais em Estatística Aplicada à Computação

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área de Estatística Aplicada à Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os princípios fundamentais de probabilidade, estatística e técnicas de simulação aplicados à Ciência da Computação, Ciência de Dados e Machine Learning. Aplicar métodos probabilísticos e estatísticos para modelar incertezas e inferir parâmetros em problemas computacionais. Analisar dados de forma crítica para subsidiar a tomada de decisões baseada em evidências estatísticas. Desenvolver simulações computacionais que solucionem problemas complexos em cenários de alta incerteza ou variabilidade. Avaliar a adequação e eficácia de modelos estatísticos e técnicas de simulação em contextos práticos da Ciência da Computação.

 

  1. OBJETIVOS ESPECÍFICOS

      Compreender os fundamentos de probabilidade e inferência estatística, aplicando esses conceitos para modelagem de incertezas e tomada de decisões baseada em dados. Utilizar métodos de simulação computacional, como Monte Carlo, explorando suas aplicações na resolução de problemas complexos. Explorar técnicas estatísticas aplicadas à Ciência de Dados e Machine Learning, desde a análise exploratória até a validação de modelos. Interpretar e comunicar resultados estatísticos de forma clara, crítica e eficaz, utilizando visualizações e relatórios adequados. Resolver problemas reais por meio de projetos práticos que integrem teoria e aplicação, com foco em áreas como Inteligência Artificial e Ciência de Dados. Identificar vieses e limitações em análises estatísticas, questionando suposições e propondo soluções robustas para desafios complexos na Ciência da Computação. Desenvolver habilidades analíticas e críticas para avaliar a qualidade e a relevância de modelos estatísticos em contextos práticos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRUCE, Peter e BRUCE, Andrew. Estatística Prática Para Cientistas de Dados: 50 Conceitos

Essenciais, 1a ed. Alta Books, 2019. ISBN 978-8550806037.

  • FÁVERO, Luiz Paulo; BELFIORE, Patrícia. Manual de Análise de Dados: Estatística e Machine Learning com Excel®, SPSS®, Stata®, R® e Python®, 2a ed. rev. e atual. LTC, 2024. ISBN 978-8595159921.

  • MORETTIN, Pedro Alberto, e SINGER, Julio da Motta. Estatística e Ciência de Dados, 2a ed. LTC, 2025. ISBN 978-8521638995.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • ROSS, Sheldon M. Introduction to Probability and Statistics for Engineers and Scientists, 6a ed. Academic Press, 2020. ISBN 978-0128243466.

  • HASTIE, T., TIBSHIRANI, R., & FRIEDMAN, J. The Elements of Statistical Learning: Data Mining, Inference, and Prediction, 2a ed. Springer, 2009. ISBN 978-0387848570

  • LAW, A. M. Simulation Modeling and Analysis, 6a ed. McGraw-Hill Education, 2024. ISBN 978-1264268245

  • GOODFELLOW, I., BENGIO, Y., & COURVILLE, A. Deep Learning. MIT Press, 2016. ISBN 978-0262035613

  • JAMES, G., WITTEN, D., HASTIE, T., & TIBSHIRANI, R. An Introduction to Statistical Learning: with Applications in R , 2ª ed. Springer, 2021. ISBN 978-1071614174

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC130

Experiência Criativa I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Competências transversais: gestão do tempo, aprendendo a aprender, pensamento crítico, pensamento sistêmico, trabalho em equipe, entre outras. Desenvolvimento de projetos: planejamento, cronograma, execução e testes. Apresentação dos resultados de um projeto.

 

  1. OBJETIVOS GERAIS

Desenvolver e apresentar projetos de Computação, integrando disciplinas e seus conteúdos. Promover o desenvolvimento de competências transversais, como pensamento crítico, gestão do tempo, e trabalho em equipe, em contextos contemporâneos e éticos.

 

  1. OBJETIVOS ESPECÍFICOS

Planejar projetos considerando cronogramas, recursos disponíveis e impactos sociais e ambientais. Discutir soluções de computação que respondam a desafios relacionados à diversidade étnico-racial, direitos da população LGBTQIAPN+, mudanças climáticas e segurança alimentar. Avaliar projetos com base em critérios técnicos, éticos e sustentáveis. Trabalhar em equipe para resolver problemas de forma colaborativa e crítica. Apresentar resultados de projetos, comunicando-os de forma inclusiva e acessível a diferentes públicos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FEIJÓ, Bruno; CLUA, Esteban; SILVA, Flávio S. Corrêa. Introdução à ciência da computação com jogos. Rio de Janeiro: Elsevier, 2009. ISBN-13: 978-8535234190.

  • KINSLEY, Harrison; MCGUGAN, Will. Introdução ao Desenvolvimento de Jogos em Python com Pygame. São Paulo: Novatec, 2015. ISBN-13: 978-8575225226.

  • MARCONDES, Guilherme Augusto Barucke. Matemática com Python: Um Guia Prático São Paulo: Novatec, 2015. ISBN-13: 978-8575227060.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FOROUZAN, Behrouz; MOSHARRAF, Firouz. Fundamentos da Ciência da Computação, tradução da 2ª edição internacional. Editora Cengage Learning, 2012. ISBN-13: 978-8522110537.

  • BROOKSHEAR, J. Glenn. Ciência da Computação: Uma Visão Abrangente, 11ª Edição. Editora: Bookman, 2013. ISBN-13: 978-8582600306.

  • PERKOVIC, Ljubomir. Introdução à Computação Usando Python - um Foco no Desenvolvimento de Aplicações. Rio de Janeiro: LTC, 2016. ISBN-13: 978-8521630180.

  • JAVED, Adeel. Criando Projetos com Arduino Para a Internet das Coisas: Experimentos com Aplicações do Mundo Real. São Paulo: Novatec, 2017. ISBN-13: 978-8575225886.

  • MONK, Simon. 30 Projetos com Arduino. Porto Alegre: Bookman, 2014. ISBN-13: 978-8582601815.

  • KLEIN, Philip N. Coding the Matrix: Linear Algebra Through Applications to Computer Science. Newtonian Press, 2013. ISBN-13: 978-0615856735.

  • FRANÇA, Isadora Lins. Diversidade Sexual e Educação: desafios para políticas públicas e práticas pedagógicas. Belo Horizonte: Autêntica Editora, 2012. ISBN-13: 978-8575265981.

  • LOVELOCK, James. A Vingança de Gaia: A Terra em perigo e a ameaça à nossa sobrevivência. São Paulo: Intrínseca, 2006. ISBN-13: 978-8598078175.

  • CS-Unplugged. Material em português. Disponível em: https://classic.csunplugged.org/documents/books/portuguese/CSUnpluggedTeachers-portuguese-brazil-feb-2011.pdf. Acesso em: 05  março. 2025.

  • ALENCAR, Breno Rodrigo de Oliveira; ALVES, Clarissa Cecília Ferreira; CAVALCANTE, Ilane Ferreira; CAVALCANTI, Natália Conceição Silva Barros (orgs.). Caminhos para Diversidade: Relações de Gênero e Étnico-Raciais na Educação - Volume II. João Pessoa: Editora do Instituto Federal da Paraíba, 2023. ISBN-13: 978-6589739432.

  • YORK, Sara Wagner; SILVA, Sérgio Luiz Baptista; NOLASCO-SILVA, Leonardo (orgs.). Gênero e Sexualidade na Educação: Uma Perspectiva Interseccional. São Paulo: Editora Cortez, 2021. ISBN-13: 978-6525001429.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC131

Experiência Criativa II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Desenvolvimento de competências intermediárias em projetos de computação, como organização, trabalho em equipe e resolução de problemas. Planejamento e execução de projetos com foco em prototipagem simples, testes e validação. Introdução à aplicação de conceitos de diversidade, inclusão e sustentabilidade em soluções computacionais. Apresentação de resultados de forma clara e acessível para diferentes públicos.

 

  1. OBJETIVOS GERAIS

Desenvolver projetos de Computação ao nível intermediário, integrando competências técnicas e transversais. Introduzir práticas de prototipagem, testes e validação em projetos, com foco em inclusão e sustentabilidade.

 

  1. OBJETIVOS ESPECÍFICOS

Planejar projetos computacionais intermediários, organizando cronogramas e recursos. Desenvolver protótipos simples utilizando ferramentas básicas de computação. Testar e validar projetos, identificando melhorias a partir de feedbacks. Aplicar conceitos iniciais de diversidade, inclusão e sustentabilidade no desenvolvimento de projetos. Apresentar os resultados de projetos de forma clara, utilizando recursos visuais e comunicação eficaz.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FEIJÓ, Bruno; CLUA, Esteban; SILVA, Flávio S. Corrêa. Introdução à ciência da computação com jogos. Rio de Janeiro: Elsevier, 2009. ISBN-13: 978-8535234190.

  • KINSLEY, Harrison; MCGUGAN, Will. Introdução ao Desenvolvimento de Jogos em Python com Pygame. São Paulo: Novatec, 2015. ISBN-13: 978-8575224526.

  • PRESSMAN, Roger S. Engenharia de Software: Uma Abordagem Profissional. Tradução da 8ª edição em inglês. São Paulo: McGraw Hill Brasil, 2016. ISBN-13: 978-8580554137.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FOROUZAN, Behrouz; MOSHARRAF, Firouz. Fundamentos da Ciência da Computação, tradução da 2ª edição internacional. Editora Cengage Learning, 2012. ISBN-13: 978-8522110537.

  • BROOKSHEAR, J. Glenn. Ciência da Computação: Uma Visão Abrangente, 11ª Edição. Editora: Bookman, 2013. ISBN-13: 978-8582600306.

  • PERKOVIC, Ljubomir. Introdução à Computação Usando Python - um Foco no Desenvolvimento de Aplicações. Rio de Janeiro: LTC, 2016. ISBN-13: 978-8521630180.

  • JAVED, Adeel. Criando Projetos com Arduino Para a Internet das Coisas: Experimentos com Aplicações do Mundo Real. São Paulo: Novatec, 2017. ISBN-13: 978-8575225886.

  • MONK, Simon. 30 Projetos com Arduino. Porto Alegre: Bookman, 2014. ISBN-13: 978-8582601815.

  • KLEIN, Philip N. Coding the Matrix: Linear Algebra Through Applications to Computer Science. Newtonian Press, 2013. ISBN-13: 978-0615856735.

  • MARCONDES, Guilherme Augusto Barucke. Matemática com Python: Um Guia Prático São Paulo: Novatec, 2015. ISBN-13: 978-8575227060.

  • RESNICK, Mitchel. Lifelong Kindergarten: Cultivating Creativity through Projects, Passion, Peers, and Play. Cambridge: The MIT Press, 2018. ISBN-13: 978-0262536134.

  • CS-Unplugged. Material em português. Disponível em: https://classic.csunplugged.org/documents/books/portuguese/CSUnpluggedTeachers-portuguese-brazil-feb-2011.pdf. Acesso em: 05  março. 2025.

  • ALENCAR, Breno Rodrigo de Oliveira; ALVES, Clarissa Cecília Ferreira; CAVALCANTE, Ilane Ferreira; CAVALCANTI, Natália Conceição Silva Barros (orgs.). Caminhos para Diversidade: Relações de Gênero e Étnico-Raciais na Educação - Volume II. João Pessoa: Editora do Instituto Federal da Paraíba, 2023. ISBN-13: 978-6589739432.

  • YORK, Sara Wagner; SILVA, Sérgio Luiz Baptista; NOLASCO-SILVA, Leonardo (orgs.). Gênero e Sexualidade na Educação: Uma Perspectiva Interseccional. São Paulo: Editora Cortez, 2021. ISBN-13: 978-6525001429.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC180

Tópicos Especiais em Ciência da Computação I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ª edição. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC181

Tópicos Especiais em Ciência da Computação II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ª edição. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC182

Tópicos Avançados em Ciência da Computação I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ª edição. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC183

Tópicos Avançados em Ciência da Computação II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ª edição. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC184

Tópicos Especiais em Ciência da Computação III

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ª edição. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC185

Tópicos Especiais em Ciência da Computação IV

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ª edição. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC186

Tópicos Avançados em Ciência da Computação III

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ª edição. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4 ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC187

Tópicos Avançados em Ciência da Computação IV

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ª edição. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC454

Desenvolvimento de Jogos Digitais

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Engenharia de Software

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Inteligência Artificial

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Tecnologia da Informação

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

    

  1. EMENTA

Tópicos introdutórios ao desenvolvimento de jogos. Linguagens e arquitetura de jogos. Fundamentos de programação aplicados ao desenvolvimento de jogos. Design de Jogos e Mecânicas de Gameplay. Motores Gráficos e Ambientes de Desenvolvimento. Gráficos, Animação e Áudio para Jogos. Inteligência Artificial e Física para Jogos. Teste e avaliação de jogos.  Jogos massivos em rede.

 

  1. OBJETIVOS GERAIS

Projetar, desenvolver e implementar jogos digitais, aplicando conceitos de game design, programação, animação, inteligência artificial e métodos de engenharia de software, utilizando motores gráficos modernos. Criar jogos interativos e funcionais, compreendendo todo o processo de desenvolvimento, desde a concepção da ideia até a publicação, além de analisar tendências e desafios do mercado de jogos digitais.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender os conceitos fundamentais do desenvolvimento de jogos digitais, incluindo a história, gêneros e fases de produção de um jogo. Aplicar os princípios do design de jogos na criação de mecânicas, regras e interações envolventes para os jogadores. Implementar animações, física e inteligência artificial para criar comportamentos dinâmicos e realistas nos jogos. Projetar interfaces para garantir uma jogabilidade intuitiva e envolvente. Testar e depurar jogos digitais, identificando falhas e aplicando estratégias para otimização de desempenho.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RABIN, Steve. Introdução ao Desenvolvimento de Games - Entendendo o universo dos jogos,  2a. ed, Vol. 1, CENGAGE Learning, 2011. ISBN-13 978-8522111435.

  • RABIN, Steve. Introdução ao Desenvolvimento de Games - Programação Técnica, linguagem e arquitetura, 2a. ed, Vol. 2, CENGACE Learning, 2012. ISBN-13 978-8522111442.

  • PENTON, Ron. Data Structures for Game Programmers. The Premier Press 2003. ISBN-13 978-1931841948.

  • BUCKLAND, Mat. Programming Game AI by Example. Wordware Publishing 2005. ISBN-13 978-1556220784.

  • CONGER, David. Physics Modeling for Game Programmers. Muska & Lipman/Premier-Trade, 2004. ISBN 978-1592000937.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FLYNT, John; VINSON, Benjamin. Simulation and Event Modeling for Game Developers. Muska & Lipman/Premier-Trade, 2005. ISBN-13 ‎ 978-1592008483.

  • WATT, Alan e Policarpo, Fabio. 3D Games: Real-Time Rendering and Software Technology, Volume 1. Addison Wesley, 2000. ISBN-13 978-0201619218.

  • PERUCIA, Alexandre Souza e Berthem, Antônio Cordova. Programação de Jogos Digitais. Editora Novatec, 2005. ISBN-13  978-8536527215.

  • COHEN, Marcelo, MANSSOUR, Isabel Harb. OpenGL - Uma abordagem prática e objetiva. Novatec. 2006. ISBN 978-8575220849

  • SHREINER, Dave, WOO, Mason, NEIDER, Jackson, DAVIS, Tom. OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 2.5. Addison-Wesley, 2005. ISBN-13 978-0134495491

  • MILLINGTON, Ian. Artificial Intelligence for Games. Morgan Kaufmann, 2006.  ISBN-13978-3319635187 

  • PAZERA , Ernest. Focus on SDL. The Premier Press 2003. ISBN-13 978-1592000302.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC455

Desenvolvimento de Jogos para Dispositivos Móveis

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Engenharia de Software

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Inteligência Artificial

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Tecnologia da Informação

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

 

  1. EMENTA

Sistemas Operacionais, ambientes de desenvolvimento e linguagens de programação para dispositivos móveis. Jogos eletrônicos para computador (games). Jogos em dispositivos móveis. Arquitetura dos games para dispositivos móveis. Matemática e Física para games. Áudio. Inteligência Artificial. Desenvolvimento em ambientes móveis. Estratégias. Loop de Controle do Game. Menus. Teste e avaliação do game. Lançamento e venda.

 

  1. OBJETIVOS GERAIS

Dominar técnicas gerais de desenvolvimento de jogos. Aplicar tais técnicas em ambientes de desenvolvimento os sistemas operacionais móveis. Compreender temas críticos para programadores de jogos como codificação de áudio, animação e otimização de aplicativos para sistemas operacionais de dispositivos móveis.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os principais conceitos, ferramentas e engines utilizados no desenvolvimento de jogos para dispositivos móveis. Compreender os princípios de design, usabilidade e experiência do usuário aplicados a jogos móveis. Aplicar técnicas de programação para implementar mecânicas de jogo interativas e responsivas em dispositivos móveis. Analisar requisitos de desempenho e otimização para garantir a fluidez e eficiência dos jogos em diferentes configurações de hardware. Avaliar estratégias de monetização, publicação e marketing para distribuição de jogos móveis em lojas de aplicativos. Desenvolver um jogo completo para dispositivos móveis, integrando elementos de design, mecânicas, otimização e monetização.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MORRISON, Michael. Beginning Mobile Phone Game Programming, Sams Publishing, 2005.

  • ZECCHNER, Mario e GREEN, Robert. Beginning Android Games, 2a. ed, Apress, 2012. ISBN-13 978-1430246770.

  • MEHTA, Prateek. Learn OpenGL ES: For Mobile Game and Graphics Development. Apress, 2013. ISBN-13 978-1430250531.

  • LEITE, Anderson. Desenvolvimento de Jogos para Android: Explore sua imaginação com o framework Cocos2D, Casa do Código, 2012.

  • BERTSCHINGER, Guilherme Lage. Desenvolvimento de Jogos Eletrônicos – Teoria e Prática, NOVATEC, 2008. ISBN-13 9788575221228,

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC503

Verificação Formal de Software e Sistemas

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Conceitos básicos em complexidade computacional de problemas e algoritmos. Computabilidade e complexidade: Problema da Parada: tese de Church-Turing. Máquina de Turing e problemas Indecidíveis x Intratáveis. Problemas NPxP, NP-completos x NP-difíceis. Problema da Satisfatibilidade. Lógica Formal e Autômatos. Lógica Temporal; Algoritmos de enumeração explícita e implícita. Algoritmos aproximativos, heurísticas. Algoritmos de verificação de modelo. Algoritmos de verificação simbólica. Teorias do módulo da satisfatibilidade. Teoria de automata temporizado. Especificação com lógica temporal. Propriedades de Alcançabilidade. Segurança, vivacidade, bloqueio fatal, fairness, justiça. Métodos de abstração de modelos. Síntese indutiva guiada por contra-exemplo. Ferramentas de verificação: SMV, SPIN, DESIGN/CPN, UPPAAL, KRONOS, HYTECH, ESBMC, CBMC, CPAChecker. Noções de aritmética intervalar. Noções de programação por restrições CSP/CP. Algoritmos contratores de domínio de variáveis. Ferramenta IBEX.

 

  1. OBJETIVOS GERAIS

Especificar, verificar e sintetizar sistemas de hardware e software. Identificar noções de linguagens formais e autômatos, complexidade e estratégias algorítmicas de verificação e síntese. Descrever processos de síntese, verificação, validação e teste de software, com ênfase em estratégias, técnicas, critérios e ferramentas que podem ser aplicados na construção de software.

 

  1. OBJETIVOS ESPECÍFICOS

Modelar problemas  e classificar problemas de acordo com sua complexidade, diferenciando entre NPxP, NP-completos e NP-difíceis. Analisar o problema da Satisfatibilidade (SAT) e suas implicações na verificação formal de sistemas. Aplicar lógica formal e autômatos para especificar propriedades e comportamentos de sistemas. Explorar estratégias algorítmicas  tanto de enumeração explícita quanto implícita, via programação matemática ou algoritmos combinatórios, para modelar e verificar propriedades de sistemas. Utilizar métodos de abstração de modelos e síntese indutiva guiada por contra-exemplo para melhorar a eficiência da verificação. Desenvolver soluções usando ferramentas de verificação como ESBMC, SMV, SPIN, CBMC, e outras, para realizar a verificação formal de software e sistemas. Avaliar a confiabilidade, integridade, segurança e outras propriedades críticas, como fairness e justiça, aplicando algoritmos de verificação de modelo. Implementar teorias do módulo da satisfatibilidade e algoritmos de verificação simbólica para tratar de problemas de sistemas complexos. Explorar algoritmos aproximativos e heurísticas para resolver problemas onde a verificação exata não é viável. Aplicar noções de aritmética intervalar e programação por restrições (CSP/CP) para verificação de sistemas com variáveis contínuas. Utilizar ferramentas como IBEX e algoritmos contratores para verificar sistemas com restrições complexas de domínio de variáveis.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • SIPSER, Michael. Introdução à Teoria da Computação. Thomson Learning, 2007. ISBN  978-8522104994.

  • CLARKE, Edmund M.; GRUMBERG, Orna; PELED, Doron A; VEITH, Helmut. Model Checking, 2nd. Cambridge: MIT Press, 2018. ISBN  978-0262038836.

  • BAIER, Christel; KATOEN, Joost-Pieter. Principles of Model Checking. The MIT Press, 2008. ISBN 978-0262026499

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BERARD, B.; BIDOIT, M.; FINKEL, A; LAROUSSINIE, F. Systems and Software Verification: Model-Checking Techniques and Tools. Springer, 2001. ISBN 978-3540415237

  • BIERE, A. Bounded model checking. In Handbook of Satisfiability, 2nd. IOS Press, 2021. ISBN 978-1643681603

  • GAREY, Michael R.; JOHNSON, David S. Computers and Intractability: A Guide to the Theory of NP-completeness. Mathematical Sciences Series. W. H. Freeman, 1979. ISBN  978-0716710455.

  • ROSSI,  Francesca; VAN BEEK, PETER; WALSH, Toby. Handbook of Constraint Programming (Foundations of Artificial Intelligence). Elsevier Science, 2006. ISBN 978-0444527264

  • SIPSER, Michael. Introdução à Teoria da Computação. Thomson Learning, 2007. ISBN  978-8522104994

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC504

Técnicas para Verificação, Síntese e Teste de Software

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Visão geral sobre raciocínio automático na verificação formal, síntese e teste de software. Revisão de técnicas de otimização envolvendo algoritmos bioinspirados e meta-heurísticas em geral, como Algoritmos Genéticos e variações, Busca Tabu, Simulated Annealing, GRASP e outros. Revisão de técnicas de inteligência artificial moderna como aprendizado de máquina (não)supervisionado, por reforço, redes neurais e aprendizado profundo. Aplicações na especificação, verificação, síntese e teste de software.

 

  1. OBJETIVOS GERAIS

Aplicar técnicas computacionais de otimização e inteligência artificial em processos de verificação, síntese e teste de software. Aplicar modelos e técnicas de aprendizado de máquina, redes neurais, aprendizado profundo para refinar e otimizar a especificação, verificação, síntese ou teste de software.

 

  1. OBJETIVOS ESPECÍFICOS

Explicar o conceito de raciocínio automático e sua relevância no contexto da verificação formal de software. Explorar algoritmos bioinspirados, como Algoritmos Genéticos, Simulated Annealing, GRASP, e Busca Tabu, e sua aplicabilidade em problemas de otimização no teste e verificação de software. Demonstrar a utilização de técnicas de aprendizado de máquina (supervisionado, não supervisionado,  por reforço, por (auto)atenção, IA generativa, etc.) na síntese, verificação, teste,  correção e transformação de software. Identificar as diferenças entre verificação formal, teste de software e síntese automática, bem como suas inter-relações. Utilizar técnicas de otimização combinatória para melhorar a eficiência e a precisão na verificação e teste de software. Implementar estratégias envolvendo métodos híbridos bioinspirados, de programação matemática e de aprendizado de máquina para solucionar problemas reais na verificação e síntese de software. Desenvolver protótipos de ferramentas que integrem técnicas de IA, raciocínio automático e otimização em processos de teste e verificação de software. Explorar aplicações de técnicas de verificação e síntese automática em sistemas críticos, com foco em segurança e confiabilidade.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RUSSELL, Stuart J.; NORVIG, Peter. Inteligência artificial: uma abordagem moderna. 4. ed. Rio de Janeiro: Grupo GEN, 2022. ISBN  978-8595158870

  • TALBI, El-Ghazali. Metaheuristics: From Design to Implementation. Hoboken: John Wiley & Sons, 2009. ISBN  978-0470278581

  • GOLDBARG, Elizabeth Ferreira; GOLDBARG, Marco Cesar; LUNA, Henrique Pacca Loureiro. Otimização Combinatória e Meta-Heurísticas: Algoritmos e Aplicações. 1. ed. Rio de Janeiro: LTC, 2015. ISBN  978-8535278125

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PAPADIMITRIOU, Christos H.; STEIGLITZ, Kenneth. Combinatorial Optimization: Algorithms and Complexity. Dover Publications, 1998. ISBN  978-0486402581

  • CLARKE, Edmund M.; GRUMBERG, Orna; PELED, Doron A; VEITH, Helmut. Model Checking, 2nd. Cambridge: MIT Press, 2018. ISBN  978-0262038836

  • BAIER, Christel; KATOEN, Joost-Pieter. Principles of Model Checking. The MIT Press, 2008. ISBN 978-0262026499

  • BERARD, B.; BIDOIT, M.; FINKEL, A; LAROUSSINIE, F. Systems and Software Verification: Model-Checking Techniques and Tools. Springer, 2001. ISBN 978-3540415237

  • BIERE, A. Bounded model checking. In Handbook of Satisfiability, 2nd. IOS Press, 2021. ISBN 978-1643681603

  • ROSSI,  Francesca; VAN BEEK, PETER; WALSH, Toby. Handbook of Constraint Programming (Foundations of Artificial Intelligence). Elsevier Science, 2006. ISBN 978-0444527264

  • SIPSER, Michael. Introdução à Teoria da Computação. Thomson Learning, 2007. ISBN  978-8522104994

  • GAREY, Michael R.; JOHNSON, David S. Computers and Intractability: A Guide to the Theory of NP-completeness. Mathematical Sciences Series. W. H. Freeman, 1979. ISBN  978-0716710455

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC550

Tópicos Especiais em Pesquisa em Educação em Computação I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Estudo de temas emergentes em Pesquisa em Educação em Computação, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Identificar a amplitude de tópicos de pesquisa no domínio da Educação em Computação, incluindo filosofias, pesquisas empíricas e projetos de sistemas. Avaliar os diferentes métodos de pesquisa utilizados na área, bem como seus pontos fortes e limitações. Descrever questões abertas e debates na área. Desenvolver uma proposta de pesquisa sobre um tema em aberto no domínio da Educação em Computação.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais questões e desafios na Educação em Computação, com base na literatura científica atual. Explorar metodologias qualitativas, quantitativas e mistas usadas em pesquisas na área de educação em Computação. Propor perguntas de pesquisa relevantes para a área de Educação em Computação, embasadas em lacunas e oportunidades identificadas na literatura. Avaliar criticamente estudos empíricos e teóricos em Educação em Computação, considerando sua metodologia e contribuições para o campo. Desenvolver projetos de pesquisa que investiguem práticas pedagógicas e o uso de tecnologias no ensino de Computação. Criar instrumentos de avaliação para medir a eficácia de estratégias de ensino em Computação, como questionários, entrevistas e experimentos controlados. Discutir questões éticas e de diversidade no ensino de Computação, incluindo aspectos de inclusão e equidade em ambientes de ensino.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FINCHER, Sally A.; ROBINS, Anthony V. (Eds.). The Cambridge Handbook of Computing Education Research. Cambridge: Cambridge University Press, 2019. ISBN 978-1108721899.

  • GASEVIC, Dragan; MERCERON, Agathe. The Handbook of Learning Analytics. 2. ed. 2022. Disponível em: https://www.solaresearch.org/publications/hla-22. Acesso em: 24 de mai. de 2024.

  • JAQUES, Patrícia A.; PIMENTEL, Mariano; SIQUEIRA, Sean. Metodologia de Pesquisa Científica em Informática na Educação: Concepção de Pesquisa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-1/. Acesso em: 24 de mai. de 2024. v. 1.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • JAQUES, Patrícia A.; PIMENTEL, Mariano; SIQUEIRA, Sean; BITENCOURT, Ig. Metodologia de Pesquisa Científica em Informática na Educação: Abordagem Quantitativa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-2/. Acesso em: 24 de mai. de 2024. v. 2.

  • PIMENTEL, Mariano; SANTOS, Edméa Oliveira. Metodologia de Pesquisa Científica em Informática na Educação: Abordagem Qualitativa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-3/. Acesso em: 24 de mai. de 2024. v. 3.

  • JOHNSON, Robert B.; CHRISTENSEN, Larry B. Educational Research: Quantitative, Qualitative, and Mixed Approaches, 8th ed. SAGE Publications, 2024. ISBN 978-1071965818.

  • NIEMI, David; PEA, Roy D.; SAXBERG, Bror; CLARK, Richard E. Learning Analytics in Education. Information Age Publishing, 2018. ISBN 978-1641133708

  • MOUGIAKOU, Sofia; VINATSELLA, Dimitra; SAMPSON, Demetrios; PAPAMITSIOU, Zacharoula; GIANNAKOS, Michail; IFENTHALER, Dirk. Educational Data Analytics for Teachers and School Leaders (Advances in Analytics for Learning and Teaching). Springer, 2023. ISBN 978-3031152658

  • SRINIVASA K G; KURNI, Muralidhar. A Beginner’s Guide to Learning Analytics (Advances in Analytics for Learning and Teaching). Springer, 2021. ISBN 978-3030702601

  • SAHIN, Muhittin; IFENTHALER, Dirk. Visualizations and Dashboards for Learning Analytics (Advances in Analytics for Learning and Teaching). Springer, 2021. ISBN 978-3030812218

  • VON DAVIER, Alina A.; MISLEVY, Robert J.; HAO, Jiangang. Computational Psychometrics: New Methodologies for a New Generation of Digital Learning and Assessment: With Examples in R and Python (Methodology of Educational Measurement and Assessment). Springer, 2021. ISBN 978-3030743963.

  • HALL, Cristina; MATTOX II, John R.; PARSKEY, Peggy. Learning Analytics: Using Talent Data to Improve Business Outcomes, 2nd ed. Kogan Page, 2020. ISBN 978-1789663006

  • Repositórios de periódicos e conferências na área de Educação em Computação, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC551

Tópicos Especiais em Pesquisa em Educação em Computação II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Estudo de temas emergentes em Pesquisa em Educação em Computação, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Identificar a amplitude de tópicos de pesquisa no domínio da Educação em Computação, incluindo filosofias, pesquisas empíricas e projetos de sistemas. Avaliar os diferentes métodos de pesquisa utilizados na área, bem como seus pontos fortes e limitações. Descrever questões abertas e debates na área. Desenvolver uma proposta de pesquisa sobre um tema em aberto no domínio da Educação em Computação.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais questões e desafios na Educação em Computação, com base na literatura científica atual. Explorar metodologias qualitativas, quantitativas e mistas usadas em pesquisas na área de educação em Computação. Propor perguntas de pesquisa relevantes para a área de Educação em Computação, embasadas em lacunas e oportunidades identificadas na literatura. Avaliar criticamente estudos empíricos e teóricos em Educação em Computação, considerando sua metodologia e contribuições para o campo. Desenvolver projetos de pesquisa que investiguem práticas pedagógicas e o uso de tecnologias no ensino de Computação. Criar instrumentos de avaliação para medir a eficácia de estratégias de ensino em Computação, como questionários, entrevistas e experimentos controlados. Discutir questões éticas e de diversidade no ensino de Computação, incluindo aspectos de inclusão e equidade em ambientes de ensino.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FINCHER, Sally A.; ROBINS, Anthony V. (Eds.). The Cambridge Handbook of Computing Education Research. Cambridge: Cambridge University Press, 2019. ISBN 978-1108721899.

  • GASEVIC, Dragan; MERCERON, Agathe. The Handbook of Learning Analytics. 2. ed. 2022. Disponível em: https://www.solaresearch.org/publications/hla-22. Acesso em: 24 de mai. de 2024.

  • JAQUES, Patrícia A.; PIMENTEL, Mariano; SIQUEIRA, Sean. Metodologia de Pesquisa Científica em Informática na Educação: Concepção de Pesquisa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-1/. Acesso em: 24 de mai. de 2024. v. 1.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • JAQUES, Patrícia A.; PIMENTEL, Mariano; SIQUEIRA, Sean; BITENCOURT, Ig. Metodologia de Pesquisa Científica em Informática na Educação: Abordagem Quantitativa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-2/. Acesso em: 24 de mai. de 2024. v. 2.

  • PIMENTEL, Mariano; SANTOS, Edméa Oliveira. Metodologia de Pesquisa Científica em Informática na Educação: Abordagem Qualitativa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-3/. Acesso em: 24 de mai. de 2024. v. 3.

  • JOHNSON, Robert B.; CHRISTENSEN, Larry B. Educational Research: Quantitative, Qualitative, and Mixed Approaches, 8th ed. SAGE Publications, 2024. ISBN 978-1071965818.

  • NIEMI, David; PEA, Roy D.; SAXBERG, Bror; CLARK, Richard E. Learning Analytics in Education. Information Age Publishing, 2018. ISBN 978-1641133708

  • MOUGIAKOU, Sofia; VINATSELLA, Dimitra; SAMPSON, Demetrios; PAPAMITSIOU, Zacharoula; GIANNAKOS, Michail; IFENTHALER, Dirk. Educational Data Analytics for Teachers and School Leaders (Advances in Analytics for Learning and Teaching). Springer, 2023. ISBN 978-3031152658

  • SRINIVASA K G; KURNI, Muralidhar. A Beginner’s Guide to Learning Analytics (Advances in Analytics for Learning and Teaching). Springer, 2021. ISBN 978-3030702601

  • SAHIN, Muhittin; IFENTHALER, Dirk. Visualizations and Dashboards for Learning Analytics (Advances in Analytics for Learning and Teaching). Springer, 2021. ISBN 978-3030812218

  • VON DAVIER, Alina A.; MISLEVY, Robert J.; HAO, Jiangang. Computational Psychometrics: New Methodologies for a New Generation of Digital Learning and Assessment: With Examples in R and Python (Methodology of Educational Measurement and Assessment). Springer, 2021. ISBN 978-3030743963.

  • HALL, Cristina; MATTOX II, John R.; PARSKEY, Peggy. Learning Analytics: Using Talent Data to Improve Business Outcomes, 2nd ed. Kogan Page, 2020. ISBN 978-1789663006

  • Repositórios de periódicos e conferências na área de Educação em Computação, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

ELETIVAS - CICLO ESPECÍFICO

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEC082

Cálculo Numérico

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

IEM075 Cálculo Diferencial e Integral I

Engenharia de Software

Eletiva

IEM075 Cálculo Diferencial e Integral I

Inteligência Artificial

Eletiva

IEM075 Cálculo Diferencial e Integral I

Tecnologia da Informação

Eletiva

IEM075 Cálculo Diferencial e Integral I

 

  1. EMENTA

Sistemas Numéricos: Representação e manipulação de números em sistemas de ponto flutuante. Erros de arredondamento e truncamento. Sistemas Lineares: Métodos numéricos para resolver sistemas lineares, incluindo métodos diretos e iterativos. Interpolação: Interpolação polinomial e suas aplicações. Quadrados Mínimos Lineares: Aplicação dos mínimos quadrados para encontrar uma função que melhor se ajusta a um conjunto de dados. Zeros de Funções Reais: Métodos de busca de raízes de funções, como o método da bisseção, método de Newton-Raphson e método da secante. Integração Numérica: Métodos numéricos para calcular integrais definidas, como regra do trapézio, regra de Simpson e quadratura Gaussiana.

 

  1. OBJETIVOS GERAIS

 Compreender os princípios teóricos por trás dos métodos numéricos abordados. Desenvolver habilidades na implementação computacional desses métodos. Aplicar os métodos numéricos para resolver problemas práticos em diversas áreas da ciência e engenharia.

 

  1. OBJETIVOS ESPECÍFICOS

Representar números em sistemas de ponto flutuante e identificar fontes de erros como arredondamento e truncamento. Comparar métodos diretos e iterativos para resolver sistemas lineares, como eliminação de Gauss e métodos de Jacobi e Gauss-Seidel. Construir polinômios interpoladores para aproximação de funções e analisar seus erros. Aplicar o método dos mínimos quadrados para ajustar funções a conjuntos de dados. Implementar métodos numéricos para encontrar raízes de funções, como bisseção, Newton-Raphson e secante. Calcular integrais definidas utilizando técnicas como regra do trapézio, Simpson e quadratura Gaussiana. Interpretar resultados numéricos criticamente, considerando limitações e possíveis otimizações.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CAMPOS FILHO, Frederico. Algoritmos Numéricos, 2 ed. Rio de Janeiro: LTC, 2007.

  • ARENALES, Selma; DAREZZO FILHO, Artur. Cálculo numérico: aprendizagem com apoio de software. São Paulo: Thomson, 2008.

  • CLÁUDIO, Dalcídio Moraes; MARINS, Jussara Maria. Cálculo numérico computacional: teoria e prática, 3 ed. São Paulo: Atlas, 2000.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • RUGGIERO, Márcia A. Gomes; LOPES, Vera Lúcia da Rocha. Cálculo numérico: aspectos teóricos e computacionais, 2 ed. Pearson, 1997.

  • BARROSO, Leônidas Conceição. Cálculo numérico com aplicações, 2 ed. Harbra, 1987.

  • GILAT, Amos; SUBRAMANIAM, Vish. Métodos numéricos para engenheiros e cientistas. Porto Alegre: Bookman, 2008.

  • PUGA, Leila; TARCIA, José Henrique; PAZ, Álvaro. Cálculo Numérico. São Paulo: LCTE, 2012.

  • CHAPRA, Steve C.; CANALE, Raymond P. Métodos numéricos para engenharia. 7. ed. Porto Alegre: AMGH, 2016.

  • DO COUTTO, Felipe A. Brown; DO COUTTO FILHO, Milton Brown. Métodos Numéricos: Fundamentos e Implementação Computacional. Elsevier: 2017.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IHE130

Inglês Instrumental I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Estudo do discurso em texto autênticos complexos, tanto de interesse geral quanto específico. Funções comunicativa do texto. Estratégias de leitura. Análise de partes complexas do sistema linguístico-gramatical da língua inglesa. Estudo de informação contida em gráficos, quadros estatísticos e diagramas.

 

  1. OBJETIVOS GERAIS

Capacitar o aluno a ler textos nativos em inglês de interesse geral e específico, utilizando técnicas e estratégias que facilitem a compreensão.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os marcos históricos da educação de surdos no Brasil. Diferenciar as abordagens oralistas, gestuais e bilíngues no ensino de Libras. Aplicar os princípios básicos da estrutura gramatical da Libras em contextos comunicativos. Demonstrar expressões corporais e faciais adequadas para a sinalização. Utilizar a dramatização e a música como recursos pedagógicos no ensino de Libras. Interpretar as leis e políticas públicas que asseguram a inclusão educacional de surdos. Discutir os desafios e avanços na implementação da educação bilíngue para surdos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • SILVA, A. V.; CRUZ, D. T.; ROSAS, M. Inglês.com: Textos para Informática, Com Respostas dos Exercícios. São Paulo: Disal, 2003.

  • GALLO, L. R. Inglês Instrumental para Informática: Módulo I. São Paulo: Ícone, 2008.

  • MARINOTTO, D. Reading On Info Tech. 2 ed. São Paulo: Novatec, 2007.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SCHUMACHER, C.; COSTA, F. A.; UCICH, R. O Inglês na Tecnologia da Informação. São Paulo: Disal, 2009.

  • MUNHOZ, R. Inglês Instrumental: Estratégias de Leitura I. São Paulo: Textonovo, 2001.

  • COSTA, G. C.; MELLO, L. F.; ABSY, C. A. Leitura em Língua Inglesa: Uma Abordagem Instrumental. 2 ed. São Paulo: Disal, 2010.

  • GUANDALINI, E. O. Técnicas de Leitura em Inglês: Estágio 1. São Paulo: Textonovo, 2002.

  • VELLOSO, M. S. Inglês Instrumental: Texto, V. 2. Brasília: Vestcon, 2011.

  • ARMER, T. Cambridge English for Scientists. Cambridge: Cambridge University Press, 2011.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC004

Algoritmos e Estrutura de Dados Avançados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

     

  1. EMENTA

Estruturas de dados temporais (persistência e retroatividade), estruturas de dados espaciais, hierarquia de memória, otimalidade dinâmica, hashing, filas de prioridade avançadas, grafos dinâmicos.

 

  1. OBJETIVOS GERAIS

Explorar algoritmos e estruturas de dados avançadas, envolvendo estruturas de dados temporais (persistência e retroatividade), estruturas de dados espaciais, hierarquia de memória, otimalidade dinâmica, hashing, filas de prioridade avançadas, grafos dinâmicos.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender e aplicar técnicas avançadas de projeto de algoritmos. Dominar estruturas de dados complexas e suas aplicações. Reconhecer, manipular e aplicar estruturas de dados avançadas na resolução de problemas. Desenvolver habilidades para analisar e otimizar algoritmos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • TARJAN, Robert E. Data Structures and Network Algorithms. Society for Industrial and Applied Mathematics, 1987. ISBN 978-1107669376.

  • KLEINBERG, J.; TARDOS, É. Algorithm Design. Addison-Wesley Longman Pub., 2005. ISSN: 978-0-321-29535-4.

  • KNUTH, D. E. The Art of Computer Programming. Addison-Wesley, 1997.

  • MORIN, Pat. Open Data Structures: An Introduction (OPEL: Open Paths to Enriched Learning). Athabasca University Press; 31st ed. ed., 2013. ISSN: 978-1927356388.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SEDGEWICK, Robert, WAYNE, Kevin. Algorithms, 4th Edition. Addison-Wesley Professional, 2011. ISBN 978-0321573513.

  • ZINGARO, Daniel. Algorithmic Thinking: Learn Algorithms to Level Up Your Coding Skills, 2nd Edition. No Starch Press, 2024. ISBN 978-1718503229.

  • LA ROCCA, Marcello. Advanced Algorithms and Data Structures. Manning, 2021. ISBN 978-1617295485.

  • MCDOWELL, Gayle Laakmann. Cracking the Coding Interview: 189 Programming Questions and Solutions, 6th edition. CareerCup, 2015. ISBN 978-0984782857.

  • KOPEC, David. Problemas Clássicos de Ciência da Computação com Python. Novatec Editora, 2019. ISBN 978-8575228050.

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 1: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745521

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 2: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745514.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC007

Programação para Web

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC205 Introdução a Bancos de Dados

Engenharia de Software

Obrigatória

ICC205 Introdução a Bancos de Dados

Inteligência Artificial

Eletiva

ICC205 Introdução a Bancos de Dados

Tecnologia da Informação

Eletiva

ICC205 Introdução a Bancos de Dados

 

  1. EMENTA

A arquitetura da Web: protocolos de comunicação, navegadores e servidores Web. Programação do lado cliente: folhas de estilo, linguagens de marcação, Javascript e Document Object Model. Programação do lado servidor: padrão MVC (Model-View-Controller), persistência e validação de dados, camada de serviços, camada de repositórios, DTOs (Data Transfer Objects). Noções sobre segurança e privacidade de sistemas Web: criptografia de senhas, autenticação e autorização de usuários.

 

  1. OBJETIVOS GERAIS

Descrever aspectos teóricos, técnicos, práticos e fundamentais envolvidos no desenvolvimento de aplicações para a Web. Usar tecnologias do lado cliente para implementar interfaces Web dinâmicas e responsivas, seguindo regras básicas de usabilidade e boas práticas de desenvolvimento. Implementar sistemas Web usando tecnologias atuais de desenvolvimento do lado servidor, explorando técnicas de persistência de dados, considerando aspectos como segurança e privacidade. Aplicar padrões de projetos para a Web para implementar códigos com alta legibilidade e manutenibilidade.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar interfaces web dinâmicas e responsivas, seguindo princípios de usabilidade e boas práticas de desenvolvimento. Utilizar o padrão Model-View-Controller (MVC) para organizar e estruturar aplicações web, separando responsabilidades no código. Aplicar técnicas de validação e persistência de dados, garantindo segurança e integridade das informações. Incorporar práticas de segurança em sistemas web, incluindo criptografia, autenticação e autorização, para proteger dados sensíveis dos usuários. Manipular o Document Object Model (DOM) com JavaScript, criando interações avançadas e personalizadas nas páginas. Desenvolver camadas de serviço, utilizando padrões de design e Data Transfer Objects (DTOs) para facilitar a escalabilidade e manutenibilidade do sistema. Debater os impactos éticos e sociais das tecnologias e práticas de desenvolvimento para a web, considerando aspectos como segurança, privacidade e acessibilidade.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FREEMAN, Eric; ROBSON, Elisabeth. Use a Cabeça! HTML e CSS. Editora Alta Books, 2015. ISBN 978-8576088622.

  • SILVA, Maurício Samy. JavaScript Essencial. Editora Novatec, 2024. ISBN 978-8575228913.

  • BROWN, Ethan. Programação web com Node e Express: Beneficiando-se da Stack JavaScript. Editora Novatec, 2020. ISBN 978-6586057089.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • GOLBERG, Josh. Aprendendo TypeScript: Melhore Suas Habilidades de Desenvolvimento web Usando JavaScript Type-Safe. Editora Novatec, 2022. ISBN 978-6586057997.

  • MORAES, Willian Bruno. Construindo aplicações com NodeJS. 4ed. Editora Novatec, 2023. ISBN 978-8575228784.

  • FREEMAN, Eric; ROBSON, Elisabeth. Head First JavaScript Programming: A Learner's Guide to Modern JavaScript. 2. ed. Editora O'Reilly Media, 2024. ISBN 978-1098147945.

  • FREEMAN, Adam. Mastering Node.js Web Development: Go on a comprehensive journey from fundamentals to advanced web development with Node.js. 1. ed. Editora Packt Publishing, 2024. ISBN 978-1804615072.

  • HAVERBEKE, Marijn. Eloquent JavaScript: A modern introduction to programming. No Starch Press, 2018. ISBN 978-1593279509.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC010

Programação para Web II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC007 Programação para Web

Engenharia de Software

Eletiva

ICC007 Programação para Web

Inteligência Artificial

Eletiva

ICC007 Programação para Web

Tecnologia da Informação

Eletiva

ICC007 Programação para Web

 

  1. EMENTA

Desenvolvimento Web Full Stack. Desenvolvimento de SPAs (Single-Page Application) para a Web. Sistemas de lado servidor baseados em APIs REST. Documentação de APIs. Verbos HTTP. Códigos de respostas HTTP. Desenvolvimento Frontend. Componentes de interface reutilizáveis. Conteinerização de aplicações Web.

 

  1. OBJETIVO

Descrever e discutir as diferenças entre sistemas Web tradicionais e SPAs (Single-Page Applications).  Descrever, discutir e implementar sistemas SPAs, explorando aspectos teóricos e práticos sobre o desenvolvimento do lado cliente e do lado servidor. Implementar APIs (Application Programming Interfaces) usando os princípios do estilo arquitetural REST. Implementar aplicações frontend que consumam endpoints de APIs REST e que sejam organizadas em componentes de interface independentes e reutilizáveis. Usar tecnologias de conteinerização de aplicações Web para criar ambientes de execução uniformes e isolados.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar SPAs (Single-Page Applications) usando tecnologias frontend e backend modernas e adotando princípios de componentização. Desenvolver APIs RESTful, aplicando os verbos e códigos de resposta HTTP e usando princípios modernos de design de APIs. Documentar APIs de maneira clara e estruturada para facilitar o uso por desenvolvedores frontend. Construir componentes de interface independentes e reutilizáveis, promovendo modularidade e manutenibilidade do código frontend. Utilizar conteinerização para criar ambientes de execução consistentes e isolados, garantindo portabilidade e escalabilidade das aplicações. Comparar as diferenças arquiteturais entre SPAs e aplicações Web tradicionais, destacando os casos de uso para cada abordagem. Debater impactos éticos e sociais do desenvolvimento de sistemas Web complexos, especialmente no contexto de SPAs e APIs, abordando temas como acessibilidade, privacidade e consumo de dados.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MORAES, Willian Bruno. Construindo aplicações com NodeJS. 4ed. Editora Novatec, 2023. ISBN 978-8575228784.

  • SAUDATE, Alexandre. APIs REST: Seus serviços prontos para o mundo real. Editora Casa do Código, 2021. ISBN 978-6586110715.

  • KUMAR, Tejas. React Fluente: Crie aplicações web rápidas, eficazes e intuitivas. 1. ed. Editora Novatec, 2024. ISBN 978-8575229095.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BROWN, Ethan. Programação web com Node e Express: Beneficiando-se da Stack JavaScript. Editora Novatec, 2020. ISBN 978-6586057089.

  • GEEWAX, JJ. API Design Patterns. 1. ed. Editora Manning, 2021. ISBN 978-1617295850.

  • BUGL, Daniel. Modern Full-Stack React Projects: Build, maintain, and deploy modern web apps using MongoDB, Express, React, and Node.js. 1. ed. Editora Packt Publishing, 2024. ISBN: 978-1837637959.

  • CASCIARO, Mario. Node.js Design Patterns: Design and implement production-grade Node.js applications using proven patterns and techniques. 3. ed. Editora Packt Publishing, 2020. ISBN: 978-1839214110.

  • KANE, Sean P.; MATTHIAS, Karl. Docker: Up & Running: Shipping Reliable Containers in Production. 3. ed. Editora O'Reilly Media, 2023. ISBN: 978-1098131821.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC021

Prática em Programação I

2.2.0.0

30h

0h

0h

30h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Atividades práticas de técnicas de programação e estruturas de dados, a critério do docente.

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades práticas na implementação de soluções de software. Aplicar conceitos fundamentais de programação em situações práticas e projetos reais. Aprimorar a capacidade de resolver problemas complexos usando técnicas de programação. Colaborar em projetos de programação, exercitando trabalho em equipe e gestão de tempo.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar soluções de software utilizando diferentes linguagens de programação. Praticar técnicas de depuração e otimização de código. Integrar bibliotecas e frameworks para resolver problemas específicos. Desenvolver projetos colaborativos, utilizando controle de versão e boas práticas de desenvolvimento. Testar e validar o funcionamento correto de programas, aplicando metodologias de teste automatizado e manual. Corrigir erros e bugs no código de forma eficiente, utilizando ferramentas e técnicas apropriadas. Aplicar padrões de projeto e boas práticas de programação em implementações práticas. Aprimorar habilidades de leitura e manutenção de código legado em projetos de software. Documentar adequadamente o código desenvolvido, assegurando a clareza e a reprodutibilidade. Explorar diferentes abordagens de solução para problemas complexos de programação, comparando suas vantagens e desvantagens, bem como considerando aspectos éticos, sociais e ambientais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC022

Prática em Programação II

2.2.0.0

30h

0h

0h

30h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Atividades práticas de técnicas de programação e estruturas de dados, a critério do docente.

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades práticas na implementação de soluções de software. Aplicar conceitos fundamentais de programação em situações práticas e projetos reais. Aprimorar a capacidade de resolver problemas complexos usando técnicas de programação. Colaborar em projetos de programação, exercitando trabalho em equipe e gestão de tempo.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar soluções de software utilizando diferentes linguagens de programação. Praticar técnicas de depuração e otimização de código. Integrar bibliotecas e frameworks para resolver problemas específicos. Desenvolver projetos colaborativos, utilizando controle de versão e boas práticas de desenvolvimento. Testar e validar o funcionamento correto de programas, aplicando metodologias de teste automatizado e manual. Corrigir erros e bugs no código de forma eficiente, utilizando ferramentas e técnicas apropriadas. Aplicar padrões de projeto e boas práticas de programação em implementações práticas. Aprimorar habilidades de leitura e manutenção de código legado em projetos de software. Documentar adequadamente o código desenvolvido, assegurando a clareza e a reprodutibilidade. Explorar diferentes abordagens de solução para problemas complexos de programação, comparando suas vantagens e desvantagens, bem como considerando aspectos éticos, sociais e ambientais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC023

Prática em Programação III

2.2.0.0

30h

0h

0h

30h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Atividades práticas de técnicas de programação e estruturas de dados, a critério do docente.

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades práticas na implementação de soluções de software. Aplicar conceitos fundamentais de programação em situações práticas e projetos reais. Aprimorar a capacidade de resolver problemas complexos usando técnicas de programação. Colaborar em projetos de programação, exercitando trabalho em equipe e gestão de tempo.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar soluções de software utilizando diferentes linguagens de programação. Praticar técnicas de depuração e otimização de código. Integrar bibliotecas e frameworks para resolver problemas específicos. Desenvolver projetos colaborativos, utilizando controle de versão e boas práticas de desenvolvimento. Testar e validar o funcionamento correto de programas, aplicando metodologias de teste automatizado e manual. Corrigir erros e bugs no código de forma eficiente, utilizando ferramentas e técnicas apropriadas. Aplicar padrões de projeto e boas práticas de programação em implementações práticas. Aprimorar habilidades de leitura e manutenção de código legado em projetos de software. Documentar adequadamente o código desenvolvido, assegurando a clareza e a reprodutibilidade. Explorar diferentes abordagens de solução para problemas complexos de programação, comparando suas vantagens e desvantagens, bem como considerando aspectos éticos, sociais e ambientais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC024

Prática em Programação IV

2.2.0.0

30h

0h

0h

30h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Atividades práticas de técnicas de programação e estruturas de dados, a critério do docente.

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades práticas na implementação de soluções de software. Aplicar conceitos fundamentais de programação em situações práticas e projetos reais. Aprimorar a capacidade de resolver problemas complexos usando técnicas de programação. Colaborar em projetos de programação, exercitando trabalho em equipe e gestão de tempo.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar soluções de software utilizando diferentes linguagens de programação. Praticar técnicas de depuração e otimização de código. Integrar bibliotecas e frameworks para resolver problemas específicos. Desenvolver projetos colaborativos, utilizando controle de versão e boas práticas de desenvolvimento. Testar e validar o funcionamento correto de programas, aplicando metodologias de teste automatizado e manual. Corrigir erros e bugs no código de forma eficiente, utilizando ferramentas e técnicas apropriadas. Aplicar padrões de projeto e boas práticas de programação em implementações práticas. Aprimorar habilidades de leitura e manutenção de código legado em projetos de software. Documentar adequadamente o código desenvolvido, assegurando a clareza e a reprodutibilidade. Explorar diferentes abordagens de solução para problemas complexos de programação, comparando suas vantagens e desvantagens, bem como considerando aspectos éticos, sociais e ambientais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC030

Tópicos Especiais em Programação I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC031

Tópicos Especiais em Programação II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC032

Tópicos Especiais em Programação III

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC033

Tópicos Especiais em Programação IV

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC034

Tópicos Especiais em Programação V

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC035

Tópicos Especiais em Programação VI

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC001 Introdução à Computação

Engenharia de Software

Eletiva

ICC001 Introdução à Computação

Inteligência Artificial

Eletiva

ICC001 Introdução à Computação

Tecnologia da Informação

Eletiva

ICC001 Introdução à Computação

 

  1. EMENTA

Tópicos emergentes na área de programação de computadores, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os tópicos emergentes em programação e suas implicações éticas, sociais e ambientais. Aplicar técnicas e ferramentas avançadas para solucionar problemas contemporâneos de programação. Analisar as tendências atuais da área de programação, ambientes e processos de desenvolvimento, controle de versões e depuração. Avaliar questões éticas, sociais e ambientais relacionadas ao desenvolvimento e uso de novas tecnologias de programação.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar ferramentas e bibliotecas recentes que facilitam o desenvolvimento de software moderno. Desenvolver projetos práticos que utilizem técnicas de programação emergentes. Integrar boas práticas de programação com considerações éticas, sociais e ambientais em projetos de software. Debater implicações éticas relacionadas à automação, inteligência artificial e privacidade no contexto da programação. Comparar diferentes abordagens e tecnologias emergentes em termos de critérios tais como eficiência, segurança e sustentabilidade. Propor soluções inovadoras que utilizem novas tecnologias de programação para resolver problemas reais. Refletir sobre o impacto social e ambiental de soluções tecnológicas criadas a partir dos tópicos discutidos em aula.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC036

Programação Competitiva I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Estratégias de resolução de problemas, técnicas de projeto de algoritmos, estruturas de dados básicas e avançadas, estratégias de competição, leitura técnica de textos, elaboração de especificação de problemas, reconhecimento de padrões e reaproveitamento de código, padronização e boas práticas de codificação, com abordagens individuais e formação de times para práticas de trabalho colaborativo em grupo.

 

  1. OBJETIVOS GERAIS

Desenvolver e potencializar a capacidade de resolução de problemas por computador, envolvendo a compreensão, especificação e modelagem de problemas  para serem bem resolvidos por computador, por meio de aplicação de técnicas de projeto de algoritmos e estrutura de dados, em diferentes abordagens e desafios.

 

  1. OBJETIVOS ESPECÍFICOS

Desenvolver habilidades para resolver problemas de programação desafiadores, típicos de competições de programação. Promover a boa tomada de decisão usando o ferramental computacional para a resolução de problemas, sob pressão, de modo a refinar habilidades essenciais para um resolvedor de problemas e desenvolvedor diferenciado, tanto para a academia científica quanto para o mercado de trabalho. Resolver problemas de competições de programação, simulando ambientes reais de maratonas e hackathons. Colaborar em equipes para resolver desafios complexos, desenvolvendo habilidades de trabalho em grupo. Manipular conteúdos e tópicos computacionais essenciais para a resolução eficiente de problemas algorítmicos, com foco em competições como Olimpíadas de Informática, Maratonas de Programação e outras competições de programação. Identificar situações em que estruturas de dados avançadas (ex.: árvores balanceadas, filas de prioridades avançadas, tabelas de dispersão) são necessárias para otimizar soluções. Projetar e implementar algoritmos avançados, como os de programação dinâmica, para resolver problemas de otimização. Aplicar algoritmos em grafos (ex.: Dijkstra, Floyd-Warshall, Kruskal) para resolver problemas de caminhos mínimos, conectividade e fluxo. Adaptar soluções para problemas variáveis e atuais em competições de programação, utilizando técnicas inovadoras e analisando a complexidade temporal e/ou espacial dos algoritmos, garantindo eficiência nas soluções propostas. Avaliar soluções alternativas para um mesmo problema, comparando eficiência e clareza de implementação. Explorar ferramentas e plataformas de competição (ex.: Codeforces, TopCoder, LeetCode) para praticar e aprimorar habilidades. Criar problemas e casos de teste para desafios de programação, desenvolvendo a capacidade de pensar criticamente sobre soluções. Revisar códigos de outros competidores, identificando pontos de melhoria e boas práticas. Preparar-se para competições de programação, desenvolvendo estratégias eficazes de resolução sob pressão de tempo e de penalidades diversas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN 978-8595159907.

  • LAAKSONEN, Antti. Guide to Competitive Programming: Learning and Improving Algorithms Through Contests, 3rd ed. Springer, 2024. ISBN 978-3031617935.

  • SKIENA, Steven. The Algorithm Design Manual (Texts in Computer Science), 3ed. Springer, 2020. ISBN 978-3030542580.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • IZADKHAH, Habib; BEHZADIDOOST, Rashid. Challenging Programming in Python: A Problem Solving Perspective. Springer, 2024. ISBN 9783031399985.

  • SEDGEWICK, Robert ; WAYNE, Kevin. Algorithms, 4th Edition. Addison-Wesley Professional, 2011. ISBN 978-0321573513.

  • ZINGARO, Daniel. Algorithmic Thinking: Learn Algorithms to Level Up Your Coding Skills, 2nd Edition. No Starch Press, 2024. ISBN 978-1718503229.

  • LA ROCCA, Marcello. Advanced Algorithms and Data Structures. Manning, 2021. ISBN 978-1617295485.

  • MCDOWELL, Gayle Laakmann. Cracking the Coding Interview: 189 Programming Questions and Solutions, 6th edition. CareerCup, 2015. ISBN 978-0984782857.

  • KOPEC, David. Problemas Clássicos de Ciência da Computação com Python. Novatec Editora, 2019. ISBN 978-8575228050.

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 1: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745521

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 2: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745514.

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC037

Programação Competitiva II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Estratégias de resolução de problemas, técnicas de projeto de algoritmos, estruturas de dados básicas e avançadas, estratégias de competição, leitura técnica de textos, elaboração de especificação de problemas, reconhecimento de padrões e reaproveitamento de código, padronização e boas práticas de codificação, com abordagens individuais e formação de times para práticas de trabalho colaborativo em grupo.

 

  1. OBJETIVOS GERAIS

Desenvolver e potencializar a capacidade de resolução de problemas por computador, envolvendo a compreensão, especificação e modelagem de problemas  para serem bem resolvidos por computador, por meio de aplicação de técnicas de projeto de algoritmos e estrutura de dados, em diferentes abordagens e desafios.

 

  1. OBJETIVOS ESPECÍFICOS

Desenvolver habilidades para resolver problemas de programação desafiadores, típicos de competições de programação. Promover a boa tomada de decisão usando o ferramental computacional para a resolução de problemas, sob pressão, de modo a refinar habilidades essenciais para um resolvedor de problemas e desenvolvedor diferenciado, tanto para a academia científica quanto para o mercado de trabalho. Resolver problemas de competições de programação, simulando ambientes reais de maratonas e hackathons. Colaborar em equipes para resolver desafios complexos, desenvolvendo habilidades de trabalho em grupo. Manipular conteúdos e tópicos computacionais essenciais para a resolução eficiente de problemas algorítmicos, com foco em competições como Olimpíadas de Informática, Maratonas de Programação e outras competições de programação. Identificar situações em que estruturas de dados avançadas (ex.: árvores balanceadas, filas de prioridades avançadas, tabelas de dispersão) são necessárias para otimizar soluções. Projetar e implementar algoritmos avançados, como os de programação dinâmica, para resolver problemas de otimização. Aplicar algoritmos em grafos (ex.: Dijkstra, Floyd-Warshall, Kruskal) para resolver problemas de caminhos mínimos, conectividade e fluxo. Adaptar soluções para problemas variáveis e atuais em competições de programação, utilizando técnicas inovadoras e analisando a complexidade temporal e/ou espacial dos algoritmos, garantindo eficiência nas soluções propostas. Avaliar soluções alternativas para um mesmo problema, comparando eficiência e clareza de implementação. Explorar ferramentas e plataformas de competição (ex.: Codeforces, TopCoder, LeetCode) para praticar e aprimorar habilidades. Criar problemas e casos de teste para desafios de programação, desenvolvendo a capacidade de pensar criticamente sobre soluções. Revisar códigos de outros competidores, identificando pontos de melhoria e boas práticas. Preparar-se para competições de programação, desenvolvendo estratégias eficazes de resolução sob pressão de tempo e de penalidades diversas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN 978-8595159907.

  • LAAKSONEN, Antti. Guide to Competitive Programming: Learning and Improving Algorithms Through Contests, 3rd ed. Springer, 2024. ISBN 978-3031617935.

  • SKIENA, Steven. The Algorithm Design Manual (Texts in Computer Science), 3ed. Springer, 2020. ISBN 978-3030542580.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • IZADKHAH, Habib; BEHZADIDOOST, Rashid. Challenging Programming in Python: A Problem Solving Perspective. Springer, 2024. ISBN 9783031399985.

  • SEDGEWICK, Robert ; WAYNE, Kevin. Algorithms, 4th Edition. Addison-Wesley Professional, 2011. ISBN 978-0321573513.

  • ZINGARO, Daniel. Algorithmic Thinking: Learn Algorithms to Level Up Your Coding Skills, 2nd Edition. No Starch Press, 2024. ISBN 978-1718503229.

  • LA ROCCA, Marcello. Advanced Algorithms and Data Structures. Manning, 2021. ISBN 978-1617295485.

  • MCDOWELL, Gayle Laakmann. Cracking the Coding Interview: 189 Programming Questions and Solutions, 6th edition. CareerCup, 2015. ISBN 978-0984782857.

  • KOPEC, David. Problemas Clássicos de Ciência da Computação com Python. Novatec Editora, 2019. ISBN 978-8575228050.

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 1: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745521

  • HALIM, Steven; HALIM, Felix; EFFENDY, Suhendry. Competitive Programming 4 - Book 2: The Lower Bound of Programming Contests in the 2020s. Lulu.com, 2018. ISBN 979-1716745514.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC041

Introdução à Teoria dos Grafos

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC003 Algoritmos e Estrutura de Dados II

ICC120 Matemática Discreta

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estrutura de Dados II

ICC120 Matemática Discreta

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estrutura de Dados II

ICC120 Matemática Discreta

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estrutura de Dados II

ICC120 Matemática Discreta

 

  1. EMENTA

Percursos em Árvores Binárias, Representação de Grafos e Digrafos. Busca em Profundidade, Componentes Biconexos, Componentes Fortemente Conexos, Busca em Largura, Busca em Largura Lexicográfica, Reconhecimento de Grafos Cordais, Busca Irrestrita. Ordenação de vértices, Alteração Estrutural em Grafos, Número Cromático. Algoritmo Guloso, Árvore Geradora Máxima. Planaridade, Reconhecimento de Grafos Planares. Algoritmos de Fluxo Máximo em Redes. Algoritmos para Emparelhamentos.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos fundamentais da teoria dos grafos e suas aplicações em computação. Desenvolver habilidades para analisar e resolver problemas utilizando grafos. Aplicar algoritmos clássicos de busca, ordenação e fluxo em grafos. Avaliar a complexidade e eficiência de algoritmos em grafos. Reconhecer propriedades estruturais de grafos, como planaridade e conectividade.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar e representar grafos e digrafos de forma eficiente. Implementar algoritmos de busca em profundidade e largura para percorrer grafos. Reconhecer componentes biconexos e fortemente conexos em grafos. Aplicar algoritmos de ordenação de vértices e alteração estrutural em grafos. Resolver problemas de coloração de grafos utilizando o número cromático. Implementar algoritmos gulosos para encontrar árvores geradoras máximas. Verificar a planaridade de grafos e reconhecer grafos planares. Resolver problemas de fluxo máximo em redes utilizando algoritmos específicos. Aplicar algoritmos para encontrar emparelhamentos em grafos. Analisar e comparar a eficiência de diferentes algoritmos em grafos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • SZWARCFITER, J. Grafos e Algoritmos Computacionais. Campus, Rio de Janeiro, 1988. ISBN 85-7001-341-8.

  • BOAVENTURA Neto, Paulo O. Boaventura. Grafos – Teoria, Modelos e Algoritmos, 5ª edição. Editora Edgard Blucher, 2012. ISBN 9788521206804.

  • WEST, D. B. Introduction to Graph Theory, 2nd edition. Prentice-Hall, New Jersey, 2000. ISBN-13: 978-0130144003.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • DIESTEL, R. Graph Theory. 4th edition. Springer, New York 2010. ISBN 978-3-642-14278-9.

  • CHARTRAND, G.; ZHANG, P. A First Course in Graph Theory. Dover Publications, 2012. ISBN-10: 048648368 (ISBN-13: 978-0486483689).

  • JUNGNICKEL, D. Graphs, Networks and Algorithms (Algorithms and Computation in Mathematics). Springer; 4th ed. 2013 edition. ISBN-10: 3642322778.

  • SKIENA, S., Revilla, M. Programming Challenges. Springer, 2003. ISBN 0387001638.

  • SKIENA, S. (2010). The Algorithm Design Manual (2nd ed.). Springer Science+Business Media. ISBN 1-849-96720-2.

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 3ª edição. Campus Editora, 2012. ISBN 978-85-352-3699-6.

  • GRAHAM, R., KNUTH, D. Concrete Mathematics: A Foundation for Computer Science (2nd Edition). Addison-Wesley Professional; 2 edition, 1994. ISBN-10: 0201558025.

  • PEMMARAJU, S.; SKIENA, S. Computational Discrete Mathematics: Combinatorics and Graph Theory with Mathematica (1st ed.). Cambridge University Press. ISBN 0-521-12146-9.

  • BONDY, J. A.; MURTY, U. S. R. Graph Theory (Graduate Texts in Mathematics). Springer, GTM 244, 2008. ISBN: 978-1-84628-969-9.

  • BOLLOBÁS, B. Graph Theory: an Introductory Course (Graduate Texts in Mathematics, Book 63). Springer, New York, 3a. ed. 1994. ISBN-10: 0387903992.

  • BOLLOBÁS, B. Modern Graph Theory (Graduate Texts in Mathematics), vol. 184, Springer, 1998. ISSN 0072-5285, ISBN 0387984887.

  • GOLUMBIC, M. Algorithmic Graph Theory and Perfect Graphs. Volume 57 of Annals of discrete mathematics, ISSN 0167-5060. Elsevier, 2004. ISBN 0444515305.

  • BRANDSTADT, A., BANG LE, V., SPINRAD, J. Graph Class: A Survey. Society for Industrial and Applied Mathematics, 1987. ISBN-10: 089871432X.

  • BIGSS, N., LLOYD, E., WILSON, R. Graph Theory: 1736-1936. Clarendon Press, Oxford, 1986. ISBN-10: 0198539169.

  • JENSEN, T., TOFT, B. Graph Coloring Problems. Wiley Interscience, 1995. ISBN 0471028657.

  • ORE, O. Graphs and their Uses. New Mathematical Library 10, Mathematical Association of America, Washington D.C., 1990. ISBN 10: 0883856352.

  • WILSON, R., Watkins, J. Graphs - An Introductory Approach. John Wiley & Sons, 1990. ISBN 0471615544.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC044

Compiladores

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC040 Linguagens Formais e Autômatos

Engenharia de Software

Eletiva

ICC040 Linguagens Formais e Autômatos

Inteligência Artificial

Eletiva

ICC040 Linguagens Formais e Autômatos

Tecnologia da Informação

Eletiva

ICC040 Linguagens Formais e Autômatos

 

  1. EMENTA

Introdução à compilação. Ferramentas de desenvolvimento de compiladores. Análise léxica, sintática e semântica. Representação intermediária. Otimização de código. Geração de código.

 

  1. OBJETIVOS GERAIS

Compreender os fundamentos da compilação e sua relevância para sistemas computacionais. Integrar os conhecimentos teóricos e práticos das etapas de tradução de linguagens para formar uma visão holística do processo de compilação. Desenvolver a capacidade de aplicar ferramentas e técnicas de construção de compiladores na resolução de problemas complexos como o próprio projeto e implementação de um compilador.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar os conceitos e processos envolvidos na introdução à compilação e na tradução de linguagens. Explorar e aplicar ferramentas de desenvolvimento de compiladores. Implementar técnicas de análise léxica, sintática e semântica para a identificação de estruturas e significados em códigos-fonte. Construir representações intermediárias que possibilitem a otimização e a simplificação da tradução de linguagens. Gerar código executável a partir de representações intermediárias, garantindo a correta tradução e execução das instruções. Compreender estratégias de otimização de código visando a eficiência e a melhoria de desempenho dos programas compilados.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • Keith COOPER, Linda TORCZON. Construindo Compiladores, 2ª edição. Editora Campus, 2013. ISBN 978-8535255645.

  • AHO, Alfred V.; SETHI, Ravi; LAM, Monica S; ULLMAN, Jeffrey D. Compiladores, 2ª edição. Editora Pearson, 2007. ISBN 9788588639249.

  • LOUDEN, Kenneth C. Compiladores: Princípios e Práticas. Editora Cengage, 2004. ISBN 9788522104222.

  • PRICE, Ana Maria de Alencar; TOSCANI, Simão Sirineo. Implementação de Linguagens de Programação: Compiladores, 3ª edição. Coleção: Série Livros Didáticos 9. Editora SAGRA LUZZATTO, 2008. ISBN 978-8524106392.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • COOPER, Keith e TORCZON, Linda . Engineering a Compiler. Morgan Kaufmann Publishers; 3rd ed. 2022. ISBN 978-0120884780.

  • Jeffery, Clinton. Build Your Own Programming Language. Editora Packt Publishing, 2ª edição, 2024. ISBN 9781804618028.

  • RICARTE, Ivan Luiz Marques. Introdução à Compilação. Editora Campus, 2008. ISBN 9788535230673.

  • MAK, Ronald. Writing Compilers and Interpreters: A Software Engineering Approach, 3rd edition. Wiley, 2009. ISBN 9780470177075.

  • DELAMARO, Márcio Eduardo. Como Construir um Compilador: Utilizando Ferramentas Java. Editora Novatec, 2004. ISBN 9788575220559.

  • GRUNE, Dick; BAL, Henri; JACOBS, Ceriel; e LANGENDOEN, Koen. Modern Compiler Design. Springer, 2a edição, 2016. ISBN 9781493944729.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC045

Linguagens de Programação

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Conceitos, contexto histórico e aspectos de projeto. Visão geral de paradigmas. Visão mais detalhada de paradigmas selecionados como o Funcional, Lógico, Scripting, Paralelo e Distribuído. Tipos e Sistemas de Tipos. Ambientes de Execução e Modelos de Memória. Construtores avançados: programação genérica, introspectiva, reflexiva e metaprogramação. Tradução e Execução. Semântica Dinâmica (operacional, axiomática e denotacional).

 

  1. OBJETIVOS GERAIS

Compreender os principais aspectos inerentes ao projeto de linguagens de programação, incluindo os de natureza pragmática, de forma a poder compará-las e avaliá-las. Conhecer as características dos principais paradigmas de linguagens de programação e saber aplicá-los. Compreender tipos e sistemas de tipos e como são implementados. Saber interpretar e descrever formalmente uma linguagem de programação. Compreender os aspectos gerais de implementação de linguagens, sistemas de execução e ferramentas associadas. 

 

  1. OBJETIVOS ESPECÍFICOS

Desenvolver a capacidade crítica de análise dos conceitos e tendências históricas que influenciam o projeto das linguagens de programação. Identificar e aplicar os paradigmas de programação, com ênfase nos modelos funcional, lógico, scripting, paralelo e distribuído. Aplicar técnicas de programação genérica, introspectiva, reflexiva e metaprogramação na resolução de problemas. Compreender os ambientes de execução e modelos de memória sob os quais linguagens são projetadas. Implementar processos de tradução e execução visando a compreensão do funcionamento interno das linguagens, o que inclui abordagens e técnicas de especificação de linguagens.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • SEBESTA, Robert W. Conceitos de Linguagens de Programação, 11 ed. Bookman. 2018. ISBN 978-8582604687.

  • TUCKER; Allen B.; NOONAN, Robert E. Linguagens de programação: princípios e paradigmas. 2ª ed. São Paulo: McGraw-Hill. 2009. ISBN: 978-8577260447

  • Melo, Ana Cristina Vieira e Silva, Flávio Soares Corrêa. Princípios de Linguagens de Programação. Editora‎ Blucher; 1ª edição. 2003. ISBN 978-8521203223.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. São Paulo: Editora Novatec, 2024. ISBN 978-8575228869.

  • DEITEL, Harvey M.; DEITEL, Paul J. Java: Como Programar, 10 ed. São Paulo: Editora Pearson, 2016. ISBN 978-8543004792.

  • SCOTT, M. L. Programming Language Pragmatics, 4rd edition. Waltham, MA: Morgan Kaufmann, 2015. ISBN 978-0124104099.

  • PANDEY, Adesh K. Programming Language: Principles and Paradigms. New York: Springer, 2010. ISBN 9781842653913.

  • HARPER, Robert. Practical Foundations for Programming Languages. 2nd edition Cambridge University Press,  2016. ISBN 978-1107029576

  • TOAL, Ray; RIVERA, Rachel; SCHNEIDER, Alexander; CHOE, Eileen. Programming Language Explorations. 1st ed. Boca Raton, FL: Chapman and Hall/CRC, 2016. ISBN 978-1138412897.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC123

Tópicos Especiais em Estatística Aplicada à Computação

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área de Estatística Aplicada à Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Compreender os princípios fundamentais de probabilidade, estatística e técnicas de simulação aplicados à Ciência da Computação, Ciência de Dados e Machine Learning. Aplicar métodos probabilísticos e estatísticos para modelar incertezas e inferir parâmetros em problemas computacionais. Analisar dados de forma crítica para subsidiar a tomada de decisões baseada em evidências estatísticas. Desenvolver simulações computacionais que solucionem problemas complexos em cenários de alta incerteza ou variabilidade. Avaliar a adequação e eficácia de modelos estatísticos e técnicas de simulação em contextos práticos da Ciência da Computação.

 

  1. OBJETIVOS ESPECÍFICOS

      Compreender os fundamentos de probabilidade e inferência estatística, aplicando esses conceitos para modelagem de incertezas e tomada de decisões baseada em dados. Utilizar métodos de simulação computacional, como Monte Carlo, explorando suas aplicações na resolução de problemas complexos. Explorar técnicas estatísticas aplicadas à Ciência de Dados e Machine Learning, desde a análise exploratória até a validação de modelos. Interpretar e comunicar resultados estatísticos de forma clara, crítica e eficaz, utilizando visualizações e relatórios adequados. Resolver problemas reais por meio de projetos práticos que integrem teoria e aplicação, com foco em áreas como Inteligência Artificial e Ciência de Dados. Identificar vieses e limitações em análises estatísticas, questionando suposições e propondo soluções robustas para desafios complexos na Ciência da Computação. Desenvolver habilidades analíticas e críticas para avaliar a qualidade e a relevância de modelos estatísticos em contextos práticos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRUCE, Peter e BRUCE, Andrew. Estatística Prática Para Cientistas de Dados: 50 Conceitos

Essenciais, 1a ed. Alta Books, 2019. ISBN 978-8550806037.

  • FÁVERO, Luiz Paulo; BELFIORE, Patrícia. Manual de Análise de Dados: Estatística e Machine Learning com Excel®, SPSS®, Stata®, R® e Python®, 2a ed. rev. e atual. LTC, 2024. ISBN 978-8595159921.

  • MORETTIN, Pedro Alberto, e SINGER, Julio da Motta. Estatística e Ciência de Dados, 2a ed. LTC, 2025. ISBN 978-8521638995.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • ROSS, Sheldon M. Introduction to Probability and Statistics for Engineers and Scientists, 6a ed. Academic Press, 2020. ISBN 978-0128243466.

  • HASTIE, T., TIBSHIRANI, R., & FRIEDMAN, J. The Elements of Statistical Learning: Data Mining, Inference, and Prediction, 2a ed. Springer, 2009. ISBN 978-0387848570

  • LAW, A. M. Simulation Modeling and Analysis, 6a ed. McGraw-Hill Education, 2024. ISBN 978-1264268245

  • GOODFELLOW, I., BENGIO, Y., & COURVILLE, A. Deep Learning. MIT Press, 2016. ISBN 978-0262035613

  • JAMES, G., WITTEN, D., HASTIE, T., & TIBSHIRANI, R. An Introduction to Statistical Learning: with Applications in R , 2ª ed. Springer, 2021. ISBN 978-1071614174

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC130

Experiência Criativa I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Competências transversais: gestão do tempo, aprendendo a aprender, pensamento crítico, pensamento sistêmico, trabalho em equipe, entre outras. Desenvolvimento de projetos: planejamento, cronograma, execução e testes. Apresentação dos resultados de um projeto.

 

  1. OBJETIVOS GERAIS

Desenvolver e apresentar projetos de Computação, integrando disciplinas e seus conteúdos. Promover o desenvolvimento de competências transversais, como pensamento crítico, gestão do tempo, e trabalho em equipe, em contextos contemporâneos e éticos.

 

  1. OBJETIVOS ESPECÍFICOS

Planejar projetos considerando cronogramas, recursos disponíveis e impactos sociais e ambientais. Discutir soluções de computação que respondam a desafios relacionados à diversidade étnico-racial, direitos da população LGBTQIAPN+, mudanças climáticas e segurança alimentar. Avaliar projetos com base em critérios técnicos, éticos e sustentáveis. Trabalhar em equipe para resolver problemas de forma colaborativa e crítica. Apresentar resultados de projetos, comunicando-os de forma inclusiva e acessível a diferentes públicos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FEIJÓ, Bruno; CLUA, Esteban; SILVA, Flávio S. Corrêa. Introdução à ciência da computação com jogos. Rio de Janeiro: Elsevier, 2009. ISBN-13: 978-8535234190.

  • KINSLEY, Harrison; MCGUGAN, Will. Introdução ao Desenvolvimento de Jogos em Python com Pygame. São Paulo: Novatec, 2015. ISBN-13: 978-8575225226.

  • MARCONDES, Guilherme Augusto Barucke. Matemática com Python: Um Guia Prático São Paulo: Novatec, 2015. ISBN-13: 978-8575227060.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FOROUZAN, Behrouz; MOSHARRAF, Firouz. Fundamentos da Ciência da Computação, tradução da 2ª edição internacional. Editora Cengage Learning, 2012. ISBN-13: 978-8522110537.

  • BROOKSHEAR, J. Glenn. Ciência da Computação: Uma Visão Abrangente, 11ª Edição. Editora: Bookman, 2013. ISBN-13: 978-8582600306.

  • PERKOVIC, Ljubomir. Introdução à Computação Usando Python - um Foco no Desenvolvimento de Aplicações. Rio de Janeiro: LTC, 2016. ISBN-13: 978-8521630180.

  • JAVED, Adeel. Criando Projetos com Arduino Para a Internet das Coisas: Experimentos com Aplicações do Mundo Real. São Paulo: Novatec, 2017. ISBN-13: 978-8575225886.

  • MONK, Simon. 30 Projetos com Arduino. Porto Alegre: Bookman, 2014. ISBN-13: 978-8582601815.

  • KLEIN, Philip N. Coding the Matrix: Linear Algebra Through Applications to Computer Science. Newtonian Press, 2013. ISBN-13: 978-0615856735.

  • FRANÇA, Isadora Lins. Diversidade Sexual e Educação: desafios para políticas públicas e práticas pedagógicas. Belo Horizonte: Autêntica Editora, 2012. ISBN-13: 978-8575265981.

  • LOVELOCK, James. A Vingança de Gaia: A Terra em perigo e a ameaça à nossa sobrevivência. São Paulo: Intrínseca, 2006. ISBN-13: 978-8598078175.

  • CS-Unplugged. Material em português. Disponível em: https://classic.csunplugged.org/documents/books/portuguese/CSUnpluggedTeachers-portuguese-brazil-feb-2011.pdf. Acesso em: 05  março. 2025.

  • ALENCAR, Breno Rodrigo de Oliveira; ALVES, Clarissa Cecília Ferreira; CAVALCANTE, Ilane Ferreira; CAVALCANTI, Natália Conceição Silva Barros (orgs.). Caminhos para Diversidade: Relações de Gênero e Étnico-Raciais na Educação - Volume II. João Pessoa: Editora do Instituto Federal da Paraíba, 2023. ISBN-13: 978-6589739432.

  • YORK, Sara Wagner; SILVA, Sérgio Luiz Baptista; NOLASCO-SILVA, Leonardo (orgs.). Gênero e Sexualidade na Educação: Uma Perspectiva Interseccional. São Paulo: Editora Cortez, 2021. ISBN-13: 978-6525001429.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC131

Experiência Criativa II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Desenvolvimento de competências intermediárias em projetos de computação, como organização, trabalho em equipe e resolução de problemas. Planejamento e execução de projetos com foco em prototipagem simples, testes e validação. Introdução à aplicação de conceitos de diversidade, inclusão e sustentabilidade em soluções computacionais. Apresentação de resultados de forma clara e acessível para diferentes públicos.

 

  1. OBJETIVOS GERAIS

Desenvolver projetos de Computação ao nível intermediário, integrando competências técnicas e transversais. Introduzir práticas de prototipagem, testes e validação em projetos, com foco em inclusão e sustentabilidade.

 

  1. OBJETIVOS ESPECÍFICOS

Planejar projetos computacionais intermediários, organizando cronogramas e recursos. Desenvolver protótipos simples utilizando ferramentas básicas de computação. Testar e validar projetos, identificando melhorias a partir de feedbacks. Aplicar conceitos iniciais de diversidade, inclusão e sustentabilidade no desenvolvimento de projetos. Apresentar os resultados de projetos de forma clara, utilizando recursos visuais e comunicação eficaz.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FEIJÓ, Bruno; CLUA, Esteban; SILVA, Flávio S. Corrêa. Introdução à ciência da computação com jogos. Rio de Janeiro: Elsevier, 2009. ISBN-13: 978-8535234190.

  • KINSLEY, Harrison; MCGUGAN, Will. Introdução ao Desenvolvimento de Jogos em Python com Pygame. São Paulo: Novatec, 2015. ISBN-13: 978-8575224526.

  • PRESSMAN, Roger S. Engenharia de Software: Uma Abordagem Profissional. Tradução da 8ª edição em inglês. São Paulo: McGraw Hill Brasil, 2016. ISBN-13: 978-8580554137.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FOROUZAN, Behrouz; MOSHARRAF, Firouz. Fundamentos da Ciência da Computação, tradução da 2ª edição internacional. Editora Cengage Learning, 2012. ISBN-13: 978-8522110537.

  • BROOKSHEAR, J. Glenn. Ciência da Computação: Uma Visão Abrangente, 11ª Edição. Editora: Bookman, 2013. ISBN-13: 978-8582600306.

  • PERKOVIC, Ljubomir. Introdução à Computação Usando Python - um Foco no Desenvolvimento de Aplicações. Rio de Janeiro: LTC, 2016. ISBN-13: 978-8521630180.

  • JAVED, Adeel. Criando Projetos com Arduino Para a Internet das Coisas: Experimentos com Aplicações do Mundo Real. São Paulo: Novatec, 2017. ISBN-13: 978-8575225886.

  • MONK, Simon. 30 Projetos com Arduino. Porto Alegre: Bookman, 2014. ISBN-13: 978-8582601815.

  • KLEIN, Philip N. Coding the Matrix: Linear Algebra Through Applications to Computer Science. Newtonian Press, 2013. ISBN-13: 978-0615856735.

  • MARCONDES, Guilherme Augusto Barucke. Matemática com Python: Um Guia Prático São Paulo: Novatec, 2015. ISBN-13: 978-8575227060.

  • RESNICK, Mitchel. Lifelong Kindergarten: Cultivating Creativity through Projects, Passion, Peers, and Play. Cambridge: The MIT Press, 2018. ISBN-13: 978-0262536134.

  • CS-Unplugged. Material em português. Disponível em: https://classic.csunplugged.org/documents/books/portuguese/CSUnpluggedTeachers-portuguese-brazil-feb-2011.pdf. Acesso em: 05  março. 2025.

  • ALENCAR, Breno Rodrigo de Oliveira; ALVES, Clarissa Cecília Ferreira; CAVALCANTE, Ilane Ferreira; CAVALCANTI, Natália Conceição Silva Barros (orgs.). Caminhos para Diversidade: Relações de Gênero e Étnico-Raciais na Educação - Volume II. João Pessoa: Editora do Instituto Federal da Paraíba, 2023. ISBN-13: 978-6589739432.

  • YORK, Sara Wagner; SILVA, Sérgio Luiz Baptista; NOLASCO-SILVA, Leonardo (orgs.). Gênero e Sexualidade na Educação: Uma Perspectiva Interseccional. São Paulo: Editora Cortez, 2021. ISBN-13: 978-6525001429.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC180

Tópicos Especiais em Ciência da Computação I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC181

Tópicos Especiais em Ciência da Computação II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC182

Tópicos Avançados em Ciência da Computação I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC183

Tópicos Avançados em Ciência da Computação II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC184

Tópicos Especiais em Ciência da Computação III

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC185

Tópicos Especiais em Ciência da Computação IV

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC186

Tópicos Avançados em Ciência da Computação III

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC187

Tópicos Avançados em Ciência da Computação IV

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Tópicos emergentes na área da Computação, a critério do docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos emergentes e inovadores na área da Computação. Desenvolver a capacidade de analisar criticamente novas tendências e tecnologias. Aplicar conhecimentos teóricos e práticos em contextos multidisciplinares. Integrar conceitos avançados para resolver problemas complexos e atuais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais tendências e desafios emergentes na área da Computação. Analisar o impacto de novas tecnologias e metodologias no contexto acadêmico e profissional. Implementar soluções práticas para problemas relacionados a tópicos emergentes. Discutir criticamente artigos, estudos de caso e pesquisas recentes na área. Avaliar a viabilidade e aplicabilidade de novas abordagens e ferramentas. Colaborar em projetos multidisciplinares que envolvam tópicos avançados. Apresentar resultados de pesquisas e soluções desenvolvidas de forma clara e persuasiva. Adaptar-se a mudanças tecnológicas rápidas, demonstrando flexibilidade e capacidade de aprendizado contínuo. Explorar ferramentas e frameworks associados a tópicos emergentes. Refletir sobre as implicações éticas, sociais e profissionais das inovações tecnológicas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Algoritmos - Teoria e Prática, 4ed. ‎ GEN LTC; 2024. ISBN  978-8595159907.

  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python: Algoritmos e Lógica de Programação para Iniciantes, 4ed. Editora Novatec, 2024. ISBN 978-8575228869.

  • MATTHES, Eric. Curso Intensivo de Python: uma Introdução Prática e Baseada em Projetos à Programação, 3 ed. Novatec Editora, 2023. ISBN 978-8575228432.

  • DEITEL, Harvey M. e DEITEL, Paul J. Java: Como Programar, 10 ed. Editora Pearson, 2016. ISBN 978-8543004792.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SILVA, Gabriel P.; BIANCHINI, Calebe P.; COSTA, Evaldo B. Programação Paralela e Distribuída: com MPI, OpenMP e OpenACC para computação de alto desempenho. Casa do Código, 2022. ISBN 978-8555193033.

  • FORD, Neal; RICHARDS, Mark; SADALAGE, Pramod; DEHGHANI, Zhamak. Arquitetura de software: as partes difíceis: análises modernas de trade-off para arquiteturas distribuídas. Alta Books, 2024. ISBN 978-8550819846.

  • NEWMAN, Sam. Criando Microsserviços: Projetando Sistemas com Componentes Menores e Mais Especializados, 2 ed. Novatec Editora, 2020. ISBN 978-6586057041.

  • NEWMAN, Sam. Migrando Sistemas Monolíticos Para Microsserviços: Padrões Evolutivos Para Transformar seu Sistema Monolítico. Novatec Editora, 2022. ISBN

  • FOKKINK, Wan. Distributed Algorithms: An Intuitive Approach, 2 ed. MIT Press, 2018. ISBN 978-0262037662.

  • PINHEIRO, Francisco A. C. Elementos de programação em C. Porto Alegre: Bookman, 2012. ISBN 978-8540702028.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC220

Tópicos Especiais em Bancos de Dados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC205 Introdução a Bancos de Dados

Engenharia de Software

Eletiva

ICC205 Introdução a Bancos de Dados

Inteligência Artificial

Eletiva

ICC205 Introdução a Bancos de Dados

Tecnologia da Informação

Eletiva

ICC205 Introdução a Bancos de Dados

 

  1.    EMENTA

Exploração de temas avançados e desafios de pesquisa na área de bancos de dados. Investigação de novos modelos, arquiteturas e técnicas para armazenamento, processamento e recuperação de dados. Análise de abordagens emergentes para gestão eficiente de grandes volumes de dados em diferentes contextos. Estudo crítico de trabalhos científicos recentes e identificação de lacunas de pesquisa. Desenvolvimento de propostas experimentais e avaliação de soluções inovadoras. Discussão sobre impactos e direções futuras da pesquisa em bancos de dados.

 

  1. OBJETIVOS GERAIS

Identificar e analisar desafios e tendências de pesquisa em bancos de dados. Avaliar criticamente abordagens e soluções propostas na literatura científica. Formular questões de pesquisa relevantes e delinear metodologias para sua investigação. Projetar e implementar experimentos para validar hipóteses e comparar técnicas. Interpretar e comunicar resultados de pesquisa de forma clara e estruturada. Desenvolver habilidades para escrita científica e revisão de trabalhos acadêmicos na área. Refletir sobre o impacto das inovações em bancos de dados no avanço do conhecimento e em aplicações do mundo real.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar e analisar tendências e desafios atuais em pesquisa na área de bancos de dados. Comparar e avaliar diferentes abordagens propostas na literatura científica. Formular questões de pesquisa inovadoras e definir estratégias para sua investigação. Projetar e executar experimentos que validem hipóteses e contribuam para o avanço do conhecimento. Interpretar e sintetizar resultados de pesquisa, elaborando conclusões baseadas em evidências. Desenvolver habilidades de escrita acadêmica e comunicação científica para disseminação de resultados. Debater implicações éticas e impactos sociais do uso e gerenciamento de dados em larga escala. Colaborar de forma produtiva em atividades de pesquisa, respeitando diferentes perspectivas e contribuindo para o desenvolvimento coletivo do conhecimento. Refletir criticamente sobre sua atuação como pesquisador e buscar aprimoramento contínuo na área.

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • GARCIA-MOLINA H., ULLMAN, J. D., WIDOM, J.. Implementação de sistemas de banco de dados. Campus, 2001. ISBN: 9788535207491

  • RAMAKRISHNAN, R.; GEHRKE, J. Sistemas de Gerenciamentos de Bancos de Dados. 3ª ed., McGraw Hill Brasil, 2008. ISBN: 9788577260270

  • ELMASRI, Ramez; NAVATHE, Shamkant B. Sistemas de Banco de Dados, 6ª edição. Editora Pearson do Brasil, 2011. ISBN: 9788579360855.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SHASHA, Dennis Elliott; BONNET, Philippe. Database Tuning: Principles, Experiments, and Troubleshooting Techniques. Morgan Kaufmann, 2003. ISBN-13: 978-1558607538.

  • DATE, C. J. Introdução a Sistemas de Bancos de Dados, 1ª edição. Editora Campus, 2004. ISBN 978-85-352-1273-0.

  • SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Sistema de Banco de Dados. 6ª edição. Editora Campus, 2012. ISBN: 9788535245356.

  • WILLIAMS, Hugh, LANE David, Web Database Applications with PHP and MySQL, 2nd Edition O'Reilly Media. ISBN:978-0-596-00543-6.

  • HEUSER, Carlos Alberto. Projeto de Banco de Dados. 6a Ed., Bookman, 2008. ISBN 978-85-7780-382-8.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC221

Tópicos Avançados em Banco de Dados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC205 Introdução a Bancos de Dados

Engenharia de Software

Eletiva

ICC205 Introdução a Bancos de Dados

Inteligência Artificial

Eletiva

ICC205 Introdução a Bancos de Dados

Tecnologia da Informação

Eletiva

ICC205 Introdução a Bancos de Dados

           

  1. EMENTA

Exploração de arquiteturas, modelos e técnicas avançadas para armazenamento, processamento e recuperação de dados. Estudo de tecnologias emergentes e otimizações para bancos de dados distribuídos, transacionais e analíticos. Investigação de estratégias para escalabilidade, consistência, disponibilidade e desempenho. Análise de soluções para processamento de dados em tempo real e integração de múltiplas fontes de dados. Avaliação de novas abordagens para indexação, otimização de consultas e gerenciamento de dados em ambientes de alto desempenho. Discussão sobre avanços tecnológicos e impacto na evolução dos sistemas de gerenciamento de bancos de dados.

 

  1. OBJETIVOS GERAIS

Projetar, implementar e otimizar soluções avançadas para armazenamento, processamento e recuperação de dados em ambientes de alto desempenho; identificar e avaliar arquiteturas e tecnologias emergentes em bancos de dados; analisar e comparar diferentes modelos de dados e estratégias de indexação para aplicações escaláveis e distribuídas; desenvolver e testar mecanismos para garantir escalabilidade, consistência, disponibilidade e desempenho em sistemas de gerenciamento de bancos de dados; integrar múltiplas fontes de dados e aplicar técnicas para processamento eficiente de dados em tempo real; interpretar e comunicar resultados técnicos de forma clara e estruturada, promovendo a adoção de inovações tecnológicas na área.

 

  1. OBJETIVOS ESPECÍFICOS

Explorar e implementar arquiteturas avançadas para bancos de dados, considerando aspectos de escalabilidade, consistência e desempenho; avaliar criticamente tecnologias emergentes e suas aplicações em diferentes cenários; projetar e otimizar estratégias para armazenamento, indexação e recuperação de dados em larga escala; integrar e processar dados de múltiplas fontes, aplicando técnicas modernas de gerenciamento de dados; desenvolver e testar soluções para processamento de dados em tempo real, garantindo eficiência e confiabilidade; analisar implicações éticas e impactos sociais do uso e gerenciamento de grandes volumes de dados; colaborar de forma produtiva em equipes multidisciplinares, promovendo a troca de conhecimento e a construção coletiva de soluções inovadoras; comunicar resultados técnicos de forma clara e estruturada, tanto oralmente quanto por meio de documentação técnica e relatórios; refletir sobre sua atuação profissional, buscando aprimoramento contínuo e atualização diante da evolução das tecnologias de bancos de dados.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • GARCIA-MOLINA H., ULLMAN, J. D., WIDOM, J.. Implementação de sistemas de banco de dados. Campus, 2001. ISBN: 9788535207491

  • RAMAKRISHNAN, R.; GEHRKE, J. Sistemas de Gerenciamentos de Bancos de Dados. 3ª ed., McGraw Hill Brasil, 2008. ISBN: 9788577260270

  • ELMASRI, Ramez; NAVATHE, Shamkant B. Sistemas de Banco de Dados, 6ª edição. Editora Pearson do Brasil, 2011. ISBN: 9788579360855.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SHASHA, Dennis Elliott; BONNET, Philippe. Database Tuning: Principles, Experiments, and Troubleshooting Techniques. Morgan Kaufmann, 2003. ISBN-13: 978-1558607538.

  • DATE, C. J. Introdução a Sistemas de Bancos de Dados, 1ª edição. Editora Campus, 2004. ISBN 978-85-352-1273-0.

  • SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Sistema de Banco de Dados. 6ª edição. Editora Campus, 2012. ISBN: 9788535245356.

  • WILLIAMS, Hugh, LANE David, Web Database Applications with PHP and MySQL, 2nd Edition O'Reilly Media. ISBN:978-0-596-00543-6.

  • HEUSER, Carlos Alberto. Projeto de Banco de Dados. 6a Ed., Bookman, 2008. ISBN 978-85-7780-382-8.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC222

Tópicos em Recuperação da Informação

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

                 

  1. EMENTA

Estudo de temas emergentes em Recuperação da Informação, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Prover conhecimentos básicos e avançados em tópicos relacionados à área de recuperação de informação. Aplicar esses conhecimentos em problemas práticos.

 

  1. OBJETIVOS ESPECÍFICOS

Praticar conhecimentos específicos relacionados à área de recuperação de informação. Investigar soluções avançadas alternativas existentes na literatura. Elaborar novos métodos e algoritmos relacionados à área de recuperação de informação para resolver problemas práticos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BAEZA-YATES, R.; RIBEIRO-NETO, B. Recuperação de informação: conceitos e tecnologias das máquinas de busca. 2. ed. Porto Alegre: Bookman, ISBN 978-8582600498. 2013.

  • IRWIN; Max; GRAINGER, Trey; TURNBULL, Doug; AI-Powered Search. Manning Publications; 1ª edição (27 agosto 2024). ISBN  ‎978-1617296970. 2024.

  •  VAIDYA, Madhavi; SOWALE, Yashowardhan.  ‎Information Retrieval.  Wiley (20 julho 2021). ISBN 978-9354249419. 2021.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MANNING, Christopher D.; RAGHAVAN, Prabhakar; SCHÜTZE, Hinrich. Introduction to Information Retrieval. Cambridge: Cambridge University Press, 2008. ISBN 978-0521865715.

  • SONAWANE, Sheetal; MAHALLE, Parikshit. Information Retrieval and Natural Language Processing: A Graph Theory Approach. (Studies in Big Data, v. 104). [S.l.]: Springer, 2022. ISBN 978-9811699955.

  • BAEZA-YATES, Ricardo; ALONSO, Omar. Information Retrieval: Advanced Topics and Techniques. ACM Books, 2024. ISBN 979-8400710506.

  • DENG, Hongbo; CHANG, Yi. Query Understanding for Search Engines. Cham: Springer, 2020. ISBN 978-3030583347.

  • BUETTCHER, Stefan; CLARKE, Charles L. A.; CORMACK, Gordon V. Information Retrieval: Implementing and Evaluating Search Engines. Cambridge: The MIT Press, 2016. ISBN 978-0262528870.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC225

Tópicos Especiais em Recuperação da Informação

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Estudo de temas emergentes em Recuperação da Informação, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Prover conhecimentos básicos e avançados em tópicos relacionados à área de recuperação de informação. Aplicar esses conhecimentos em problemas práticos.

 

  1. OBJETIVOS ESPECÍFICOS

Praticar conhecimentos específicos relacionados à área de recuperação de informação. Investigar soluções avançadas alternativas existentes na literatura. Elaborar novos métodos e algoritmos relacionados à área de recuperação de informação para resolver problemas práticos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BAEZA-YATES, R.; RIBEIRO-NETO, B. Recuperação de informação: conceitos e tecnologias das máquinas de busca. 2. ed. Porto Alegre: Bookman, 2013.

  • IRWIN, Max; GRAINGER, Trey; TURNBULL, Doug. AI-Powered Search. Shelter Island: Manning Publications, 2024. ISBN 978-1617296970.

  • VAIDYA, Madhavi; SOWALE, Yashowardhan. Information Retrieval. [S.l.]: Wiley, 2021. ISBN 978-9354249419.

  • BUETTCHER, Stefan; CLARKE, Charles L. A.; CORMACK, Gordon V. Information Retrieval: Implementing and Evaluating Search Engines. Cambridge: The MIT Press, 2010.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MANNING, Christopher D.; RAGHAVAN, Prabhakar; SCHÜTZE, Hinrich. Introduction to Information Retrieval. Cambridge: Cambridge University Press, 2008. ISBN 978-0521865715.

  • SONAWANE, Sheetal; MAHALLE, Parikshit. Information Retrieval and Natural Language Processing: A Graph Theory Approach. (Studies in Big Data, v. 104). [S.l.]: Springer, 2022. ISBN 978-9811699955.

  • BAEZA-YATES, Ricardo; ALONSO, Omar. Information Retrieval: Advanced Topics and Techniques. [S.l.]: ACM Books, 2024. ISBN 979-8400710506.

  • DENG, Hongbo; CHANG, Yi. Query Understanding for Search Engines. Cham: Springer, 2020. ISBN 978-3030583347.

  • BUETTCHER, Stefan; CLARKE, Charles L. A.; CORMACK, Gordon V. Information Retrieval: Implementing and Evaluating Search Engines. Cambridge: The MIT Press, 2016. ISBN 978-0262528870.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC226

Tópicos Avançados em Recuperação da Informação

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Estudo de temas emergentes em Recuperação da Informação, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Prover conhecimentos básicos e avançados em tópicos relacionados à área de Recuperação de Informação. Aplicar esses conhecimentos em problemas práticos.

 

  1. OBJETIVOS ESPECÍFICOS

Praticar conhecimentos específicos relacionados à área de recuperação de informação. Investigar soluções avançadas alternativas existentes na literatura. Elaborar novos métodos e algoritmos relacionados à área de recuperação de informação para resolver problemas práticos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BAEZA-YATES, R.; RIBEIRO-NETO, B. Recuperação de informação: conceitos e tecnologias das máquinas de busca. 2. ed. Porto Alegre: Bookman, 2013.

  • IRWIN, Max; GRAINGER, Trey; TURNBULL, Doug. AI-Powered Search. Shelter Island: Manning Publications, 2024. ISBN 978-1617296970.

  • VAIDYA, Madhavi; SOWALE, Yashowardhan. Information Retrieval. [S.l.]: Wiley, 2021. ISBN 978-9354249419.

  • BUETTCHER, Stefan; CLARKE, Charles L. A.; CORMACK, Gordon V. Information Retrieval: Implementing and Evaluating Search Engines. Cambridge: The MIT Press, 2010.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MANNING, Christopher D.; RAGHAVAN, Prabhakar; SCHÜTZE, Hinrich. Introduction to Information Retrieval. Cambridge: Cambridge University Press, 2008. ISBN 978-0521865715.

  • SONAWANE, Sheetal; MAHALLE, Parikshit. Information Retrieval and Natural Language Processing: A Graph Theory Approach. (Studies in Big Data, v. 104). [S.l.]: Springer, 2022. ISBN 978-9811699955.

  • BAEZA-YATES, Ricardo; ALONSO, Omar. Information Retrieval: Advanced Topics and Techniques. [S.l.]: ACM Books, 2024. ISBN 979-8400710506.

  • DENG, Hongbo; CHANG, Yi. Query Understanding for Search Engines. Cham: Springer, 2020. ISBN 978-3030583347.

  • BUETTCHER, Stefan; CLARKE, Charles L. A.; CORMACK, Gordon V. Information Retrieval: Implementing and Evaluating Search Engines. Cambridge: The MIT Press, 2016. ISBN 978-0262528870.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC255

Inteligência Artificial para Biotecnologia

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Biotecnologia

Optativa

ICC901 Introdução à Programação de Computadores

Ciência da Computação

Eletiva

ICC253 Ciência de Dados

Engenharia de Software

Eletiva

ICC253 Ciência de Dados

Inteligência Artificial

Eletiva

ICC253 Ciência de Dados

Tecnologia da Informação

Eletiva

ICC253 Ciência de Dados

 

  1. EMENTA

Introdução à Inteligência Artificial Generativa e Modelos de Linguagem de Grande Escala (LLMs): comparação de diferentes LLMs, Engenharia de Prompt; IA e Biotecnologia: Aplicações de LLMs, IA no Ciclo de pesquisa e desenvolvimento (P&D) de Biotecnologia, Modelos de IA para Biotecnologia; Fundamentos: Redes Neurais, Representação Vetorial, Arquitetura de Transformers; Tópicos Avançados: Treinamento contínuo e Fine-Tuning, Geração Aumentada por Recuperação, Agentes; Modelos Multimodais; Desenvolvimento de projetos aplicados em biotecnologia utilizando IA.

 

  1.  OBJETIVO GERAL

Compreender os princípios fundamentais da IA Generativa e dos Modelos de Linguagem de Grande Escala (LLMs), com foco em aplicações na biotecnologia. Desenvolver habilidades práticas para implementar e utilizar modelos avançados de IA em problemas específicos da área. Aplicar técnicas de IA para inovar no desenvolvimento de soluções biotecnológicas, aprimorando pesquisas e processos na área.

 

  1. OBJETIVOS ESPECÍFICOS

Estudar os fundamentos teóricos da IA Generativa; Pesquisar sobre as diferentes arquiteturas de LLMs disponíveis. Realizar experimentos práticos com técnicas de engenharia de prompt. Desenvolver modelos aplicados a casos específicos na biotecnologia. Explorar a estrutura e funcionamento de redes neurais por exemplos práticos. Investigar a arquitetura dos Transformers em detalhes. Implementar treinamento contínuo e fine-tuning em LLMs com datasets de biotecnologia. Praticar o uso de Visual Foundation Models em aplicações de biotecnologia. Utilizar técnicas avançadas como RAG e agentes inteligentes em projetos de pesquisa.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CHOLLET, François. Deep Learning with Python. 2nd ed. Manning Publications, 2021.

  • JURAFSKY, Daniel; MARTIN, James H. Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition. 3rd ed. Prentice Hall, 2023.

  • COHEN, Kevin Bretonnel; DEMNER-FUSHMAN, Dina. Biomedical Natural Language Processing. John Benjamins Publishing Company, 2014.

  • BADAR, Mohammad "Sufian". A Guide to Applied Machine Learning for Biologists. 1. ed. Cham: Springer, 2023. ISBN 978-3-031-22206-1.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • GOODFELLOW, Ian; BENGIO, Yoshua; COURVILLE, Aaron. Deep Learning. MIT Press, 2016.

  • RUSSELL, Stuart; NORVIG, Peter. Artificial Intelligence: A Modern Approach. 4th ed. Pearson, 2021.

  • BROWN, Tom B.; MANN, Benjamin; RYDER, Nick; SUBBIAH, Melanie; KAPLAN, Jared; DHARIWAL, Prafulla; NEELAKANTAN, Arvind; SHYAM, Pranav; SASTRY, Girish; ASKELL, Amanda; AGARWAL, Sandhini; HERBERT-VOSS, Ariel; KRUEGER, Gretchen; HENIGHAN, Tom; CHILD, Rewon; RAMESH, Aditya; ZIEGLER, Daniel M.; WU, Jeffrey; WINTER, Clemens; HESSE, Christopher; CHEN, Mark; SIGLER, Eric; LITWIN, Mateusz; GRAY, Scott; CHESS, Benjamin; CLARK, Jack; BERNER, Christopher; McCANDLISH, Sam; RADFORD, Alec; SUTSKEVER, Ilya; AMODEI, Dario; Language Models are Few-Shot Learners. In: Advances in Neural Information Processing Systems, 2020.

  • DEVLIN, Jacob; CHANG, Ming-Wei; LEE, Kenton; TOUTANOVA, Kristina; BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. In: NAACL-HLT, 2019.

  • LEWIS, Patrick; PEREZ, Ethan; PIKTUS, Aleksandra; PETRONI, Fabio; KARPUKHIN, Vladimir; GOYAL, Naman; KÜTTLER, Heinrich; LEWIS, Mike; YIH, Wen-tau; ROCKTÄSCHEL, Tim; RIEDEL, Sebastian; KIELA, Douwe. Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks. In: Advances in Neural Information Processing Systems, 2020.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC270

Tópicos Especiais em Inteligência Artificial

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Engenharia de Software

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Inteligência Artificial

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Tecnologia da Informação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

           

  1. EMENTA

Estudo de temas emergentes em Inteligência Artificial, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos avançados e emergentes no campo da Inteligência Artificial (IA). Aplicar técnicas de IA para resolver problemas complexos em diversas áreas de atuação. Analisar as implicações éticas, sociais, ambientais e econômicas do uso de IA em diferentes contextos. Desenvolver soluções inovadoras utilizando metodologias de IA avançadas.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever algoritmos e modelos de IA mais recentes. Explicar os princípios de técnicas de IA. Implementar soluções baseadas em IA utilizando ferramentas e bibliotecas modernas. Avaliar a eficácia de modelos de IA em termos de desempenho, acurácia e eficiência computacional. Analisar o impacto do uso de IA em áreas como segurança da informação, saúde, transporte e entretenimento. Propor soluções para problemas éticos relacionados à IA, tais como viés algorítmico, propriedade intelectual, proteção de dados, privacidade, segurança, divisão digital de gênero, bem como riscos de viés étnico-racial. Integrar ferramentas e frameworks avançados no desenvolvimento de aplicações de IA em projetos interdisciplinares.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RUSSELL, Stuart J.; NORVIG, Peter. Inteligência artificial: uma abordagem moderna. 4ed. Rio de Janeiro: Grupo GEN, 2022. ISBN  978-8595158870.

  • FACELI, Katti; LORENA, Ana Carolina; GAMA, João; ALMEIDA, Tiago Agostinho de; CARVALHO, André C. P. L. F de. Inteligência Artificial: Uma Abordagem de Aprendizado de Máquina. 2. ed. Rio de Janeiro: LTC, 2021. ISBN 9788521637349

  • KNEUSEL, Ronald T. Como a Inteligência Artificial Funciona: Da Magia à Ciência. São Paulo: Novatec, 2024. ISBN  978-8575228845.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • HUTH, Michael; RYAN, Mark. Lógica em Ciência da Computação, 2ª edição. Editora LTC, 2008. ISBN  978-8521616108

  • TAULLI, Tom. Programação Utilizando IA: Otimizando as etapas de planejamento, programação, testes e implantação Programação Utilizando IA. São Paulo: Novatec, 2024. ISBN: 978-85-7522-925-5COECKELBERGH, Mark. Ética na Inteligência Artificial. São Paulo: Ubu Editora, 2024. ISBN 978-8571261242.

  • BLACKMAN, Reid. Máquinas éticas: seu Guia Conciso Para uma IA Totalmente Imparcial, Transparente e Respeitosa. Rio de Janeiro: Alta Books, 2024. ISBN  978-8550822402.

  • HUYEN, Chip. Projetando Sistemas de Machine Learning: Processo Interativo Para Aplicações Prontas Para Produção. Rio de Janeiro: Alta Books, 2024. ISBN 978-8550819679

  • CAELEN, Olivier; BLETE, Marie-Alice. Desenvolvendo aplicativos com GPT-4 e ChatGPT: Crie chatbots inteligentes, geradores de conteúdo e muito mais. São Paulo: Novatec, 2023. ISBN  978-8575228746

  • GÉRON, Aurélien. Mãos à Obra: Aprendizado de Máquina com Scikit-Learn, Keras & TensorFlow: Conceitos, Ferramentas e Técnicas Para a Construção de Sistemas Inteligentes. Rio de Janeiro: Alta Books, 2021. ISBN 978-8550815480.

  • BODEN, Margaret A. Inteligência Artificial: Uma Brevíssima Introdução. São Paulo: Editora Unesp, 2020. ISBN  978-6557110096

  • SANTAELLA, Lucia. A Inteligência Artificial é Inteligente? São Paulo: Edições 70, 2023. ISBN  978-6554270533

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC271

Tópicos Avançados em Inteligência Artificial

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Engenharia de Software

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Inteligência Artificial

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Tecnologia da Informação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

           

  1. EMENTA

Estudo de temas emergentes em Inteligência Artificial, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos avançados e emergentes no campo da Inteligência Artificial (IA). Aplicar técnicas de IA para resolver problemas complexos em diversas áreas de atuação. Analisar as implicações éticas, sociais, ambientais e econômicas do uso de IA em diferentes contextos. Desenvolver soluções inovadoras utilizando metodologias de IA avançadas.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever algoritmos e modelos de IA mais recentes. Explicar os princípios de técnicas de IA. Implementar soluções baseadas em IA utilizando ferramentas e bibliotecas modernas. Avaliar a eficácia de modelos de IA em termos de desempenho, acurácia e eficiência computacional. Analisar o impacto do uso de IA em áreas como segurança da informação, saúde, transporte e entretenimento. Propor soluções para problemas éticos relacionados à IA, tais como viés algorítmico, propriedade intelectual, proteção de dados, privacidade, segurança, divisão digital de gênero, bem como riscos de viés étnico-racial. Integrar ferramentas e frameworks avançados no desenvolvimento de aplicações de IA em projetos interdisciplinares.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RUSSELL, Stuart J.; NORVIG, Peter. Inteligência artificial: uma abordagem moderna. 4ed. Rio de Janeiro: Grupo GEN, 2022. ISBN  978-8595158870.

  • FACELI, Katti; LORENA, Ana Carolina; GAMA, João; ALMEIDA, Tiago Agostinho de; CARVALHO, André C. P. L. F de. Inteligência Artificial: Uma Abordagem de Aprendizado de Máquina. 2. ed. Rio de Janeiro: LTC, 2021. ISBN 9788521637349

  • KNEUSEL, Ronald T. Como a Inteligência Artificial Funciona: Da Magia à Ciência. São Paulo: Novatec, 2024. ISBN  978-8575228845.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • HUTH, Michael; RYAN, Mark. Lógica em Ciência da Computação, 2ª edição. Editora LTC, 2008. ISBN  978-8521616108

  • TAULLI, Tom. Programação Utilizando IA: Otimizando as etapas de planejamento, programação, testes e implantação Programação Utilizando IA. São Paulo: Novatec, 2024. ISBN: 978-85-7522-925-5COECKELBERGH, Mark. Ética na Inteligência Artificial. São Paulo: Ubu Editora, 2024. ISBN 978-8571261242.

  • BLACKMAN, Reid. Máquinas éticas: seu Guia Conciso Para uma IA Totalmente Imparcial, Transparente e Respeitosa. Rio de Janeiro: Alta Books, 2024. ISBN  978-8550822402.

  • HUYEN, Chip. Projetando Sistemas de Machine Learning: Processo Interativo Para Aplicações Prontas Para Produção. Rio de Janeiro: Alta Books, 2024. ISBN 978-8550819679

  • CAELEN, Olivier; BLETE, Marie-Alice. Desenvolvendo aplicativos com GPT-4 e ChatGPT: Crie chatbots inteligentes, geradores de conteúdo e muito mais. São Paulo: Novatec, 2023. ISBN  978-8575228746

  • GÉRON, Aurélien. Mãos à Obra: Aprendizado de Máquina com Scikit-Learn, Keras & TensorFlow: Conceitos, Ferramentas e Técnicas Para a Construção de Sistemas Inteligentes. Rio de Janeiro: Alta Books, 2021. ISBN 978-8550815480.

  • BODEN, Margaret A. Inteligência Artificial: Uma Brevíssima Introdução. São Paulo: Editora Unesp, 2020. ISBN  978-6557110096

  • SANTAELLA, Lucia. A Inteligência Artificial é Inteligente? São Paulo: Edições 70, 2023. ISBN  978-6554270533

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC272

Tópicos Especiais em Inteligência Artificial II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Engenharia de Software

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Inteligência Artificial

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Tecnologia da Informação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

           

  1. EMENTA

Estudo de temas emergentes em Inteligência Artificial, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos avançados e emergentes no campo da Inteligência Artificial (IA). Aplicar técnicas de IA para resolver problemas complexos em diversas áreas de atuação. Analisar as implicações éticas, sociais, ambientais e econômicas do uso de IA em diferentes contextos. Desenvolver soluções inovadoras utilizando metodologias de IA avançadas.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever algoritmos e modelos de IA mais recentes. Explicar os princípios de técnicas de IA. Implementar soluções baseadas em IA utilizando ferramentas e bibliotecas modernas. Avaliar a eficácia de modelos de IA em termos de desempenho, acurácia e eficiência computacional. Analisar o impacto do uso de IA em áreas como segurança da informação, saúde, transporte e entretenimento. Propor soluções para problemas éticos relacionados à IA, tais como viés algorítmico, propriedade intelectual, proteção de dados, privacidade, segurança, divisão digital de gênero, bem como riscos de viés étnico-racial. Integrar ferramentas e frameworks avançados no desenvolvimento de aplicações de IA em projetos interdisciplinares.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RUSSELL, Stuart J.; NORVIG, Peter. Inteligência artificial: uma abordagem moderna. 4ed. Rio de Janeiro: Grupo GEN, 2022. ISBN  978-8595158870.

  • FACELI, Katti; LORENA, Ana Carolina; GAMA, João; ALMEIDA, Tiago Agostinho de; CARVALHO, André C. P. L. F de. Inteligência Artificial: Uma Abordagem de Aprendizado de Máquina. 2. ed. Rio de Janeiro: LTC, 2021. ISBN 9788521637349

  • KNEUSEL, Ronald T. Como a Inteligência Artificial Funciona: Da Magia à Ciência. São Paulo: Novatec, 2024. ISBN  978-8575228845.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • HUTH, Michael; RYAN, Mark. Lógica em Ciência da Computação, 2ª edição. Editora LTC, 2008. ISBN  978-8521616108

  • TAULLI, Tom. Programação Utilizando IA: Otimizando as etapas de planejamento, programação, testes e implantação Programação Utilizando IA. São Paulo: Novatec, 2024. ISBN: 978-85-7522-925-5COECKELBERGH, Mark. Ética na Inteligência Artificial. São Paulo: Ubu Editora, 2024. ISBN 978-8571261242.

  • BLACKMAN, Reid. Máquinas éticas: seu Guia Conciso Para uma IA Totalmente Imparcial, Transparente e Respeitosa. Rio de Janeiro: Alta Books, 2024. ISBN  978-8550822402.

  • HUYEN, Chip. Projetando Sistemas de Machine Learning: Processo Interativo Para Aplicações Prontas Para Produção. Rio de Janeiro: Alta Books, 2024. ISBN 978-8550819679

  • CAELEN, Olivier; BLETE, Marie-Alice. Desenvolvendo aplicativos com GPT-4 e ChatGPT: Crie chatbots inteligentes, geradores de conteúdo e muito mais. São Paulo: Novatec, 2023. ISBN  978-8575228746

  • GÉRON, Aurélien. Mãos à Obra: Aprendizado de Máquina com Scikit-Learn, Keras & TensorFlow: Conceitos, Ferramentas e Técnicas Para a Construção de Sistemas Inteligentes. Rio de Janeiro: Alta Books, 2021. ISBN 978-8550815480.

  • BODEN, Margaret A. Inteligência Artificial: Uma Brevíssima Introdução. São Paulo: Editora Unesp, 2020. ISBN  978-6557110096

  • SANTAELLA, Lucia. A Inteligência Artificial é Inteligente? São Paulo: Edições 70, 2023. ISBN  978-6554270533

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC273

Tópicos Avançados em Inteligência Artificial II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Engenharia de Software

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Inteligência Artificial

Eletiva

ICC260 Fundamentos de Inteligência Artificial

Tecnologia da Informação

Eletiva

ICC260 Fundamentos de Inteligência Artificial

           

  1. EMENTA

Estudo de temas emergentes em Inteligência Artificial, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos avançados e emergentes no campo da Inteligência Artificial (IA). Aplicar técnicas de IA para resolver problemas complexos em diversas áreas de atuação. Analisar as implicações éticas, sociais, ambientais e econômicas do uso de IA em diferentes contextos. Desenvolver soluções inovadoras utilizando metodologias de IA avançadas.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever algoritmos e modelos de IA mais recentes. Explicar os princípios de técnicas de IA. Implementar soluções baseadas em IA utilizando ferramentas e bibliotecas modernas. Avaliar a eficácia de modelos de IA em termos de desempenho, acurácia e eficiência computacional. Analisar o impacto do uso de IA em áreas como segurança da informação, saúde, transporte e entretenimento. Propor soluções para problemas éticos relacionados à IA, tais como viés algorítmico, propriedade intelectual, proteção de dados, privacidade, segurança, divisão digital de gênero, bem como riscos de viés étnico-racial. Integrar ferramentas e frameworks avançados no desenvolvimento de aplicações de IA em projetos interdisciplinares.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RUSSELL, Stuart J.; NORVIG, Peter. Inteligência artificial: uma abordagem moderna. 4ed. Rio de Janeiro: Grupo GEN, 2022. ISBN  978-8595158870.

  • FACELI, Katti; LORENA, Ana Carolina; GAMA, João; ALMEIDA, Tiago Agostinho de; CARVALHO, André C. P. L. F de. Inteligência Artificial: Uma Abordagem de Aprendizado de Máquina. 2. ed. Rio de Janeiro: LTC, 2021. ISBN 9788521637349

  • KNEUSEL, Ronald T. Como a Inteligência Artificial Funciona: Da Magia à Ciência. São Paulo: Novatec, 2024. ISBN  978-8575228845.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • HUTH, Michael; RYAN, Mark. Lógica em Ciência da Computação, 2ª edição. Editora LTC, 2008. ISBN  978-8521616108

  • TAULLI, Tom. Programação Utilizando IA: Otimizando as etapas de planejamento, programação, testes e implantação Programação Utilizando IA. São Paulo: Novatec, 2024. ISBN: 978-85-7522-925-5COECKELBERGH, Mark. Ética na Inteligência Artificial. São Paulo: Ubu Editora, 2024. ISBN 978-8571261242.

  • BLACKMAN, Reid. Máquinas éticas: seu Guia Conciso Para uma IA Totalmente Imparcial, Transparente e Respeitosa. Rio de Janeiro: Alta Books, 2024. ISBN  978-8550822402.

  • HUYEN, Chip. Projetando Sistemas de Machine Learning: Processo Interativo Para Aplicações Prontas Para Produção. Rio de Janeiro: Alta Books, 2024. ISBN 978-8550819679

  • CAELEN, Olivier; BLETE, Marie-Alice. Desenvolvendo aplicativos com GPT-4 e ChatGPT: Crie chatbots inteligentes, geradores de conteúdo e muito mais. São Paulo: Novatec, 2023. ISBN  978-8575228746

  • GÉRON, Aurélien. Mãos à Obra: Aprendizado de Máquina com Scikit-Learn, Keras & TensorFlow: Conceitos, Ferramentas e Técnicas Para a Construção de Sistemas Inteligentes. Rio de Janeiro: Alta Books, 2021. ISBN 978-8550815480.

  • BODEN, Margaret A. Inteligência Artificial: Uma Brevíssima Introdução. São Paulo: Editora Unesp, 2020. ISBN  978-6557110096

  • SANTAELLA, Lucia. A Inteligência Artificial é Inteligente? São Paulo: Edições 70, 2023. ISBN  978-6554270533

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC274

Tópicos Especiais em Aprendizado de Máquina

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC253 Ciência de Dados

Engenharia de Software

Eletiva

ICC253 Ciência de Dados

Inteligência Artificial

Eletiva

ICC253 Ciência de Dados

Tecnologia da Informação

Eletiva

ICC253 Ciência de Dados

           

  1. EMENTA

Estudo de temas emergentes em Aprendizado de Máquina, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos avançados e emergentes no campo do Aprendizado de Máquina. Aplicar técnicas de Aprendizado de Máquina para resolver problemas complexos em diversas áreas de atuação. Analisar as implicações éticas, sociais, ambientais e econômicas do uso de Aprendizado de Máquina em diferentes contextos. Desenvolver soluções inovadoras utilizando metodologias de Aprendizado de Máquina avançadas.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever algoritmos e modelos de Aprendizado de Máquina mais recentes. Explicar os princípios de técnicas de Aprendizado de Máquina. Implementar soluções baseadas em Aprendizado de Máquina utilizando ferramentas e bibliotecas modernas. Avaliar a eficácia de modelos de Aprendizado de Máquina em termos de desempenho, acurácia e eficiência computacional. Analisar o impacto do uso de Aprendizado de Máquina em áreas como segurança da informação, saúde, transporte e entretenimento. Propor soluções para problemas éticos relacionados ao Aprendizado de Máquina, tais como viés algorítmico, propriedade intelectual, proteção de dados, privacidade, segurança, divisão digital de gênero, bem como riscos de viés étnico-racial. Integrar ferramentas e frameworks avançados no desenvolvimento de aplicações de Aprendizado de Máquina em projetos interdisciplinares.

 

5. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BISHOP, Christopher M.; BISHOP, Hugh. Deep learning: foundations and concepts. Cham: Springer, 2024. ISBN 978-3-031-45467-7.

  • CHOLLET, François. Deep learning with Python. 2. ed. New York: Manning Publications, 2021. ISBN 978-1-61729-686-4.

  • GÉRON, Aurélien. Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow. 3. ed. Sebastopol: O'Reilly Media, 2022. ISBN 978-1-098-12597-4.

 

 

6. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • ALBRECHT, Stefano V.; CHRISTIANOS, Filippos; SCHÄFER, Lukas. Multi-agent reinforcement learning: Foundations and modern approaches. Cambridge: MIT Press, 2024. ISBN 978-0-262-04937-5.

  • ALPAYDIN, Ethem. Introduction to machine learning. 4ed. Cambridge: MIT Press, 2020. ISBN 978-0-262-04379-3.

  • GOODFELLOW, Ian; BENGIO, Yoshua; COURVILLE, Aaron. Deep learning. Cambridge: MIT Press, 2016. ISBN 978-0-262-03561-3.

  • MURPHY, Kevin P. Probabilistic machine learning: advanced topics. Cambridge: MIT Press, 2023. ISBN 978-0-262-04843-9.

  • MURPHY, Kevin P. Probabilistic machine learning: an introduction. Cambridge: MIT Press, 2022. ISBN 978-0-262-04682-4.

  • SUTTON, Richard S.; BARTO, Andrew G. Reinforcement learning: an introduction. 2. ed. Cambridge: MIT Press, 2018. ISBN 978-0-262-03924-6.

  • ZHANG, Aston; LIPTON, Zachary C.; LI, Mu; SMOLA, Alexander J. Dive into deep learning. Cambridge: Cambridge University Press, 2023. ISBN 978-1-009-38943-3.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC275

Tópicos Avançados em Aprendizado de Máquina

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC253 Ciência de Dados

Engenharia de Software

Eletiva

ICC253 Ciência de Dados

Inteligência Artificial

Eletiva

ICC253 Ciência de Dados

Tecnologia da Informação

Eletiva

ICC253 Ciência de Dados

           

  1. EMENTA

Estudo de temas emergentes em Aprendizado de Máquina, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos avançados e emergentes no campo do Aprendizado de Máquina. Aplicar técnicas de Aprendizado de Máquina para resolver problemas complexos em diversas áreas de atuação. Analisar as implicações éticas, sociais, ambientais e econômicas do uso de Aprendizado de Máquina em diferentes contextos. Desenvolver soluções inovadoras utilizando metodologias de Aprendizado de Máquina avançadas.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever algoritmos e modelos de Aprendizado de Máquina mais recentes. Explicar os princípios de técnicas de Aprendizado de Máquina. Implementar soluções baseadas em Aprendizado de Máquina utilizando ferramentas e bibliotecas modernas. Avaliar a eficácia de modelos de Aprendizado de Máquina em termos de desempenho, acurácia e eficiência computacional. Analisar o impacto do uso de Aprendizado de Máquina em áreas como segurança da informação, saúde, transporte e entretenimento. Propor soluções para problemas éticos relacionados ao Aprendizado de Máquina, tais como viés algorítmico, propriedade intelectual, proteção de dados, privacidade, segurança, divisão digital de gênero, bem como riscos de viés étnico-racial. Integrar ferramentas e frameworks avançados no desenvolvimento de aplicações de Aprendizado de Máquina em projetos interdisciplinares.

 

5. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BISHOP, Christopher M.; BISHOP, Hugh. Deep learning: foundations and concepts. Cham: Springer, 2024. ISBN 978-3-031-45467-7.

  • CHOLLET, François. Deep learning with Python. 2. ed. New York: Manning Publications, 2021. ISBN 978-1-61729-686-4.

  • GÉRON, Aurélien. Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow. 3. ed. Sebastopol: O'Reilly Media, 2022. ISBN 978-1-098-12597-4.

 

 

6. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • ALBRECHT, Stefano V.; CHRISTIANOS, Filippos; SCHÄFER, Lukas. Multi-agent reinforcement learning: Foundations and modern approaches. Cambridge: MIT Press, 2024. ISBN 978-0-262-04937-5.

  • ALPAYDIN, Ethem. Introduction to machine learning. 4ed. Cambridge: MIT Press, 2020. ISBN 978-0-262-04379-3.

  • GOODFELLOW, Ian; BENGIO, Yoshua; COURVILLE, Aaron. Deep learning. Cambridge: MIT Press, 2016. ISBN 978-0-262-03561-3.

  • MURPHY, Kevin P. Probabilistic machine learning: advanced topics. Cambridge: MIT Press, 2023. ISBN 978-0-262-04843-9.

  • MURPHY, Kevin P. Probabilistic machine learning: an introduction. Cambridge: MIT Press, 2022. ISBN 978-0-262-04682-4.

  • SUTTON, Richard S.; BARTO, Andrew G. Reinforcement learning: an introduction. 2. ed. Cambridge: MIT Press, 2018. ISBN 978-0-262-03924-6.

  • ZHANG, Aston; LIPTON, Zachary C.; LI, Mu; SMOLA, Alexander J. Dive into deep learning. Cambridge: Cambridge University Press, 2023. ISBN 978-1-009-38943-3.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC276

Tópicos Especiais em Processamento de Linguagem Natural

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC254 Processamento de Linguagem Natural

Engenharia de Software

Eletiva

ICC254 Processamento de Linguagem Natural

Inteligência Artificial

Eletiva

ICC254 Processamento de Linguagem Natural

Tecnologia da Informação

Eletiva

ICC254 Processamento de Linguagem Natural

           

  1. EMENTA

Estudo de temas emergentes em Processamento de Linguagem Natural, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos avançados e emergentes no campo do Processamento de Linguagem Natural (PLN). Aplicar técnicas de PLN para resolver problemas complexos em diversas áreas de atuação. Analisar as implicações éticas, sociais, ambientais e econômicas do uso de PLN em diferentes contextos. Desenvolver soluções inovadoras utilizando metodologias de PLN avançadas.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever algoritmos e modelos de PLN mais recentes. Explicar os princípios de técnicas de PLN. Implementar soluções baseadas em PLN utilizando ferramentas e bibliotecas modernas. Avaliar a eficácia de modelos de PLN em termos de desempenho, acurácia e eficiência computacional. Analisar o impacto do uso de PLN em áreas como segurança da informação, saúde, transporte e entretenimento. Propor soluções para problemas éticos relacionados à PLN, tais como viés algorítmico, propriedade intelectual, proteção de dados, privacidade, segurança, divisão digital de gênero, bem como riscos de viés étnico-racial. Integrar ferramentas e frameworks avançados no desenvolvimento de aplicações de PLN em projetos interdisciplinares.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • ALAMMAR, Jay; Grootendorst, Maarten. “Hands-On Large Language Models. 1st Ed. O’Reilly Media 2024.

  • JURAFSKY, Daniel; MARTIN, James H. Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition. 3rd ed. Prentice Hall, 2023.

  • RASCHKA, Sebastian. Build a Large Language Model from Scratch. 1st Ed. Manning Publications, 2024.

  • CHOLLET, François. Deep Learning with Python. 2nd ed. Manning Publications, 2021.

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • GOODFELLOW, Ian; BENGIO, Yoshua; COURVILLE, Aaron. Deep Learning. MIT Press, 2016.

  • RUSSELL, Stuart; NORVIG, Peter. Artificial Intelligence: A Modern Approach. 4th ed. Pearson, 2021.

  • BROWN, Tom B.; MANN, Benjamin; RYDER, Nick; SUBBIAH, Melanie; KAPLAN, Jared; DHARIWAL, Prafulla; NEELAKANTAN, Arvind; SHYAM, Pranav; SASTRY, Girish; ASKELL, Amanda; AGARWAL, Sandhini; HERBERT-VOSS, Ariel; KRUEGER, Gretchen; HENIGHAN, Tom; CHILD, Rewon; RAMESH, Aditya; ZIEGLER, Daniel M.; WU, Jeffrey; WINTER, Clemens; HESSE, Christopher; CHEN, Mark; SIGLER, Eric; LITWIN, Mateusz; GRAY, Scott; CHESS, Benjamin; CLARK, Jack; BERNER, Christopher; McCANDLISH, Sam; RADFORD, Alec; SUTSKEVER, Ilya; AMODEI, Dario; Language Models are Few-Shot Learners. In: Advances in Neural Information Processing Systems, 2020.

  • DEVLIN, Jacob; CHANG, Ming-Wei; LEE, Kenton; TOUTANOVA, Kristina; BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. In: NAACL-HLT, 2019.

  • LEWIS, Patrick; PEREZ, Ethan; PIKTUS, Aleksandra; PETRONI, Fabio; KARPUKHIN, Vladimir; GOYAL, Naman; KÜTTLER, Heinrich; LEWIS, Mike; YIH, Wen-tau; ROCKTÄSCHEL, Tim; RIEDEL, Sebastian; KIELA, Douwe. Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks. In: Advances in Neural Information Processing Systems, 2020.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC277

Tópicos Avançados em Processamento de Linguagem Natural

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC254 Processamento de Linguagem Natural

Engenharia de Software

Eletiva

ICC254 Processamento de Linguagem Natural

Inteligência Artificial

Eletiva

ICC254 Processamento de Linguagem Natural

Tecnologia da Informação

Eletiva

ICC254 Processamento de Linguagem Natural

           

  1. EMENTA

Estudo de temas emergentes em Processamento de Linguagem Natural, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos avançados e emergentes no campo do Processamento de Linguagem Natural (PLN). Aplicar técnicas de PLN para resolver problemas complexos em diversas áreas de atuação. Analisar as implicações éticas, sociais, ambientais e econômicas do uso de PLN em diferentes contextos. Desenvolver soluções inovadoras utilizando metodologias de PLN avançadas.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever algoritmos e modelos de PLN mais recentes. Explicar os princípios de técnicas de PLN. Implementar soluções baseadas em PLN utilizando ferramentas e bibliotecas modernas. Avaliar a eficácia de modelos de PLN em termos de desempenho, acurácia e eficiência computacional. Analisar o impacto do uso de PLN em áreas como segurança da informação, saúde, transporte e entretenimento. Propor soluções para problemas éticos relacionados à PLN, tais como viés algorítmico, propriedade intelectual, proteção de dados, privacidade, segurança, divisão digital de gênero, bem como riscos de viés étnico-racial. Integrar ferramentas e frameworks avançados no desenvolvimento de aplicações de PLN em projetos interdisciplinares.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • ALAMMAR, Jay; Grootendorst, Maarten. “Hands-On Large Language Models. 1st Ed. O’Reilly Media 2024.

  • JURAFSKY, Daniel; MARTIN, James H. Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition. 3rd ed. Prentice Hall, 2023.

  • RASCHKA, Sebastian. Build a Large Language Model from Scratch. 1st Ed. Manning Publications, 2024.

  • CHOLLET, François. Deep Learning with Python. 2nd ed. Manning Publications, 2021.

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • GOODFELLOW, Ian; BENGIO, Yoshua; COURVILLE, Aaron. Deep Learning. MIT Press, 2016.

  • RUSSELL, Stuart; NORVIG, Peter. Artificial Intelligence: A Modern Approach. 4th ed. Pearson, 2021.

  • BROWN, Tom B.; MANN, Benjamin; RYDER, Nick; SUBBIAH, Melanie; KAPLAN, Jared; DHARIWAL, Prafulla; NEELAKANTAN, Arvind; SHYAM, Pranav; SASTRY, Girish; ASKELL, Amanda; AGARWAL, Sandhini; HERBERT-VOSS, Ariel; KRUEGER, Gretchen; HENIGHAN, Tom; CHILD, Rewon; RAMESH, Aditya; ZIEGLER, Daniel M.; WU, Jeffrey; WINTER, Clemens; HESSE, Christopher; CHEN, Mark; SIGLER, Eric; LITWIN, Mateusz; GRAY, Scott; CHESS, Benjamin; CLARK, Jack; BERNER, Christopher; McCANDLISH, Sam; RADFORD, Alec; SUTSKEVER, Ilya; AMODEI, Dario; Language Models are Few-Shot Learners. In: Advances in Neural Information Processing Systems, 2020.

  • DEVLIN, Jacob; CHANG, Ming-Wei; LEE, Kenton; TOUTANOVA, Kristina; BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. In: NAACL-HLT, 2019.

  • LEWIS, Patrick; PEREZ, Ethan; PIKTUS, Aleksandra; PETRONI, Fabio; KARPUKHIN, Vladimir; GOYAL, Naman; KÜTTLER, Heinrich; LEWIS, Mike; YIH, Wen-tau; ROCKTÄSCHEL, Tim; RIEDEL, Sebastian; KIELA, Douwe. Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks. In: Advances in Neural Information Processing Systems, 2020.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC278

Tópicos Especiais em Ciência de Dados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC253 Ciência de Dados

Engenharia de Software

Eletiva

ICC253 Ciência de Dados

Inteligência Artificial

Eletiva

ICC253 Ciência de Dados

Tecnologia da Informação

Eletiva

ICC253 Ciência de Dados

           

  1. EMENTA

Estudo de temas emergentes em Ciência de Dados, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos avançados e emergentes no campo da  Ciência de Dados. Aplicar técnicas de Ciência de Dados para resolver problemas complexos em diversas áreas de atuação. Analisar as implicações éticas, sociais, ambientais e econômicas da  Ciência de Dados em diferentes contextos. Desenvolver soluções inovadoras utilizando metodologias avançadas de Ciência de Dados.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever algoritmos e modelos de Ciência de Dados mais recentes. Explicar os princípios de técnicas de Ciência de Dados. Implementar soluções baseadas em Ciência de Dados utilizando ferramentas e bibliotecas modernas. Avaliar a eficácia de modelos de Ciência de Dados em termos de desempenho, acurácia e eficiência computacional. Analisar o impacto do uso de IA em áreas como segurança da informação, saúde, transporte e entretenimento. Propor soluções para problemas éticos relacionados à Ciência de Dados, tais como viés algorítmico, propriedade intelectual, proteção de dados, privacidade, segurança, divisão digital de gênero, bem como riscos de viés étnico-racial. Integrar ferramentas e frameworks avançados no desenvolvimento de aplicações de Ciência de Dados em projetos interdisciplinares.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CARVALHO, André C. P. L. F.; MENEZES, Angelo; BONIDIA, Robson. Ciência de Dados: Fundamentos e Aplicações. 1. ed. Rio de Janeiro: LTC, 2024. ISBN 978-85-216-3876-6.

  • MORETTIN, Pedro Alberto; SINGER, Julio da Motta. Estatística e Ciência de Dados. 2. ed. Rio de Janeiro: LTC, 2025. ISBN 978-85-216-3899-5.

  • GRUS, Joel. Data Science do Zero: Noções Fundamentais com Python. 2. ed. Rio de Janeiro: Alta Books, 2021. ISBN 978-85-508-1176-5.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FÁVERO, Luiz Paulo; BELFIORE, Patrícia. Manual de Análise de Dados: Estatística e Machine Learning com Excel, SPSS, Stata, R e Python. 2. ed. Rio de Janeiro: GEN LTC, 2024. ISBN 978-85-951-5992-1.

  • VASILIEV, Yuli. Python para Ciência de Dados: Uma introdução prática. 1. ed. São Paulo: Novatec Editora, 2023. ISBN 978-85-752-2848-7.

  • MCKINNEY, Wes. Python Para Análise de Dados: Tratamento de Dados com Pandas, NumPy & Jupyter. 3. ed. São Paulo: Novatec Editora, 2023. ISBN 978-85-752-2841-8.

  • BRUCE, Andrew; BRUCE, Peter. Estatística prática para cientistas de dados: 50 conceitos essenciais. 1. ed. Rio de Janeiro: Alta Books, 2019. ISBN 978-85-508-0603-7.

  • KNAFLIC, Cole Nussbaumer. Storytelling com dados: um guia sobre visualização de dados para profissionais de negócios. 2. ed. Rio de Janeiro: Alta Books, 2019. ISBN 978-85-508-0468-2.

  • VANDER PLAS, Jake. Python Data Science Handbook: Essential Tools for Working with Data. 2. ed. Sebastopol: O’Reilly Media, 2023. ISBN 978-10-981-2122-8.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC279

Tópicos Avançados em Ciência de Dados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC253 Ciência de Dados

Engenharia de Software

Eletiva

ICC253 Ciência de Dados

Inteligência Artificial

Eletiva

ICC253 Ciência de Dados

Tecnologia da Informação

Eletiva

ICC253 Ciência de Dados

           

  1. EMENTA

Estudo de temas emergentes em Ciência de Dados, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos avançados e emergentes no campo da  Ciência de Dados. Aplicar técnicas de Ciência de Dados para resolver problemas complexos em diversas áreas de atuação. Analisar as implicações éticas, sociais, ambientais e econômicas da  Ciência de Dados em diferentes contextos. Desenvolver soluções inovadoras utilizando metodologias avançadas de Ciência de Dados.

 

  1. OBJETIVOS ESPECÍFICOS

Descrever algoritmos e modelos de Ciência de Dados mais recentes. Explicar os princípios de técnicas de Ciência de Dados. Implementar soluções baseadas em Ciência de Dados utilizando ferramentas e bibliotecas modernas. Avaliar a eficácia de modelos de Ciência de Dados em termos de desempenho, acurácia e eficiência computacional. Analisar o impacto do uso de IA em áreas como segurança da informação, saúde, transporte e entretenimento. Propor soluções para problemas éticos relacionados à Ciência de Dados, tais como viés algorítmico, propriedade intelectual, proteção de dados, privacidade, segurança, divisão digital de gênero, bem como riscos de viés étnico-racial. Integrar ferramentas e frameworks avançados no desenvolvimento de aplicações de Ciência de Dados em projetos interdisciplinares.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CARVALHO, André C. P. L. F.; MENEZES, Angelo; BONIDIA, Robson. Ciência de Dados: Fundamentos e Aplicações. 1. ed. Rio de Janeiro: LTC, 2024. ISBN 978-85-216-3876-6.

  • MORETTIN, Pedro Alberto; SINGER, Julio da Motta. Estatística e Ciência de Dados. 2. ed. Rio de Janeiro: LTC, 2025. ISBN 978-85-216-3899-5.

  • GRUS, Joel. Data Science do Zero: Noções Fundamentais com Python. 2. ed. Rio de Janeiro: Alta Books, 2021. ISBN 978-85-508-1176-5.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FÁVERO, Luiz Paulo; BELFIORE, Patrícia. Manual de Análise de Dados: Estatística e Machine Learning com Excel, SPSS, Stata, R e Python. 2. ed. Rio de Janeiro: GEN LTC, 2024. ISBN 978-85-951-5992-1.

  • VASILIEV, Yuli. Python para Ciência de Dados: Uma introdução prática. 1. ed. São Paulo: Novatec Editora, 2023. ISBN 978-85-752-2848-7.

  • MCKINNEY, Wes. Python Para Análise de Dados: Tratamento de Dados com Pandas, NumPy & Jupyter. 3. ed. São Paulo: Novatec Editora, 2023. ISBN 978-85-752-2841-8.

  • BRUCE, Andrew; BRUCE, Peter. Estatística prática para cientistas de dados: 50 conceitos essenciais. 1. ed. Rio de Janeiro: Alta Books, 2019. ISBN 978-85-508-0603-7.

  • KNAFLIC, Cole Nussbaumer. Storytelling com dados: um guia sobre visualização de dados para profissionais de negócios. 2. ed. Rio de Janeiro: Alta Books, 2019. ISBN 978-85-508-0468-2.

  • VANDER PLAS, Jake. Python Data Science Handbook: Essential Tools for Working with Data. 2. ed. Sebastopol: O’Reilly Media, 2023. ISBN 978-10-981-2122-8.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC304

Comunicação sem Fio

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

           

  1. EMENTA

Introdução. O conceito de célula. Canal sem fio. Técnicas de múltiplos acessos. Desempenho. Redes locais sem fio. Redes sem fio.

 

  1. OBJETIVOS GERAIS

Compreender fundamentos de projeto e avaliação de desempenho de sistemas de comunicação sem fio modernos, incluindo os conceitos de canal sem fio, fundamentos de transmissão em canais sem fio, obstáculos mais comuns às transmissões, protocolos de múltiplos acessos e princípios de funcionamento das tecnologias mais utilizadas na atualidade.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os principais componentes e fundamentos dos sistemas de comunicação sem fio, incluindo a teoria de radiofrequência (RF) e suas aplicações práticas. Analisar a matemática comumente utilizada em sistemas de comunicação sem fio. Comparar diferentes técnicas de modulação utilizadas em sistemas de comunicação sem fio, avaliando suas vantagens e desvantagens em diferentes cenários. Descrever o funcionamento e as características das antenas utilizadas em sistemas de comunicação sem fio. Examinar os fatores que afetam a propagação de sinais em ambientes sem fio, identificando obstáculos comuns e suas influências na qualidade da comunicação. Desenvolver um projeto simples de um sistema de comunicação sem fio, integrando os conhecimentos adquiridos sobre modulação, antenas e propagação.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RAPPAPORT, Theodore. Comunicações sem Fio – Princípios e Práticas, 2a edição. Prentice Hall Brasil, 2009. ISBN-13: 978-8576051985

  • ROSS, John. O Livro do Wireless – Um Guia Definitivo para Wi-Fi Redes Sem Fio. Editora Alta Books, 2009. ISBN-13: 978-857608267

  • HAYKIN, Simon; MOHER, Michael. Sistemas modernos de comunicações wireless. Bookman Editora, 2009. ISBN-13: 978-8577804887

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • STALLINGS, William. Wireless Communications & Networks, 2ª edição. Prentice Hall, 2004. ISBN-13: 978-0131918351

  • NICOPOLITIDIS, Petros, et al. Wireless networks. John Wiley & Sons, Inc., 2003. ISBN-13: 978-0470848791

  • KROUK, Evgenii; SEMENOV, Sergei (ed.). Modulation and Coding Techniques in Wireless Communications. John Wiley & Sons,

  • 2011. ISBN-13: 978-0470685198

  • JAN, Mian Ahmad; KHAN, Fazlullah; ALAM, Muhammad (ed.). Recent Trends and Advances in Wireless and IoT-enabled Networks.

  • Berlin/Heidelberg, Germany: Springer, 2019. ISBN-13: 978-3030129619

  • FLICKENGER, Rob. Redes sem Fio no Mundo em Desenvolvimento: Um Guia Prático para o Planejamento e a Construção de uma Infraestrutura de Telecomunicações. 2008. ISBN-13: 978-0596517348

  • SENEVIRATNE, Pradeeka. Beginning LoRa Radio Networks with Arduino: Build Long Range, Low Power Wireless IoT Networks. Apress, 2019. ISBN-13: 978-1484238783

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC305

Avaliação de Desempenho

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

IEE001 Probabilidade e Estatística

Engenharia de Software

Eletiva

IEE001 Probabilidade e Estatística

Inteligência Artificial

Eletiva

IEE001 Probabilidade e Estatística

Tecnologia da Informação

Eletiva

IEE001 Probabilidade e Estatística

           

  1. EMENTA

Técnicas de avaliação de desempenho. Metodologia geral para estudo de modelagem. Revisão de Estatística e Probabilidade. Medição. Monitoramento e síntese de dados coletados. Modelos de regressão. Projeto de experimentos. Simulação.

 

  1. OBJETIVOS GERAIS

Proporcionar aos alunos conhecimentos sobre técnicas e métricas de avaliação de desempenho de sistemas computacionais, desenvolvendo a capacidade de análise crítica e considerando consumo energético, latência, escalabilidade e confiabilidade de tecnologias emergentes. Apresentar metodologias para modelagem, simulação e experimentação de sistemas computacionais.

 

  1. OBJETIVOS ESPECÍFICOS

Entender os fundamentos da avaliação de desempenho de sistemas computacionais. Explorar métricas e técnicas utilizadas na análise de desempenho de sistemas computacionais. Aplicar modelos matemáticos e simulações para prever e otimizar de sistemas computacionais. Avaliar o impacto do consumo energético e estratégias para sua otimização. Compreender ferramentas de monitoramento e benchmarking. Analisar estudos de caso reais de avaliação de desempenho.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • JAIN, Raj. The Art of Computer Systems Performance Analysis. John Wiley & Sons, 1991. ISBN-13: 978-0471503361.

  • FORTIER, P.; HOWARD, M. Computer Systems Performance Evaluation and Prediction, First Edition, Digital Press, 2003. ISBN-13: 978-1555582609.

  • JOHNSON, Thienne M.; MARGALHO, Mauro. Avaliação de Desempenho de Sistemas Computacionais. Editora LTC, 2011. ISBN-13: 978-8521618645.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PRADO, Darci. Teoria das Filas e da Simulação, 5ª edição. Editora Falconi, 2014. ISBN-13: 978-8598254665.

  • WESCOTT, Bob. Every Computer Performance Book: How to Avoid and Solve Performance Problems on The Computers You Work With. CreateSpace Independent Publishing Platform, 2013. ISBN-13: 978-1482657753.

  • HARCHOL-BALTER, Mor. Performance Modeling and Design of Computer Systems: Queueing Theory in Action. Cambridge University Press, 2013. ISBN-13: 978-1107027503.

  • BONDI, André B. Foundations of Software and System Performance Engineering: Process, Performance Modeling, Requirements, Testing, Scalability, and Practice. Addison-Wesley Professional, 2014. ISBN-13: 978-0321833822.

  • LIU, Henry H. Software Performance and Scalability: A Quantitative Approach. Wiley, 2009. ISBN-13: 978-0470462539.

  • MENASCE, Daniel A.; ALMEIDA, Virgilio A. F.; DOWDY, Larry W. Performance by Design: Computer Capacity Planning by Example. Prentice Hall, 2004. ISBN-13: 978-0130906731.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC309

Redes de Computadores

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Engenharia de Software

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Inteligência Artificial

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

Tecnologia da Informação

Obrigatória

ICC002 Algoritmos e Estruturas de Dados I

                 

  1. EMENTA

Fundamentos das redes de computadores e sua importância na computação moderna. Arquiteturas e modelos de comunicação: modelo OSI e TCP/IP. Serviços e aplicações em rede: modelo cliente-servidor, aplicações distribuídas, protocolos de aplicação (HTTP, DNS, e-mail). Camada de Transporte: conceitos de comunicação confiável e não confiável, protocolos TCP, UDP e QUIC, controle de fluxo, controle de congestionamento e detecção de erros. Comparação entre TCP e QUIC: multiplexação, segurança integrada e redução de latência. Camada de Rede: endereçamento IP (IPv4 e IPv6), roteamento e encaminhamento de pacotes, protocolos de roteamento (RIP, OSPF, BGP), NAT e CIDR. Camada de Enlace: protocolos de acesso ao meio, Ethernet, Wi-Fi, técnicas de enquadramento e codificação, redes de alta velocidade. Fundamentos da comunicação de dados: modulação, largura de banda, mídias de transmissão e redes físicas.Redes sem fio e comunicação móvel: padrões IEEE 802.11 (Wi-Fi), redes celulares (4G/5G), redes de sensores sem fio e IoT. Questões de segurança, privacidade e ética em redes. Impacto socioeconômico das redes de comunicação e sua evolução.

 

  1. OBJETIVOS GERAIS

Explicar os conceitos fundamentais das redes de computadores e sua evolução. Identificar e analisar os protocolos e serviços da camada de aplicação. Avaliar o impacto da latência, largura de banda, confiabilidade e segurança nas aplicações de rede. Comparar os protocolos da camada de transporte e suas aplicações na comunicação confiável e não confiável. Compreender os princípios de funcionamento do roteamento e encaminhamento na camada de rede. Discutir a importância das redes sem fio e sua influência na computação moderna. Avaliar os impactos éticos, ambientais e sociais das redes de computadores.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar aplicações de rede utilizando APIs de sockets. Explicar o funcionamento dos protocolos de aplicação como HTTP, DNS e e-mail. Avaliar as diferenças entre TCP, UDP e QUIC, considerando confiabilidade e desempenho. Explicar os mecanismos de controle de congestionamento, fluxo e erros na camada de transporte. Diferenciar e analisar os principais protocolos de roteamento da camada de rede e suas implicações na escalabilidade. Compreender e aplicar conceitos de redes locais, topologias e protocolos de acesso ao meio. Analisar técnicas de modulação, largura de banda e mídias de transmissão. Explicar o funcionamento das redes sem fio, redes celulares e IoT, considerando padrões IEEE e aplicações emergentes. Avaliar riscos e desafios de segurança, privacidade e ética em redes de comunicação. Desenvolver pensamento crítico e habilidades atitudinais, como trabalho em equipe, comunicação eficaz e responsabilidade socioambiental no uso e implementação de redes.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • KUROSE, James; ROSS, Keith. Redes de Computadores e a Internet. 8ª edição. Addison Wesley Brasil, 2021. ISBN-13 978-8582605585.

  • PETERSON, Larry L.; DAVIE, Bruce S. Redes de Computadores: Uma Abordagem de Sistemas. 5ª edição. Editora Campus, 2013. ISBN-13 978-8535248975.

  • TANENBAUM, Andrew S.; FEAMSTER, Nick; WETHERALL, David J. Redes de Computadores. 6ª edição. Bookman, 2021. ISBN-13 978-8582605608.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • COMER, Douglas E. Interligação de Redes com TCP/IP Vol. 1. 6ª edição. Editora Campus, 2014. ISBN 9788535278644.

  • MAIA, Luiz Paulo. Arquitetura de Redes de Computadores. Editora LTC, 2017. ISBN-13 978-8535220179.

  • RFC 9000: QUIC: A UDP-Based Multiplexed and Secure Transport – IETF, 2021.

  • STALLINGS, William. Wireless Communications & Networks. 2ª edição. Pearson, 2005. ISBN-13 978-0131918351.

  • MOLISCH, Andreas. Wireless Communications. 3ª edição. Wiley, 2022. ISBN-13 978-1119117209.

  • GOLDSMITH, Andrea. Wireless Communications. Cambridge University Press, 2005. ISBN-13 978-0521837163.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC310

Prática em Redes de Computadores

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC309 Redes de Computadores

Engenharia de Software

Eletiva

ICC309 Redes de Computadores

Inteligência Artificial

Eletiva

ICC309 Redes de Computadores

Tecnologia da Informação

Eletiva

ICC309 Redes de Computadores

 

  1. EMENTA

Configuração e administração de redes de computadores. Instalação e configuração de sistemas operacionais como clientes e servidores de rede. Gerência de redes e monitoramento de tráfego. Instalação e configuração de dispositivos de rede (hubs, switches, roteadores, dispositivos móveis). Implementação e administração de serviços de rede (DNS, DHCP, SSH, HTTP, SMTP, etc.). Segurança em redes: firewalls, políticas de acesso, VPNs e detecção de intrusões. Práticas de troubleshooting e análise de tráfego de rede utilizando ferramentas especializadas.

 

  1. OBJETIVOS GERAIS

Desenvolver competências técnicas para configurar, gerenciar e diagnosticar redes de computadores, aplicando conhecimentos sobre hardware, software e serviços de rede.

 

  1. OBJETIVOS ESPECÍFICOS

Configurar sistemas operacionais para funcionamento em redes locais e distribuídas. Administrar dispositivos de rede, como switches, roteadores e firewalls. Gerenciar serviços essenciais de rede, como DNS, DHCP, SSH, HTTP e SMTP. Monitorar e analisar tráfego de rede utilizando ferramentas como Wireshark e tcpdump. Detectar e corrigir falhas em redes por meio de troubleshooting e ferramentas de diagnóstico. Implementar e validar políticas de segurança em redes, incluindo firewalls e VPNs. Trabalhar em equipe na configuração e administração de infraestruturas de rede. Comunicar relatórios técnicos e análises de desempenho de rede de forma clara e objetiva.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • EQUIPE IPv6.br. Laboratório de IPv6: Aprenda na prática usando um emulador de redes. Novatec, 2015. ISBN-13: 978-8575224621.

  • SEITZ, Justin. Black Hat Python: Programação Python para hackers e pentesters. Novatec, 2015. ISBN-13: 978-8575224621.

  • RUFINO, Nelson Murilo de O. Segurança em Redes sem Fio: Aprenda a proteger suas informações em ambientes Wi-Fi e Bluetooth. 4ed. Novatec, 2014. ISBN-13: 978-8575223402.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SHIMONSKI, Robert. Wireshark Guia Prático - Análise e Resolução de Problemas de Tráfego de Rede. Novatec, 2013. ISBN-13: 978-8575223181.

  • KUROSE, James; ROSS, Keith. Redes de Computadores e a Internet. 6ª edição. Addison Wesley Brasil, 2014. ISBN-13: 978-8582603079.

  • COMER, Douglas E. Interligação de Redes com TCP/IP Vol. 1. 6ª edição. Editora Campus, 2014. ISBN-13: 978-8535281293.

  • FOROUZAN, Behrouz A.; MOSHARRAF, Firouz. Redes de Computadores: Uma Abordagem Top-Down. 4ed. McGraw-Hill/Artmed, 2013. ISBN-13: 978-0073376226.

  • STALLINGS, William. Criptografia e segurança de redes - Princípios e Práticas. 6ª edição. Pearson, 2015. ISBN-13: 978-0134444284.

  • STEVENS, W. Richard; FALL, Kevin R. TCP/IP Illustrated, Volume 1: The Protocols. 2ª edição. Addison-Wesley, 2011. ISBN-13: 978-0321336316.

  • SANDERS, Chris. Practical Packet Analysis: Using Wireshark to Solve Real-World Network Problems. 2ª edição. No Starch Press, 2011. ISBN-13: 978-1593272661.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC315

Sistemas Distribuídos I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC309 Redes de Computadores

Engenharia de Software

Eletiva

ICC309 Redes de Computadores

Inteligência Artificial

Eletiva

ICC309 Redes de Computadores

Tecnologia da Informação

Eletiva

ICC309 Redes de Computadores

 

  1. EMENTA

Introdução a sistemas distribuídos; comunicação em sistemas distribuídos; nomeação, sincronização; consistência e replicação de dados; recuperação e tolerância a falhas; segurança; aplicações e estudo de casos.

 

  1. OBJETIVOS GERAIS

Compreender os principais conceitos, desafios e algoritmos de sistemas distribuídos.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os conceitos fundamentais de sistemas distribuídos, incluindo suas características, vantagens e desafios. Explicar os princípios da comunicação em sistemas distribuídos, abordando modelos de interação e protocolos de comunicação. Analisar as técnicas de nomeação, sincronização e coordenação em ambientes distribuídos. Comparar diferentes abordagens de consistência e replicação de dados, avaliando suas vantagens e limitações. Investigar estratégias de recuperação e tolerância a falhas em sistemas distribuídos. Avaliar mecanismos de segurança em sistemas distribuídos, identificando vulnerabilidades e soluções. Aplicar os conceitos estudados no desenvolvimento e análise de aplicações distribuídas por meio de estudos de caso.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • COULOURIS, George; DOLLIMORE, Jean; KINDBERG, Tim. Sistemas Distribuídos: Conceitos e Projeto, 5ª edição. Editora Bookman, 2013. ISBN: 9788582600535

  • VAN STEEN, Maarten; TANENBAUM, Andrew. Sistemas Distribuídos, 4ed. 2023. ISBN-10: ‎ 9081540637

  • FOWLER Susan J. Microsserviços Prontos Para a Produção: Construindo Sistemas Padronizados em uma Organização de Engenharia de Software, 1ª edição. Novatec, 2017. ISBN: 978-8575226216.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FORD Neal; RICHARDS Mark; SADALAGE Pramod; DEHGHANI Zhamak. Arquitetura de Software: as Partes Difíceis: Análises Modernas de Trade-off Para Arquiteturas Distribuídas. Editora Alta Books, 1ª edição, 2024. ISBN-10‏: ‎ 8550819840

  • BURNS Brendan. Designing Distributed Systems: Patterns and Paradigms for Scalable, Reliable Systems Using Kubernetes. 2a. Edição. Editora: O'Reilly Media, 2025. ISBN-10: ‎ 1098156358

  • ARUNDEL John; DOMINGUS Justin. DevOps Nativo de Nuvem com Kubernetes: Como Construir, Implantar e Escalar Aplicações Modernas na Nuvem. 1ª edição, Editora: Novatec, 2019. ISBN-10: ‎ 8575227785

  • KLEPPMANN Martin. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems. 1ª edição. Editora: ‎ O'Reilly Media, 2017. ISBN-10: ‎ 1449373321

  • KUROSE James F.; ROSS Keith W. Redes de computadores e a Internet. 8ª edição, Editora‏: Bookman. 2021. ISBN-10: ‎ 8582605587

  • TANEMBAUM Andrew, FEAMSTER Nick, WETHERALL David.  6ª edição. Editora: Bookman; 2021. ISBN-10: ‎ 8582605609

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC316

Fundamentos de Internet das Coisas

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC309 Redes de Computadores

Engenharia de Software

Eletiva

ICC309 Redes de Computadores

Inteligência Artificial

Eletiva

ICC309 Redes de Computadores

Tecnologia da Informação

Eletiva

ICC309 Redes de Computadores

           

  1. EMENTA

Definição, características e domínios. Projeto físico. Projeto lógico. Tecnologias de base. Padrões de comunicação sem fio. Protocolos. Níveis de sistemas IoT. Plataformas de desenvolvimento. Metodologia de desenvolvimento. Estudo de caso.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos de Internet das Coisas e ser capaz de projetar, implementar, testar e utilizar sistemas de Internet das Coisas orientados especificamente para aplicações do mundo real. Explicar a definição e uso do termo Internet das Coisas em diferentes contextos. Distinguir os vários protocolos usados em IoT. Identificar as tecnologias-chave de comunicação sem fio usados em sistemas IoT. Entender o papel de big data, computação em nuvem, e data analytics em um sistema IoT típico e saber implementar uma coleção simples de dados baseada em nuvem e um sistema de análise.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os principais conceitos e características da Internet das Coisas, destacando seus componentes básicos e funcionamento. Descrever os níveis de sistemas IoT, distinguindo entre os aspectos físicos (sensores, atuadores, dispositivos) e lógicos (protocolos, software). Identificar os principais padrões de comunicação sem fio utilizados em IoT, como ZigBee, LoRa, Bluetooth, e Wi-Fi, e seu impacto em diferentes aplicações. Explorar as tecnologias de base, como sensores, atuadores, e microcontroladores (por exemplo, Arduino, ESP32 e Raspberry Pi), que possibilitam o desenvolvimento de projetos IoT. Projetar sistemas físicos e lógicos que integram sensores e atuadores com redes de comunicação para formar sistemas IoT completos. Analisar estudos de caso reais em IoT, avaliando a aplicação das tecnologias discutidas em domínios como monitoramento ambiental, saúde, indústria 4.0 e cidades inteligentes.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BAHGA, Arshdeep; MADISETTI, Vijay. Internet of Things: A hands-on approach. VPT, 2014. ISBN 978-0996025515

  • LEA, Perry. Internet of Things for Architects: Architecting IoT solutions by implementing sensors, communication infrastructure, edge computing, analytics, and security. Packt Publishing, 2018. ISBN 978-1788470599

  • OLIVEIRA, Sérgio. Internet das Coisas com ESP8266, Arduino e Raspberry Pi, 2a. Novatec, 2021. ISBN 978-65-86057-35-5

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BUYYA, Rajkumar; DASTJERDI, Amir Vahid. Internet of Things: Principles and Paradigms. Elsevier, 2016. ISBN 978-0128053959

  • CIRANI, Simone; FERRARI, Gianluigi; PICONE, Marco; VELTRI, Luca. Internet of things: architectures, protocols and standards. John Wiley & Sons, 2018. ISBN 978-1119359678

  • GÉRON, Aurélien. Mãos à Obra: Aprendizado de Máquina com Scikit-learn & TensorFlow, 2a. Alta Books, 2021. ISBN 978-8550815480

  • LEA, Perry. IoT and Edge Computing for Architects: Implementing edge and IoT systems from sensors to clouds with communication systems, analytics, and security. Packt Publishing, 2020. ISBN 978-1839214806

  • RAO, Gunneswara. Design of Internet of Things. CRC Press, 2022. ISBN 978-1032300504

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC317

Programação para Internet das Coisas

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC316 Fundamentos de Internet das Coisas

Engenharia de Software

Eletiva

ICC316 Fundamentos de Internet das Coisas

Inteligência Artificial

Eletiva

ICC316 Fundamentos de Internet das Coisas

Tecnologia da Informação

Eletiva

ICC316 Fundamentos de Internet das Coisas

 

  1. EMENTA

Ambiente de desenvolvimento. Sensores e protocolos. Programando SBC. Conexão com o mundo físico.  Rede com MQTT. Conexão com a nuvem.

 

  1. OBJETIVOS GERAIS

Compreender os princípios fundamentais, técnicas e ferramentas necessárias para o desenvolvimento de sistemas orientados para a Internet das Coisas. Conhecer as plataformas de hardware e software utilizadas no desenvolvimento de aplicações para IoT. Conhecer os protocolos de comunicação comuns em projetos práticos de IoT. Integrar dispositivos IoT com serviços em nuvem. Projetar e implementar sistemas completos de IoT.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os principais componentes de um ambiente de desenvolvimento para IoT. Configurar e programar SBCs (Single Board Computers) como Raspberry Pi ou Arduino, interagindo com sensores e atuadores. Implementar conexões entre o mundo físico e dispositivos IoT, utilizando sensores e atuadores para capturar dados e realizar ações. Descrever os principais protocolos de comunicação IoT, como MQTT, explicando sua importância na conectividade entre dispositivos e sistemas. Estabelecer redes de comunicação para IoT, utilizando o protocolo MQTT para a troca de mensagens entre dispositivos em rede. Conectar dispositivos IoT com plataformas de nuvem para armazenar e processar dados, garantindo uma integração eficiente e segura. Testar a comunicação entre dispositivos IoT, verificando o fluxo de dados entre sensores, SBCs e serviços de nuvem. Desenvolver soluções práticas que integrem sensores, redes de comunicação e serviços de nuvem para aplicações reais em IoT. Explorar diferentes ambientes de desenvolvimento e suas ferramentas para otimizar a programação e manutenção de sistemas IoT.

 

  1. REFERÊNCIAS BIBLIOGRÁFICA BÁSICA

  • DONAT, Wolfram. Programação do Raspberry Pi com Python. Novatec, 2018. ISBN-13: 978-85-7522-720-6.

  • DOW, Colin. Internet of Things Programming Projects, 2nd. Birmingham: Packt Publishing, 2024. ISBN-13: 978-1-78913-480-3.

  • HILLAR, Gastón C. Internet of Things with Python. Birmingham: Packt Publishing, 2016. ISBN-13: 978-1-78528-640-7.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BELL, Charles. Beginning IoT Projects. Apress, 2021. ISBN-13: 978-1-4842-6406-6.

  • BERTOLETI, Pedro. Projetos Com Esp32 e LoRa. Editora Clube de Autores, 2019. ISBN-13: 978-85-923-9140-7.

  • HILLAR, Gastón C. Hands-On MQTT Programming with Python: Work with the lightweight IoT protocol in Python. Packt Publishing, 2018. ISBN-13: 978-1-78862-986-7.

  • KING, Andy. Programming the Internet of Things. O'Reilly, 2021. ISBN-13: 978-1-4920-6018-8.

  • ZANETTI, Humberto Augusto Piovesana; OLIVEIRA, Cláudio Luís Vieira. Projetos com Python e Arduino: Como Desenvolver Projetos Práticos de Eletrônica, Automação e IoT. Editora Érica, 2020. ISBN-13: 978-65-5715-007-5.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC320

Tópicos Especiais em Redes de Computadores

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC309 Redes de Computadores

Engenharia de Software

Eletiva

ICC309 Redes de Computadores

Inteligência Artificial

Eletiva

ICC309 Redes de Computadores

Tecnologia da Informação

Eletiva

ICC309 Redes de Computadores

 

  1. EMENTA

Estudo de temas emergentes em Redes de Computadores, conforme definido pelo instrutor. Exploração de tendências emergentes, novas arquiteturas, protocolos inovadores e desafios técnicos na área. Ênfase na análise crítica de tecnologias e padrões emergentes, bem como no desenvolvimento de soluções para desafios contemporâneos das redes de comunicação. A disciplina envolve leitura e interpretação de artigos científicos, estudos de caso, experimentos práticos e simulações, além de discussões sobre impacto ético, social e ambiental das redes de computadores.

 

  1. OBJETIVOS GERAIS

Desenvolver competências técnicas e atitudinais para compreender, analisar e aplicar conceitos avançados em redes de computadores, por meio de pesquisas, experimentações e estudos de caso.

 

  1. OBJETIVOS ESPECÍFICOS

Explicar conceitos avançados em redes de computadores e suas aplicações. Analisar arquiteturas de redes emergentes e protocolos experimentais. Comparar diferentes soluções tecnológicas para redes avançadas.  Projetar soluções inovadoras para problemas específicos em redes. Implementar e testar simulações de redes em cenários experimentais. Comunicar resultados de pesquisa de forma clara, objetiva e científica. Trabalhar em equipe, respeitando a diversidade de conhecimentos e ideias. Refletir sobre impactos sociais e éticos das redes e tecnologias emergentes.

 

4.REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • KUROSE, James; ROSS, Keith. Redes de Computadores e a Internet. 8ª edição. Addison Wesley Brasil, 2021. ISBN-13 978-8582605585.

  • PETERSON, Larry L.; DAVIE, Bruce S. Redes de Computadores: Uma Abordagem de Sistemas. 5ª edição. Editora Campus, 2013. ISBN-13 978-8535248975.

  • TANENBAUM, Andrew S.; FEAMSTER, Nick; WETHERALL, David J. Redes de Computadores. 6ª edição. Bookman, 2021. ISBN-13 978-8582605608.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • COMER, Douglas E. Interligação de Redes com TCP/IP Vol. 1. 6ª edição. Editora Campus, 2014. ISBN 9788535278644.

  • MAIA, Luiz Paulo. Arquitetura de Redes de Computadores. Editora LTC, 2017. ISBN-13 978-8535220179.

  • RFC 9000: QUIC: A UDP-Based Multiplexed and Secure Transport – IETF, 2021.

  • STALLINGS, William. Wireless Communications & Networks. 2ª edição. Pearson, 2005. ISBN-13 978-0131918351.

  • MOLISCH, Andreas. Wireless Communications. 3ª edição. Wiley, 2022. ISBN-13 978-1119117209.

  • GOLDSMITH, Andrea. Wireless Communications. Cambridge University Press, 2005. ISBN-13 978-0521837163.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC322

Tópicos Avançados em Redes de Computadores

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC309 Redes de Computadores

Engenharia de Software

Eletiva

ICC309 Redes de Computadores

Inteligência Artificial

Eletiva

ICC309 Redes de Computadores

Tecnologia da Informação

Eletiva

ICC309 Redes de Computadores

 

  1. EMENTA

Estudo de temas emergentes em Redes de Computadores, conforme definido pelo instrutor. Exploração de tendências emergentes, novas arquiteturas, protocolos inovadores e desafios técnicos na área. Ênfase na análise crítica de tecnologias e padrões emergentes, bem como no desenvolvimento de soluções para desafios contemporâneos das redes de comunicação. A disciplina envolve leitura e interpretação de artigos científicos, estudos de caso, experimentos práticos e simulações, além de discussões sobre impacto ético, social e ambiental das redes de computadores.

 

  1. OBJETIVOS GERAIS

Desenvolver competências técnicas e atitudinais para compreender, analisar e aplicar conceitos avançados em redes de computadores, por meio de pesquisas, experimentações e estudos de caso.

 

  1. OBJETIVOS ESPECÍFICOS

Explicar conceitos avançados em redes de computadores e suas aplicações. Analisar arquiteturas de redes emergentes e protocolos experimentais. Comparar diferentes soluções tecnológicas para redes avançadas.  Projetar soluções inovadoras para problemas específicos em redes. Implementar e testar simulações de redes em cenários experimentais. Comunicar resultados de pesquisa de forma clara, objetiva e científica. Trabalhar em equipe, respeitando a diversidade de conhecimentos e ideias. Refletir sobre impactos sociais e éticos das redes e tecnologias emergentes.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • KUROSE, James; ROSS, Keith. Redes de Computadores e a Internet. 8ª edição. Addison Wesley Brasil, 2021. ISBN-13 978-8582605585.

  • PETERSON, Larry L.; DAVIE, Bruce S. Redes de Computadores: Uma Abordagem de Sistemas. 5ª edição. Editora Campus, 2013. ISBN-13 978-8535248975.

  • TANENBAUM, Andrew S.; FEAMSTER, Nick; WETHERALL, David J. Redes de Computadores. 6ª edição. Bookman, 2021. ISBN-13 978-8582605608.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • COMER, Douglas E. Interligação de Redes com TCP/IP Vol. 1. 6ª edição. Editora Campus, 2014. ISBN 9788535278644.

  • MAIA, Luiz Paulo. Arquitetura de Redes de Computadores. Editora LTC, 2017. ISBN-13 978-8535220179.

  • RFC 9000: QUIC: A UDP-Based Multiplexed and Secure Transport – IETF, 2021.

  • STALLINGS, William. Wireless Communications & Networks. 2ª edição. Pearson, 2005. ISBN-13 978-0131918351.

  • MOLISCH, Andreas. Wireless Communications. 3ª edição. Wiley, 2022. ISBN-13 978-1119117209.

  • GOLDSMITH, Andrea. Wireless Communications. Cambridge University Press, 2005. ISBN-13 978-0521837163.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC324

Tópicos Especiais em Redes de Computadores II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC309 Redes de Computadores

Engenharia de Software

Eletiva

ICC309 Redes de Computadores

Inteligência Artificial

Eletiva

ICC309 Redes de Computadores

Tecnologia da Informação

Eletiva

ICC309 Redes de Computadores

 

  1. EMENTA

Estudo de temas emergentes em Redes de Computadores, conforme definido pelo instrutor. Exploração de tendências emergentes, novas arquiteturas, protocolos inovadores e desafios técnicos na área. Ênfase na análise crítica de tecnologias e padrões emergentes, bem como no desenvolvimento de soluções para desafios contemporâneos das redes de comunicação. A disciplina envolve leitura e interpretação de artigos científicos, estudos de caso, experimentos práticos e simulações, além de discussões sobre impacto ético, social e ambiental das redes de computadores.

 

  1. OBJETIVOS GERAIS

Desenvolver competências técnicas e atitudinais para compreender, analisar e aplicar conceitos avançados em redes de computadores, por meio de pesquisas, experimentações e estudos de caso.

 

  1. OBJETIVOS ESPECÍFICOS

Explicar conceitos avançados em redes de computadores e suas aplicações. Analisar arquiteturas de redes emergentes e protocolos experimentais. Comparar diferentes soluções tecnológicas para redes avançadas.  Projetar soluções inovadoras para problemas específicos em redes. Implementar e testar simulações de redes em cenários experimentais. Comunicar resultados de pesquisa de forma clara, objetiva e científica. Trabalhar em equipe, respeitando a diversidade de conhecimentos e ideias. Refletir sobre impactos sociais e éticos das redes e tecnologias emergentes.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • KUROSE, James; ROSS, Keith. Redes de Computadores e a Internet. 8ª edição. Addison Wesley Brasil, 2021. ISBN-13 978-8582605585.

  • PETERSON, Larry L.; DAVIE, Bruce S. Redes de Computadores: Uma Abordagem de Sistemas. 5ª edição. Editora Campus, 2013. ISBN-13 978-8535248975.

  • TANENBAUM, Andrew S.; FEAMSTER, Nick; WETHERALL, David J. Redes de Computadores. 6ª edição. Bookman, 2021. ISBN-13 978-8582605608.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • COMER, Douglas E. Interligação de Redes com TCP/IP Vol. 1. 6ª edição. Editora Campus, 2014. ISBN 9788535278644.

  • MAIA, Luiz Paulo. Arquitetura de Redes de Computadores. Editora LTC, 2017. ISBN-13 978-8535220179.

  • RFC 9000: QUIC: A UDP-Based Multiplexed and Secure Transport – IETF, 2021.

  • STALLINGS, William. Wireless Communications & Networks. 2ª edição. Pearson, 2005. ISBN-13 978-0131918351.

  • MOLISCH, Andreas. Wireless Communications. 3ª edição. Wiley, 2022. ISBN-13 978-1119117209.

  • GOLDSMITH, Andrea. Wireless Communications. Cambridge University Press, 2005. ISBN-13 978-0521837163.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC325

Tópicos Avançados em Redes de Computadores II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC309 Redes de Computadores

Engenharia de Software

Eletiva

ICC309 Redes de Computadores

Inteligência Artificial

Eletiva

ICC309 Redes de Computadores

Tecnologia da Informação

Eletiva

ICC309 Redes de Computadores

 

  1. EMENTA

Estudo de temas emergentes em Redes de Computadores, conforme definido pelo instrutor. Exploração de tendências emergentes, novas arquiteturas, protocolos inovadores e desafios técnicos na área. Ênfase na análise crítica de tecnologias e padrões emergentes, bem como no desenvolvimento de soluções para desafios contemporâneos das redes de comunicação. A disciplina envolve leitura e interpretação de artigos científicos, estudos de caso, experimentos práticos e simulações, além de discussões sobre impacto ético, social e ambiental das redes de computadores.

 

  1. OBJETIVOS GERAIS

Desenvolver competências técnicas e atitudinais para compreender, analisar e aplicar conceitos avançados em redes de computadores, por meio de pesquisas, experimentações e estudos de caso.

 

  1. OBJETIVOS ESPECÍFICOS

Explicar conceitos avançados em redes de computadores e suas aplicações. Analisar arquiteturas de redes emergentes e protocolos experimentais. Comparar diferentes soluções tecnológicas para redes avançadas.  Projetar soluções inovadoras para problemas específicos em redes. Implementar e testar simulações de redes em cenários experimentais. Comunicar resultados de pesquisa de forma clara, objetiva e científica. Trabalhar em equipe, respeitando a diversidade de conhecimentos e ideias. Refletir sobre impactos sociais e éticos das redes e tecnologias emergentes.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • KUROSE, James; ROSS, Keith. Redes de Computadores e a Internet. 8ª edição. Addison Wesley Brasil, 2021. ISBN-13 978-8582605585.

  • PETERSON, Larry L.; DAVIE, Bruce S. Redes de Computadores: Uma Abordagem de Sistemas. 5ª edição. Editora Campus, 2013. ISBN-13 978-8535248975.

  • TANENBAUM, Andrew S.; FEAMSTER, Nick; WETHERALL, David J. Redes de Computadores. 6ª edição. Bookman, 2021. ISBN-13 978-8582605608.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • COMER, Douglas E. Interligação de Redes com TCP/IP Vol. 1. 6ª edição. Editora Campus, 2014. ISBN 9788535278644.

  • MAIA, Luiz Paulo. Arquitetura de Redes de Computadores. Editora LTC, 2017. ISBN-13 978-8535220179.

  • RFC 9000: QUIC: A UDP-Based Multiplexed and Secure Transport – IETF, 2021.

  • STALLINGS, William. Wireless Communications & Networks. 2ª edição. Pearson, 2005. ISBN-13 978-0131918351.

  • MOLISCH, Andreas. Wireless Communications. 3ª edição. Wiley, 2022. ISBN-13 978-1119117209.

  • GOLDSMITH, Andrea. Wireless Communications. Cambridge University Press, 2005. ISBN-13 978-0521837163.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC330

Fundamentos de Cibersegurança e Desenvolvimento Seguro

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

                 

  1. EMENTA

Conceitos e princípios de cibersegurança; diferenciação de segurança da informação e de redes de computadores; vulnerabilidades e CVSS (Common Vulnerability Scoring System); principais ameaças e ataques de redes e sistemas; mecanismos de filtragem de tráfego (firewall) e VPN; criptografia; protocolos de segurança e IPSec; IDS, IPS e SIEM. OWASP; segurança no desenvolvimento de softwares;  modelos de especificação da segurança; segurança no ambiente de desenvolvimento; segurança no ciclo de vida de desenvolvimento da aplicação; garantia da segurança da aplicação; boas práticas para construção de aplicações funcionais e seguras.

 

  1. OBJETIVOS GERAIS

Entender a importância da cibersegurança no mundo de hoje, seja no contexto pessoal ou corporativo. Identificar os conceitos, protocolos e tecnologias ligadas à cibersegurança. Aplicar as melhores práticas e mecanismos relacionados à cibersegurança. Entender e aplicar as melhores práticas no desenvolvimento seguro de software, inclusive verificando seus impactos no ambiente corporativo.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os conceitos fundamentais da cibersegurança, diferenciando a segurança da informação e a segurança de redes. Analisar vulnerabilidades, ameaças e ataques em redes e sistemas, utilizando metodologias como o CVSS e diretrizes do OWASP. Implementar mecanismos de proteção, como firewalls, VPNs, criptografia e protocolos de segurança, para mitigar riscos cibernéticos. Avaliar a segurança no ciclo de vida do desenvolvimento de software, aplicando modelos e boas práticas para garantir aplicações seguras. Desenvolver soluções seguras, integrando técnicas de proteção desde a especificação até a implementação e manutenção de sistemas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • HINTZBERGEN, Julie; HINTZBERGEN, Kees; SMULDERS, André; BAARS, Hans. Fundamentos de Segurança da Informação: com base na ISO 27001 e na ISO 27002. 1 ed. Brasport, 2018. ISBN 978-8574528601.

  • KOHNFELDER, Loren. Designing Secure Software. No Starch Press. 2021. ISBN 978-1718501928

  • BROOKS, Charles J.; GROW, Christopher; CRAIG JR, Philip A.; SHORT, Donald. Cybersecurity Essentials. 1st Edition. Sybex. ISBN 978-1119362395.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PAIT, Heloisa. Cibersegurança. Fundação Konrad Adenauer Stiftung, 2014. ISBN 9788575041918.

  • STALLINGS, William. Criptografia e segurança de redes ‐ Princípios e Práticas, 4ed. Pearson, 2015. ISBN 978-85-7605-119-0.

  • KUROSE, James; ROSS, Keith. Redes de Computadores e a Internet, 6ª edição. Addison Wesley Brasil, 2014. ISBN 978-8581436777.

  • SUEHRING, Steve. Learning DevSecOps: A Practical Guide to Processes and Tools. . 1st Edition, O'Reilly Media. 2024. ISBN 978-1098144869.

  • OWASP Foundation. OWASP Secure Coding Practices - Quick Reference Guide. Acesso em https://owasp.org/www-project-secure-coding-practices-quick-reference-guide/

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC331

Introdução à Cibersegurança

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

           

  1. EMENTA

Conceitos e princípios de cibersegurança, incluindo vulnerabilidades, ameaças e ataques. Diferenciação de segurança da informação e de redes de computadores. Introdução à privacidade de dados. Principais problemas em cibersegurança. Tecnologias e soluções de proteção em cibersegurança e privacidade. Boas práticas e cultura de cibersegurança. Política de segurança e Auditoria.

 

  1. OBJETIVOS GERAIS

Apresentar uma visão da área de cibersegurança, explorando os fundamentos da segurança da informação e privacidade de dados, os conceitos essenciais, as tecnologias de proteção e as boas práticas, promovendo a cultura de cibersegurança e permitindo aos alunos uma vivência prática no uso e implementação de ferramentas e soluções para cibersegurança.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender os conceitos e princípios fundamentais da cibersegurança, diferenciando a segurança da informação da segurança de redes de computadores. Analisar vulnerabilidades, ameaças e ataques em ambientes digitais, avaliando seus impactos e desafios para cibersegurança e privacidade de dados. Aplicar tecnologias e soluções de proteção em cibersegurança, utilizando ferramentas para mitigação de riscos e defesa contra ataques cibernéticos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • HINTZBERGEN, Julie; HINTZBERGEN, Kees; SMULDERS, André; BAARS, Hans. Fundamentos de Segurança da Informação: com base na ISO 27001 e na ISO 27002. 1 ed. Brasport, 2018. ISBN 9788574528601.

  • BROOKS, Charles J.; GROW, Christopher; CRAIG JR, Philip A.; SHORT, Donald. Cybersecurity Essentials. 1st Edition. Sybex. ISBN 978-1119362395.

  • HOWARD, Rick. Cybersecurity First Principles: A Reboot of Strategy and Tactics. 1st Edition. Wiley, 2023. ISBN 978-1394173082.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PAIT, Heloisa. Cibersegurança. Fundação Konrad Adenauer Stiftung, 2014. ISBN 9788575041918.

  • STALLINGS, William. Criptografia e segurança de redes ‐ Princípios e Práticas, 4ed. Pearson, 2015. ISBN 978-85-7605-119-0.

  • KUROSE, James; ROSS, Keith. Redes de Computadores e a Internet, 6ª edição. Addison Wesley Brasil, 2014. ISBN 978-8581436777.

  • PINHEIRO, Patricia Peck. Proteção de Dados Pessoais: Comentários À Lei N 13709/2018 (Lgpd). 4ed. Saraiva Jur, 2023. ISBN 9786553621350.

  • STUART MCCLURE, JOEL SCAMBRAY, GEORGE KURTZ, MARCOS A. SIMPLICIO & 2 mais. Hackers Expostos: Segredos e Soluções para a Segurança de Redes. 7 ed. Bookman, 2014. ISBN 9788582601419.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC332

Segurança Web

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC330 Fundamentos de Cibersegurança e Desenvolvimento Seguro

Engenharia de Software

Eletiva

ICC330 Fundamentos de Cibersegurança e Desenvolvimento Seguro

Inteligência Artificial

Eletiva

ICC330 Fundamentos de Cibersegurança e Desenvolvimento Seguro

Tecnologia da Informação

Eletiva

ICC330 Fundamentos de Cibersegurança e Desenvolvimento Seguro

 

  1. EMENTA

Princípios de navegação e segurança da web, modelo de segurança do navegador, OWASP Top 10 e OWASP API Top 10, ataques e contramedidas, privacidade, fingerprint, ameaças emergentes.

 

  1. OBJETIVOS GERAIS

Apresentar uma visão abrangente sobre a segurança em aplicações web, explorando a fundamentação teórica da área e abordando os ataques mais comuns e suas respectivas contramedidas,  permitindo aos alunos uma vivência prática no projeto, uso e implementação de ferramentas e soluções para segurança de aplicações e sistemas Web.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender os princípios fundamentais de navegação e segurança da web, analisando o modelo de segurança do navegador e suas implicações na proteção de aplicações web. Identificar vulnerabilidades em aplicações web com base nas listas OWASP Top 10 e OWASP API Top 10, avaliando os riscos associados a cada tipo de ataque. Aplicar técnicas e contramedidas para mitigar ataques comuns, utilizando ferramentas e práticas recomendadas para aumentar a segurança de sistemas web. Analisar questões de privacidade e fingerprinting na web, investigando os impactos dessas técnicas na segurança e anonimato dos usuários. Explorar ameaças emergentes no cenário da segurança web, desenvolvendo soluções inovadoras para minimizar riscos e proteger aplicações contra novos vetores de ataque.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MCDONALD, Malcolm. Web Security for Developers: Real Threats, Practical Defense. 1 ed. No Starch Press, 2020. ISBN 9781593279943.

  • MADDEN, Neil. API Security in Action. Manning, 2020. ISBN 978-1617296024.

  • Web Application Security: Exploitation and Countermeasures for Modern Web Applications. 2nd Edition, O'Reilly Media. 2024. ISBN 978-1098143930.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • TULACH, Jaroslav.  Practical API Design. 1st Edition. Apress, 2008. ISBN 978-1430209744.

  • PAIT, Heloisa. Cibersegurança. Fundação Konrad Adenauer Stiftung, 2014. ISBN 9788575041918.

  • OWASP Foundation. OWASP Secure Coding Practices - Quick Reference Guide. Acesso em https://owasp.org/www-project-secure-coding-practices-quick-reference-guide/

  • OWASP Foundation – OWASP Web Security Testing Guide.  Acesso em  https://owasp.org/www-project-web-security-testing-guide/

  • MCDONALD, Malcolm. Grokking Web Application Security. 1 ed. Manning, 2024. ISBN 978-1633438262.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC333

Fundamentos de Criptografia

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC331 Introdução a Cibersegurança

Engenharia de Software

Eletiva

ICC331 Introdução a Cibersegurança

Inteligência Artificial

Eletiva

ICC331 Introdução a Cibersegurança

Tecnologia da Informação

Eletiva

ICC331 Introdução a Cibersegurança

 

  1. EMENTA

Introdução à Criptografia (história e evolução da criptografia, princípios fundamentais, ataques criptográficos e desafios atuais); Criptografia Simétrica (conceitos, algoritmos clássicos e modernos); Criptografia Assimétrica (fundamentos de chave pública, principais algoritmos, infraestrutura de chaves públicas e certificados digitais); Funções Hash e Autenticação; Protocolos Criptográficos e Aplicações; Criptografia Quântica; Tendências Futuras.

 

  1. OBJETIVOS GERAIS

Apresentar os conceitos fundamentais da criptografia, explorando desde os princípios teóricos até a aplicação prática de algoritmos e protocolos de segurança, permitindo aos alunos compreender e implementar mecanismos criptográficos para garantir a confidencialidade, integridade, autenticidade e não repúdio das informações.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender os princípios fundamentais da criptografia, analisando sua evolução histórica, conceitos básicos e aplicações na segurança da informação. Aplicar algoritmos criptográficos simétricos e assimétricos, implementando técnicas de cifragem, decifragem e assinatura digital em cenários práticos. Analisar a segurança de funções hash e protocolos criptográficos, avaliando sua eficácia na proteção da confidencialidade, integridade e autenticidade das informações. Explorar tendências emergentes em criptografia, investigando o impacto da computação quântica e os desafios da segurança em um cenário pós-quântico.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • STALLINGS, William. Criptografia e segurança de redes ‐ Princípios e Práticas, 4ed. Pearson, 2015. ISBN 978-85-7605-119-0.

  • SCHNEIER, Bruce. Applied Cryptography: Protocols, Algorithms, and Source Code in C. 1 ed. Wiley, 2015. ISBN978-1119096726.

  • AUMASSON, Jean-Philippe. Serious Cryptography: A Practical Introduction to Modern Encryption. 2 ed.  No Starch Press, 2024. ISBN 9781718503847.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • STALLINGS, William. Criptografia e segurança de redes: princípios e práticas. Prentice Hall, 2008. ISBN 978-8576051190.

  • YARI, Jiyan. Criptografia para Todos. 1ª Edição. Life Editora. ISBN 978-6558873679.

  • BOAVIDA, Fernando; BERNARDES, Mário. Introdução à Criptografia. 1ª Edição. FCA. 2019. ISBN 978-9727229024

  • COUTINHO, Severino C. Criptografia. 1ª Edição. IMPA. 2008. ISBN 978-8576051190.

  • COUTINHO, Severino C. Números inteiros e criptografia RSA. 2ª Edição. IMPA. 2007. ISBN 978-8524401244.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC350

Introdução aos Sistemas Embarcados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Conceitos, definições e características de sistemas embarcados. Arquiteturas de sistemas embarcados, estrutura básica de hardware e protocolos de comunicação. Ciclo de vida de desenvolvimento de sistemas embarcados. Ambientes de programação, linguagens de programação para sistemas embarcados, configuração de ambientes de desenvolvimento, compilação e depuração. Interação hardware/software, controle de periféricos, manipulação de sinais de entrada e saída, interrupções e temporizadores. Internet das coisas. Aplicações de sistemas embarcados e exemplos práticos em diversas áreas. Tendências e desafios atuais em sistemas embarcados e perspectivas futuras.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos básicos de sistemas embarcados, incluindo suas características, componentes, arquiteturas, metodologias e aplicações em diferentes contextos.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender os conceitos, definições e características fundamentais de sistemas embarcados. Identificar os principais componentes de sistemas embarcados reconhecendo suas funções e aplicações. Analisar arquiteturas de sistemas embarcados, compreendendo a estrutura básica de hardware, protocolos de comunicação e suas implicações no desempenho do sistema. Desenvolver projetos básicos de sistemas embarcados, aplicando metodologias de desenvolvimento, desde a definição de requisitos até a prototipagem e realização de testes. Explorar aplicações práticas de sistemas embarcados em diferentes áreas, considerando tendências tecnológicas, desafios atuais e perspectivas futuras, incluindo a integração com a Internet das Coisas (IoT).

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • ANDRADE, Fernando Souza de; OLIVEIRA, André Schneider de. Sistemas embarcados: hardware e firmware na prática. São Paulo: Érica, 2010. ISBN:‎ 978-8536501055.

  • YAGHMOUR, Karim; MASTERS, Jon. Construindo sistemas Linux embarcados. 2. ed. Rio de Janeiro: Alta Books, 2009. ISBN:‎ 978-8576083436.

  • CASSANDRAS, Christos; LAFORTUNE, Stephane. Introduction to discrete event systems. 3rd Edition, Springer, 2021. ISBN:‎ 978-3030722722.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • WHITE, Elecia. Making embedded systems: design patterns for great software. Sebastopol: O'Reilly Media, 2011. ISBN:‎ 978-1098151546.

  • NOERGAARD, Tammy. Embedded systems architecture: a comprehensive guide for engineers and programmers. Boston: Newnes, 2005. ISBN:‎ 978-0443273384.

  • HALLINAN, Christopher. Embedded Linux primer: a practical real-world approach. 2nd ed. Upper Saddle River: Prentice Hall, 2010. ISBN:‎ 978-0137017836.

  • WOLF, W. FPGA-based system design. Upper Saddle River: Prentice-Hall, 2004. ISBN:‎ 978-0131424616.

  • PECKOL, James K. Embedded systems: a contemporary design tool. Hoboken: Wiley, 2007. ISBN:‎ 978-1119457503.

  • GAJSKI, D.; VAHID, F.; NARAYAN, S.; GONG, J. Specification and design of embedded systems. Upper Saddle River: Prentice-Hall, 1994. ISBN:‎ 978-0131507319.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC351

Sistemas de Tempo Real

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

     

  1. EMENTA

Introdução aos sistemas de tempo real. Principais aplicações. Conceitos de programação concorrente: exclusão mútua; semáforos e monitores. Políticas de escalonamento. Sistemas operacionais de tempo real. Troca de mensagens. Programação de sistemas de tempo real. Relação com outras restrições. Metodologias de projeto. Estado da arte em sistemas de tempo real.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos fundamentais de sistemas de tempo real, incluindo características, classificações, requisitos temporais, escalonamento, especificação e modelagem.

 

  1. OBJETIVOS ESPECÍFICOS

Programar sistemas de tempo real; entender as necessidades de escalonamento específico para essas classes de sistemas; projetar sistemas de tempo real considerando as diferentes restrições, incluindo as restrições temporais; implementar algoritmos de escalonamento de tarefas em sistemas de tempo real, garantindo o cumprimento de prazos; analisar o comportamento temporal de sistemas de tempo real, identificando possíveis gargalos; e avaliar o desempenho de sistemas de tempo real utilizando métricas apropriadas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • SHAW, Alan C. Sistemas e Software de Tempo Real. Editora Bookman, 2003. ISBN:‎ 978-8536301723.

  • WALLS, Colin. Embedded Software: The Works. Amsterdam; Boston: Elsevier/Newnes, 2006. ISBN:‎ 978-0124158221.

  • WILLIAMS, Rob. Real-Time Systems Development. Elsevier, 2006. ISBN:‎ 978-0750664714.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • DOUGLASS, Bruce Powel. Real-Time Agility: The Harmony/ESW Method for Real-Time and Embedded Systems Development. Addison-Wesley Professional, 2009. ISBN:‎ 978-0321545497.

  • KOPETZ, Hermann; e STEINER, Wilfried. Real-Time Systems: Design Principles for Distributed Embedded Applications, 3rd Edition. Springer, 2022. ISBN:‎ 978-3031119910.

  • CHENG, Albert. Real-Time Systems: Scheduling, Analysis, and Verification. Wiley, 2002. ​​ISBN:‎ 978-0471184065.

  • LI, Qing; e YAO, Caroline. Real-Time Concepts for Embedded Systems. CMP Books. 2003. ISBN:‎ 978-1578201242.

  • BURNS, Alan; e WELLINGS, Andy. Real-Time Systems and Programming Languages, 3rd Edition. Addison Wesley, 2001. ISBN:‎ 978-0201729887.

  • SIEWERT, Sam. Real-Time Embedded Components and Systems with Linux and RTOS. Charles River Media, 2016. ISBN:‎ 978-1942270041.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC360

Prática em Sistemas Embarcados I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Desenvolvimento de atividades práticas relacionadas aos avanços mais recentes em Sistemas Embarcados, a critério do instrutor.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos fundamentais e as tendências atuais em sistemas embarcados. Desenvolver habilidades práticas para a implementação de soluções em sistemas embarcados. Analisar as restrições e desafios comuns nessa área. Aplicar metodologias de desenvolvimento e prototipagem em projetos reais. Avaliar criticamente as tecnologias emergentes e sua integração em sistemas embarcados.

 

  1. OBJETIVOS ESPECÍFICOS

Aplicar metodologias de desenvolvimento no projeto e prototipagem de sistemas embarcados; explorar tendências e inovações tecnológicas no campo de sistemas embarcados; integrar tecnologias emergentes em sistemas embarcados para otimizar funcionalidades; simular cenários de operação de sistemas embarcados para prever o comportamento e identificar possíveis falhas; documentar todas as etapas do desenvolvimento de sistemas embarcados.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • PEDRONI, Volnei. Eletrônica Digital Moderna e VHDL. Editora Campus, 2010. ISBN:‎ 978-8535234657.

  • MONK, Simon. Programação com Arduino. Começando com Sketches - Série Tekne. Editora Bookman, 2013. ISBN:‎ 978-8582604465.

  • MONK, Simon. Programação com Arduino II. Passos Avançados com Sketches - Série Tekne. Editora Bookman, 2015. ISBN:‎ 978-8582602966.

  • RICHARDSON, Matt; e WALLACE, Shawn. Primeiros Passos com o Raspberry Pi. Novatec, 2013. ISBN:‎ 978-8575223451.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MONK, Simon. 30 Projetos com Arduino. Série Tekne. Editora Bookman, 2014. ISBN:‎ 978-8582601624.

  • SMITH, Bruce. Raspberry Pi Assembly Language. RASPBIAN Beginners: Hands On Guide. Editora Create Space Independent Publishing Platform; 1st Edition, 2013. ISBN:‎ 978-1492135289.

  • EVANS, Martin; NOBLE, Joshua; e HOCHENBAUM, Jordan. Arduino em Ação. Novatec, 2013. ISBN:‎ 978-8575223734.

  • MCROBERTS, Michael. Arduino Básico - 2ª Edição. Novatec, 2015. ISBN:‎ 978-8575223734.

  • UPTON, Eben; e HALFACREE, Gareth. Raspberry Pi – Manual do Usuário. Novatec, 2013. ISBN:‎ 978-8575223512.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC361

Prática em Sistemas Embarcados II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Desenvolvimento de atividades práticas relacionadas aos avanços mais recentes em Sistemas Embarcados, a critério do instrutor.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos fundamentais e as tendências atuais em sistemas embarcados. Desenvolver habilidades práticas para a implementação de soluções em sistemas embarcados. Analisar as restrições e desafios comuns nessa área. Aplicar metodologias de desenvolvimento e prototipagem em projetos reais. Avaliar criticamente as tecnologias emergentes e sua integração em sistemas embarcados.

 

  1. OBJETIVOS ESPECÍFICOS

Aplicar metodologias de desenvolvimento no projeto e prototipagem de sistemas embarcados; explorar tendências e inovações tecnológicas no campo de sistemas embarcados; integrar tecnologias emergentes em sistemas embarcados para otimizar funcionalidades; simular cenários de operação de sistemas embarcados para prever o comportamento e identificar possíveis falhas; documentar todas as etapas do desenvolvimento de sistemas embarcados.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • PEDRONI, Volnei. Eletrônica Digital Moderna e VHDL. Editora Campus, 2010. ISBN:‎ 978-8535234657.

  • MONK, Simon. Programação com Arduino. Começando com Sketches - Série Tekne. Editora Bookman, 2013. ISBN:‎ 978-8582604465.

  • MONK, Simon. Programação com Arduino II. Passos Avançados com Sketches - Série Tekne. Editora Bookman, 2015. ISBN:‎ 978-8582602966.

  • RICHARDSON, Matt; e WALLACE, Shawn. Primeiros Passos com o Raspberry Pi. Novatec, 2013. ISBN:‎ 978-8575223451.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MONK, Simon. 30 Projetos com Arduino. Série Tekne. Editora Bookman, 2014. ISBN:‎ 978-8582601624.

  • SMITH, Bruce. Raspberry Pi Assembly Language. RASPBIAN Beginners: Hands On Guide. Editora Create Space Independent Publishing Platform; 1st Edition, 2013. ISBN:‎ 978-1492135289.

  • EVANS, Martin; NOBLE, Joshua; e HOCHENBAUM, Jordan. Arduino em Ação. Novatec, 2013. ISBN:‎ 978-8575223734.

  • MCROBERTS, Michael. Arduino Básico - 2ª Edição. Novatec, 2015. ISBN:‎ 978-8575223734.

  • UPTON, Eben; e HALFACREE, Gareth. Raspberry Pi – Manual do Usuário. Novatec, 2013. ISBN:‎ 978-8575223512.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC370

Tópicos Especiais em Sistemas Embarcados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Estudo de temas emergentes em Sistemas Embarcados, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Identificar a amplitude de tópicos de pesquisa no domínio dos Sistemas Embarcados, incluindo pesquisas empíricas e projetos de sistemas. Avaliar os diferentes métodos de pesquisa utilizados na área, bem como seus pontos fortes e limitações. Descrever questões abertas e debates na área. Desenvolver uma proposta de pesquisa sobre um tema em aberto no domínio dos Sistemas Embarcados.

 

  1. OBJETIVOS ESPECÍFICOS

Aplicar metodologias de desenvolvimento no projeto e prototipagem de sistemas embarcados. Explorar tendências e inovações tecnológicas no campo de sistemas embarcados. Integrar tecnologias emergentes em sistemas embarcados para otimizar funcionalidades e ampliar aplicações. Projetar soluções embarcadas eficientes, considerando as diferentes restrições dessa classe de sistemas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • HAMACHER, Carl; VRANESIC, Zvonko; ZAKY, Safwat; e MANJIKIAN, Naraig. Computer Organization and Embedded Systems, 6th edition. McGraw-Hill Science/Engineering/Math, 2011. ISBN 978-0073380650.

  • KAMAL, Raj. Embedded Systems: Architecture, Programming and Design, 2nd Edition. McGraw-Hill Education, 2009. ISBN: 978-0070494701.

  • GANSSLE, Jack. The Art of Designing Embedded Systems, 2nd Edition. Newnes, 2008. ISBN: 978-0750686440.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SASS, Ronald; e SCHMIDT, Andrew. Embedded Systems Design with Platform FPGAs: Principles and Practices. Morgan Kaufmann, 2010. ISBN: 978-0123743336.

  • DOUGLASS, Bruce Powel. Design Patterns for Embedded Systems in C: An Embedded Software Engineering Toolkit. Newnes, 2010. ISBN: 978-1856177078.

  • STEELE, James; e TO, Nelson. The Android Developer's Cookbook: Building Applications with the Android SDK: Building Applications with the Android SDK. Addison-Wesley Professional, 2010. ​​ISBN: 978-0321897534.

  • BURNETTE, Ed. Hello, Android: Introducing Google's Mobile Development, 3rd edition. Pragmatic Bookshelf, 2010. ISBN: 978-1680500370.

  • GARGENTA, Marko; e NAKAMURA, Masumi. Learning Android: Develop Mobile Apps Using Java and Eclipse. O'Reilly Media, 2011. ISBN: 978-1449336264.

  • SMITH, Dave; e FRIESEN, Jeff. Android Recipes: A Problem-Solution Approach. Apress, 2011. ISBN: 978-1430234135.

  • MEDNIEKS, Zigurd; DORNIN, Laird; MEIKE, G. Blake; e NAKAMURA, Masumi. Programming Android. O'Reilly Media, 2011.ISBN: 978-1449389697.

  • LEE, Wei-Meng. Beginning Android Application Development. Wrox, 2011. ISBN: 978-1118087800.

  • COLLINS, Charlie; GALPIN, Michael; e KAEPPLER, Matthias. Android in Practice. Manning Publications, 2011. ISBN: 978-1935182924.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC371

Tópicos Avançados em Sistemas Embarcados

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Estudo de temas emergentes em Sistemas Embarcados, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Identificar a amplitude de tópicos de pesquisa no domínio dos Sistemas Embarcados, incluindo pesquisas empíricas e projetos de sistemas. Avaliar os diferentes métodos de pesquisa utilizados na área, bem como seus pontos fortes e limitações. Descrever questões abertas e debates na área. Desenvolver uma proposta de pesquisa sobre um tema em aberto no domínio dos Sistemas Embarcados.

 

  1. OBJETIVOS ESPECÍFICOS

Aplicar metodologias de desenvolvimento no projeto e prototipagem de sistemas embarcados. Explorar tendências e inovações tecnológicas no campo de sistemas embarcados. Integrar tecnologias emergentes em sistemas embarcados para otimizar funcionalidades e ampliar aplicações. Projetar soluções embarcadas eficientes, considerando as diferentes restrições dessa classe de sistemas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • HAMACHER, Carl; VRANESIC, Zvonko; ZAKY, Safwat; e MANJIKIAN, Naraig. Computer Organization and Embedded Systems, 6th edition. McGraw-Hill Science/Engineering/Math, 2011. ISBN 978-0073380650.

  • KAMAL, Raj. Embedded Systems: Architecture, Programming and Design, 2nd Edition. McGraw-Hill Education, 2009. ISBN: 978-0070494701.

  • GANSSLE, Jack. The Art of Designing Embedded Systems, 2nd Edition. Newnes, 2008. ISBN: 978-0750686440.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SASS, Ronald; e SCHMIDT, Andrew. Embedded Systems Design with Platform FPGAs: Principles and Practices. Morgan Kaufmann, 2010. ISBN: 978-0123743336.

  • DOUGLASS, Bruce Powel. Design Patterns for Embedded Systems in C: An Embedded Software Engineering Toolkit. Newnes, 2010. ISBN: 978-1856177078.

  • STEELE, James; e TO, Nelson. The Android Developer's Cookbook: Building Applications with the Android SDK: Building Applications with the Android SDK. Addison-Wesley Professional, 2010. ​​ISBN: 978-0321897534.

  • BURNETTE, Ed. Hello, Android: Introducing Google's Mobile Development, 3rd edition. Pragmatic Bookshelf, 2010. ISBN: 978-1680500370.

  • GARGENTA, Marko; e NAKAMURA, Masumi. Learning Android: Develop Mobile Apps Using Java and Eclipse. O'Reilly Media, 2011. ISBN: 978-1449336264.

  • SMITH, Dave; e FRIESEN, Jeff. Android Recipes: A Problem-Solution Approach. Apress, 2011. ISBN: 978-1430234135.

  • MEDNIEKS, Zigurd; DORNIN, Laird; MEIKE, G. Blake; e NAKAMURA, Masumi. Programming Android. O'Reilly Media, 2011.ISBN: 978-1449389697.

  • LEE, Wei-Meng. Beginning Android Application Development. Wrox, 2011. ISBN: 978-1118087800.

  • COLLINS, Charlie; GALPIN, Michael; e KAEPPLER, Matthias. Android in Practice. Manning Publications, 2011. ISBN: 978-1935182924.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC372

Tópicos Especiais em Arquitetura de Computadores

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC066 Introdução à Organização de Computadores

Engenharia de Software

Eletiva

ICC066 Introdução à Organização de Computadores

Inteligência Artificial

Eletiva

ICC066 Introdução à Organização de Computadores

Tecnologia da Informação

Eletiva

ICC066 Introdução à Organização de Computadores

                             

  1. EMENTA

Tópicos emergentes em Hierarquia de Memória: Memória Cache e Memória Virtual. Pipeline: conceitos básicos, harzards e Tratamento de hazards. Processamento paralelo: conceitos e definições básicos. Interfaces de E/S. Arquiteturas multinúcleo.

 

  1. OBJETIVOS GERAIS

Compreender tópicos especiais dos componentes de sistemas computacionais correntes (processador, memória e periféricos). Investigar as relações dos componentes entre si, e entre estes e o sistema operacional. Enfatizar técnicas para alto desempenho dos componentes individuais e do sistema completo.

 

  1. OBJETIVOS ESPECÍFICOS

Entender as relações de compromisso (trade-offs) do desempenhos das diferentes arquiteturas. Entender o impacto da arquitetura no desenvolvimento e execução de software. Se familiarizar com diferentes simuladores para arquitetura.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • HENNESSY, John; PATTERSON, David. Arquitetura de Computadores – Uma Abordagem Quantitativa. Tradução da 5ª edição. Editora Campus, 2013. ISBN 978-85-352-6122-6.

  • Linda NULL; Julia LOBUR. Princípios Básicos de Arquitetura e Organização de Computadores. Bookman, 2010. ISBN: 978857780737.

  • STALLINGS, William. Arquitetura e Organização de Computadores, 8ª Ed. Prentice Hall, 2010. ISBN 9788576055648.

  • Scott, J Clark. But How Do It Know? - The Basic Principles of Computers for Everyone. 2009. ISBN 9780615303765

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PATTERSON, David A.; HENNESSY, John L. Organização e Projeto de Computadores. Traduçãoda 4ed. Editora Campus, 2013. ISBN-13: 978-85-352-3585-2.

  • BRYANT, Randal E. & O’HALLAR, David R. Computer Systems: A Programmer's Perspective. 2nd edition. Pearson, 2010. ISBN-13: 978-0136108047.

  • TANENBAUM, Andrew S. Organização Estruturada de Computadores, 6ª Ed. Pearson Education, 2013. ISBN 9788581435398.

  • Joseph A. Fisher; Paolo Faraboschi; Cliff Young. Embedded Computing: A VLIW Approach to Architecture, Compilers and Tools. Morgan Kaufmann, 2004. ISBN: 9781558607668

  • COOK, Shane. CUDA Programming: A Developer's Guide to Parallel Computing with GPUs (Applications of GPU Computing Series). Morgan Kaufmann, 2012. ISBN-13: 978-0124159334.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC373

Tópicos Avançados em Arquitetura de Computadores

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC066 Introdução à Organização de Computadores

Engenharia de Software

Eletiva

ICC066 Introdução à Organização de Computadores

Inteligência Artificial

Eletiva

ICC066 Introdução à Organização de Computadores

Tecnologia da Informação

Eletiva

ICC066 Introdução à Organização de Computadores

                             

  1. EMENTA

Tópicos emergentes em Hierarquia de Memória: Memória Cache e Memória Virtual. Pipeline: conceitos básicos, harzards e Tratamento de hazards. Processamento paralelo: conceitos e definições básicos. Interfaces de E/S. Arquiteturas multinúcleo.

 

  1. OBJETIVOS GERAIS

Compreender tópicos especiais dos componentes de sistemas computacionais correntes (processador, memória e periféricos). Investigar as relações dos componentes entre si, e entre estes e o sistema operacional. Enfatizar técnicas para alto desempenho dos componentes individuais e do sistema completo.

 

  1. OBJETIVOS ESPECÍFICOS

Entender as relações de compromisso (trade-offs) do desempenhos das diferentes arquiteturas. Entender o impacto da arquitetura no desenvolvimento e execução de software. Se familiarizar com diferentes simuladores para arquitetura.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • HENNESSY, John; PATTERSON, David. Arquitetura de Computadores – Uma Abordagem Quantitativa. Tradução da 5ª edição. Editora Campus, 2013. ISBN 978-85-352-6122-6.

  • Linda NULL; Julia LOBUR. Princípios Básicos de Arquitetura e Organização de Computadores. Bookman, 2010. ISBN: 978857780737.

  • STALLINGS, William. Arquitetura e Organização de Computadores, 8ª Ed. Prentice Hall, 2010. ISBN 9788576055648.

  • Scott, J Clark. But How Do It Know? - The Basic Principles of Computers for Everyone. 2009. ISBN 9780615303765

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PATTERSON, David A.; HENNESSY, John L. Organização e Projeto de Computadores. Traduçãoda 4ed. Editora Campus, 2013. ISBN-13: 978-85-352-3585-2.

  • BRYANT, Randal E. & O’HALLAR, David R. Computer Systems: A Programmer's Perspective. 2nd edition. Pearson, 2010. ISBN-13: 978-0136108047.

  • TANENBAUM, Andrew S. Organização Estruturada de Computadores, 6ª Ed. Pearson Education, 2013. ISBN 9788581435398.

  • Joseph A. Fisher; Paolo Faraboschi; Cliff Young. Embedded Computing: A VLIW Approach to Architecture, Compilers and Tools. Morgan Kaufmann, 2004. ISBN: 9781558607668

  • COOK, Shane. CUDA Programming: A Developer's Guide to Parallel Computing with GPUs (Applications of GPU Computing Series). Morgan Kaufmann, 2012. ISBN-13: 978-0124159334.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC405

Engenharia de Software Experimental

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC430 Engenharia de Software I

Engenharia de Software

Eletiva

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Introdução à Engenharia de Software Experimental. Tipos de Estudos Experimentais em Engenharia de Software. Revisões Sistemáticas. Personal Opinion Surveys (pesquisas de opinião). Experimentos Controlados. Estudos de Caso.

 

  1. OBJETIVOS GERAIS

Compreender os fundamentos da Engenharia de Software Experimental e sua importância para a pesquisa e a prática da Engenharia de Software. Identificar os diferentes tipos de estudos experimentais e suas aplicações. Aplicar métodos de pesquisa na condução de estudos experimentais. Avaliar a qualidade e a validade de estudos experimentais em Engenharia de Software. Desenvolver habilidades para planejar, conduzir e relatar estudos experimentais.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os conceitos fundamentais da Engenharia de Software Experimental. Explicar os diferentes tipos de estudos experimentais em Engenharia de Software e suas características. Comparar metodologias de pesquisa e suas aplicações em diferentes contextos. Aplicar diretrizes para a condução de revisões sistemáticas na Engenharia de Software. Planejar e executar pesquisas de opinião (Personal Opinion Surveys) para coleta de dados sobre práticas e percepções em Engenharia de Software. Elaborar e conduzir experimentos controlados para avaliação de técnicas, ferramentas e processos de Engenharia de Software. Desenvolver estudos de caso para análise aprofundada de fenômenos na Engenharia de Software. Avaliar a validade e confiabilidade de estudos experimentais.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WÖHLIN, C.; RUNESON, P.; HÖST, M.; OHLSSON, M. C.; REGNELL, B.; WESSLÉN, A. Experimentation in Software Engineering: An Introduction. Kluwer Academic Publishers, 2000. ISBN: 978-0-7923-8682-7.

  • SHULL, F.; SINGER, J.; SJØBERG, D. I. K. (Eds.) Guide to Advanced Empirical Software Engineering. Springer, 2007. ISBN: 978-1-84800-044-5.

  • KITCHENHAM, B. A.; BUDGEN, D.; BRERETON, P. Evidence-Based Software Engineering and Systematic Reviews. Chapman and Hall/CRC, 2015. ISBN: 978-1482228656.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FELDERER, M.; TRAVASSOS, G. H. (Eds.). Contemporary Empirical Methods in Software Engineering. Springer, 2020. ISBN: 978-3-030-32488-9.

  • JURISTO, N.; MORENO, A. M. Basics of Software Engineering Experimentation. Springer, 2010. ISBN: 978-1441950116.

  • WAZLAWICK, R. S. Metodologia de Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008. ISBN: 978-85-352-3522-7.​

  • BOEHM, B.; ROMBACH, H. D.; ZELKOWITZ, M. V. (Eds.). Foundations of Empirical Software Engineering: The Legacy of Victor R. Basili. Springer, 2005. ISBN: 978-3-540-24547-6.​

  • Artigos específicos sobre Engenharia de Software Experimental:

  • BASILI, V.; ROMBACH, H. "The TAME project: Towards improvement-oriented software environments." IEEE Transactions on Software Engineering, vol. 14, no. 6, 1988, pp. 758-773.​

  • BASILI, V.; SHULL, F.; LANUBILE, F. "Building knowledge through families of experiments." IEEE Transactions on Software Engineering, vol. 25, no. 4, 1999, pp. 456-473.​

  • BIOLCHINI, J. C. A.; MIAN, P. G.; NATALI, A. C. C.; CONTE, T.; TRAVASSOS, G. H. "Scientific research ontology to support systematic review in software engineering." Advanced Engineering Informatics, vol. 21, no. 2, 2007, pp. 133-151.​

  • CARVER, J.; JACCHERI, L.; MORASCA, S.; SHULL, F. "Issues in using students in empirical studies in software engineering education." In: Proceedings of the 9th International Symposium on Software Metrics (METRICS'03), 2003, pp. 239-249, Sydney, Australia.​

  • KITCHENHAM, B.; DYBA, T.; JORGENSEN, M. "Evidence-Based Software Engineering." In: Proceedings of the 26th International Conference on Software Engineering (ICSE'04), 2004, pp. 273-281.​

  • MAFRA, S.; BARCELOS, R.; TRAVASSOS, G. H. "Aplicando uma metodologia baseada em evidência na definição de novas tecnologias de software." In: Proceedings of the 20th Brazilian Symposium on Software Engineering (SBES 2006), vol. 1, 2006, pp. 239-254, Florianópolis, October.​

  • SHULL, F.; CARVER, J.; TRAVASSOS, G. H. "An empirical methodology for introducing software processes." ACM SIGSOFT Software Engineering Notes, vol. 26, no. 5, 2001, pp. 288-296.​

  • TRAVASSOS, G. H.; BARROS, M. "Contributions of in virtuo and in silico experiments for the future of empirical studies in software engineering." In: Proceedings of the 2nd Workshop in Workshop Series on Empirical Software Engineering (WSESE 2003), 2003, pp. 117-130, Rome.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC406

Interação Humano-Computador

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC430 Engenharia de Software I

Engenharia de Software

Obrigatória

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Princípios fundamentais de interação humano-computador. Design centrado no usuário e Avaliação de sistemas interativos: inspeção e testes com usuários. Metodologias e processos para design centrado no usuário. Características físicas e cognitivas do usuário. Acessibilidade e Design para a diversidade de usuários. Acessibilidade e Design Inclusivo. Padrões e diretrizes para acessibilidade, como as Web Content Accessibility Guidelines (WCAG). Tecnologias e recursos que promovem acessibilidade e suporte ao desenvolvimento inclusivo por designers e engenheiros. Estruturas de design inclusivo: reconhecimento de diferenças, design universal e processos participativos. Aspectos legais do design em IHC. Responsabilidade no Design de Sistemas - impacto do design em sustentabilidade, inclusão, segurança e privacidade. Considerações éticas no design de sistemas e soluções. Modelagem de interfaces: cenarização; modelos de tarefas; modelos de usuário; modelos de interação. Concretização do projeto de interface: storyboarding e prototipação de interfaces; ferramentas de apoio à construção de interfaces. Novos paradigmas de interação humano-computador.

 

  1. OBJETIVOS GERAIS

Compreender os princípios fundamentais da Interação Humano-Computador e sua importância no design de sistemas interativos. Aplicar metodologias e processos para design centrado no usuário. Analisar as características físicas e cognitivas dos usuários e seu impacto no design de interfaces. Avaliar sistemas interativos por meio de inspeção e testes com usuários. Aplicar diretrizes e padrões de acessibilidade para promover a inclusão e a diversidade no design de interfaces. Compreender aspectos éticos e legais relacionados ao design de sistemas interativos. Desenvolver modelos de interfaces baseados em cenarização, tarefas, usuários e interação. Utilizar ferramentas para storyboarding, prototipação e construção de interfaces. Reconhecer novos paradigmas de interação humano-computador.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os conceitos fundamentais de Interação Humano-Computador. Explicar os princípios do design centrado no usuário e sua aplicação no desenvolvimento de sistemas interativos. Identificar e descrever metodologias e processos para a concepção e avaliação de interfaces. Analisar as características físicas e cognitivas dos usuários e sua influência na usabilidade e acessibilidade. Aplicar técnicas de inspeção e testes com usuários para avaliação de sistemas interativos. Implementar diretrizes e padrões, como as Web Content Accessibility Guidelines (WCAG), para garantir acessibilidade e inclusão. Discutir questões éticas e legais envolvidas no design de interfaces e na responsabilidade dos designers. Modelar interfaces utilizando cenarização, modelos de tarefas, modelos de usuário e modelos de interação. Criar storyboards e protótipos de interfaces utilizando ferramentas apropriadas. Explorar novas abordagens e tecnologias emergentes na Interação Humano-Computador.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BARBOSA, S. D. J.; SILVA, B. S. Interação Humano-Computador. Ed. Campus-Elsevier, 2010. ISBN 978-8535234183.

  • BARBOSA, S. D. J.; SILVA, B. S.; SILVEIRA, M.; GASPARINI, I.; DARIN, T.; BARBOSA, G. D. J. Interação Humano-Computador e Experiência do Usuário. Autopublicação – Leanpub, 2021. ISBN: 978-6500196771.

  • ROGERS, Yvonne, SHARP, Helen, PREECE, Jenny. Design de Interação - Além da Interação Homem-computador - 3ª Ed. Editora Bookman, 2013. ISBN 97-88582600061.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • AGNER, L. Ergodesign e arquitetura da informação: Trabalhando com o usuário (2a. Edição). Quartet Editora, 2009. ISBN 978-8578120177.

  • NIELSEN, J., BUDIU, R. Usabilidade Móvel. Campus-Elsevier, Rio de Janeiro, 2013. ISBN 978-8535264272.

  • NIELSEN, J., LORANGER, H. Usabilidade na Web. Campus-Elsevier, Rio de Janeiro, 2007. ISBN 9788535221909.

  • CYBIS, W., BETIOL, A. H., FAUST, R. Ergonomia e Usabilidade: Conhecimentos, métodos e aplicações. Ed. Novatec, 2010. ISBN 9788575222324.

  • BENYON, D. Interação Humano-Computador. Pearson Brasil, 2011. ISBN 978-8579361098.

  • OLSON, J. S., KELLOGG, W. A. (Eds). Ways of Knowing in HCI. Springer, 2014. ISBN 978-1493903771.

  • HARPER, S.; YESILADA, Y.; Web Accessibility: A Foundation for Research. Springer eBooks London: Springer London, 2008. (Human-Computer Interaction Series,) ISBN 978-1848000506.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC408

Verificação e Validação de Software

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC430 Engenharia de Software I

Engenharia de Software

Obrigatória

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Fundamentos da qualidade de software. Qualidade do processo. Maturidade do Processo de Software. Qualidade do produto. Inspeção de software. Princípios e técnicas de testes de software: teste de unidade; teste de integração; teste de regressão. Planejamento de Verificação e Validação. Desenvolvimento orientado a testes. Automação dos testes. Geração de casos de teste. Ferramentas de testes. Planos de testes. Testes ágeis. Gerenciamento do processo de testes. Registro e acompanhamento de problemas.

 

  1. OBJETIVOS GERAIS

Explicar os fundamentos teóricos de verificação e validação de software, reconhecendo normas e modelos de qualidade de processos. Analisar métodos, técnicas e ferramentas disponíveis para garantir a qualidade do produto de software. Aplicar estratégias de teste em diferentes níveis do ciclo de desenvolvimento. Planejar e executar atividades de verificação e validação, promovendo a automação de testes e o gerenciamento sistemático de falhas.

  1. OBJETIVOS ESPECÍFICOS

Descrever os conceitos fundamentais de qualidade de software e maturidade de processos. Diferenciar os tipos de testes de software, como testes de unidade, integração e regressão. Planejar atividades de verificação e validação com base em requisitos de qualidade e riscos do projeto. Implementar testes automatizados e gerar casos de teste com o apoio de ferramentas especializadas. Avaliar a qualidade de produtos e processos a partir de critérios definidos. Utilizar planos de teste para organizar e monitorar a execução das atividades de teste. Registrar e acompanhar defeitos encontrados durante o processo de teste. Justificar o uso de inspeções como técnica de verificação. Colaborar em equipes para desenvolver estratégias de verificação e validação de forma ética e responsável.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • DELAMARO. M.E.; MALDONADO, J. C.; JINO, M. Introdução ao Teste de Software; Rio de Janeiro: Campus, 2007. ISBN 978-85-352-2634-8

  • Koscianski, A., & dos Santos Soares, M. (2007). Qualidade de Software-2ª Edição: Aprenda as metodologias e técnicas mais modernas para o desenvolvimento de software. Novatec Editora.  ISBN:  9788575221129

  • Pezzè, M., & Young, M. (2008). Teste e análise de software: processos, princípios e técnicas. Bookman Editora. ISBN 978-85-7780-262-3

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SOMERVILLE, I. Engenharia de Software, 9ª ed. São Paulo: Pearson, 2011. ISBN  9788579361081

  • PRESSMAN, R. S. Engenharia de Software.  São Paulo:  McGraw-Hill, 2006. ISBN 9788586804571

  • BECK, K. TDD Desenvolvimento Guiado por Testes; Porto Alegre: Bookman, 2010, ISBN: 9788577807246.

  • Molinari, L. (2009). Testes de software: Produzindo sistemas melhores e mais confiáveis. Editora Érica. ISBN : ‎ 978-8571949591

  • Graham, D., Veenendaal, E. V., Evans, I., & Black, R. (2008). Foundations of software testing: ISTQB certification. Intl Thomson Business Pr.ISBN-13 ‏ : ‎ 978-1473764798

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC409

Sistemas Colaborativos

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Sistemas Colaborativos: definições e conceitos. Modelos de Colaboração, Teoria da Atividade, Teoria dos Jogos e Modelo 3C de Colaboração. Classificação de Sistemas Colaborativos. Sistemas Colaborativos e Ubiquidade. Sistemas Colaborativos Sensíveis a Contextos. Design Centrado no Usuário de Sistemas Colaborativos.

 

  1. OBJETIVOS GERAIS

Compreender os fundamentos teóricos e práticos dos Sistemas Colaborativos. Analisar diferentes modelos de colaboração e suas aplicações. Aplicar conceitos de Teoria da Atividade, Teoria dos Jogos e Modelo 3C na concepção de sistemas colaborativos. Avaliar a classificação e os impactos dos sistemas colaborativos em diferentes contextos. Projetar soluções colaborativas considerando aspectos de ubiquidade e sensibilidade ao contexto. Desenvolver abordagens baseadas no Design Centrado no Usuário para o desenvolvimento de Sistemas Colaborativos eficazes.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os principais conceitos relacionados a Sistemas Colaborativos. Identificar os diferentes modelos de colaboração e suas características. Explicar os princípios da Teoria da Atividade, Teoria dos Jogos e Modelo 3C de Colaboração. Categorizar os sistemas colaborativos segundo diferentes taxonomias. Relacionar os conceitos de ubiquidade e sensibilidade ao contexto com Sistemas Colaborativos. Examinar desafios e oportunidades no desenvolvimento de Sistemas Colaborativos Sensíveis a Contexto. Aplicar princípios do Design Centrado no Usuário na concepção de interfaces e interações colaborativas. Avaliar criticamente estudos de caso e aplicações práticas de Sistemas Colaborativos em diferentes domínios.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • PIMENTEL, M.; FUKS, H. Sistemas Colaborativos. Rio de Janeiro: Elsevier-Campus-SBC, 2011. ISBN 978-85-352-4669-8.

  • NUNAMAKER Jr., Jay F.; BRIGGS, Robert O.; ROMANO Jr., Nicholas C. Collaboration Systems: Concept, Value, and Use. London: Routledge, 2024. ISBN 978-1-032-92452-6.

  • ​RITTER, Frank E.; BAXTER, Gordon D.; CHURCHILL, Elizabeth F. Foundations for Designing User-Centered Systems: What System Designers Need to Know About People. London: Springer-Verlag, 2014. ISBN 978-1-4471-5133-3.

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • ASSOCIATION FOR COMPUTING MACHINERY (ACM). Proceedings of the ACM Conference on Computer-Supported Cooperative Work and Social Computing (CSCW). Disponível em: https://dl.acm.org/conference/cscw/proceedings.

  • SOCIEDADE BRASILEIRA DE COMPUTAÇÃO (SBC). Anais do Simpósio Brasileiro de Sistemas Colaborativos (SBSC). Disponível em: https://sol.sbc.org.br/index.php/sbsc/issue/archive.

  • ROGERS, Y.; SHARP, H.; PREECE, J. Design de Interação: além da interação homem-computador. 4ed. Porto Alegre: Bookman, 2019. ISBN 978-85-363-2772-2.

  • SOMMERVILLE, Ian. Engenharia de Software, 10ª edição. Editora Pearson do Brasil, 2019. ISBN: 978-8543024974

  • PRESSMAN, R. S. ; MAXIM, B. Engenharia de software: uma abordagem profissional. 9a edição. Editora: AMGH, 2021. ISBN: 978-6558040101

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC412

Processo de Desenvolvimento de Software

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC430 Engenharia de Software I

Engenharia de Software

Obrigatória

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Conceitos e terminologia. Infraestrutura de processos (pessoas, ferramentas, treinamentos e outros). Modelos de ciclo de vida (ágil, processos “pesados”, cascata, espiral, modelo V e outros). Modelagem e especificação de processos de software. Notação BPMN. Medição e análise de processos de software. Melhoria de processos de software (individual e equipe). Análise e controle de qualidade (prevenção de defeitos, revisão de processos, métricas de qualidade, análise de causa e outros). Níveis de definição de processos. Modelos de processos e padrões (IEEE, ISO e outros). Modelo, definição, medida, análise e melhoria tanto de processo de software individual quanto de equipe. Personalização de processo. Requisitos para processos de software (ISO/IEEE 12207). Detalhada apresentação do MSP.BR (guias). Implementação do MPS.BR. Noções de governança de TI.

 

  1. OBJETIVOS GERAIS

Compreender os principais conceitos, terminologias e fundamentos do processo de desenvolvimento de software. Analisar criticamente diferentes modelos de ciclo de vida e padrões de processos de software. Aplicar técnicas e ferramentas para modelagem, especificação, medição e melhoria de processos de software. Avaliar a qualidade de processos e produtos de software por meio de métricas e métodos de análise. Desenvolver habilidades para personalizar processos de software de acordo com requisitos organizacionais e normativos.

 

  1. OBJETIVOS ESPECÍFICOS

Definir conceitos fundamentais e terminologias relacionadas a processos de software. Identificar os principais componentes da infraestrutura de processos, incluindo pessoas, ferramentas e treinamentos. Modelar e especificar processos de software utilizando técnicas e notações adequadas. Medir e analisar processos de software para identificar oportunidades de melhoria. Aplicar métodos e técnicas para melhoria contínua de processos, tanto individuais quanto de equipe. Implementar estratégias para análise e controle de qualidade, incluindo prevenção de defeitos, revisão de processos e uso de métricas. Comparar diferentes níveis de definição de processos e suas aplicações. Examinar modelos de ciclo de vida de software, diferenciando abordagens ágeis e tradicionais. Interpretar padrões e modelos de processos, como IEEE, ISO e MPS.BR. Avaliar requisitos para processos de software conforme normas ISO/IEEE 12207. Analisar a estrutura e os guias do MPS.BR para sua implementação em organizações. Relacionar os conceitos de processos de software com princípios de governança de TI.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • VALENTE, Marco Tulio. Engenharia de Software Moderna: Princípios e Práticas para Desenvolvimento de Software com Produtividade, Editora: Independente, 2020. ISBN: ‎ 978-6500019506

  • SOMMERVILLE, Ian. Engenharia de Software, 10ª edição. Editora Pearson do Brasil, 2019. ISBN: 978-8543024974

  • PRESSMAN, R. S. ; MAXIM, B. Engenharia de software: uma abordagem profissional. 9a edição. Editora: AMGH, 2021. ISBN: 978-6558040101

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PRIKLADNICKI, Rafael; WILLI, Renato; MILANI, Fabiano. Métodos ágeis para desenvolvimento de software. Bookman Editora, 2014. ISBB: 978-8582602072

  • SILVER, Tom. Agile Scrum Culture: Discover How Scrum Fosters Deep Connections, Streamlines Communication, and Creates a Tight-Knit, High-Energy Organization. Independently published, 2023. ISBN: 979-8856096509.

  • PAULA FILHO, Wilson de Pádua. Engenharia de Software: Projetos e Processos – Volume 2. 4ed. Rio de Janeiro: LTC, 2019. ISBN: 978-8521636694.

  • CMMI INSTITUTE. CMMI – Capability Maturity Model Integration. Disponível em: https://cmmiinstitute.com/cmmi.

  • ASSOCIAÇÃO PARA PROMOÇÃO DA EXCELÊNCIA DO SOFTWARE BRASILEIRO – SOFTEX. MPS. BR – Guia Geral, Guias de Implementação e Guia de Avaliação. Disponível em: www.softex.br

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC417

Gerência de Configuração       

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC431 Engenharia de Software II

Engenharia de Software

Obrigatória

ICC431 Engenharia de Software II

Inteligência Artificial

Eletiva

ICC431 Engenharia de Software II

Tecnologia da Informação

Eletiva

ICC431 Engenharia de Software II

 

  1. EMENTA

Conceitos e terminologia. Processos de gerência de configuração. Itens de configuração. Armazenamento. Controle de mudanças. Controle de versões e linhas-base ou de referência (baselines). Papéis em gerência de configuração. Gerência de configuração segundo desenvolvimento ágil, técnica de builds frequentes e desenvolvimento iterativo. Considerações práticas acerca de gerência de configuração de software. Integração Contínua, Entrega Contínua e Implantação Contínua. Ferramentas utilizadas para automatização do processo de Desenvolvimento de Software.

 

  1. OBJETIVOS GERAIS

Elaborar, implementar e praticar a gerência de configuração de software. Compreender os princípios de Integração Contínua, Entrega Contínua e Implementação Contínua. Utilizar ferramentas e técnicas para controle de versões, rastreabilidade e automação no desenvolvimento de software. Aplicar atividades práticas para garantir a qualidade e a eficiência dos processos de configuração de software.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender e aplicar os conceitos, processos e práticas da Gerência de Configuração de Software. Examinar e utilizar ferramentas e técnicas de automação, como Git, Integração Contínua, Entrega Contínua e Implantação Contínua. Analisar a Gerência de Configuração no contexto do desenvolvimento ágil, considerando práticas como builds frequentes, desenvolvimento iterativo e papéis envolvidos no processo.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • HUMBLE J; PRIKLANDNICKI R. Entrega Contínua: Como Entregar Software de Forma Rápida e Confiável. São Paulo: Bookman, 2013 - ISBN-10: ‎8582601034

  • METTE, A AND HASS, J. Configuration Management Principles and Practice, The Agile Software Development Serie, Pearson Education, 2003. ISBN-10 0321117662

  • BERCZUK, S. Software Configuration Management Patterns: Effective Teamwork, Practical Integration, Addison-Wesley, 2003.ISBN-10  0201741172

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MELO, Ana Cristina de Souza Luiz de. Desenvolvendo aplicações com UML 2.0: do conceitual à implementação. 2. ed. atual. Rio de Janeiro: Brasport, 2004. 284 p. ISBN 8574521752

  • PRESSMAN, Roger S. Engenharia de software. São Paulo: McGraw-Hill, c2006. 720 p. ISBN 8586804576 

  • PRESSMAN, Roger S. Engenharia de software: uma abordagem profissional. Porto Alegre: AMGH, 2011. xxviii, 780 p. ISBN 9788563308337. 

  • SOMMERVILLE, Ian. Engenharia de software. São Paulo, SP: Pearson, c2011. xiii, 529 p. ISBN 9788579361081.

  • BEZERRA, Eduardo,. Princípios de análise e projeto de sistemas com UML. Rio de Janeiro: Campus, 2003. 286p. ISBN 8535210326.

  • DEITEL, Paul J.; DEITEL, Harvey M. Ajax, rich internet aplications e desenvolvimento web para programadores. São Paulo, SP: Pearson Prentice Hall, 2008. xxiv, 747 p. (Série do desenvolvedor). ISBN 9788576051619 (broch.).

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC418

Projetos Práticos em Engenharia de Software

5

0h

150h

0h

150h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC412 Processo de Desenvolvimento de Software

Engenharia de Software

Obrigatória

ICC412 Processo de Desenvolvimento de Software

Inteligência Artificial

Eletiva

ICC412 Processo de Desenvolvimento de Software

Tecnologia da Informação

Eletiva

ICC412 Processo de Desenvolvimento de Software

 

  1. EMENTA

Aplicação de ferramentas computacionais modernas utilizadas em diferentes etapas do ciclo de vida do software. Especificação, modelagem, codificação, testes e entrega de soluções. Práticas de integração e entrega contínua. Configuração de ambientes em nuvem. Gerência de configuração e publicação de soluções. Documentação técnica. Trabalho em equipe, comunicação e tomada de decisão em ambientes colaborativos. Elaboração de modelos de sistemas por meio de Linguagem Unificada de Modelagem (UML). Projeto de sistemas com base no modelo de especificação.

 

  1. OBJETIVOS GERAIS

Simular um ambiente prático para desenvolvimento de sistemas de informação. Projetar e desenvolver sistemas de informação por meio de práticas integradas de engenharia de software, utilizando ferramentas computacionais modernas, contemplando todas as etapas do ciclo de vida do desenvolvimento e configurando ambientes em nuvem para controle de versão, integração contínua e entrega automatizada de soluções funcionais ao usuário final.

 

  1. OBJETIVOS ESPECÍFICOS

Aplicar conceitos de engenharia de software em atividades práticas que envolvem o ciclo de vida completo de um sistema. Utilizar ferramentas computacionais para análise, modelagem, implementação, teste e publicação de sistemas. Configurar ambientes de desenvolvimento integrados com plataformas de nuvem para controle de versão e automação de deploy. Implementar funcionalidades de software com base em especificações previamente definidas. Testar soluções desenvolvidas por meio de estratégias automatizadas e manuais. Modelar requisitos e arquiteturas de sistemas utilizando técnicas apropriadas. Colaborar em equipes para a construção de soluções, exercitando habilidades de comunicação, tomada de decisão e relacionamento interpessoal. Documentar tecnicamente o processo e os produtos desenvolvidos, garantindo rastreabilidade e clareza. Demonstrar responsabilidade ética e profissional na condução dos projetos, considerando impactos sociais e ambientais. Projetar e implementar soluções de software que considerem requisitos de acessibilidade, promovendo a inclusão de pessoas com deficiência e incorporar práticas de usabilidade ao longo do desenvolvimento.

 

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • VALENTE, Marco Tulio. Engenharia de Software Moderna: Princípios e Práticas para Desenvolvimento de Software com Produtividade, Editora: Independente, 2020. ISBN: ‎ 9786500019506

  • SOMERVILLE, I. Engenharia de Software, 9ª ed. São Paulo: Pearson, 2011. ISBN  9788579361081

  • BOOCH, G. UML: Guia do Usuário. Elsevier Brasil, 2006. ISBN: 978-8535217841.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • LARMAN, C. Utilizando UML e Padrões: Uma Introdução à Análise e ao Projeto Orientados a Objetos e ao Desenvolvimento Iterativo. 3ª edição. Bookman, 2007. ISBN: 978-8560031528.

  • PRESSMAN, R. S. Engenharia de Software.  São Paulo:  McGraw-Hill, 2006. ISBN 9788586804571

  • CAMARGO, R. A. D.; RIBAS, T. Gestão ágil de projetos. São Paulo: Saraiva, 2019. ISBN: 978-8553131877

  • DENNIS, Alan; WIXOM, Barbara Haley. Análise e Projeto de Sistemas, 2ª edição. Editora LTC, 2005. ISBN 8521604947

  • PAULA FILHO, Wilson de Padua. Engenharia de Software - Projetos e Processos. 4a edição. Rio de Janeiro – RJ; Gen-LTC Editora, 2019. ISBN: 978-8521636694

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC420

Tópicos Especiais em Engenharia de Software

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC430 Engenharia de Software I

Engenharia de Software

Eletiva

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Estudo de temas emergentes em Engenharia de Software, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos avançados e emergentes na área de Engenharia de Software, considerando tendências, desafios e inovações tecnológicas. Analisar diferentes abordagens, metodologias e práticas na Engenharia de Software, avaliando seus impactos na indústria e na pesquisa. Desenvolver a capacidade de investigação crítica e aplicação de conceitos avançados no desenvolvimento e na gestão de software. Criar propostas de estudo ou experimentação sobre temas em aberto no campo da Engenharia de Software.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os desafios atuais e tendências emergentes na Engenharia de Software, com base na literatura científica e na prática industrial. Explorar métodos e técnicas de pesquisa aplicados à Engenharia de Software, considerando abordagens qualitativas e quantitativas. Avaliar criticamente estudos empíricos, metodologias e tecnologias aplicadas ao desenvolvimento de software. Aplicar conhecimentos avançados para investigar problemas complexos da Engenharia de Software e propor soluções inovadoras. Desenvolver estudos experimentais, revisões sistemáticas ou propostas de inovação tecnológica relacionadas a tópicos avançados da área. Discutir implicações éticas, sociais e profissionais associadas a novas tendências em Engenharia de Software.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WÖHLIN, C.; RUNESON, P.; HÖST, M.; OHLSSON, M. C.; REGNELL, B.; WESSLÉN, A. Experimentation in Software Engineering: An Introduction. Kluwer Academic Publishers, 2000. ISBN: 978-0-7923-8682-7.

  • SHULL, F.; SINGER, J.; SJØBERG, D. I. K. (Eds.) Guide to Advanced Empirical Software Engineering. Springer, 2007. ISBN: 978-1-84800-044-5.

  • KITCHENHAM, B. A.; BUDGEN, D.; BRERETON, P. Evidence-Based Software Engineering and Systematic Reviews. Chapman and Hall/CRC, 2015. ISBN: 978-1482228656.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FELDERER, M.; TRAVASSOS, G. H. (Eds.). Contemporary Empirical Methods in Software Engineering. Springer, 2020. ISBN: 978-3-030-32488-9.

  • JURISTO, N.; MORENO, A. M. Basics of Software Engineering Experimentation. Springer, 2010. ISBN: 978-1441950116.

  • WAZLAWICK, R. S. Metodologia de Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008. ISBN: 978-85-352-3522-7.​

  • BOEHM, B.; ROMBACH, H. D.; ZELKOWITZ, M. V. (Eds.). Foundations of Empirical Software Engineering: The Legacy of Victor R. Basili. Springer, 2005. ISBN: 978-3-540-24547-6.​

  • Repositórios de periódicos e conferências na área de Engenharia de Software, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC421

Tópicos Avançados em Engenharia de Software

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC430 Engenharia de Software I

Engenharia de Software

Eletiva

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Estudo de temas avançados em Engenharia de Software, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Aprofundar o conhecimento em tópicos avançados e inovadores da Engenharia de Software, considerando perspectivas acadêmicas e industriais. Analisar criticamente metodologias, ferramentas e abordagens utilizadas na pesquisa e no desenvolvimento de software. Desenvolver a capacidade de investigação e experimentação sobre temas avançados da área. Aplicar conceitos avançados de Engenharia de Software para propor soluções inovadoras a problemas complexos.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar desafios contemporâneos e tendências emergentes na Engenharia de Software. Explorar técnicas e abordagens avançadas de desenvolvimento, qualidade e gestão de software. Avaliar criticamente a literatura científica e estudos empíricos sobre temas avançados na área. Aplicar metodologias inovadoras no desenvolvimento de software, considerando práticas avançadas de engenharia. Desenvolver propostas de pesquisa, inovação ou experimentação sobre tópicos avançados da Engenharia de Software. Discutir impactos éticos, sociais e profissionais relacionados a novas abordagens e tecnologias na área.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WÖHLIN, C.; RUNESON, P.; HÖST, M.; OHLSSON, M. C.; REGNELL, B.; WESSLÉN, A. Experimentation in Software Engineering: An Introduction. Kluwer Academic Publishers, 2000. ISBN: 978-0-7923-8682-7.

  • SHULL, F.; SINGER, J.; SJØBERG, D. I. K. (Eds.) Guide to Advanced Empirical Software Engineering. Springer, 2007. ISBN: 978-1-84800-044-5.

  • KITCHENHAM, B. A.; BUDGEN, D.; BRERETON, P. Evidence-Based Software Engineering and Systematic Reviews. Chapman and Hall/CRC, 2015. ISBN: 978-1482228656.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FELDERER, M.; TRAVASSOS, G. H. (Eds.). Contemporary Empirical Methods in Software Engineering. Springer, 2020. ISBN: 978-3-030-32488-9.

  • JURISTO, N.; MORENO, A. M. Basics of Software Engineering Experimentation. Springer, 2010. ISBN: 978-1441950116.

  • WAZLAWICK, R. S. Metodologia de Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008. ISBN: 978-85-352-3522-7.​

  • BOEHM, B.; ROMBACH, H. D.; ZELKOWITZ, M. V. (Eds.). Foundations of Empirical Software Engineering: The Legacy of Victor R. Basili. Springer, 2005. ISBN: 978-3-540-24547-6.​

  • Repositórios de periódicos e conferências na área de Engenharia de Software, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC424

Tópicos Especiais em Engenharia de Software II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC430 Engenharia de Software I

Engenharia de Software

Eletiva

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Estudo de temas emergentes em Engenharia de Software, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos avançados e emergentes na área de Engenharia de Software, considerando tendências, desafios e inovações tecnológicas. Analisar diferentes abordagens, metodologias e práticas na Engenharia de Software, avaliando seus impactos na indústria e na pesquisa. Desenvolver a capacidade de investigação crítica e aplicação de conceitos avançados no desenvolvimento e na gestão de software. Criar propostas de estudo ou experimentação sobre temas em aberto no campo da Engenharia de Software.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os desafios atuais e tendências emergentes na Engenharia de Software, com base na literatura científica e na prática industrial. Explorar métodos e técnicas de pesquisa aplicados à Engenharia de Software, considerando abordagens qualitativas e quantitativas. Avaliar criticamente estudos empíricos, metodologias e tecnologias aplicadas ao desenvolvimento de software. Aplicar conhecimentos avançados para investigar problemas complexos da Engenharia de Software e propor soluções inovadoras. Desenvolver estudos experimentais, revisões sistemáticas ou propostas de inovação tecnológica relacionadas a tópicos avançados da área. Discutir implicações éticas, sociais e profissionais associadas a novas tendências em Engenharia de Software.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WÖHLIN, C.; RUNESON, P.; HÖST, M.; OHLSSON, M. C.; REGNELL, B.; WESSLÉN, A. Experimentation in Software Engineering: An Introduction. Kluwer Academic Publishers, 2000. ISBN: 978-0-7923-8682-7.

  • SHULL, F.; SINGER, J.; SJØBERG, D. I. K. (Eds.) Guide to Advanced Empirical Software Engineering. Springer, 2007. ISBN: 978-1-84800-044-5.

  • KITCHENHAM, B. A.; BUDGEN, D.; BRERETON, P. Evidence-Based Software Engineering and Systematic Reviews. Chapman and Hall/CRC, 2015. ISBN: 978-1482228656.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FELDERER, M.; TRAVASSOS, G. H. (Eds.). Contemporary Empirical Methods in Software Engineering. Springer, 2020. ISBN: 978-3-030-32488-9.

  • JURISTO, N.; MORENO, A. M. Basics of Software Engineering Experimentation. Springer, 2010. ISBN: 978-1441950116.

  • WAZLAWICK, R. S. Metodologia de Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008. ISBN: 978-85-352-3522-7.​

  • BOEHM, B.; ROMBACH, H. D.; ZELKOWITZ, M. V. (Eds.). Foundations of Empirical Software Engineering: The Legacy of Victor R. Basili. Springer, 2005. ISBN: 978-3-540-24547-6.​

  • Repositórios de periódicos e conferências na área de Engenharia de Software, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC425

Tópicos Avançados em Engenharia de Software II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC430 Engenharia de Software I

Engenharia de Software

Eletiva

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Estudo de temas avançados em Engenharia de Software, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Aprofundar o conhecimento em tópicos avançados e inovadores da Engenharia de Software, considerando perspectivas acadêmicas e industriais. Analisar criticamente metodologias, ferramentas e abordagens utilizadas na pesquisa e no desenvolvimento de software. Desenvolver a capacidade de investigação e experimentação sobre temas avançados da área. Aplicar conceitos avançados de Engenharia de Software para propor soluções inovadoras a problemas complexos.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar desafios contemporâneos e tendências emergentes na Engenharia de Software. Explorar técnicas e abordagens avançadas de desenvolvimento, qualidade e gestão de software. Avaliar criticamente a literatura científica e estudos empíricos sobre temas avançados na área. Aplicar metodologias inovadoras no desenvolvimento de software, considerando práticas avançadas de engenharia. Desenvolver propostas de pesquisa, inovação ou experimentação sobre tópicos avançados da Engenharia de Software. Discutir impactos éticos, sociais e profissionais relacionados a novas abordagens e tecnologias na área.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WÖHLIN, C.; RUNESON, P.; HÖST, M.; OHLSSON, M. C.; REGNELL, B.; WESSLÉN, A. Experimentation in Software Engineering: An Introduction. Kluwer Academic Publishers, 2000. ISBN: 978-0-7923-8682-7.

  • SHULL, F.; SINGER, J.; SJØBERG, D. I. K. (Eds.) Guide to Advanced Empirical Software Engineering. Springer, 2007. ISBN: 978-1-84800-044-5.

  • KITCHENHAM, B. A.; BUDGEN, D.; BRERETON, P. Evidence-Based Software Engineering and Systematic Reviews. Chapman and Hall/CRC, 2015. ISBN: 978-1482228656.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FELDERER, M.; TRAVASSOS, G. H. (Eds.). Contemporary Empirical Methods in Software Engineering. Springer, 2020. ISBN: 978-3-030-32488-9.

  • JURISTO, N.; MORENO, A. M. Basics of Software Engineering Experimentation. Springer, 2010. ISBN: 978-1441950116.

  • WAZLAWICK, R. S. Metodologia de Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008. ISBN: 978-85-352-3522-7.​

  • BOEHM, B.; ROMBACH, H. D.; ZELKOWITZ, M. V. (Eds.). Foundations of Empirical Software Engineering: The Legacy of Victor R. Basili. Springer, 2005. ISBN: 978-3-540-24547-6.​

  • Repositórios de periódicos e conferências na área de Engenharia de Software, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC426

Tópicos Especiais em Engenharia de Software III

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC430 Engenharia de Software I

Engenharia de Software

Eletiva

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Estudo de temas emergentes em Engenharia de Software, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos avançados e emergentes na área de Engenharia de Software, considerando tendências, desafios e inovações tecnológicas. Analisar diferentes abordagens, metodologias e práticas na Engenharia de Software, avaliando seus impactos na indústria e na pesquisa. Desenvolver a capacidade de investigação crítica e aplicação de conceitos avançados no desenvolvimento e na gestão de software. Criar propostas de estudo ou experimentação sobre temas em aberto no campo da Engenharia de Software.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os desafios atuais e tendências emergentes na Engenharia de Software, com base na literatura científica e na prática industrial. Explorar métodos e técnicas de pesquisa aplicados à Engenharia de Software, considerando abordagens qualitativas e quantitativas. Avaliar criticamente estudos empíricos, metodologias e tecnologias aplicadas ao desenvolvimento de software. Aplicar conhecimentos avançados para investigar problemas complexos da Engenharia de Software e propor soluções inovadoras. Desenvolver estudos experimentais, revisões sistemáticas ou propostas de inovação tecnológica relacionadas a tópicos avançados da área. Discutir implicações éticas, sociais e profissionais associadas a novas tendências em Engenharia de Software.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WÖHLIN, C.; RUNESON, P.; HÖST, M.; OHLSSON, M. C.; REGNELL, B.; WESSLÉN, A. Experimentation in Software Engineering: An Introduction. Kluwer Academic Publishers, 2000. ISBN: 978-0-7923-8682-7.

  • SHULL, F.; SINGER, J.; SJØBERG, D. I. K. (Eds.) Guide to Advanced Empirical Software Engineering. Springer, 2007. ISBN: 978-1-84800-044-5.

  • KITCHENHAM, B. A.; BUDGEN, D.; BRERETON, P. Evidence-Based Software Engineering and Systematic Reviews. Chapman and Hall/CRC, 2015. ISBN: 978-1482228656.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FELDERER, M.; TRAVASSOS, G. H. (Eds.). Contemporary Empirical Methods in Software Engineering. Springer, 2020. ISBN: 978-3-030-32488-9.

  • JURISTO, N.; MORENO, A. M. Basics of Software Engineering Experimentation. Springer, 2010. ISBN: 978-1441950116.

  • WAZLAWICK, R. S. Metodologia de Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008. ISBN: 978-85-352-3522-7.​

  • BOEHM, B.; ROMBACH, H. D.; ZELKOWITZ, M. V. (Eds.). Foundations of Empirical Software Engineering: The Legacy of Victor R. Basili. Springer, 2005. ISBN: 978-3-540-24547-6.​

  • Repositórios de periódicos e conferências na área de Engenharia de Software, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC427

Tópicos Avançados em Engenharia de Software III

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC430 Engenharia de Software I

Engenharia de Software

Eletiva

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Estudo de temas avançados em Engenharia de Software, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Aprofundar o conhecimento em tópicos avançados e inovadores da Engenharia de Software, considerando perspectivas acadêmicas e industriais. Analisar criticamente metodologias, ferramentas e abordagens utilizadas na pesquisa e no desenvolvimento de software. Desenvolver a capacidade de investigação e experimentação sobre temas avançados da área. Aplicar conceitos avançados de Engenharia de Software para propor soluções inovadoras a problemas complexos.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar desafios contemporâneos e tendências emergentes na Engenharia de Software. Explorar técnicas e abordagens avançadas de desenvolvimento, qualidade e gestão de software. Avaliar criticamente a literatura científica e estudos empíricos sobre temas avançados na área. Aplicar metodologias inovadoras no desenvolvimento de software, considerando práticas avançadas de engenharia. Desenvolver propostas de pesquisa, inovação ou experimentação sobre tópicos avançados da Engenharia de Software. Discutir impactos éticos, sociais e profissionais relacionados a novas abordagens e tecnologias na área.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WÖHLIN, C.; RUNESON, P.; HÖST, M.; OHLSSON, M. C.; REGNELL, B.; WESSLÉN, A. Experimentation in Software Engineering: An Introduction. Kluwer Academic Publishers, 2000. ISBN: 978-0-7923-8682-7.

  • SHULL, F.; SINGER, J.; SJØBERG, D. I. K. (Eds.) Guide to Advanced Empirical Software Engineering. Springer, 2007. ISBN: 978-1-84800-044-5.

  • KITCHENHAM, B. A.; BUDGEN, D.; BRERETON, P. Evidence-Based Software Engineering and Systematic Reviews. Chapman and Hall/CRC, 2015. ISBN: 978-1482228656.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FELDERER, M.; TRAVASSOS, G. H. (Eds.). Contemporary Empirical Methods in Software Engineering. Springer, 2020. ISBN: 978-3-030-32488-9.

  • JURISTO, N.; MORENO, A. M. Basics of Software Engineering Experimentation. Springer, 2010. ISBN: 978-1441950116.

  • WAZLAWICK, R. S. Metodologia de Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008. ISBN: 978-85-352-3522-7.​

  • BOEHM, B.; ROMBACH, H. D.; ZELKOWITZ, M. V. (Eds.). Foundations of Empirical Software Engineering: The Legacy of Victor R. Basili. Springer, 2005. ISBN: 978-3-540-24547-6.​

  • Repositórios de periódicos e conferências na área de Engenharia de Software, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC428

Tópicos Especiais em Engenharia de Software IV

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC430 Engenharia de Software I

Engenharia de Software

Eletiva

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Estudo de temas emergentes em Engenharia de Software, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Explorar tópicos avançados e emergentes na área de Engenharia de Software, considerando tendências, desafios e inovações tecnológicas. Analisar diferentes abordagens, metodologias e práticas na Engenharia de Software, avaliando seus impactos na indústria e na pesquisa. Desenvolver a capacidade de investigação crítica e aplicação de conceitos avançados no desenvolvimento e na gestão de software. Criar propostas de estudo ou experimentação sobre temas em aberto no campo da Engenharia de Software.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os desafios atuais e tendências emergentes na Engenharia de Software, com base na literatura científica e na prática industrial. Explorar métodos e técnicas de pesquisa aplicados à Engenharia de Software, considerando abordagens qualitativas e quantitativas. Avaliar criticamente estudos empíricos, metodologias e tecnologias aplicadas ao desenvolvimento de software. Aplicar conhecimentos avançados para investigar problemas complexos da Engenharia de Software e propor soluções inovadoras. Desenvolver estudos experimentais, revisões sistemáticas ou propostas de inovação tecnológica relacionadas a tópicos avançados da área. Discutir implicações éticas, sociais e profissionais associadas a novas tendências em Engenharia de Software.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WÖHLIN, C.; RUNESON, P.; HÖST, M.; OHLSSON, M. C.; REGNELL, B.; WESSLÉN, A. Experimentation in Software Engineering: An Introduction. Kluwer Academic Publishers, 2000. ISBN: 978-0-7923-8682-7.

  • SHULL, F.; SINGER, J.; SJØBERG, D. I. K. (Eds.) Guide to Advanced Empirical Software Engineering. Springer, 2007. ISBN: 978-1-84800-044-5.

  • KITCHENHAM, B. A.; BUDGEN, D.; BRERETON, P. Evidence-Based Software Engineering and Systematic Reviews. Chapman and Hall/CRC, 2015. ISBN: 978-1482228656.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FELDERER, M.; TRAVASSOS, G. H. (Eds.). Contemporary Empirical Methods in Software Engineering. Springer, 2020. ISBN: 978-3-030-32488-9.

  • JURISTO, N.; MORENO, A. M. Basics of Software Engineering Experimentation. Springer, 2010. ISBN: 978-1441950116.

  • WAZLAWICK, R. S. Metodologia de Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008. ISBN: 978-85-352-3522-7.​

  • BOEHM, B.; ROMBACH, H. D.; ZELKOWITZ, M. V. (Eds.). Foundations of Empirical Software Engineering: The Legacy of Victor R. Basili. Springer, 2005. ISBN: 978-3-540-24547-6.​

  • Repositórios de periódicos e conferências na área de Engenharia de Software, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC429

Tópicos Avançados em Engenharia de Software IV

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC430 Engenharia de Software I

Engenharia de Software

Eletiva

ICC430 Engenharia de Software I

Inteligência Artificial

Eletiva

ICC430 Engenharia de Software I

Tecnologia da Informação

Eletiva

ICC430 Engenharia de Software I

 

  1. EMENTA

Estudo de temas avançados em Engenharia de Software, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Aprofundar o conhecimento em tópicos avançados e inovadores da Engenharia de Software, considerando perspectivas acadêmicas e industriais. Analisar criticamente metodologias, ferramentas e abordagens utilizadas na pesquisa e no desenvolvimento de software. Desenvolver a capacidade de investigação e experimentação sobre temas avançados da área. Aplicar conceitos avançados de Engenharia de Software para propor soluções inovadoras a problemas complexos.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar desafios contemporâneos e tendências emergentes na Engenharia de Software. Explorar técnicas e abordagens avançadas de desenvolvimento, qualidade e gestão de software. Avaliar criticamente a literatura científica e estudos empíricos sobre temas avançados na área. Aplicar metodologias inovadoras no desenvolvimento de software, considerando práticas avançadas de engenharia. Desenvolver propostas de pesquisa, inovação ou experimentação sobre tópicos avançados da Engenharia de Software. Discutir impactos éticos, sociais e profissionais relacionados a novas abordagens e tecnologias na área.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • WÖHLIN, C.; RUNESON, P.; HÖST, M.; OHLSSON, M. C.; REGNELL, B.; WESSLÉN, A. Experimentation in Software Engineering: An Introduction. Kluwer Academic Publishers, 2000. ISBN: 978-0-7923-8682-7.

  • SHULL, F.; SINGER, J.; SJØBERG, D. I. K. (Eds.) Guide to Advanced Empirical Software Engineering. Springer, 2007. ISBN: 978-1-84800-044-5.

  • KITCHENHAM, B. A.; BUDGEN, D.; BRERETON, P. Evidence-Based Software Engineering and Systematic Reviews. Chapman and Hall/CRC, 2015. ISBN: 978-1482228656.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FELDERER, M.; TRAVASSOS, G. H. (Eds.). Contemporary Empirical Methods in Software Engineering. Springer, 2020. ISBN: 978-3-030-32488-9.

  • JURISTO, N.; MORENO, A. M. Basics of Software Engineering Experimentation. Springer, 2010. ISBN: 978-1441950116.

  • WAZLAWICK, R. S. Metodologia de Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008. ISBN: 978-85-352-3522-7.​

  • BOEHM, B.; ROMBACH, H. D.; ZELKOWITZ, M. V. (Eds.). Foundations of Empirical Software Engineering: The Legacy of Victor R. Basili. Springer, 2005. ISBN: 978-3-540-24547-6.​

  • Repositórios de periódicos e conferências na área de Engenharia de Software, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC450

Introdução à Computação Gráfica

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Obrigatória

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

     

  1. EMENTA

Introdução à Computação Gráfica. Dispositivos Gráficos. OpenGL. Geometria. Modelagem Geométrica. Curvas e Superfícies. Sólidos. Visualização Tridimensional. Recorte. Rasterização. Visibilidade de Superfícies. Modelos de Iluminação. Colorização (shading). Mapeamentos. Cor. Imagem.

 

  1. OBJETIVOS GERAIS

Compreender e aplicar os princípios, técnicas e algoritmos fundamentais utilizados na geração, manipulação e renderização de imagens sintéticas por computador e capacitar os alunos a compreender e implementar os principais conceitos de computação gráfica, permitindo que desenvolvam aplicações gráficas interativas.

 

  1. OBJETIVOS ESPECÍFICOS

Aplicar os principais conceitos de renderização, incluindo modelos de iluminação locais e globais, ray tracing e radiosidade. Desenvolver habilidades em bibliotecas gráficas, como OpenGL e WebGL, para a criação de aplicações interativas. Desenvolver os fundamentos da animação computacional e suas aplicações em jogos, simulações e efeitos visuais. Discutir aplicações práticas da computação gráfica em áreas como design, engenharia, medicina, visualização científica e entretenimento.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • COHEN, Marcelo; MANSSOUR; Isabel Harb. OpenGL – Uma Abordagem Prática e Objetiva. Editora Novatec, 2006. ISBN-13  8575220845.

  • AZEVEDO, Eduardo; CONCI, Aura; LETA, Fabiana R. Computação Gráfica, volume 1: Geração de Imagens, 1ª edição. Editora Campus, 2003. ISBN-13  9788535212525.

  • AZEVEDO, Eduardo; CONCI, Aura; LETA, Fabiana R. Computação Gráfica, volume 2: Teoria e Prática, 1ª edição. Editora Campus, 2007. ISBN-13 9788535223293.

  • SHIRLEY, Peter; MARSCHNER, Steve. Fundamentals of Computer Graphics. 5. ed. Boca Raton: A K Peters/CRC Press, 2021, ISBN ISBN-13 978-0367505035.

  • HUGHES, John F.; VAN DAM, Andries; MCGUIRE, Morgan; SKLAR, David F.; FOLEY, James D.; FEINER, Steven K.; AKELEY, Kurt. Computer Graphics: Principles and Practice. 3rd ed. Boston: Addison-Wesley, 2014, ISBN-13 978-0321399526.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • HEARN, Donald; BAKER, M. Pauline. Computer Graphics with OpenGL, 4th edition. Prentice Hall, 2010. ISBN-13: 978-0136053583

  • ZHANG, Kang; AMMERAAL, Leen. Computação Gráfica para Programadores Java, 2ª edição. Editora LTC, 2008. ISBN-13: 9788521616290

  • HETEM JR., Annibal. Computação Gráfica: Fundamentos de Informática. Editora LTC, 2006. ISBN-13: 9788521614777

  • Edward ANGEL, Dave SHREINER. Interactive Computer Graphics: A Top-Down Approach with Shader-Based OpenGL, 6th Edition. Addison-Wesley, 2011. ISBN-13: 978-0132545235

  • FOLEY, James D. VAN DAM, Andries; FEINER, Steven K.; HUGHES, John F. Computer Graphics – Principles and Practice in C, 2nd edition. Addison and Wesley, 1995. ISBN-13: 978-0201848403 (referência clássica)

  • DE BYL, Penny. Mathematics for Game Programming and Computer Graphics: Explore the essential mathematics for creating, rendering, and manipulating 3D virtual environments. Birmingham: Packt Publishing, 2022, ISBN-13 978-1801077330.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC451

Robótica Móvel Inteligente

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Introdução à Robótica Móvel Inteligente. Definição e histórico da robótica. Modelos matemáticos de robôs móveis. Cinemática e Dinâmica de Robôs Móveis. Modelos de locomoção e acionamento. Controle de movimento e planejamento de trajetórias. Sensoriamento e Percepção. Sensores para robôs móveis. Processamento e fusão de sensores. Localização e mapeamento. Navegação Autônoma. Planejamento de caminhos. Mapeamento e localização simultâneos (SLAM). Controle de navegação reativa e deliberativa. Inteligência Artificial e Aprendizado de Máquina para Robótica. Redes neurais aplicadas à robótica. Aprendizado por reforço em robôs móveis. Visão computacional para navegação autônoma. Arquiteturas Computacionais e Implementação. Middleware para robótica. Simulação e experimentação com robôs móveis. Integração de algoritmos e sensores em plataformas robóticas. Grupos de robôs. Cooperação.

 

  1. OBJETIVOS GERAIS

Compreender os princípios, técnicas e desafios do desenvolvimento e operação de robôs móveis autônomos, integrando conceitos fundamentais de robótica, visão computacional, aprendizado de máquina e inteligência artificial. Aplicar esses conhecimentos na concepção, implementação e controle de sistemas robóticos inteligentes, analisando e avaliando suas soluções em diferentes contextos e desafios do mundo real.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender os modelos matemáticos e os princípios de cinemática e dinâmica de robôs móveis. Analisar e aplicar algoritmos de planejamento de movimento e controle de navegação autônoma. Integrar sensores e processar dados para percepção do ambiente, utilizando técnicas de fusão sensorial e SLAM (Simultaneous Localization and Mapping). Desenvolver arquiteturas de software para robôs móveis. Aplicar métodos de inteligência artificial e aprendizado de máquina para melhorar a autonomia e a capacidade adaptativa dos robôs móveis. Projetar e implementar sistemas robóticos capazes de operar em ambientes dinâmicos e não estruturados, com aplicações em áreas como logística, segurança, monitoramento e veículos autônomos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MERO, Roseli Aparecida Francelin. Robótica móvel. 1. ed. LCT, 2017, ISBN-13  978-8521626411.

  • DUDEK, G.; JENKIN, M. Computational Principles of Mobile Robotics. 3. ed. Cambridge: Cambridge University Press, 2024. ISBN 978-1108736381.

  • MATARIC, Maja. Introdução à robótica. São Paulo: Blucher, Unesp, 1. ed., 2014. ISBN-13  978-8521208532

  • SIEGWART, Roland; NOURBAKHSH, Illah R.; outros. Introduction to Autonomous Mobile Robots. 2. ed. Cambridge: MIT Press, 2011. ISBN-13  978-0262015356.

  • MURPHY, Robin. Introduction to AI Robotics. 2. ed. Cambridge: MIT Press, 2019. ISBN-13 978-0262038485.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • ASADA, H.; SLOTINE, J.-J. E. Robot Analysis and Control. New York: John Wiley and Sons, 1986. ISBN-13 978-0471830290

  • FU, K. S.; GONZALEZ, R. C.; LEE, G. C. S. Robotics: Control, Sensing, Vision and Intelligence. New York: McGraw-Hill, 1987. ISBN-13  978-0070226258.

  • YOSHIKAWA, T. Foundations of Robotics: Analysis and Control. Cambridge: MIT Press, 1990. ISBN-13 978-0262240284

  • THRUN, Sebastian; BURGARD, Wolfram; FOX, Dieter. Probabilistic Robotics. Cambridge: MIT Press, 2005. ISBN-13 978-0262201629.

  • NEHMZOW, Ulrich. Mobile Robotics: A Practical Introduction. 2. ed. Springer Verlag, 2003. ISBN-13978-1852337261

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC452

Visão Computacional

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

             

  1. EMENTA

Introdução à Visão Computacional. História e evolução da área. Aplicações da Visão Computacional. Processamento de Imagens Digitais. Representação digital de imagens. Operações básicas de imagens. Filtros. Transformações geométricas. Técnicas de equalização de histograma. Segmentação de Imagens. Extração e Descrição de Características. Correspondência de características. Detecção e Reconhecimento de Objetos. Classificação de objetos. Redes neurais para reconhecimento de objetos. Localização e rastreamento de objetos em vídeos. Estimação de Movimento e Rastreamento. Fluxo ótico. Reconstrução 3D e Estéreo. Câmeras estéreo: calibração e correspondência de pontos. Reconstrução 3D usando múltiplas imagens. Redes Neurais Convolucionais. Arquitetura das CNNs. Treinamento de redes neurais para tarefas de visão. Transferência de aprendizado e pré-processamento de dados. Visão computacional explicativa, redes neurais generativas, redes adversariais (GANs).

 

  1. OBJETIVOS GERAIS

Desenvolver habilidades para implementar soluções computacionais voltadas à percepção visual, explorando abordagens como reconhecimento de padrões, segmentação e reconstrução tridimensional. Analisar e avaliar o uso de algoritmos avançados, incluindo redes neurais e aprendizado de máquina, em aplicações reais, como robótica, automação e sistemas de monitoramento.

 

  1. OBJETIVOS ESPECÍFICOS

Apresentar os fundamentos da Visão Computacional e do processamento de imagens digitais, incluindo operações básicas como filtragem, transformação e segmentação de imagens. Desenvolver competências no uso de redes neurais convolucionais (CNNs) e outros métodos de aprendizado profundo aplicados a tarefas de visão computacional, como classificação e detecção de objetos. Explorar técnicas de estimação de movimento e rastreamento de objetos, utilizando algoritmos como fluxo ótico e filtros de Kalman para análise de vídeos e sequências temporais. Introduzir conceitos de reconstrução 3D, abordando visão estéreo, calibração de câmeras e técnicas de mapeamento tridimensional para ambientes virtuais e robótica. Discutir as principais aplicações de visão computacional, como robótica autônoma, automação industrial, monitoramento de segurança e realidade aumentada.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • TRUCCO, Emanuele; VERRI, Alessandro. Introductory Techniques for 3-D Computer Vision. New Jersey: Prentice Hall, 1998. ISBN-13: 978-0132611084.

  • SZELISKI, Richard. Computer Vision: Algorithms and Applications. 2. ed. Springer, 2022. ISBN-13: 978-3030343712.

  • FORSYTH, David A.; PONCE, Jean. Computer Vision: A Modern Approach. 2. ed. Prentice Hall, 2015. ISBN-13: 978-0130851987.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • HORN, B. K. P. Robot Vision. MIT Press, 1986. ISBN-13: 978-0262081597.

  • SHAPIRO, Linda G.; STOCKMAN, George C. Computer Vision. Prentice Hall, 2001. ISBN-13: 978-0130307965.

  • FAUGERAS, O. Three-Dimensional Computer Vision: A Geometric Viewpoint. MIT Press, 1993. ISBN-13: 978-0262061582.

  • BALLARD, Dana; BROWN, Christopher. Computer Vision. Prentice Hall, 1982. ISBN-13: 978-0131653160.

  • GONZALEZ, Rafael C.; WOODS, Richard E. Digital Image Processing. 4ed. Reading: Addison Wesley, 2018. ISBN-13: 978-9353062989.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC453

Análise e Tratamento de Imagens e Vídeos Digitais

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Engenharia de Software

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Inteligência Artificial

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

Tecnologia da Informação

Eletiva

ICC003 Algoritmos e Estruturas de Dados II

 

  1. EMENTA

Introdução ao processamento de imagens e vídeos digitais. Propriedades das imagens, modelos de cores e modelos de ruído. Técnicas de tratamento e processamento de imagens, incluindo filtragem, transformações geométricas e operações morfológicas. Segmentação de imagens e vídeos. Extração e seleção de características. Introdução aos sistemas de reconhecimento de padrões estatísticos e classificação de imagens. Aprendizado supervisionado e não supervisionado aplicado ao processamento de imagens. Teorema de decisão Bayesiana, funções discriminantes e superfícies de decisão. Transformação afim e noções de profundidade de bits, resolução e Modulation Transfer Function (MTF). Introdução à análise de qualidade de imagens. Aplicações em visão computacional e recuperação de informação a partir de imagens e vídeos.

 

  1. OBJETIVOS GERAIS

Conhecer ferramentas utilizadas no tratamento de imagens e vídeos digitais. Utilizar técnicas para aprimorar o desenvolvimento de sistemas computacionais que tratem e processem dados de imagens e vídeos digitais. Investigar as tendências mais recentes em relação a problemas de aplicação.

 

  1. OBJETIVOS ESPECÍFICOS

Implementar algoritmos para filtragem, transformação e segmentação de imagens. Aplicar técnicas de reconhecimento de padrões e aprendizado de máquina para classificação de imagens e vídeos. Comparar diferentes modelos de cores e técnicas de extração de características. Avaliar o impacto de operações morfológicas e transformação afim na manipulação de imagens. Explorar ferramentas e bibliotecas para processamento de imagens, como OpenCV e MATLAB. Analisar aplicações práticas do processamento de imagens em áreas como biometria, medicina e segurança digital.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • PEDRINI, H. & SCHWARTZ, W.R. Análise de Imagens e Vídeos Digitais: Princípios, Algoritmos e Aplicações. Thomson Learning, 2007 ISBN-13: 978-8522105953.

  • GONZALEZ, R.C. & WOODS, R.E. Digital Image Processing, 4th edition. Pearson, 2019. ISBN-13: 978-9353062989.

  • BISHOP, Christopher. Pattern Recognition and Machine Learning. Springer, 2006. ISBN-13: 978-0387310732.

  • THEODORIDIS, Sergios & KOUTROUMBAS, Konstantinos. Pattern Recognition, 4a edição. Academic Press, 2008. ISBN-13: 978-1597492720.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • GONZALEZ, R.C., WOODS, R.E & EDDINS, S.L. Digital Image Processing Using MATLAB. 3rd edition. Gatesmark Publishing, 2020​​. ISBN-13: 978-0982085417.

  • ADDISON, P.S. The Illustrated Laplace Transform Handbook: Introductory theory and applications in science, engineering, medicine and finance. Taylor & Francis, 2002. ISBN-13: 978-0750306928.

  • DUDA, R.O., HART, P.E. & STORK, D.G. Pattern Classification. Wiley Interscience, 2nd. Edition, 2001. ISBN-13: 978-0471056690.

  • GONZALEZ, R.C. & WOODS, R.E. Processamento de Imagens Digitais. 3a edição. Pearson Universidades. 2009. ISBN-13: 978-8576054016.

  • Maria PETROU; Costas PETROU. Image Processing: The Fundamentals, 2nd edition. Wiley, 2010. ISBN-13: 978-0470745861.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC454

Desenvolvimento de Jogos Digitais

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Engenharia de Software

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Inteligência Artificial

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Tecnologia da Informação

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

    

  1. EMENTA

Tópicos introdutórios ao desenvolvimento de jogos. Linguagens e arquitetura de jogos. Fundamentos de programação aplicados ao desenvolvimento de jogos. Design de Jogos e Mecânicas de Gameplay. Motores Gráficos e Ambientes de Desenvolvimento. Gráficos, Animação e Áudio para Jogos. Inteligência Artificial e Física para Jogos. Teste e avaliação de jogos.  Jogos massivos em rede.

 

  1. OBJETIVOS GERAIS

Projetar, desenvolver e implementar jogos digitais, aplicando conceitos de game design, programação, animação, inteligência artificial e métodos de engenharia de software, utilizando motores gráficos modernos. Criar jogos interativos e funcionais, compreendendo todo o processo de desenvolvimento, desde a concepção da ideia até a publicação, além de analisar tendências e desafios do mercado de jogos digitais.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender os conceitos fundamentais do desenvolvimento de jogos digitais, incluindo a história, gêneros e fases de produção de um jogo. Aplicar os princípios do design de jogos na criação de mecânicas, regras e interações envolventes para os jogadores. Implementar animações, física e inteligência artificial para criar comportamentos dinâmicos e realistas nos jogos. Projetar interfaces para garantir uma jogabilidade intuitiva e envolvente. Testar e depurar jogos digitais, identificando falhas e aplicando estratégias para otimização de desempenho.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RABIN, Steve. Introdução ao Desenvolvimento de Games - Entendendo o universo dos jogos,  2a. ed, Vol. 1, CENGAGE Learning, 2011. ISBN-13 978-8522111435.

  • RABIN, Steve. Introdução ao Desenvolvimento de Games - Programação Técnica, linguagem e arquitetura, 2a. ed, Vol. 2, CENGACE Learning, 2012. ISBN-13 978-8522111442.

  • PENTON, Ron. Data Structures for Game Programmers. The Premier Press 2003. ISBN-13 978-1931841948.

  • BUCKLAND, Mat. Programming Game AI by Example. Wordware Publishing 2005. ISBN-13 978-1556220784.

  • CONGER, David. Physics Modeling for Game Programmers. Muska & Lipman/Premier-Trade, 2004. ISBN 978-1592000937.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • FLYNT, John; VINSON, Benjamin. Simulation and Event Modeling for Game Developers. Muska & Lipman/Premier-Trade, 2005. ISBN-13 ‎ 978-1592008483.

  • WATT, Alan e Policarpo, Fabio. 3D Games: Real-Time Rendering and Software Technology, Volume 1. Addison Wesley, 2000. ISBN-13 978-0201619218.

  • PERUCIA, Alexandre Souza e Berthem, Antônio Cordova. Programação de Jogos Digitais. Editora Novatec, 2005. ISBN-13  978-8536527215.

  • COHEN, Marcelo, MANSSOUR, Isabel Harb. OpenGL - Uma abordagem prática e objetiva. Novatec. 2006. ISBN 978-8575220849

  • SHREINER, Dave, WOO, Mason, NEIDER, Jackson, DAVIS, Tom. OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 2.5. Addison-Wesley, 2005. ISBN-13 978-0134495491

  • MILLINGTON, Ian. Artificial Intelligence for Games. Morgan Kaufmann, 2006.  ISBN-13978-3319635187 

  • PAZERA , Ernest. Focus on SDL. The Premier Press 2003. ISBN-13 978-1592000302.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC455

Desenvolvimento de Jogos para Dispositivos Móveis

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Engenharia de Software

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Inteligência Artificial

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

Tecnologia da Informação

Eletiva

ICC002 Algoritmos e Estruturas de Dados I

 

  1. EMENTA

Sistemas Operacionais, ambientes de desenvolvimento e linguagens de programação para dispositivos móveis. Jogos eletrônicos para computador (games). Jogos em dispositivos móveis. Arquitetura dos games para dispositivos móveis. Matemática e Física para games. Áudio. Inteligência Artificial. Desenvolvimento em ambientes móveis. Estratégias. Loop de Controle do Game. Menus. Teste e avaliação do game. Lançamento e venda.

 

  1. OBJETIVOS GERAIS

Dominar técnicas gerais de desenvolvimento de jogos. Aplicar tais técnicas em ambientes de desenvolvimento os sistemas operacionais móveis. Compreender temas críticos para programadores de jogos como codificação de áudio, animação e otimização de aplicativos para sistemas operacionais de dispositivos móveis.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os principais conceitos, ferramentas e engines utilizados no desenvolvimento de jogos para dispositivos móveis. Compreender os princípios de design, usabilidade e experiência do usuário aplicados a jogos móveis. Aplicar técnicas de programação para implementar mecânicas de jogo interativas e responsivas em dispositivos móveis. Analisar requisitos de desempenho e otimização para garantir a fluidez e eficiência dos jogos em diferentes configurações de hardware. Avaliar estratégias de monetização, publicação e marketing para distribuição de jogos móveis em lojas de aplicativos. Desenvolver um jogo completo para dispositivos móveis, integrando elementos de design, mecânicas, otimização e monetização.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • MORRISON, Michael. Beginning Mobile Phone Game Programming, Sams Publishing, 2005.

  • ZECCHNER, Mario e GREEN, Robert. Beginning Android Games, 2a. ed, Apress, 2012. ISBN-13 978-1430246770.

  • MEHTA, Prateek. Learn OpenGL ES: For Mobile Game and Graphics Development. Apress, 2013. ISBN-13 978-1430250531.

  • LEITE, Anderson. Desenvolvimento de Jogos para Android: Explore sua imaginação com o framework Cocos2D, Casa do Código, 2012.

  • BERTSCHINGER, Guilherme Lage. Desenvolvimento de Jogos Eletrônicos – Teoria e Prática, NOVATEC, 2008. ISBN-13 9788575221228,

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC501

Simulação de Eventos Discretos

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

IEE001 Probabilidade e Estatística

Engenharia de Software

Eletiva

IEE001 Probabilidade e Estatística

Inteligência Artificial

Eletiva

IEE001 Probabilidade e Estatística

Tecnologia da Informação

Eletiva

IEE001 Probabilidade e Estatística

                                   

  1. EMENTA

Terminologia. Vantagens e desvantagens da simulação. Mecanismos de avanço no tempo. Princípios de modelagem. Métricas de desempenho. Modelos de sistemas de eventos discretos. Modelagem por simulação de eventos discretos. Geração de números aleatórios. Qualidades de um bom gerador.  Geração de Variáveis aleatórias discretas. Geração de variáveis aleatórias contínuas. Verificação e validação. Técnicas e erros mais comuns. Amostragem e coleta de dados. Identificação da distribuição teórica de probabilidades. Eliminação do estado transiente. Regras de parada. Métodos de análise. Projeto de experimentos. Estudos de casos.

 

  1. OBJETIVOS GERAIS

Capacitar o aluno a modelar, implementar e analisar sistemas dinâmicos discretos por meio de técnicas de simulação, permitindo a compreensão, experimentação e otimização de processos complexos em diferentes domínios.

 

  1. OBJETIVOS ESPECÍFICOS

Compreender os conceitos fundamentais da simulação de eventos discretos, diferenciando-a de outras abordagens de modelagem e simulação. Identificar os componentes e estruturas essenciais de um modelo de simulação, reconhecendo suas aplicações em diferentes áreas. Aplicar métodos de geração de números aleatórios e distribuições estatísticas para representar incertezas em modelos de simulação. Desenvolver modelos de simulação baseados em eventos, processos e atividades, utilizando abordagens adequadas para diferentes cenários. Avaliar a precisão e confiabilidade dos modelos simulados, aplicando testes de validação e verificação. Otimizar processos e cenários simulados, explorando técnicas para aprimorar o desempenho e eficiência dos sistemas modelados.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • CHWIF, Leonardo; MEDINA, Afonso Celso. Modelagem e Simulação de Eventos Discretos, 3ª edição. Editora do Autor, 2010. ISBN-13: 978-8590597834.

  • GONÇALVES, Marina Vargas Reis de Paula. Fundamentos de modelagem e simulação de eventos discretos. Curitiba: Inter Saberes, 2024. ISBN 9788522713462.

  • SOUZA, Antonio Carlos Zambroni; PINHEIRO, Carlos Alberto Murari. Introdução à modelagem, análise e simulação de sistemas dinâmicos. Rio de Janeiro: Interciência, 2008. ISBN-13: 978-8571931886.

  • LAW, Averill. Simulation Modeling and Analysis. McGraw Hill, 2014. 5ª Edição. ISBN-13: 978-0073401324.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BANKS, Jerry. Handbook of Simulation: Principles, Methodology, Advances, Applications, and Practice. Wiley-Interscience, 1998. 1ª Edição. ISBN-13: 978-0471134039.

  • BANKS, Jerry; CARSON, John S.; NELSON, Barry L.; NICOL, David M. Discrete-Event System Simulation. Prentice Hall, 2009. 5ª Edição. ISBN-13: 978-0136062127.

  • LEEMIS, L.M.; PARK, S.K. Discrete-Event Simulation: A First Course. Pearson Education, 2006. 1ª Edição. ISBN-13: 978-0131429178.

  • CLOSE, Charles M.; FREDERICK, Dean K.; NEWELL, Jonathan C. Modeling and Analysis of Dynamic Systems. Wiley, 2001. 3ª Edição. ISBN-13: 978-0471394426.

  • FREITAS FILHO, J. P. Introdução à Modelagem e Simulação de Sistemas com Aplicações em Arena. Editora Visual Books, 2008. 2ª Edição. ISBN-13: 978-8575022283.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC503

Verificação Formal de Software e Sistemas

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Conceitos básicos em complexidade computacional de problemas e algoritmos. Computabilidade e complexidade: Problema da Parada: tese de Church-Turing. Máquina de Turing e problemas Indecidíveis x Intratáveis. Problemas NPxP, NP-completos x NP-difíceis. Problema da Satisfatibilidade. Lógica Formal e Autômatos. Lógica Temporal; Algoritmos de enumeração explícita e implícita. Algoritmos aproximativos, heurísticas. Algoritmos de verificação de modelo. Algoritmos de verificação simbólica. Teorias do módulo da satisfatibilidade. Teoria de automata temporizado. Especificação com lógica temporal. Propriedades de Alcançabilidade. Segurança, vivacidade, bloqueio fatal, fairness, justiça. Métodos de abstração de modelos. Síntese indutiva guiada por contra-exemplo. Ferramentas de verificação: SMV, SPIN, DESIGN/CPN, UPPAAL, KRONOS, HYTECH, ESBMC, CBMC, CPAChecker. Noções de aritmética intervalar. Noções de programação por restrições CSP/CP. Algoritmos contratores de domínio de variáveis. Ferramenta IBEX.

 

  1. OBJETIVOS GERAIS

Especificar, verificar e sintetizar sistemas de hardware e software. Identificar noções de linguagens formais e autômatos, complexidade e estratégias algorítmicas de verificação e síntese. Descrever processos de síntese, verificação, validação e teste de software, com ênfase em estratégias, técnicas, critérios e ferramentas que podem ser aplicados na construção de software.

 

  1. OBJETIVOS ESPECÍFICOS

Modelar problemas  e classificar problemas de acordo com sua complexidade, diferenciando entre NPxP, NP-completos e NP-difíceis. Analisar o problema da Satisfatibilidade (SAT) e suas implicações na verificação formal de sistemas. Aplicar lógica formal e autômatos para especificar propriedades e comportamentos de sistemas. Explorar estratégias algorítmicas  tanto de enumeração explícita quanto implícita, via programação matemática ou algoritmos combinatórios, para modelar e verificar propriedades de sistemas. Utilizar métodos de abstração de modelos e síntese indutiva guiada por contra-exemplo para melhorar a eficiência da verificação. Desenvolver soluções usando ferramentas de verificação como ESBMC, SMV, SPIN, CBMC, e outras, para realizar a verificação formal de software e sistemas. Avaliar a confiabilidade, integridade, segurança e outras propriedades críticas, como fairness e justiça, aplicando algoritmos de verificação de modelo. Implementar teorias do módulo da satisfatibilidade e algoritmos de verificação simbólica para tratar de problemas de sistemas complexos. Explorar algoritmos aproximativos e heurísticas para resolver problemas onde a verificação exata não é viável. Aplicar noções de aritmética intervalar e programação por restrições (CSP/CP) para verificação de sistemas com variáveis contínuas. Utilizar ferramentas como IBEX e algoritmos contratores para verificar sistemas com restrições complexas de domínio de variáveis.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • SIPSER, Michael. Introdução à Teoria da Computação. Thomson Learning, 2007. ISBN  978-8522104994.

  • CLARKE, Edmund M.; GRUMBERG, Orna; PELED, Doron A; VEITH, Helmut. Model Checking, 2nd. Cambridge: MIT Press, 2018. ISBN  978-0262038836.

  • BAIER, Christel; KATOEN, Joost-Pieter. Principles of Model Checking. The MIT Press, 2008. ISBN 978-0262026499

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BERARD, B.; BIDOIT, M.; FINKEL, A; LAROUSSINIE, F. Systems and Software Verification: Model-Checking Techniques and Tools. Springer, 2001. ISBN 978-3540415237

  • BIERE, A. Bounded model checking. In Handbook of Satisfiability, 2nd. IOS Press, 2021. ISBN 978-1643681603

  • GAREY, Michael R.; JOHNSON, David S. Computers and Intractability: A Guide to the Theory of NP-completeness. Mathematical Sciences Series. W. H. Freeman, 1979. ISBN  978-0716710455.

  • ROSSI,  Francesca; VAN BEEK, PETER; WALSH, Toby. Handbook of Constraint Programming (Foundations of Artificial Intelligence). Elsevier Science, 2006. ISBN 978-0444527264

  • SIPSER, Michael. Introdução à Teoria da Computação. Thomson Learning, 2007. ISBN  978-8522104994

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC504

Técnicas para Verificação, Síntese e Teste de Software

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Visão geral sobre raciocínio automático na verificação formal, síntese e teste de software. Revisão de técnicas de otimização envolvendo algoritmos bioinspirados e meta-heurísticas em geral, como Algoritmos Genéticos e variações, Busca Tabu, Simulated Annealing, GRASP e outros. Revisão de técnicas de inteligência artificial moderna como aprendizado de máquina (não)supervisionado, por reforço, redes neurais e aprendizado profundo. Aplicações na especificação, verificação, síntese e teste de software.

 

  1. OBJETIVOS GERAIS

Aplicar técnicas computacionais de otimização e inteligência artificial em processos de verificação, síntese e teste de software. Aplicar modelos e técnicas de aprendizado de máquina, redes neurais, aprendizado profundo para refinar e otimizar a especificação, verificação, síntese ou teste de software.

 

  1. OBJETIVOS ESPECÍFICOS

Explicar o conceito de raciocínio automático e sua relevância no contexto da verificação formal de software. Explorar algoritmos bioinspirados, como Algoritmos Genéticos, Simulated Annealing, GRASP, e Busca Tabu, e sua aplicabilidade em problemas de otimização no teste e verificação de software. Demonstrar a utilização de técnicas de aprendizado de máquina (supervisionado, não supervisionado,  por reforço, por (auto)atenção, IA generativa, etc.) na síntese, verificação, teste,  correção e transformação de software. Identificar as diferenças entre verificação formal, teste de software e síntese automática, bem como suas inter-relações. Utilizar técnicas de otimização combinatória para melhorar a eficiência e a precisão na verificação e teste de software. Implementar estratégias envolvendo métodos híbridos bioinspirados, de programação matemática e de aprendizado de máquina para solucionar problemas reais na verificação e síntese de software. Desenvolver protótipos de ferramentas que integrem técnicas de IA, raciocínio automático e otimização em processos de teste e verificação de software. Explorar aplicações de técnicas de verificação e síntese automática em sistemas críticos, com foco em segurança e confiabilidade.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • RUSSELL, Stuart J.; NORVIG, Peter. Inteligência artificial: uma abordagem moderna. 4ed. Rio de Janeiro: Grupo GEN, 2022. ISBN  978-8595158870

  • TALBI, El-Ghazali. Metaheuristics: From Design to Implementation. Hoboken: John Wiley & Sons, 2009. ISBN  978-0470278581

  • GOLDBARG, Elizabeth Ferreira; GOLDBARG, Marco Cesar; LUNA, Henrique Pacca Loureiro. Otimização Combinatória e Meta-Heurísticas: Algoritmos e Aplicações. 1. ed. Rio de Janeiro: LTC, 2015. ISBN  978-8535278125

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • PAPADIMITRIOU, Christos H.; STEIGLITZ, Kenneth. Combinatorial Optimization: Algorithms and Complexity. Dover Publications, 1998. ISBN  978-0486402581

  • CLARKE, Edmund M.; GRUMBERG, Orna; PELED, Doron A; VEITH, Helmut. Model Checking, 2nd. Cambridge: MIT Press, 2018. ISBN  978-0262038836

  • BAIER, Christel; KATOEN, Joost-Pieter. Principles of Model Checking. The MIT Press, 2008. ISBN 978-0262026499

  • BERARD, B.; BIDOIT, M.; FINKEL, A; LAROUSSINIE, F. Systems and Software Verification: Model-Checking Techniques and Tools. Springer, 2001. ISBN 978-3540415237

  • BIERE, A. Bounded model checking. In Handbook of Satisfiability, 2nd. IOS Press, 2021. ISBN 978-1643681603

  • ROSSI,  Francesca; VAN BEEK, PETER; WALSH, Toby. Handbook of Constraint Programming (Foundations of Artificial Intelligence). Elsevier Science, 2006. ISBN 978-0444527264

  • SIPSER, Michael. Introdução à Teoria da Computação. Thomson Learning, 2007. ISBN  978-8522104994

  • GAREY, Michael R.; JOHNSON, David S. Computers and Intractability: A Guide to the Theory of NP-completeness. Mathematical Sciences Series. W. H. Freeman, 1979. ISBN  978-0716710455

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC550

Tópicos Especiais em Pesquisa em Educação em Computação I

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Estudo de temas emergentes em Pesquisa em Educação em Computação, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Identificar a amplitude de tópicos de pesquisa no domínio da Educação em Computação, incluindo filosofias, pesquisas empíricas e projetos de sistemas. Avaliar os diferentes métodos de pesquisa utilizados na área, bem como seus pontos fortes e limitações. Descrever questões abertas e debates na área. Desenvolver uma proposta de pesquisa sobre um tema em aberto no domínio da Educação em Computação.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais questões e desafios na Educação em Computação, com base na literatura científica atual. Explorar metodologias qualitativas, quantitativas e mistas usadas em pesquisas na área de educação em Computação. Propor perguntas de pesquisa relevantes para a área de Educação em Computação, embasadas em lacunas e oportunidades identificadas na literatura. Avaliar criticamente estudos empíricos e teóricos em Educação em Computação, considerando sua metodologia e contribuições para o campo. Desenvolver projetos de pesquisa que investiguem práticas pedagógicas e o uso de tecnologias no ensino de Computação. Criar instrumentos de avaliação para medir a eficácia de estratégias de ensino em Computação, como questionários, entrevistas e experimentos controlados. Discutir questões éticas e de diversidade no ensino de Computação, incluindo aspectos de inclusão e equidade em ambientes de ensino.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FINCHER, Sally A.; ROBINS, Anthony V. (Eds.). The Cambridge Handbook of Computing Education Research. Cambridge: Cambridge University Press, 2019. ISBN 978-1108721899.

  • GASEVIC, Dragan; MERCERON, Agathe. The Handbook of Learning Analytics. 2. ed. 2022. Disponível em: https://www.solaresearch.org/publications/hla-22. Acesso em: 24 de mai. de 2024.

  • JAQUES, Patrícia A.; PIMENTEL, Mariano; SIQUEIRA, Sean. Metodologia de Pesquisa Científica em Informática na Educação: Concepção de Pesquisa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-1/. Acesso em: 24 de mai. de 2024. v. 1.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • JAQUES, Patrícia A.; PIMENTEL, Mariano; SIQUEIRA, Sean; BITENCOURT, Ig. Metodologia de Pesquisa Científica em Informática na Educação: Abordagem Quantitativa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-2/. Acesso em: 24 de mai. de 2024. v. 2.

  • PIMENTEL, Mariano; SANTOS, Edméa Oliveira. Metodologia de Pesquisa Científica em Informática na Educação: Abordagem Qualitativa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-3/. Acesso em: 24 de mai. de 2024. v. 3.

  • JOHNSON, Robert B.; CHRISTENSEN, Larry B. Educational Research: Quantitative, Qualitative, and Mixed Approaches, 8th ed. SAGE Publications, 2024. ISBN 978-1071965818.

  • NIEMI, David; PEA, Roy D.; SAXBERG, Bror; CLARK, Richard E. Learning Analytics in Education. Information Age Publishing, 2018. ISBN 978-1641133708

  • MOUGIAKOU, Sofia; VINATSELLA, Dimitra; SAMPSON, Demetrios; PAPAMITSIOU, Zacharoula; GIANNAKOS, Michail; IFENTHALER, Dirk. Educational Data Analytics for Teachers and School Leaders (Advances in Analytics for Learning and Teaching). Springer, 2023. ISBN 978-3031152658

  • SRINIVASA K G; KURNI, Muralidhar. A Beginner’s Guide to Learning Analytics (Advances in Analytics for Learning and Teaching). Springer, 2021. ISBN 978-3030702601

  • SAHIN, Muhittin; IFENTHALER, Dirk. Visualizations and Dashboards for Learning Analytics (Advances in Analytics for Learning and Teaching). Springer, 2021. ISBN 978-3030812218

  • VON DAVIER, Alina A.; MISLEVY, Robert J.; HAO, Jiangang. Computational Psychometrics: New Methodologies for a New Generation of Digital Learning and Assessment: With Examples in R and Python (Methodology of Educational Measurement and Assessment). Springer, 2021. ISBN 978-3030743963.

  • HALL, Cristina; MATTOX II, John R.; PARSKEY, Peggy. Learning Analytics: Using Talent Data to Improve Business Outcomes, 2nd ed. Kogan Page, 2020. ISBN 978-1789663006

  • Repositórios de periódicos e conferências na área de Educação em Computação, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC551

Tópicos Especiais em Pesquisa em Educação em Computação II

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Eletiva

Engenharia de Software

Eletiva

Inteligência Artificial

Eletiva

Tecnologia da Informação

Eletiva

 

  1. EMENTA

Estudo de temas emergentes em Pesquisa em Educação em Computação, a critério do(a) docente.

 

  1. OBJETIVOS GERAIS

Identificar a amplitude de tópicos de pesquisa no domínio da Educação em Computação, incluindo filosofias, pesquisas empíricas e projetos de sistemas. Avaliar os diferentes métodos de pesquisa utilizados na área, bem como seus pontos fortes e limitações. Descrever questões abertas e debates na área. Desenvolver uma proposta de pesquisa sobre um tema em aberto no domínio da Educação em Computação.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar as principais questões e desafios na Educação em Computação, com base na literatura científica atual. Explorar metodologias qualitativas, quantitativas e mistas usadas em pesquisas na área de educação em Computação. Propor perguntas de pesquisa relevantes para a área de Educação em Computação, embasadas em lacunas e oportunidades identificadas na literatura. Avaliar criticamente estudos empíricos e teóricos em Educação em Computação, considerando sua metodologia e contribuições para o campo. Desenvolver projetos de pesquisa que investiguem práticas pedagógicas e o uso de tecnologias no ensino de Computação. Criar instrumentos de avaliação para medir a eficácia de estratégias de ensino em Computação, como questionários, entrevistas e experimentos controlados. Discutir questões éticas e de diversidade no ensino de Computação, incluindo aspectos de inclusão e equidade em ambientes de ensino.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FINCHER, Sally A.; ROBINS, Anthony V. (Eds.). The Cambridge Handbook of Computing Education Research. Cambridge: Cambridge University Press, 2019. ISBN 978-1108721899.

  • GASEVIC, Dragan; MERCERON, Agathe. The Handbook of Learning Analytics. 2. ed. 2022. Disponível em: https://www.solaresearch.org/publications/hla-22. Acesso em: 24 de mai. de 2024.

  • JAQUES, Patrícia A.; PIMENTEL, Mariano; SIQUEIRA, Sean. Metodologia de Pesquisa Científica em Informática na Educação: Concepção de Pesquisa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-1/. Acesso em: 24 de mai. de 2024. v. 1.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • JAQUES, Patrícia A.; PIMENTEL, Mariano; SIQUEIRA, Sean; BITENCOURT, Ig. Metodologia de Pesquisa Científica em Informática na Educação: Abordagem Quantitativa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-2/. Acesso em: 24 de mai. de 2024. v. 2.

  • PIMENTEL, Mariano; SANTOS, Edméa Oliveira. Metodologia de Pesquisa Científica em Informática na Educação: Abordagem Qualitativa. Porto Alegre: SBC, 2020. Disponível em: https://metodologia.ceie-br.org/livro-3/. Acesso em: 24 de mai. de 2024. v. 3.

  • JOHNSON, Robert B.; CHRISTENSEN, Larry B. Educational Research: Quantitative, Qualitative, and Mixed Approaches, 8th ed. SAGE Publications, 2024. ISBN 978-1071965818.

  • NIEMI, David; PEA, Roy D.; SAXBERG, Bror; CLARK, Richard E. Learning Analytics in Education. Information Age Publishing, 2018. ISBN 978-1641133708

  • MOUGIAKOU, Sofia; VINATSELLA, Dimitra; SAMPSON, Demetrios; PAPAMITSIOU, Zacharoula; GIANNAKOS, Michail; IFENTHALER, Dirk. Educational Data Analytics for Teachers and School Leaders (Advances in Analytics for Learning and Teaching). Springer, 2023. ISBN 978-3031152658

  • SRINIVASA K G; KURNI, Muralidhar. A Beginner’s Guide to Learning Analytics (Advances in Analytics for Learning and Teaching). Springer, 2021. ISBN 978-3030702601

  • SAHIN, Muhittin; IFENTHALER, Dirk. Visualizations and Dashboards for Learning Analytics (Advances in Analytics for Learning and Teaching). Springer, 2021. ISBN 978-3030812218

  • VON DAVIER, Alina A.; MISLEVY, Robert J.; HAO, Jiangang. Computational Psychometrics: New Methodologies for a New Generation of Digital Learning and Assessment: With Examples in R and Python (Methodology of Educational Measurement and Assessment). Springer, 2021. ISBN 978-3030743963.

  • HALL, Cristina; MATTOX II, John R.; PARSKEY, Peggy. Learning Analytics: Using Talent Data to Improve Business Outcomes, 2nd ed. Kogan Page, 2020. ISBN 978-1789663006

  • Repositórios de periódicos e conferências na área de Educação em Computação, tais como ACM Digital Library (https://dl.acm.org/), SBC-OpenLib da Sociedade Brasileira de Computação (https://sol.sbc.org.br/index.php/indice) e outras, a critério do(a) docente.

 

 

 

OPTATIVAS

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC900

Informática Instrumental

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Optativa

ICC150 Trabalho de Conclusão de Curso

Engenharia de Software

Optativa

ICC150 Trabalho de Conclusão de Curso

Inteligência Artificial

Optativa

ICC150 Trabalho de Conclusão de Curso

Tecnologia da Informação

Optativa

ICC150 Trabalho de Conclusão de Curso

 

  1. EMENTA

Conceitos Básicos de Informática: o computador, seus componentes e sua importância no mundo atual; ambientes operacionais; internet, computação em nuvem e ferramentas de busca. Ferramentas de Produtividade: ferramentas que auxiliam a organização e gerenciamento de seu tempo. Editores de Texto: softwares e regras ABNT para a correta formatação de trabalhos acadêmicos. Editores de Apresentação: requisitos para uma boa apresentação de um trabalho acadêmico e os principais softwares disponíveis para este fim. Editores de Planilhas: principais funções disponíveis e utilização de recursos como ordenação e geração de gráficos.

 

  1. OBJETIVOS GERAIS

Compreender os fundamentos da informática e sua aplicabilidade no contexto acadêmico e profissional. Desenvolver habilidades no uso de ferramentas tecnológicas para melhorar a produtividade, organização e apresentação de trabalhos acadêmicos.

 

  1. OBJETIVOS ESPECÍFICOS

Reconhecer os componentes de um computador e seu funcionamento básico, além da importância da tecnologia no mundo atual. Explorar os principais ambientes operacionais e suas funcionalidades básicas. Utilizar a internet de forma eficiente, incluindo ferramentas de busca e soluções de computação em nuvem. Aplicar ferramentas de produtividade para gerenciar tempo e tarefas. Formatar trabalhos acadêmicos de acordo com as normas ABNT utilizando editores de texto. Elaborar apresentações acadêmicas com base em boas práticas de design e conteúdo, utilizando editores de apresentação. Manipular dados em planilhas eletrônicas, utilizando funções, ordenação e geração de gráficos para análise de informações.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FERREIRA, M. C. Informática Aplicada. 3. ed. São Paulo: Saraiva, 2017. E-book.

  • FILHO, P. A. B.; MARÇULA, M. Informática. 5. ed. São Paulo: Editora Érica, 2019. E-book.

  • VELLOSO, F. C. Informática Conceitos Básicos, 10 ed. Rio de Janeiro: Campus, 2017.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • AKABANE, G. K.; POZO, H. Inovação, Tecnologia e Sustentabilidade. São Paulo: Editora Érica, 2020. E-book.

  • FERREIRA, M. C. Excel 2019. São Paulo: Saraiva, 2021. E-book.

  • GUILHEN, B. A. Saberes do Direito 54 - Informática. São Paulo: SARAIVA, 2015. E-book.

  • GUIMARÃES, L. D. S.; MATTO, J. R. L. D. Gestão da Tecnologia e Inovação. 2. ed. São Paulo: Saraiva, 2015. E-book.

  • INTERNET e sociedade. Rio de Janeiro, RJ: Fundação Konrad Adenauer Stiftung, 2015. 204 p. (Cadernos Adenauer ; v.16, n. 3). ISBN 9788575041949.

  • MATTAR NETO, J. A. Metodologia Científica na era Digital. 4ed. São Paulo: Saraiva, 2017. E-book.

  • TAMASHIRO, C. B. O.; SANT´ANNA, G. J. TCC a Distância. São Paulo: Saraiva, 2021. E-book.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC901

Introdução à Programação de Computadores

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Optativa

ICC150 Trabalho de Conclusão de Curso

Engenharia de Software

Optativa

ICC150 Trabalho de Conclusão de Curso

Inteligência Artificial

Optativa

ICC150 Trabalho de Conclusão de Curso

Tecnologia da Informação

Optativa

ICC150 Trabalho de Conclusão de Curso

 

  1. EMENTA

1.   Introdução à construção de algoritmos; tipos de dados (inteiros, reais, lógicos, strings, etc.).

2.   Operadores e expressões aritméticas, operadores relacionais, operadores e expressões lógicas.

3.   Estrutura de programação sequencial: variáveis; identificadores; operadores de atribuição; entrada e saída de dados; erros de sintaxe e de lógica.

4.   Estruturas de controle condicional: condicional simples (if-then); condicional composta (if-then-else); comandos condicionais encadeados; comando de seleção.

5.   Estruturas de repetição: repetição por condição; repetição por contagem.

6.   Estruturas de dados básicas como, por exemplo, listas, vetores, matrizes, dicionários, etc.

 

  1. OBJETIVOS GERAIS

Auxiliar os alunos a aprenderem a resolver problemas algorítmicos. Oferecer a capacidade de elaborar, verificar e implementar algoritmos em uma linguagem de programação de alto nível. Ao final da disciplina os alunos deverão estar aptos a elaborar programas para manipular estruturas de dados básicas armazenadas em memória principal.

 

  1. OBJETIVOS ESPECÍFICOS

Utilizar um ambiente de desenvolvimento de código de programação, compilando e executando códigos em uma linguagem de programação; avaliar e aplicar estruturas condicionais e de repetição para controlar o fluxo de programas; manipular estruturas de dados simples; interpretar problemas de programação e desenvolver programas para resolvê-los.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, N. N. C. Introdução à Programação com Python, 4ed. Novatec, 2024.

  • FORBELLONE, A. L. V.; EBERSPÄCHER, H. F. Lógica de Programação, 4ed.Bookman, 2022.

  • SOUZA, M. A. F.; GOMES, M.; SOARES, M. V.; CONCILIO, R. Algoritmos e Lógica de Programação, 3 ed. São Paulo: Cengage, 2019.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BHARGAVA, A. Y. Entendendo Algoritmos: Um Guia Ilustrado Para Programadores e Outros Curiosos. 1 ed. Novatec, 2017.

  • PIVA JÚNIOR, D. et al. Algoritmos e programação de computadores. 2a ed GEN LTC, 2019.

  • HORSTMANN, C.; NECAISE, R. D. Python for Everyone. 3ed John Wiley & Sons, 2019.

  • HETLAND, M. L. Beginning Python: From Novice to Professional, 3 ed. Apress, 2017.

  • MANZANO, J.A.N.G; OLIVEIRA, J.F. Algoritmos: Lógica Para Desenvolvimento de Programação de Computadores. 29 ed Editora Érica, 2019.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC903

Geração e Uso de Banco de Dados

3.3.0.0

45h

0h

0h

45h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Optativa

ICC150 Trabalho de Conclusão de Curso

Engenharia de Software

Optativa

ICC150 Trabalho de Conclusão de Curso

Inteligência Artificial

Optativa

ICC150 Trabalho de Conclusão de Curso

Tecnologia da Informação

Optativa

ICC150 Trabalho de Conclusão de Curso

 

  1. EMENTA

Conceitos básicos. Organização de dados. Modelagem de dados. Modelos de dados. Projeto e implementação de base de dados. Sistemas de recuperação de base de dados.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos fundamentais de bancos de dados e sua importância no contexto da Computação. Analisar os princípios de organização e modelagem de dados para aplicações diversas. Aplicar técnicas de projeto e implementação de bases de dados em cenários reais. Avaliar sistemas de recuperação de dados e sua eficiência em diferentes contextos.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os conceitos básicos de bancos de dados, como entidades, atributos e relacionamentos. Comparar diferentes modelos de dados, como relacional, NoSQL e orientado a objetos. Projetar esquemas de bancos de dados utilizando ferramentas de modelagem. Implementar bases de dados em sistemas de gerenciamento (SGBDs). Validar a integridade e consistência dos dados por meio de normalização e restrições. Operar comandos de consulta e manipulação de dados (SQL ou linguagens equivalentes). Examinar técnicas de recuperação de dados, incluindo backup, restauração e tolerância a falhas. Resolver problemas práticos relacionados ao desempenho e otimização de consultas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • DATE, C. J. Bancos de Dados: introdução aos Sistemas de Bancos de Dados. Rio de Janeiro: Editora Campus, 1994.

  • DATE, C. J. Introdução a Sistemas de Bancos de Dados. 4ed. Rio de Janeiro: Ed. Campus, 1991.

  • KORTH, H. F.; SILBERSCHATZ,A. Sistemas de Banco de Dados. São Paulo: McGraw-Hill, 1993.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • DATE, C. J. Bancos de Dados: tópicos avançados. Rio de Janeiro: Ed. Campus, 1988.

  • DATE, C. J. Guia para o Padrão SQL. Rio de Janeiro: Ed. Campus, 1989.

  • MACHADO, Felipe Nery R., ABREU, Mauricio. Projeto de Banco de Dados. 3. ed. São Paulo: Érica, 1996.

  • SETZER, Valdemar W. Bancos de Dados: conceitos e modelos. São Paulo: Ed. Edgard Blücher, 1989.

  • SETZER, Valdemar W. Banco de Dados: conceitos, modelos, gerenciadores, projeto lógico, projeto físico. São Paulo: Edgard Blucher, 1986.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEC037

Introdução à Programação de Computadores

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Optativa

ICC150 Trabalho de Conclusão de Curso

Engenharia de Software

Optativa

ICC150 Trabalho de Conclusão de Curso

Inteligência Artificial

Optativa

ICC150 Trabalho de Conclusão de Curso

Tecnologia da Informação

Optativa

ICC150 Trabalho de Conclusão de Curso

 

  1. EMENTA

1.   Introdução à construção de algoritmos; tipos de dados (inteiros, reais, lógicos, strings, etc.).

2.   Operadores e expressões aritméticas, operadores relacionais, operadores e expressões lógicas.

3.   Estrutura de programação sequencial: variáveis; identificadores; operadores de atribuição; entrada e saída de dados; erros de sintaxe e de lógica.

4.   Estruturas de controle condicional: condicional simples (if-then); condicional composta (if-then-else); comandos condicionais encadeados; comando de seleção.

5.   Estruturas de repetição: repetição por condição; repetição por contagem.

6.   Estruturas de dados básicas como, por exemplo, listas, vetores, matrizes, dicionários, etc.

 

  1. OBJETIVOS GERAIS

Auxiliar os alunos a aprenderem a resolver problemas algorítmicos. Oferecer a capacidade de elaborar, verificar e implementar algoritmos em uma linguagem de programação de alto nível. Ao final da disciplina os alunos deverão estar aptos a elaborar programas para manipular estruturas de dados básicas armazenadas em memória principal.

 

  1. OBJETIVOS ESPECÍFICOS

Utilizar um ambiente de desenvolvimento de código de programação, compilando e executando códigos em uma linguagem de programação; avaliar e aplicar estruturas condicionais e de repetição para controlar o fluxo de programas; manipular estruturas de dados simples; interpretar problemas de programação e desenvolver programas para resolvê-los.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, N. N. C. Introdução à Programação com Python, 4ed. Novatec, 2024.

  • FORBELLONE, A. L. V.; EBERSPÄCHER, H. F. Lógica de Programação, 4ed.Bookman, 2022.

  • SOUZA, M. A. F.; GOMES, M.; SOARES, M. V.; CONCILIO, R. Algoritmos e Lógica de Programação, 3 ed. São Paulo: Cengage, 2019.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BHARGAVA, A. Y. Entendendo Algoritmos: Um Guia Ilustrado Para Programadores e Outros Curiosos. 1 ed. Novatec, 2017.

  • PIVA JÚNIOR, D. et al. Algoritmos e programação de computadores. 2a ed GEN LTC, 2019.

  • HORSTMANN, C.; NECAISE, R. D. Python for Everyone. 3ed John Wiley & Sons, 2019.

  • HETLAND, M. L. Beginning Python: From Novice to Professional, 3 ed. Apress, 2017.

  • MANZANO, J.A.N.G; OLIVEIRA, J.F. Algoritmos: Lógica Para Desenvolvimento de Programação de Computadores. 29 ed Editora Érica, 2019.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEC048

Geração e Uso de Banco de Dados

3.3.0.0

45h

0h

0h

45h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Optativa

ICC150 Trabalho de Conclusão de Curso

Engenharia de Software

Optativa

ICC150 Trabalho de Conclusão de Curso

Inteligência Artificial

Optativa

ICC150 Trabalho de Conclusão de Curso

Tecnologia da Informação

Optativa

ICC150 Trabalho de Conclusão de Curso

 

  1. EMENTA

Conceitos básicos. Organização de dados. Modelagem de dados. Modelos de dados. Projeto e implementação de base de dados. Sistemas de recuperação de base de dados.

 

  1. OBJETIVOS GERAIS

Compreender os conceitos fundamentais de bancos de dados e sua importância no contexto da Computação. Analisar os princípios de organização e modelagem de dados para aplicações diversas. Aplicar técnicas de projeto e implementação de bases de dados em cenários reais. Avaliar sistemas de recuperação de dados e sua eficiência em diferentes contextos.

 

  1. OBJETIVOS ESPECÍFICOS

Definir os conceitos básicos de bancos de dados, como entidades, atributos e relacionamentos. Comparar diferentes modelos de dados, como relacional, NoSQL e orientado a objetos. Projetar esquemas de bancos de dados utilizando ferramentas de modelagem. Implementar bases de dados em sistemas de gerenciamento (SGBDs). Validar a integridade e consistência dos dados por meio de normalização e restrições. Operar comandos de consulta e manipulação de dados (SQL ou linguagens equivalentes). Examinar técnicas de recuperação de dados, incluindo backup, restauração e tolerância a falhas. Resolver problemas práticos relacionados ao desempenho e otimização de consultas.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • DATE, C. J. Bancos de Dados: introdução aos Sistemas de Bancos de Dados. Rio de Janeiro: Editora Campus, 1994.

  • DATE, C. J. Introdução a Sistemas de Bancos de Dados. 4ed. Rio de Janeiro: Ed. Campus, 1991.

  • KORTH, H. F.; SILBERSCHATZ,A. Sistemas de Banco de Dados. São Paulo: McGraw-Hill, 1993.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • DATE, C. J. Bancos de Dados: tópicos avançados. Rio de Janeiro: Ed. Campus, 1988.

  • DATE, C. J. Guia para o Padrão SQL. Rio de Janeiro: Ed. Campus, 1989.

  • MACHADO, Felipe Nery R., ABREU, Mauricio. Projeto de Banco de Dados. 3. ed. São Paulo: Érica, 1996.

  • SETZER, Valdemar W. Bancos de Dados: conceitos e modelos. São Paulo: Ed. Edgard Blücher, 1989.

  • SETZER, Valdemar W. Banco de Dados: conceitos, modelos, gerenciadores, projeto lógico, projeto físico. São Paulo: Edgard Blucher, 1986.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEC081

Introdução à Ciência dos Computadores

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Optativa

ICC150 Trabalho de Conclusão de Curso

Engenharia de Software

Optativa

ICC150 Trabalho de Conclusão de Curso

Inteligência Artificial

Optativa

ICC150 Trabalho de Conclusão de Curso

Tecnologia da Informação

Optativa

ICC150 Trabalho de Conclusão de Curso

 

  1. EMENTA

1.   Introdução à construção de algoritmos; tipos de dados (inteiros, reais, lógicos, strings, etc.).

2.   Operadores e expressões aritméticas, operadores relacionais, operadores e expressões lógicas.

3.   Estrutura de programação sequencial: variáveis; identificadores; operadores de atribuição; entrada e saída de dados; erros de sintaxe e de lógica.

4.   Estruturas de controle condicional: condicional simples (if-then); condicional composta (if-then-else); comandos condicionais encadeados; comando de seleção.

5.   Estruturas de repetição: repetição por condição; repetição por contagem.

6.   Estruturas de dados básicas como, por exemplo, listas, vetores, matrizes, dicionários, etc.

 

  1. OBJETIVOS GERAIS

Auxiliar os alunos a aprenderem a resolver problemas algorítmicos. Oferecer a capacidade de elaborar, verificar e implementar algoritmos em uma linguagem de programação de alto nível. Ao final da disciplina os alunos deverão estar aptos a elaborar programas para manipular estruturas de dados básicas armazenadas em memória principal.

 

  1. OBJETIVOS ESPECÍFICOS

Utilizar um ambiente de desenvolvimento de código de programação, compilando e executando códigos em uma linguagem de programação; avaliar e aplicar estruturas condicionais e de repetição para controlar o fluxo de programas; manipular estruturas de dados simples; interpretar problemas de programação e desenvolver programas para resolvê-los.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • MENEZES, N. N. C. Introdução à Programação com Python, 4ed. Novatec, 2024.

  • FORBELLONE, A. L. V.; EBERSPÄCHER, H. F. Lógica de Programação, 4ed.Bookman, 2022.

  • SOUZA, M. A. F.; GOMES, M.; SOARES, M. V.; CONCILIO, R. Algoritmos e Lógica de Programação, 3 ed. São Paulo: Cengage, 2019.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • BHARGAVA, A. Y. Entendendo Algoritmos: Um Guia Ilustrado Para Programadores e Outros Curiosos. 1 ed. Novatec, 2017.

  • PIVA JÚNIOR, D. et al. Algoritmos e programação de computadores. 2a ed GEN LTC, 2019.

  • HORSTMANN, C.; NECAISE, R. D. Python for Everyone. 3ed John Wiley & Sons, 2019.

  • HETLAND, M. L. Beginning Python: From Novice to Professional, 3 ed. Apress, 2017.

  • MANZANO, J.A.N.G; OLIVEIRA, J.F. Algoritmos: Lógica Para Desenvolvimento de Programação de Computadores. 29 ed Editora Érica, 2019.

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IEC111

Informática Instrumental

3.2.1.0

30h

30h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Optativa

ICC150 Trabalho de Conclusão de Curso

Engenharia de Software

Optativa

ICC150 Trabalho de Conclusão de Curso

Inteligência Artificial

Optativa

ICC150 Trabalho de Conclusão de Curso

Tecnologia da Informação

Optativa

ICC150 Trabalho de Conclusão de Curso

 

  1. EMENTA

Conceitos Básicos de Informática: o computador, seus componentes e sua importância no mundo atual; ambientes operacionais; internet, computação em nuvem e ferramentas de busca. Ferramentas de Produtividade: ferramentas que auxiliam a organização e gerenciamento de seu tempo. Editores de Texto: softwares e regras ABNT para a correta formatação de trabalhos acadêmicos. Editores de Apresentação: requisitos para uma boa apresentação de um trabalho acadêmico e os principais softwares disponíveis para este fim. Editores de Planilhas: principais funções disponíveis e utilização de recursos como ordenação e geração de gráficos.

 

  1. OBJETIVOS GERAIS

Compreender os fundamentos da informática e sua aplicabilidade no contexto acadêmico e profissional. Desenvolver habilidades no uso de ferramentas tecnológicas para melhorar a produtividade, organização e apresentação de trabalhos acadêmicos.

 

  1. OBJETIVOS ESPECÍFICOS

Reconhecer os componentes de um computador e seu funcionamento básico, além da importância da tecnologia no mundo atual. Explorar os principais ambientes operacionais e suas funcionalidades básicas. Utilizar a internet de forma eficiente, incluindo ferramentas de busca e soluções de computação em nuvem. Aplicar ferramentas de produtividade para gerenciar tempo e tarefas. Formatar trabalhos acadêmicos de acordo com as normas ABNT utilizando editores de texto. Elaborar apresentações acadêmicas com base em boas práticas de design e conteúdo, utilizando editores de apresentação. Manipular dados em planilhas eletrônicas, utilizando funções, ordenação e geração de gráficos para análise de informações.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • FERREIRA, M. C. Informática Aplicada. 3. ed. São Paulo: Saraiva, 2017. E-book.

  • FILHO, P. A. B.; MARÇULA, M. Informática. 5. ed. São Paulo: Editora Érica, 2019. E-book.

  • VELLOSO, F. C. Informática Conceitos Básicos, 10 ed. Rio de Janeiro: Campus, 2017.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • AKABANE, G. K.; POZO, H. Inovação, Tecnologia e Sustentabilidade. São Paulo: Editora Érica, 2020. E-book.

  • FERREIRA, M. C. Excel 2019. São Paulo: Saraiva, 2021. E-book.

  • GUILHEN, B. A. Saberes do Direito 54 - Informática. São Paulo: SARAIVA, 2015. E-book.

  • GUIMARÃES, L. D. S.; MATTO, J. R. L. D. Gestão da Tecnologia e Inovação. 2. ed. São Paulo: Saraiva, 2015. E-book.

  • INTERNET e sociedade. Rio de Janeiro, RJ: Fundação Konrad Adenauer Stiftung, 2015. 204 p. (Cadernos Adenauer; v.16, n. 3). ISBN 9788575041949.

  • MATTAR NETO, J. A. Metodologia Científica na era Digital. 4ed. São Paulo: Saraiva, 2017. E-book.

  • TAMASHIRO, C. B. O.; SANT´ANNA, G. J. TCC a Distância. São Paulo: Saraiva, 2021. E-book.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

IHP123

Língua Brasileira de Sinais B

4.4.0.0

60h

0h

0h

60h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Optativa

Engenharia de Software

Optativa

Inteligência Artificial

Optativa

Tecnologia da Informação

Optativa

 

  1. EMENTA

História da Educação do Deficiente Auditivo. Abordagens Metodológicas. Introdução à língua de Sinais. Estrutura Gramatical, Expressão Corporal. Dramatização e Música e a importância do seu papel para a comunidade surda. Legislação. Política de Educação Inclusiva.

 

  1. OBJETIVOS GERAIS

Conhecer a estrutura da Língua de Sinais nos níveis fonológicos e morfossintáticos, aplicando este conhecimento em situações sócio-comunicativas, no contexto profissional e das relações interpessoais.

 

  1. OBJETIVOS ESPECÍFICOS

Identificar os marcos históricos da educação de surdos no Brasil. Diferenciar as abordagens oralistas, gestuais e bilíngues no ensino de Libras. Aplicar os princípios básicos da estrutura gramatical da Libras em contextos comunicativos. Demonstrar expressões corporais e faciais adequadas para a sinalização. Utilizar a dramatização e a música como recursos pedagógicos no ensino de Libras. Interpretar as leis e políticas públicas que asseguram a inclusão educacional de surdos. Discutir os desafios e avanços na implementação da educação bilíngue para surdos.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • QUADROS, R. M. O Tradutor e Interprete de Língua Brasileira de Sinais. Brasília: SESP/MEC, 2004.

  • CASTRO, A. R.; CARVALHO, I. S. Comunicação por Língua Brasileira de Sinais. 3 ed. Brasília:  SENAC, 2005.

  • GESSER, A. Libras? Que Língua É Essa? Parábola, 2009.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • SACKS, O. Vendo Vozes: Uma Jornada pelo Mundo dos Surdos. Rio de Janeiro: Imago, 1990.

  • CAPOVILLA, F. C.; RAPHAEL, W. D. (Ed.). Enciclopédia da Língua de Sinais Brasileira: o Mundo do Surdo em Libras. São Paulo: EDUSP, 2011.

  • QUADROS, R. M.; CRUZ, C. R. Língua de Sinais: Instrumentos de Avaliação. Penso, 2011.

  • HONORA, M.; FRIZANCO, M. L. E. Livro Ilustrado de Língua Brasileira de Sinais. Ciranda Cultural, 2009. v. 1.

  • HONORA, M.; FRIZANCO, M. L. E. Livro Ilustrado de Língua Brasileira de Sinais. Ciranda Cultural, 2010. v. 2.

  • HONORA, M; FRIZANCO, M. L. E. Livro Ilustrado de Língua Brasileira de Sinais. Ciranda Cultural, 2011. v. 3.

 

 

 

DISCIPLINAS DE EXTENSÃO

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC600

Práticas Extensionistas em Computação I

12.0.0.12

0h

0h

180h

180h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

ICC001 Introdução à Computação

Engenharia de Software

Extensionista

ICC001 Introdução à Computação

Inteligência Artificial

Extensionista

ICC001 Introdução à Computação

Tecnologia da Informação

Extensionista

ICC001 Introdução à Computação

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC601

Práticas Extensionistas em Computação II

12.0.0.12

0h

0h

180h

180h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

ICC001 Introdução à Computação

Engenharia de Software

Extensionista

ICC001 Introdução à Computação

Inteligência Artificial

Extensionista

ICC001 Introdução à Computação

Tecnologia da Informação

Extensionista

ICC001 Introdução à Computação

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC602

Práticas Extensionistas em Computação III

12.0.0.12

0h

0h

180h

180h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

ICC001 Introdução à Computação

Engenharia de Software

Extensionista

ICC001 Introdução à Computação

Inteligência Artificial

Extensionista

ICC001 Introdução à Computação

Tecnologia da Informação

Extensionista

ICC001 Introdução à Computação

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC603

Práticas Extensionistas em Computação IV

12.0.0.12

0h

0h

180h

180h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

Engenharia de Software

Extensionista

Inteligência Artificial

Extensionista

Tecnologia da Informação

Extensionista

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC604

Práticas Extensionistas em Computação V

12.0.0.12

0h

0h

180h

180h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

Engenharia de Software

Extensionista

Inteligência Artificial

Extensionista

Tecnologia da Informação

Extensionista

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC605

Práticas Extensionistas em Computação VI

12.0.0.12

0h

0h

180h

180h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

Engenharia de Software

Extensionista

Inteligência Artificial

Extensionista

Tecnologia da Informação

Extensionista

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC606

Práticas Extensionistas em Computação VII

6.0.0.6

0h

0h

90h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

ICC001 Introdução à Computação

Engenharia de Software

Extensionista

ICC001 Introdução à Computação

Inteligência Artificial

Extensionista

ICC001 Introdução à Computação

Tecnologia da Informação

Extensionista

ICC001 Introdução à Computação

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC607

Práticas Extensionistas em Computação VIII

6.0.0.6

0h

0h

90h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

ICC001 Introdução à Computação

Engenharia de Software

Extensionista

ICC001 Introdução à Computação

Inteligência Artificial

Extensionista

ICC001 Introdução à Computação

Tecnologia da Informação

Extensionista

ICC001 Introdução à Computação

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC608

Práticas Extensionistas em Computação IX

6.0.0.6

0h

0h

90h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

ICC001 Introdução à Computação

Engenharia de Software

Extensionista

ICC001 Introdução à Computação

Inteligência Artificial

Extensionista

ICC001 Introdução à Computação

Tecnologia da Informação

Extensionista

ICC001 Introdução à Computação

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC609

Práticas Extensionistas em Computação X

6.0.0.6

0h

0h

90h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

ICC001 Introdução à Computação

Engenharia de Software

Extensionista

ICC001 Introdução à Computação

Inteligência Artificial

Extensionista

ICC001 Introdução à Computação

Tecnologia da Informação

Extensionista

ICC001 Introdução à Computação

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC610

Práticas Extensionistas em Computação XI

6.0.0.6

0h

0h

90h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

Engenharia de Software

Extensionista

Inteligência Artificial

Extensionista

Tecnologia da Informação

Extensionista

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC611

Práticas Extensionistas em Computação XII

6.0.0.6

0h

0h

90h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

Engenharia de Software

Extensionista

Inteligência Artificial

Extensionista

Tecnologia da Informação

Extensionista

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC612

Práticas Extensionistas em Computação XIII

6.0.0.6

0h

0h

90h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

Engenharia de Software

Extensionista

Inteligência Artificial

Extensionista

Tecnologia da Informação

Extensionista

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

 

Sigla

Disciplina

CR

Carga horária

T

P

E

TOTAL

ICC613

Práticas Extensionistas em Computação XIV

6.0.0.6

0h

0h

90h

90h

CR - Créditos; T - Teórico; P - Prático; E - Extensão

 

Pré-Requisitos

Curso

Modalidade

Pré-Requisito

Ciência da Computação

Extensionista

Engenharia de Software

Extensionista

Inteligência Artificial

Extensionista

Tecnologia da Informação

Extensionista

               

  1. EMENTA

Conceito de extensão universitária. Diretrizes para as ações de extensão. Tipologia das ações de extensão. Legislação nacional e da UFAM relacionadas à extensão. Caracterização das atividades de extensão universitária e a relação com a formação na área de Computação. Avaliação, planejamento e execução de atividades de extensão em Computação, tais como: organização e/ou promoção de cursos de divulgação científica, ou de atualização em áreas da Computação; organização e/ou promoção de congressos, seminários, mesas-redondas, semanas acadêmicas, simpósios, encontros, jornadas, palestras, conferências, feiras; desenvolvimento de software livre para a comunidade externa; tecnologias assistivas; outras atividades regulamentadas, a critério do docente responsável.

 

  1. OBJETIVOS GERAIS

Lembrar, ordenar dados e teorias, práticas e processos para realizar atividades de extensão sobre Computação. Traduzir, adaptar e ilustrar conhecimentos de Computação para diferentes tipos de audiência. Trabalhar em equipe de forma eficaz, respeitando e valorizando as diferenças. Desenvolver habilidades relacionadas à organização de eventos. Encontrar soluções pacíficas para desacordos e problemas interpessoais durante o trabalho em equipe e no relacionamento com o público externo. Considerar os resultados de diferentes ações e decisões sobre as atividades desenvolvidas. Planejar e aplicar estratégias para desenvolver atividades extensionistas em Computação, considerando as diversas limitações: tempo, prazos, recursos financeiros, espaço, logística, entre outras.

 

  1. OBJETIVOS ESPECÍFICOS

Analisar o impacto das atividades extensionistas na formação acadêmica, no desenvolvimento profissional e na comunidade. Planejar e organizar eventos científicos, tecnológicos e educacionais voltados à Computação, exercendo liderança e trabalho em equipe. Executar ações de extensão, como cursos, palestras, feiras, congressos e seminários, demonstrando comprometimento e respeito às diferenças. Desenvolver artefatos abertos (por exemplo, software livre, recursos educacionais abertos, entre outros) e tecnologias assistivas para atender demandas da sociedade, promovendo a inovação e a responsabilidade social. Avaliar a efetividade das atividades de extensão realizadas, considerando critérios éticos e impactos ambientais. Aplicar metodologias colaborativas para a implementação de projetos extensionistas, desenvolvendo empatia, adaptabilidade e resiliência.

 

  1. REFERÊNCIA BIBLIOGRÁFICA BÁSICA

  • BRASIL. Resolução nº 7, de 18 de dezembro de 2018. Estabelece as Diretrizes para a Extensão na Educação Superior Brasileira e regimenta o disposto na Meta 12.7 da Lei nº 13.005/201. 2018.

  • GONÇALVES, Nádia Gaiofatto; QUIMELLI, Gisele Alves de Sá (Orgs.). Princípios da extensão universitária: contribuições para uma discussão necessária. Curitiba: CRV Editora, 2016. 156 p. ISBN 978-8544411308.

  • MELLO, Cleyson de Moraes; ALMEIDA NETO, José Rogério Moura; PETRILLO, Regina Pentagna. Curricularização da Extensão Universitária: teoria e prática. 2. ed. Rio de Janeiro: Editora Processo, 2022.  ISBN ‎978-6589351955.

 

  1. REFERÊNCIA BIBLIOGRÁFICA COMPLEMENTAR

  • NEVES, Regina Da Silva Pina; MUNDIM, Carina Maia de Castro (Orgs.). Práticas Formativas na Extensão Universitária: Contribuições do Instituto de Ciências Exatas da Universidade de Brasília. Brasília: Paco Editorial, 2021. ISBN  978-6558402879.

  • FREIRE, Paulo. Extensão ou comunicação?. 18. ed. Rio de Janeiro, RJ: Paz e Terra, 2017. 127 p. ISBN 9788577531813.

  • COSTA, Margarete Terezinha de Andrade. Tecnologia assistiva: uma prática para a promoção dos direitos humanos. São Paulo: Editora Intersaberes, 2014. 310 p. ISBN  978-8522702046.

  • GALVÃO FILHO, Teófilo. Tecnologia Assistiva: um itinerário da construção da área no Brasil. Curitiba: CRV Editora, 2022. 146 p. ISBN  978-6525126807.

  • GONÇALVES, Hortência de Abreu. Manual de Projetos de Extensão universitária.  Editora Avercamp, 2008. ISBN  978-8589311403.

  • OLIVEIRA, Andrea. Extensão universitária como práxis dialógica. Curitiba: CRV Editora, 2022. 154 p. ISBN  978-6525141534.

 

 

 

 

ANEXO IV

NORMAS REGULAMENTARES DAS ATIVIDADES ACADÊMICO-CIENTÍFICO-CULTURAIS (AACC)

CAPÍTULO I

As Atividades Acadêmico-Científico-Culturais (AACC) constituem um componente obrigatório do curso de Bacharelado em Inteligência Artificial, com o objetivo de promover a formação integral dos estudantes por meio da articulação entre ensino, pesquisa e extensão. Este Apêndice estabelece as normas que regulamentam a realização, o aproveitamento e o registro das AACC no âmbito do curso, assegurando que tais atividades complementem a formação acadêmica com experiências práticas, reflexivas e interdisciplinares. As diretrizes aqui descritas buscam orientar alunos e coordenação quanto aos procedimentos de cadastro, comprovação, validação e contabilização das atividades, de modo a assegurar a qualidade e a transparência no processo de integralização curricular.

Art. 1º  As atividades complementares constituem-se em ações de ensino, pesquisa e extensão de caráter obrigatório a serem desenvolvidas pelo aluno no transcorrer do curso, visto que estas visam flexibilizar o currículo pleno do Curso e propiciar aos seus alunos a possibilidade de aprofundamento temático e interdisciplinar.

Art. 2º  As atividades complementares têm por escopo a ampliação e a complementação da base de conhecimentos, competências e habilidades do aluno do curso, mediante a realização de atividades e práticas extracurriculares, estudos independentes, participação em congressos, seminários, pesquisas, intervenções organizacionais e atividades de promoção da cidadania.

Art. 3º Essas atividades possibilitam ao aluno oportunidades para refletir e aprimorar os conteúdos teóricos discutidos em cada disciplina, estabelecendo uma interface entre teoria e realidade a partir das atividades complementares desenvolvidas a cada semestre.

Art. 4º  Além disso, as atividades complementares visam:

I - possibilitar ao aluno estabelecer uma relação entre as teorias dos conteúdos abordadas ao longo do curso e os aspectos observados no ambiente;

II - engajar os alunos em trabalhos de cunho comunitário, buscando desenvolver uma consciência cidadã e o enriquecimento da aprendizagem;

III - participação em projetos de consultoria organizacional, estágios extracurriculares e visitas técnicas às organizações de trabalho, desenvolvendo competências e percepções necessárias ao exercício da profissão;

IV - possibilitar acesso às dimensões culturais e científicas, através da participação em palestras, seminários, fóruns, conferências, congressos, treinamentos, semana de evento organizada pelo curso e em cursos de extensão universitária;

V - aprimorar e associar uma visão crítica e global da sociedade e das práticas em administração a partir da análise de filmes e livros indicados;

VI - desenvolver qualidade de vida, a partir da abrangência do conhecimento;

VII - promover a participação em trabalhos de pesquisa, produção do conhecimento e investigação científica;

VIII - Captar a realidade e transformar em trabalhos escritos, abordando temáticas que envolva o cotidiano da administração.

Art. 5º O aproveitamento das atividades complementares será realizado por meio do Sistema de Atividades Acadêmicas do Instituto de Computação, por meio do endereço eletrônico https://aacc.icomp.ufam.edu.br/entrar. Este sistema tem por objetivo auxiliar o aluno na entrada de documentos comprobatórios junto à Coordenação do curso, auxiliar a Coordenação no correto gerenciamento e controle das atividades lançadas em histórico, bem como possibilitar auditoria de todo o processo.

Art. 6º Cada Atividade Complementar solicitada deverá ser cadastrada para análise pela coordenação. Após a análise, o Coordenador de Curso irá realizar o lançamento no histórico acadêmico do aluno.

Art. 7º As Atividades Complementares, obrigatórias para a integralização do currículo pleno, serão desenvolvidas conforme o grupo de atividades descritas na tabela do anexo único desta Normatização.

Art. 8º As horas das Atividades Complementares serão contabilizadas até o limite máximo estabelecido na tabela abaixo para cada certificado apresentado na natureza da atividade identificada. Incentivamos os alunos a participarem das três modalidades – Ensino, Pesquisa e Extensão – ressaltando que, com exceção da categoria 1.2 Carga Horária Optativa Excedente (que admite apenas duas solicitações por aluno), não há restrição quanto à quantidade de certificados por categoria.

Art. 9º O processo de aproveitamento de uma determinada atividade realizada como Atividade Complementar seguirá as orientações abaixo:

I. ao ingressar no curso, o aluno se cadastra para obter um login e senha pessoal e intransferível.

II. em qualquer época do ano, o aluno cadastra as atividades realizadas, anexando cópia digital da documentação comprobatória exigida e selecionando a natureza da atividade conforme tabela abaixo. A documentação comprobatória deve ter o nome do aluno, período e horas de realização e descrição da atividade realizada.

III. a Coordenação do curso faz a análise das atividades enviadas pelo sistema, verificando os campos obrigatórios da documentação enviada pelo aluno e a natureza da atividade que o aluno enviou pelo sistema. As atividades em que forem detectadas discrepâncias serão indeferidas e devolvidas ao aluno, via Sistema, para as devidas correções.

IV. após análise, a Coordenação fará o lançamento das atividades complementares no histórico do aluno.

Artigo 10. O aproveitamento de ações de ensino, pesquisa e extensão não listadas na tabela será avaliado pelo Núcleo Docente Estruturante do Curso.

 ANEXO ÚNICO DA NORMATIZAÇÃO DE AACC

  1. ENSINO

Cód.

Atividade

Carga Horária Máxima

Documento Comprobatório

1.1

Participação em Monitoria

60h

Certificado de participação

1.2

Carga Horária Optativa Excedente

60h por disciplina (até o máximo de 2 disciplinas)

Histórico escolar, comprovando a aprovação na disciplina

1.3

Participação como aluno em treinamentos, cursos de nivelamento, mini-cursos, oficinas e certificações técnicas na área do curso, seja na modalidade presencial ou a distância

40h

Certificado de participação

1.4

Participação como instrutor em treinamentos, cursos de nivelamento, mini-cursos, oficinas e certificações técnicas na área do curso, seja na modalidade presencial ou a distância

60h

Certificado de participação

1.5

Curso de língua estrangeira

60h

Certificado de conclusão, ou certificado de proficiência devidamente reconhecido

  1. PESQUISA

Cód.

Atividade

Carga Horária Máxima

Documento Comprobatório

2.1

Autor principal de artigo científico publicado em anais de conferência da área do curso

30h

Artigo (versão digital) e declaração de aceite.

2.2

Autor principal de artigo científico publicado em periódico da área do curso.

60h

Artigo (versão digital) e declaração de aceite

2.3

Autor principal de capítulo de livro da área do curso

60h

Trabalho publicado (versão digital) e declaração de aceite

2.4

Premiação em trabalhos acadêmicos

10h

Certificado de premiação

2.5

Participação em projetos de pesquisa na área do curso, devidamente aprovados

60h

Certificado de conclusão

  1. EXTENSÃO

Cód.

Atividade

Carga Horária Máxima

Documento Comprobatório

3.1

Programa de Educação Tutorial – PET

60h

Certificado de participação

3.2

Participação em projetos institucionais de extensão

60h

Certificado de conclusão

3.3

Estágio extracurricular vinculado à área do curso

60h

Certificado de conclusão

3.4

Visita técnica a organizações

4h

Certificado de participação

3.5

Participação em eventos técnico-científicos na área do curso

20h

Certificado de participação

3.6

Organização de eventos técnico-científicos na área do curso

40h

Certificado de participação

3.7

Participação em competições de informática, tais como Maratona de Programação e Olimpíada Brasileira de Informática

60h

Certificado de participação

3.8

Participação em defesas de TCC

1h

Certificado de participação

3.9

Participação em defesas de mestrado

2h

Certificado de participação

3.10

Participação em defesas de doutorado

4h

Certificado de participação

3.11

Relatórios de livros e filmes indicados

2h

Apresentação do relatório da análise crítica do livro/filme, acompanhado da avaliação do professor

3.12

Produção de sistema computacional (software), desenvolvido individualmente ou em grupo

60h

Carta de descrição e aceitação do sistema computacional desenvolvido, por parte de representante legal do órgão atendido (empresa ou instituição)

3.13

Atividades de promoção da cidadania (promoção da igualdade étnica-racial, educação ambiental, direitos humanos)

10h

Certificado de participação

 

 

ANEXO V

NORMAS REGULAMENTARES DO TRABALHO DE CONCLUSÃO DE CURSO (TCC) 

 

O Trabalho de Conclusão de Curso (TCC) constitui uma etapa obrigatória do curso de Bacharelado em Inteligência Artificial da UFAM, voltada à aplicação dos conhecimentos adquiridos ao longo da graduação na forma de uma investigação acadêmica ou desenvolvimento técnico-científico. Para assegurar a qualidade e a efetividade dessa atividade, são estabelecidas responsabilidades específicas para os diferentes atores envolvidos — aluno, professor orientador e coordenação de TCC —, bem como diretrizes para o processo de avaliação, formatação do documento final e possíveis substituições permitidas. Este documento detalha as competências atribuídas a cada participante, os critérios de avaliação e os procedimentos normativos aplicáveis à condução do TCC, conforme as diretrizes institucionais.

 

CAPÍTULO I

SOBRE OS PARTICIPANTES DO TCC E SUAS COMPETÊNCIAS

Seção I - ​Do aluno

Art. 1º O aluno do curso de Bacharelado em Inteligência Artificial regularmente matriculado na disciplina de TCC, é o responsável por elaborar e executar o TCC, de acordo com as normas estabelecidas neste Projeto Pedagógico. Compete ao aluno:

I - informar ao Coordenador do TCC o nome do professor orientador escolhido e um tema de pesquisa até duas semanas após o início do período letivo;

II - informar imediatamente ao Coordenador do TCC a eventual necessidade de troca de professor orientador ao longo do desenvolvimento do TCC;

III - apresentar oralmente para uma banca o trabalho desenvolvido;

IV - comparecer aos horários de orientação definidos pelo professor orientador para discussão e aprimoramento de sua pesquisa;

V - comparecer às reuniões convocadas pela Coordenação do TCC ou pelo seu professor orientador;

VI - cumprir o calendário divulgado pela Coordenação do TCC para entrega de projetos, relatórios e a versão final do documento escrito do TCC;

VII - elaborar o documento escrito do TCC, em conformidade com as direções delineadas pelo professor orientador;

VIII -  comparecer em dia, horário e local determinados para apresentar e defender o TCC;

IX - ter conhecimento das normas do TCC e segui-las;

 

Seção II - ​Da Coordenação de TCC.

Art. 2º Pode ser desempenhado pela Coordenação do curso de Bacharelado em Inteligência Artificial ou pessoa por ela designada para coordenar a atividade de TCC entre os alunos matriculados e os professores orientadores. Compete ao coordenador de TCC:

I - orientar os alunos matriculados para que escolham os temas e professores orientadores mais adequados;

II - Definir calendário de prazos para entrega dos documentos escritos do TCC (primeira versão e versão final) e para realização do Workshop de TCCs;

III - estipular o formato de realização do Workshop de TCCs;

IV - esclarecer os professores orientadores sobre as regras do TCC;

V - efetivar as notas dos alunos matriculados no TCC;

VI - resolver casos não previstos nesta normatização.

 

Seção III - ​Do Professor Orientador.

Art. 3º Pode ser Professor Orientador Professor do IComp, ou de outra Unidade Acadêmica da UFAM, responsável por acompanhar e orientar um ou mais alunos de TCC. Compete ao Professor Orientador:

I -avaliar a relevância, a originalidade e as condições de execução do tema proposto pelo aluno;

II - acompanhar a elaboração da proposta do projeto, bem como as etapas de seu desenvolvimento;

III - orientar o aluno, quando necessário, na reelaboração de projeto de pesquisa e sugerir, se for o caso, indicações bibliográficas e as fontes de dados disponíveis em instituições públicas ou particulares ou da produção de dados oriundos de trabalho de campo;

IV - atender regularmente seus alunos orientandos, em horário previamente fixado;

V - participar do Workshop de TCCs de seus orientandos;

VI - ser responsável pela adequação às Normas do Comitê de Ética e Pesquisa em Seres Humanos (CEP) ou às Normas do Comitê de Experimentação Animal, quando o tipo de pesquisa assim o fizer necessário.

 

CAPÍTULO II

SOBRE A AVALIAÇÃO DO TCC

 

Art. 4º O aluno de TCC receberá três notas ao longo da disciplina: 

I - 1ª nota (N1), da revisão bibliográfica.

II - 2ª nota (N2), dos resultados intermediários.

III - 3ª nota (N3), do documento escrito do TCC e apresentação no Workshop.

Art. 5º A 3ª nota será dada pela média aritmética das notas atribuídas pelos avaliadores da banca de apresentação. A nota de cada avaliador será calculada pela soma das notas atribuídas aos seguintes critérios:

I - documento escrito (nota de 0 a 7);

II - apresentação oral (nota de 0 a 3).

Art. 6º A média final (MF) da disciplina de TCC será determinada pela seguinte fórmula: MF = (N1 + N2 + 2 * N3) / 4.

 

CAPÍTULO III

SOBRE O DOCUMENTO ESCRITO

 

Art. 7º O documento escrito do TCC deve ser entregue em formato de artigo científico ou em formato de monografia. No formato artigo científico, o documento deverá seguir o modelo de artigos da Sociedade Brasileira de Computação (SBC). Esse formato de artigo também pode ser aproveitado para submissões em eventos acadêmicos e publicações científicas, incentivando a divulgação dos resultados obtidos pelos alunos e fortalecendo a produção científica do curso.

Art. 8º No formato monografia, o documento deverá atender aos requisitos estabelecidos pelo Guia para Normalização de Relatórios Técnicos Científicos da UFAM, aprovada pela Resolução Nº 043/2004 – CONSEPE.

Parágrafo único. Esse guia está disponível para consulta pública, garantindo que os alunos tenham acesso a um documento normativo atualizado, com orientações padronizadas sobre a formatação e a estrutura de suas produções acadêmicas.

Art. 9º O site da Biblioteca Central da UFAM fornece um manual completo de normalização, além de templates para a estruturação do TCC, atendendo plenamente às exigências de apoio documental para os discentes.

Parágrafo único. Essa documentação é atualizada periodicamente para garantir que os padrões de formatação e estrutura se mantenham alinhados com as melhores práticas acadêmicas e com as demandas institucionais. Tanto o guia quanto o template são divulgados para os alunos quando se matriculam na disciplina de TCC.

 

CAPÍTULO III

SOBRE A SUBSTITUIÇÃO

DO TRABALHO DE CONCLUSÃO DE CURSO

Art. 10. Desde que o aluno acorde com a Coordenação do TCC, o Trabalho de Conclusão de Curso poderá ser substituído por:

I - artigo científico aceito, mesmo que não publicado, em veículo relacionado à área de Inteligência Artificial que disponha de corpo técnico revisor e seja qualificado.

II - relatório de estágio, desde que o formato atenda ao Guia para Normalização de Relatórios Técnicos Científicos da UFAM, que o mérito técnico do estágio seja aprovado previamente por um professor do IComp e que a carga horária total do Estágio seja de no mínimo 300h na data de submissão do relatório para a coordenação do TCC.

a)Neste caso, o estágio deverá obedecer à legislação e normas estabelecidas na UFAM. O aluno não poderá computar este mesmo estágio como Atividades Acadêmico-Científico-Culturais (AACCs).

b) Entretanto, nenhuma dessas opções exime o aluno da obrigação de apresentar seu trabalho durante o Workshop de TCC.

 

CAPÍTULO IV

DO DEPÓSITO DO TRABALHO DE CONCLUSÃO DE CURSO NA BIBLIOTECA

Art. 11. O curso de Bacharelado em Inteligência Artificial utiliza o Repositório Institucional da Biblioteca da UFAM para a disponibilização dos TCCs.

Art. 12. O site da Biblioteca (https://biblioteca.ufam.edu.br/deposito-de-trabalho-de-conclusao-de-curso.html), conta com um espaço específico para o depósito e acesso aos Trabalhos de Conclusão de Curso, permitindo que os TCCs estejam disponíveis online para a comunidade acadêmica e o público em geral.

Parágrafo único. Esse site também é divulgado para os alunos quando se matriculam na disciplina de TCC. Este repositório assegura que todos os TCCs produzidos pelos alunos estejam acessíveis pela internet, em conformidade com os critérios de acessibilidade e transparência exigidos pelo MEC.

 

 

ANEXO VI

NORMATIZAÇÃO DAS ATIVIDADES DE EXTENSÃO DO CURSO DE GRADUAÇÃO EM INTELIGÊNCIA ARTIFICIAL

   

CAPÍTULO I

DISPOSIÇÕES GERAIS

Art. 1º As atividades de extensão integram a matriz curricular do curso de Bacharelado em Inteligência Artificial da UFAM como eixo formativo obrigatório, conforme disposto no Parecer CNE/CES nº 576/2023, na Resolução CNE/CES nº 7/2018, e na Resolução CONSEPE nº 044/2023.

Art. 2º O estudante deverá cumprir, no mínimo, 320 (trezentas e vinte) horas de atividades extensionistas para integralização do curso, equivalentes a 10% (dez por cento) da carga horária total do currículo.

Art. 3º As atividades de extensão deverão ser registradas no eixo curricular denominado “Atividades Extensionistas”, constante no histórico do discente.

 

CAPÍTULO II

CRITÉRIOS DE VALIDAÇÃO DAS ATIVIDADES EXTENSIONISTAS

Art. 4º Serão consideradas válidas para registro no eixo “Atividades Extensionistas” apenas as atividades nas quais o estudante tenha desempenhado comprovadamente papel de protagonista, nos termos da Resolução CONSEPE nº 044/2023.

Parágrafo único. São exemplos de protagonismo a atuação do discente nas etapas de elaboração, planejamento, execução ou avaliação de projetos ou ações de extensão.

Art. 5º É vedada a dupla contagem de carga horária para um mesmo certificado ou componente curricular, sendo proibido fracionar a carga horária entre diferentes eixos formativos, como AACC e Atividades Extensionistas.

Art. 6º Não serão aceitas no eixo de Atividades Extensionistas ações nas quais o estudante tenha participado apenas como ouvinte ou espectador, conforme disposto na Resolução CONSEPE nº 044/2023, art. 5º, §3º.

 

CAPÍTULO III

MODALIDADES DE INTEGRALIZAÇÃO

Art. 7º O cumprimento da carga horária mínima no eixo poderá ser realizado por meio das seguintes modalidades:

I - disciplinas com carga horária exclusivamente dedicada à extensão universitária;

II - certificados de participação em projetos ou ações institucionais de extensão.

Art. 8º As disciplinas com carga horária extensionista:

I - serão ofertadas regularmente pelo Instituto de Computação, conforme disponibilidade docente e compatibilidade de horários;

II - serão organizadas com metodologias de projetos, permitindo a atuação ativa dos estudantes;

III - serão de matrícula optativa, sendo exigida apenas a integralização da carga horária mínima prevista no art. 2º;

IV - poderão, mediante solicitação formal do discente à Coordenação de Curso, ser incluídas no eixo Atividades Extensionistas mesmo que não constem previamente na lista aprovada no PPC.

Art. 9º Os certificados de atividades institucionais de extensão serão aceitos desde que:

I - emitidos por Pró-Reitoria de Extensão da UFAM ou por instituições equivalentes reconhecidas;

II - detalhem o papel desempenhado pelo discente, a carga horária, a natureza da atividade e o período de realização;

III - comprovem a atuação do estudante como protagonista.

 

Art. 10. As modalidades institucionais de extensão válidas para fins de certificação incluem:

I - Programa de Extensão;

II - Projeto de Extensão;

III - Curso de Extensão (mínimo de 8 horas);

IV - Evento de Extensão;

V - Prestação de Serviço.

Art. 11. É permitida a realização de atividades extensionistas em formato remoto, síncrono ou assíncrono, desde que:

I - não caracterizem modalidade a distância (EaD);

II - não ultrapassem o limite de 20% (vinte por cento) da carga horária da atividade;

III - observem as demais exigências legais e pedagógicas.

 

CAPÍTULO IV

AVALIAÇÃO DAS ATIVIDADES EXTENSIONISTAS

Art. 12. A avaliação das atividades de extensão será realizada semestralmente, por comissão composta por docentes responsáveis pelas disciplinas extensionistas, Coordenação de Curso e equipe de Apoio Pedagógico do IComp.

Parágrafo único. A comissão poderá criar e aplicar instrumentos avaliativos com o objetivo de medir o impacto social das ações extensionistas e sua contribuição para a formação dos estudantes.

 

TÍTULO I

DISPOSIÇÕES GERAIS

Art. 1º As atividades de extensão integram a matriz curricular do curso de Bacharelado em Ciência da Computação da Universidade Federal do Amazonas (UFAM) como eixo formativo obrigatório, nos termos do Parecer CNE/CES nº 576/2023, da Resolução CNE/CES nº 7/2018 e da Resolução CONSEPE nº 044/2023.

Art. 2º O estudante deverá cumprir, no mínimo, 320 (trezentas e vinte) horas de atividades extensionistas para integralização do curso, equivalentes a 10% (dez por cento) da carga horária total do currículo.

Art. 3º As atividades de extensão deverão ser registradas no eixo curricular denominado “Atividades Extensionistas”, constante no histórico acadêmico do discente.

TÍTULO II

DA NATUREZA E CONDIÇÕES DAS ATIVIDADES EXTENSIONISTAS

Art. 4º Serão consideradas válidas para registro no eixo “Atividades Extensionistas” apenas as atividades nas quais o estudante tenha desempenhado comprovadamente papel de protagonista, nos termos da Resolução CONSEPE nº 044/2023.

Parágrafo único. São exemplos de protagonismo a atuação do discente nas etapas de:

a)elaboração;

b) planejamento;

c) execução; ou

d) avaliação de projetos ou ações de extensão.

Art. 5º É vedada a dupla contagem de carga horária para um mesmo certificado ou componente curricular, sendo proibido fracionar a carga horária entre diferentes eixos formativos, tais como Atividades Acadêmico-Científico-Culturais (AACC) e Atividades Extensionistas.

Art. 6º Não serão aceitas, no eixo de Atividades Extensionistas, ações nas quais o estudante tenha participado apenas como ouvinte ou espectador, conforme disposto na Resolução CONSEPE nº 044/2023, art. 5º, §3º.

 

TÍTULO III

DAS MODALIDADES DE CUMPRIMENTO

Art. 7º O cumprimento da carga horária mínima no eixo “Atividades Extensionistas” poderá ocorrer por meio das seguintes modalidades:

I – disciplinas com carga horária exclusivamente dedicada à extensão universitária;

II – certificados de participação em projetos ou ações institucionais de extensão.

Art. 8º As disciplinas com carga horária extensionista:

I – serão ofertadas regularmente pelo Instituto de Computação, conforme disponibilidade docente e compatibilidade de horários;

II – serão organizadas com metodologias de projetos, permitindo a atuação ativa dos estudantes;

III – serão de matrícula optativa, sendo exigida apenas a integralização da carga horária mínima prevista no art. 2º;

IV – poderão, mediante solicitação formal do discente à Coordenação de Curso, ser incluídas no eixo “Atividades Extensionistas” mesmo que não constem previamente na lista aprovada no Projeto Pedagógico do Curso (PPC).

Art. 9º Os certificados de atividades institucionais de extensão serão aceitos desde que:

I – sejam emitidos pela Pró-Reitoria de Extensão da UFAM ou por instituições equivalentes reconhecidas;

II – detalhem o papel desempenhado pelo discente, a carga horária, a natureza da atividade e o período de realização;

III – comprovem a atuação do estudante como protagonista.

Art. 10. As modalidades institucionais de extensão válidas para fins de certificação incluem:

I – Programa de Extensão;

II – Projeto de Extensão;

III – Curso de Extensão, com carga horária mínima de 8 (oito) horas;

IV – Evento de Extensão;

V – Prestação de Serviço.

Art. 11. É permitida a realização de atividades extensionistas em formato remoto, síncrono ou assíncrono, desde que:

I – não caracterizem modalidade a distância (EaD);

II – não ultrapassem o limite de 20% (vinte por cento) da carga horária da atividade;

III – observem as demais exigências legais e pedagógicas.

 

TÍTULO IV

DA AVALIAÇÃO DAS ATIVIDADES EXTENSIONISTAS

Art. 12. A avaliação das atividades de extensão será realizada semestralmente, por comissão composta por: 

I – docentes responsáveis pelas disciplinas extensionistas;

II – Coordenação de Curso;

III – Equipe de Apoio Pedagógico do Instituto de Computação.

Parágrafo único. A comissão poderá criar e aplicar instrumentos avaliativos com o objetivo de medir:

a) o impacto social das ações extensionistas; e

b) a contribuição das atividades para a formação dos estudantes.

 

 


logotipo

Documento assinado eletronicamente por David Lopes Neto, Presidente, em 01/07/2025, às 00:10, conforme horário oficial de Manaus, com fundamento no art. 6º, § 1º, do Decreto nº 8.539, de 8 de outubro de 2015.


QRCode Assinatura

A autenticidade deste documento pode ser conferida no site https://sei.ufam.edu.br/sei/controlador_externo.php?acao=documento_conferir&id_orgao_acesso_externo=0, informando o código verificador 2661836 e o código CRC 2E2D0D70.



 

Avenida General Rodrigo Octávio, 6200 - Bairro Coroado I Campus Universitário Senador Arthur Virgílio Filho, Prédio Administrativo da Reitoria (Térreo), Setor Norte - Telefone: (92) 3305-1181 / Ramal 1482
CEP 69080-900, Manaus/AM, cegconsepe@ufam.edu.br​


Referência: Processo nº 23105.018570/2025-40

SEI nº 2661836