Industrial Software Development
Academic Year 2023-2024
The course will start on Oct. 3, 2023. Teams link.
Instructors: Prof. Luca Didaci, Prof. Battista Biggio
Tutor: Maura Pintor
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
- Tuesday, 11-14, room N_3B (Lidia), building N
- Wednesday, 11-14, room I_IB (ex BA), building I
- Friday, 9-12, room I_ID (ex AN), building I
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
- Developing a Web Application
Part II (Instructor: Prof. Luca Didaci)
Slides and code for PART 2 -
- Introduction
- Modularity
- Modules and Packages in Python
- Introduction to OOP in Python (1)
- Introduction to OOP in Python (2)
- Double Dispatch
- Design Patterns
- Singleton Design Pattern
- Strategy Design Pattern
- State Design Pattern
- Difference between Strategy and State Design Pattern
- Observer Design Pattern
- Creational Patterns (OPTIONAL)
SEMINARS
- 21/11/2023 - Secure Programming - Prof. REGANO
- 28/11/2023 - Software Protection in the Man at the End scenario - Prof. REGANO
- 01/12/2023 - RUST; Elixir; DevSecOps concepts applied to a real project - PLURIBUS
- 13/12/2023 - MONEYFARM
Tutor
- Python basics
- Advanced python