Ficha Unidade Curricular (FUC)
Informação Geral / General Information
Carga Horária / Course Load
Área científica / Scientific area
480 - Informática
Departamento / Department
Departamento de Tecnologias Digitais
Ano letivo / Execution Year
2025/2026
Pré-requisitos / Pre-Requisites
Conhecimentos de programação
Objetivos Gerais / Objectives
A UC de Engenharia de Modelos Inteligentes tem como objetivo capacitar os estudantes para conceber, implementar e gerir sistemas de aprendizagem automática orientados ao ciclo de vida completo de modelos, aplicando princípios e ferramentas de MLOps. Pretende-se que os estudantes compreendam as melhores práticas de integração contínua e de entrega contínua (CI/CD) no contexto de sistemas de Machine Learning (ML), explorem frameworks e ferramentas tais como ModelDB, Kubeflow e MLflow, e apliquem metodologias e padrões de desenvolvimento de software orientados à conceção, treino, validação, implementação, monitorização e atualização contínua de modelos inteligentes. Ao concluir a UC, os estudantes deverão ser capazes de aplicar o quadro conceptual CRISP-ML(Q) para planear e conduzir projetos end-to-end, assegurando a qualidade e a governança dos modelos, e integrar princípios de MLOps na prática profissional, garantindo o alinhamento entre equipas de dados, operações e desenvolvimento.
Objetivos de Aprendizagem e a sua compatibilidade com o método de ensino (conhecimentos, aptidões e competências a desenvolver pelos estudantes) / Learning outcomes
No final da UC, cada estudante deverá ser capaz de: OA1: Explicar os princípios fundamentais de MLOps, contextualizando-os no ciclo de vida de desenvolvimento e operacionalização de modelos de ML. OA2: Utilizar frameworks e ferramentas de MLOps para acompanhar experimentos, gerir pipelines de ML e automatizar processos de treino e entrega contínua. OA3: Conceber e implementar pipelines end-to-end, envolvendo Data Engineering Pipelines, ML Pipelines e ML Workflows, aplicando práticas de CI/CD adequadas a sistemas de ML. OA4: Adotar o CRISP-ML(Q) como guia metodológico, garantindo a qualidade, monitorização, validação e a documentação dos modelos ao longo de todo o ciclo de desenvolvimento. OA5: Desenhar e implementar estratégias de Model Serving, deployment e monitorização de modelos em produção. OA6: Trabalhar de forma colaborativa, integrando princípios de MLOps e boas práticas de engenharia de software para garantir a integração eficaz entre equipas multidisciplinares.
Conteúdos Programáticos / Syllabus
CP1: Introdução ao conceito de MLOps, comparação com DevOps, relevância e benefícios no contexto da aprendizagem automática. CP2: Frameworks e ferramentas de MLOps para gestão de workflows, pipelines, versionamento de dados e modelos. CP3: Integração Contínua (CI) e Entrega Contínua (CD) para ML; Testes automatizados, auditoria e monitorização das pipelines. CP4: Conceção de Sistemas ML end-to-end; Data Engineering, ML Model Engineering e Model Deployment CP5: Padrões de Model Serving e estratégias de deployment: A/B testing, canary releases, rolling updates, infraestruturas elásticas e escaláveis. CP6: Metodologia CRISP-ML(Q): Fases, tarefas, qualidade e governança de dados e modelos, documentação e melhoria contínua de modelos em produção.
Demonstração da coerência dos conteúdos programáticos com os objetivos de aprendizagem da UC / Evidence that the curricular unit's content dovetails with the specified learning outcomes
O CP1 sustenta o OA1 ao apresentar as bases conceptuais de MLOps, estabelecendo a ponte entre o ML e o desenvolvimento de software orientado a modelos. O CP2 aborda as ferramentas e frameworks de MLOps, cumprindo o OA2, que permitir explorar a gestão de workflows, pipelines, dados e modelos. Com o CP3, foca-se a implementação de CI/CD aplicada ao ML, respondendo ao OA3 ao incentivar a automação de testes, a monitorização e a auditoria de pipelines. O CP4, ao tratar a conceção end-to-end de sistemas ML, reforça a capacidade de construir soluções completas, relacionando-se com OA3 e OA5. O CP5 introduz padrões de Model Serving e estratégias de deployment, assegurando a robustez, escalabilidade e otimização contínua dos sistemas, fortalecendo o OA5. O CP6 aborda a metodologia CRISP-ML(Q), alinhando-se com o OA4 ao promover qualidade, documentação, governança e melhoria contínua, e contribuindo também para OA6 ao realçar a necessidade de comunicação e colaboração entre equipas.
Avaliação / Assessment
Esta UC, por ter uma natureza prática e aplicada, segue um modelo de Avaliação ao Longo do Semestre (previsto no RGACC), não contemplando exame final. A avaliação incidirá sobre a compreensão teórica, a capacidade de aplicação prática e a integração dos conceitos de MLOps em projetos reais. A avaliação é composta por: - 2 Quizzes (20%): Ao longo do semestre serão disponibilizados quizzes online de curta duração, destinados a aferir a compreensão dos conceitos fundamentais de MLOps Não é exigida nota mínima, mas os quizzes contribuem para a consolidação das aprendizagens e fornecem feedback imediato sobre o nível de entendimento dos estudantes. Os quizzes deverão ser realizados de forma individual. - Mini-Projeto 1 (30%): Neste mini-projeto, os estudantes aplicarão os conhecimentos iniciais, implementando um pipeline de ML simples, incluindo recolha e preparação de dados, treino de modelos e experimentação. O mini-projeto 1 poderá ser realizado individualmente ou em grupos. Nota mínima exigida: 8,5 valores. - Mini-Projeto 2 (50%): Este segundo mini-projeto é mais abrangente e integrado, desafiando os estudantes a criar um pipeline end-to-end, implementando CI/CD, deployment do modelo e monitorização em produção. Terão de demonstrar competências na utilização de frameworks de MLOps, aplicar o CRISP-ML(Q) e implementar estratégias de Model Serving, garantindo a escalabilidade e a qualidade contínua do sistema. Será realizada uma apresentação oral (online) do projeto, incluindo discussão dos resultados, justificando as opções técnicas e abordando possíveis melhorias. O mini-projeto 2 deverá ser realizado em grupos. Nota mínima exigida: 9,5 valores. A nota final resulta da soma ponderada dos quizzes (20%), do Mini-Projeto 1 (30%) e do Mini-Projeto 2 (50%). Para aprovação, o estudante deverá obter uma classificação final mínima de 10 valores. Caso não obtenha aprovação, será considerado Reprovado. A melhoria de nota pode ser obtida no ano letivo seguinte, de acordo com o regulamento em vigor. Em conformidade com o RGACC, o estudante pode optar por avaliação por exame, incidindo num projeto único (100%) a apresentar e defender oralmente, seguindo as mesmas diretrizes. A presença nas sessões síncronas não é obrigatória, mas é altamente recomendada, dada a natureza aplicada da UC e a importância do feedback contínuo. Para além do RGACC, recomenda-se a consulta do Regulamento de Estudantes com Estatuto Especial (REEE) e do Código de Conduta Académica (CCA).
Metodologias de Ensino / Teaching methodologies
Esta UC foi desenhada para o Ensino a Distância (EaD), adotando um modelo pedagógico flexível, centrado no estudante e alinhado com os princípios de autonomia, interatividade e colaboração. Os estudantes têm acesso a materiais multimédia, vídeos explicativos, apresentações interativas e estudos de caso, disponibilizados numa plataforma de e-learning. Estas aulas expositivas assíncronas podem ser revistas a qualquer momento, permitindo a cada estudante aprofundar os conteúdos ao seu próprio ritmo. Para fomentar a interação e o feedback contínuo, serão realizadas sessões síncronas por videoconferência, nas quais o docente discute tópicos avançados, esclarece dúvidas e promove debates sobre problemas reais da indústria. Fóruns de discussão, chats, wikis e grupos de trabalho virtuais apoiam a aprendizagem colaborativa, incentivando o intercâmbio de experiências e a resolução conjunta de desafios. A metodologia baseia-se em abordagens ativas, como Aprendizagem Baseada em Projetos (PBL) e Aprendizagem Baseada em Tarefas, aplicadas a cenários práticos de MLOps. Serão propostos miniprojetos e atividades orientadas para o planeamento, implementação e monitorização de pipelines ML, utilizando ferramentas como ModelDB, Kubeflow e MLflow. Estes exercícios práticos permitem aos estudantes ganhar experiência na gestão de experimentação, execução de CI/CD e deployment de modelos, simulando cenários reais da indústria. O Design Thinking é introduzido como método de estruturação de problemas e conceção de soluções criativas. Assim, os estudantes são estimulados a analisar casos reais, aplicar o CRISP-ML(Q) como guia metodológico e propor melhorias contínuas. O docente atua como facilitador, fornecendo feedback formativo contínuo nas plataformas digitais, orientando para a utilização de boas práticas de engenharia de software, documentação, testes automatizados, controlo de versões e monitorização. A articulação com o modelo pedagógico do EaD é evidenciada pela utilização de ferramentas de aprendizagem online, flexibilidade de horários, acesso permanente aos materiais, apoio síncrono e assíncrono e processos de avaliação contínua. Esta abordagem assegura que os estudantes desenvolvam as competências técnicas, analíticas e colaborativas necessárias para dominar os princípios de MLOps, integrando equipas multidisciplinares e respondendo aos desafios complexos da implementação de sistemas ML em produção. Assim, as metodologias de ensino e aprendizagem escolhidas potenciam a motivação, a autonomia e a construção do conhecimento, acompanhando as melhores práticas pedagógicas do EaD.
Demonstração da coerência das metodologias de ensino e avaliação com os objetivos de aprendizagem da UC / Evidence that the teaching and assessment methodologies are appropriate for the learning outcomes
As metodologias de ensino e aprendizagem implementadas nesta UC foram cuidadosamente selecionadas para assegurar a coerência com os objetivos de aprendizagem. Desde o início, os estudantes têm acesso a conteúdos multimédia e aulas online que introduzem os fundamentos teóricos e práticos de MLOps (OA1), permitindo-lhes compreender o contexto geral e a relevância destas práticas no desenvolvimento de software orientado por ML. Através de tarefas práticas, miniprojetos e estudos de caso, os estudantes utilizam frameworks e ferramentas de MLOps (OA2), aprendendo a gerir experimentação, pipelines e artefactos de ML de forma sistemática. As atividades propostas exigem a implementação de pipelines end-to-end, incluindo Data Engineering, ML Pipelines e ML Workflows (OA3), o que garante a consolidação dos conceitos, a familiarização com CI/CD e a compreensão do ciclo de vida completo do modelo. A metodologia CRISP-ML(Q), abordada teoricamente e aplicada na prática, orienta a organização dos projetos (OA4), assegurando uma abordagem sistemática, desde a definição do problema até à implementação, teste, validação e manutenção contínua do modelo. O desenvolvimento do projeto final implica a aplicação de Model Serving Patterns, estratégias de deployment e monitorização (OA5), permitindo que os estudantes entendam a complexidade de levar modelos para produção e geri-los de forma robusta. Os miniprojetos e as sessões de discussão síncronas e assíncronas fomentam a colaboração entre estudantes, equipas e perfis multidisciplinares, reforçando OA6. Este ambiente colaborativo incentiva a partilha de ideias, a análise crítica das soluções, a identificação de problemas e a adoção de melhorias contínuas. Além disso, a exigência de documentação, apresentação oral e discussão fundamentada dos resultados responsabiliza cada estudante pelo percurso de aprendizagem e pela qualidade do trabalho produzido. Assim, a coerência metodológica é assegurada pela combinação de atividades teóricas e práticas, pela utilização de ferramentas e frameworks reais, pela aplicação de metodologias consolidadas como CRISP-ML(Q) e pela constante integração dos princípios de MLOps na resolução de problemas concretos. Esta abordagem equilibrada e articulada garante que, ao concluir a UC, os estudantes tenham não apenas conhecimento técnico, mas também a capacidade efetiva de operacionalizar modelos inteligentes de forma escalável, confiável e sustentável no contexto profissional."
Observações / Observations
.
Bibliografia Principal / Main Bibliography
"1. Washizaki, H., Prikladnicki, R., et al. (2022). MLOps Engineering at Scale. O’Reilly. 2. Zweig, K. (2023). Effective MLOps. Manning. 3. Villela, J. A., et al. (2022). Kubeflow Operations Guide. O’Reilly. 4. Lakshmanan, V., Robinson, C., & Munn, M. (2020). Machine Learning Design Patterns: Solutions to Common Challenges in Data Preparation, Model Building, and MLOps. O’Reilly. "
Bibliografia Secundária / Secondary Bibliography
"1. Amershi, S., et al. (2019). Software Engineering for Machine Learning: A Case Study. IEEE/ACM Joint Conference on SE 2. Shevat, A. (2020). Designing ML-Powered Applications: ML Design Patterns for Developer Teams. O’Reilly."
Data da última atualização / Last Update Date
2025-05-23