Industrial Software Development
Academic Year 2025-2026
The course will start on Oct. 1, 2025. Teams link.
Instructors: Prof. Battista Biggio, Dr. Angelo Sotgiu, Dr. Leonardo Regano.
MSc in Computer Engineering, Cybersecurity and Artificial Intelligence
GitHub repository for course material: https://github.com/unica-isde/isde
Website: https://unica-isde.github.io/isde/
Lectures
- Monday, 9.30-11.30, room D, building B
- Wednesday, 15.00-18.00, room D, building B
- Friday, 10.30-13.30, room D, building B
Slides
Part I (Instructor: Prof. Battista Biggio)
- Introduction
- Python Basics (Python Notebook 1)
- Python - Programming Exercise (Python Notebook 2) (Extra1) (Extra2) (Solutions)
- Python - Docstrings
- Plan-driven and Agile Software Development
- Software Testing
- Python Unittest (Testing Repository)
- Git Basics and Practical Session (Git Repository)
- Elements of Scalable Applications (not included since 2025/2026)
Part II (Instructor: Dr. Angelo Sotgiu)
- Introduction
- Modularity
- Modules in Python
- OOP - Introduction
- OOP - Inheritance
- OOP - Advanced
- Design Patterns
- Singleton
- Strategy
- State
- State vs Strategy
- Observer
- Other Design Patterns
- Web Development
Thanks to prof. Luca Didaci for kindly allowing the reuse of his material.
Part III (Instructor: Dr. Leonardo Regano)
- Secure programming
- Software protection
- GO Language Tutorial
Tutor (2023/2024)
- Python basics
- Advanced python