Software Engineering 2022/2023

    Main     Slides     Projects
structure of the course
child courses
lightbulbSoftware Engineering (Module 1)(2nd cycle, 2022/2023) — Alessandro Ricci
lightbulbSoftware Engineering (Module 2)(2nd cycle, 2022/2023) — Andrea Omicini
lightbulbSoftware Engineering (Module 3)(2nd cycle, 2022/2023) — Danilo Pianini
proxy for course
lightbulbSoftware Engineering for Intelligent Distributed Systems(2nd cycle, 2022/2023) — Alessandro Ricci
pages
learning outcomes

Students will get acquainted with basic aspects of the following topics: 

  • service-oriented architectures, API, microservices: principles, technologies, enterprise viewpoint
  • cloud computing: principles, technologies, enterprise viewpoint
  • agile development: principles and methodologies, the role of testing, the case of SCRUM
  • devops: DVCS, agile project management tools, continuous development/integration/delivery
  • intelligent systems: definitions, problems, applications
  • multi-agent systems for the engineering of intelligent systems: models, technologies, methodologies
course contents

The course is structured in three modules

  • The first one, Principles and Methods", provides an introduction about the basic aspects that concern the engineering of modern software systems, focusing in particular on team organization and workflow, discussing methodological aspects and introducing supporting tools.
  • The second and third modules focus on two broad topics that are paramount in the modern digital age, namely the engineering of distributed systems and enterprise applications" and the engineering of intelligent systems.
course series
works as
parent course
lightbulbSoftware Engineering (Module 3)(2nd cycle, 2022/2023) — Danilo Pianini
lightbulbSoftware Engineering (Module 2)(2nd cycle, 2022/2023) — Andrea Omicini
lightbulbSoftware Engineering (Module 1)(2nd cycle, 2022/2023) — Alessandro Ricci