Automated Software Engineering

Year
1
Academic year
2025-2026
Code
02055894
Subject Area
Software Engineering
Language of Instruction
Portuguese
Other Languages of Instruction
English
Mode of Delivery
Face-to-face
Duration
SEMESTRIAL
ECTS Credits
6.0
Type
Elective
Level
2nd Cycle Studies - Mestrado

Recommended Prerequisites

Programming, Software Engineering.

Teaching Methods

Applied Lectures (TP): presentation of topics, examples and discussion.
Laboratory classes (PL): application of concepts to a concrete software project (case-study).

Learning Outcomes

Continuous Development and Testing (CDT): programming and testing supported by Large Language Models (LLMs) including automated functional and non-functional tests.
Continuous Integration (CI): frequent integration of code changes from multiple developers using a shared repository to ensure a stable and consistent codebase
Continuous Delivery (CD): extends CI by automating deployments in a reliable and efficient manner, to reduce the time between development and delivery
Continuous Deployment (CDep): enhances CD by automatically deploying changes directly to production, particularly using cloud computing, containers and virtualization
Continuous Monitoring (CM): collecting and analyzing data to identify performance bottlenecks and other anomalies
Continuous Documentation (CDoc): automated generation of code documentation, for project management and traceability
AI for Software Engineering (AI4SE): search-based software engineering, recommender systems, and self-adapting systems.

Work Placement(s)

No

Syllabus

1-Fundamentals of automation and LLM support in software engineering.

2-Continuous development and testing.

3-Continuous integration.

4-Continuous delivery.

5-Continuous deployment.

6-Continuous monitoring.

7-Continuous documentation.

8-AI for software engineering.

Head Lecturer(s)

João Rodrigues de Campos

Assessment Methods

Assessment
Exam: 50.0%
Project: 50.0%

Bibliography

Automating DevOps with GitLab CI/CD Pipelines: Build efficient CI/CD pipelines to verify, secure, and deploy your code using real-life examples
Christopher Cowell, Nicholas Lotz, Chris Timberlake,
Packt publishing 2023
ISBN-13 ‏ : ‎ 978-1803233000

Learning Github Actions: Automation and Integration of CI/CD with Github
Brent Laster
O’Reilly, 2023
ISBN-13 ‏ : ‎ 978-1098131074

Learning Git: A Hands-On and Visual Guide to the Basics of Git
Anna Skoulikari
O’Reilly 2023
ISBN-13 ‏ : ‎ 978-1098133917

Continuous Integration (CI) and Continuous Delivery (CD): A Practical Guide to Designing and Developing Pipelines
Henry van Merode
Apress 2023
ISBN-13 ‏ : ‎ 978-1484292273

Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation Jez Humble, David Farley
Addison-Wesley Signature Series (Fowler), 2010
ISBN-13: ‎ 978-0321601919