- Intro to course
- Introduction to Software Engineering
- Software Engineering: Requirements
- Software Engineering: Software Processes
- Software Engineering: System Modeling
- Software Engineering: Agile Software Development
- MLOps: Introduction to ML
- Data Representation and Analysis Using Graph Models
- MLOps: Clustering Analysis
- MLOps pt1
- MLOps pt2
- Master's index
- This course is shared with another master's degree in engineering, which is why the name on the slide does not correspond to that of the repository. The course will be divided into 3 parts, where the first will be an explanation of Python.
- In this course we would only follow the second and third parts that will be on software engeneering and machine learning.
- It will be entirely in English, slides made by the professor on which I will take notes lesson after lesson.
- The final exam will consist of a group project that have to be presented to the professor.
- Know the principles and techniques of the design and implementation of an Information System
- Acquire the ability to design an information system, use independently the techniques and tools learned
- Represent and display the knowledge learned using Machine Learning principles
- Interpret and independently learn the evolution of methodologies and apply new techniques and design tools
- Every question is legitimate and useful, ask what you do not understand
- Main pourpose it to learn, not to grade
- Learning is a process, not a result
- Nobody is perfect or always right: errors and mistake are natural
- Learning is a process in our personal brain, not in other's one. Clash with your limits before check the solution
A simple introduction with what you have to expect from this course. Everything written above is a summary of the lesson.
Slides are available here
In this lecture it's gonna be descussed what Is a good software, how to define it and everyting that is related.
- What is Good Software?
- Professional software process activities
- Software engineering diversity
- Software engineering fundamentals
- Software Engineering
- Software Costs
- Software Products
- General Questions
Slides are available here
During this lesson we will introduce Requirements Engineering, the different types, defining them, managing them and some common practices.
- Introduction to Requirements Engineering
- Functional requirements
- Non-functional requirements
- The software requirements document
- Requirements specification
- Requirements engineering processes
- Requirements validation
- Requirements management
- Some Practice
Slides are available here
In this lesson, the software development process will be introduced, the different approaches that can be used and the development phases.
- Software process models
- Process activities
- Coping with change
- The Rational Unified Process
Slides are available here
In this lesson, we will define system modeling, the diagrams that define it, and the models and processes that are used.
- Context models
- Interaction models
- Structural models
- Behavioral models
- Data-driven engineering
Slides are available here
This lesson will be divided into 2 parts. The first part will define the agile method, how it works and what it is used for. The second part will show how to use this method in a more advanced way.
Part 1
- Agile methods
- Plan-driven and agile development
Part 2
- Extreme programming
- Agile project management
- Scaling agile methods
Slides are available here
In this lesson, machine learning will be introduced, defined, the different methodologies and types and several examples of algorithms.
- What is Machine Learning?
- Supervised vs Unsupervised learning
- Regression vs Classification
- Regression
- Machine Learning Workflow
- Classification
- Some Classification Algorithms (knn, decision trees, logistic regression, SVM)
- Examples
Slides are available here
A lesson from Prof. Carlos Henrique Gomes Ferreira on graph modelling.
- Graph Modeling Fundamentals
- Structural and Centrality Analysis
- Community Detection
- Final Considerations
Slides are available here
In this lesson, the concept of data cluster will be introduced, what it is and how to recognize it, algorithms that allow you to identify them and how it is connected with ML.
- Machine Learning Tasks.
- What is Clustering?
- What can you do with Clustering?
- Clustering Example.
- Similarity and Dissimilarity Measures
- How to Choose the Right Measure?
- Clustering algorithms.
- Challenges and Considerations in Clustering for MLOps.
- Unsupervised ML, beyond clustering.
- Principal Component Analysis
Slides are available here
- AI Maturity
- Overview of MLOps
- People and Roles
- Preparing for Production
Slides are available here
- MLOps Workflow
- MLOps Processes: Development
- Questions
- Goals
- Good Practices
- MPOps Project
Slides are available here