-
Apresentação
Apresentação
Esta disciplina centra-se na "engenharia de dados" e na sua intersecção com a "ciência de dados". Neste âmbito, pretende-se que os alunos ganhem competências técnicas em diversos tópicos independentes mas relacionados. Os domínios de actuação mais relevantes desta UC são as bases de dados e a programação, que são as competências fundamentais para conseguir exercer o papel de "engenheiro de dados" em projectos académicos e/ou da indústria. Justifica-se a inclusão da UC no ciclo de estudos com a importância das capacidades de recolha, validação e tratamento de dados para que esses mesmos dados possam ser trabalhados e "explorados" com os conhecimentos adquiridos nas restantes unidades curriculares.
-
Disciplina do curso
Disciplina do curso
-
Grau | Semestres | ECTS
Grau | Semestres | ECTS
Mestre | Semestral | 6
-
Ano | Natureza | Lingua
Ano | Natureza | Lingua
1 | Obrigatório | Português
-
Código
Código
ULHT6347-23271
-
Pré-requisitos e co-requisitos
Pré-requisitos e co-requisitos
Não aplicável
-
Estágio Profissional
Estágio Profissional
Não
-
Conteúdos Programáticos
Conteúdos Programáticos
- Introdução à Engenharia de Dados
- Git & GitHub
- Introdução aos sistemas de controlo de versões
- Aprendizagem de processos de trabalho elementares usando o software Git e a plataforma online GitHub
- Bases de Dados & SQL
- Bases de Dados Relacionais
- Linguagem SQL
- SQL Injection
- Programação com PHP
- Do ponto de vista da extracção e tratamento de dados
- Complexidade algoritmica e eficiência de algoritmos
- A sua importância considerando grandes quantidades de dados
- Programação com Python
- Do ponto de vista da execução de análises exploratórias de dados
- Jupyter notebook
- Produção de pacotes para publicação e distribuição de software ("deployment")
- Linux
- Introdução ao uso do sistema operativo GNU/Linux
- Navegação no sistema de ficheiros (comandos)
- Comandos para controlo de processos
- Ferramentas avançadas de Engenharia de Dados
- Apresentação introdutória de ferramentas avançadas, tais como: Hadoop e Cassandra DB
-
Objetivos
Objetivos
Os alunos devem aprender competências técnicas de base em:
- Controlo de versões (Git & GitHub)
- Bases de Dados Relacionais (p.e. MySQL) e linguagem SQL
- Programação com a linguagem PHP, com foco na interacção com Bases de Dados relacionais e com ficheiros de texto
- Programação com a linguagem Python
- Noções elementares de complexidade e eficiência de algoritmos
- Linux
Espera-se também que os alunos desenvolvam a sua criatividade e o seu espírito crítico.
-
Metodologias de ensino e avaliação
Metodologias de ensino e avaliação
Aulas teórico-práticas com exposição de teoria e apresentação de exemplos práticos.
Exercícios para realização durante a aula, com o apoio e validação do Professor.
Exercícios para realização em casa.
Avaliação: 3 mini-testes e um projecto
-
Bibliografia principal
Bibliografia principal
Não aplicável.
-
Horário de Atendimento
Horário de Atendimento
O atendimento será feito por agendamento caso-a-caso. O aluno deverá contactar o professor por e-mail (bcipriano@ulusofona.pt), explicando a razão da mecessidade de contacto. Em função da disponibilidade do Professor e do Aluno, o apoio poderá ser por e-mail, por video-conferência, ou até presencial caso o Professor entenda que se justifica.
-
Mobilidade
Mobilidade
Não