LAB OF SOFTWARE PROJECT DEVELOPMENT
- Anno accademico
- 2023/2024 Programmi anni precedenti
- Titolo corso in inglese
- LAB OF SOFTWARE PROJECT DEVELOPMENT
- Codice insegnamento
- ET7018 (AF:358389 AR:191382)
- Lingua di insegnamento
- Inglese
- Modalità
- In presenza
- Crediti formativi universitari
- 6
- Livello laurea
- Laurea
- Settore scientifico disciplinare
- ING-INF/05
- Periodo
- 2° Periodo
- Anno corso
- 3
- Sede
- RONCADE
- Spazio Moodle
- Link allo spazio del corso
Inquadramento dell'insegnamento nel percorso del corso di studio
L'unico modo per raggiungere questa consapevolezza è partecipare a un progetto di sviluppo software in cui lo studente pratica sia gli strumenti organizzativi che il processo di sviluppo.
L'obiettivo di questo corso è fornire agli studenti le basi sugli strumenti e sulle piattaforme di sviluppo software più comuni per creare e gestire il proprio progetto software.
Risultati di apprendimento attesi
Conoscenza:
- Le metodologie più comuni per lo sviluppo del software: waterfall, agile, open o closed source.
- Le basi della creazione di un software Python: struttura, documentazione, pubblicazione.
- Sviluppo test-driven.
- Concetti e modelli di programmazione web in Python.
Abilità:
- Familiarità con i sistemi di versioning del software: git.
- Familiarità con piattaforme di hosting / sviluppo software: github, kanban.
- Creazione, sviluppo, documentazione e pubblicazione di un progetto Python.
- Un primer su DevOps: docker.
- Creazione di applicazioni Web con Python: FastAPI, Flask
Prerequisiti
Contenuti
Settimana 1:
- Gestione e sviluppo del progetto: waterfall, agile, open source Vs closed source.
- Strumenti per il controllo delle versioni del software: git e github.
Settimana 2:
- Software Versioning
Settimana 3:
- Python avanzato
- Introduzione al Software Engineering
- Open Source e Free Software
Settimana 4:
- Lavorare con CSV e Pandas in Python
- Docker
Settimana 5:
- Test Driven Development
Testi di riferimento
- Pro Git Book: https://git-scm.com/book/en/v2
- Dive Into Python: https://www.diveinto.org/python3/table-of-contents.html
a queste si aggiunge la documentazione dei progetti open source che saranno oggetto delle esercitazioni.
Modalità di verifica dell'apprendimento
Il test scritto sarà composto da domande a scelta multipla e domande aperte relative a quanto appreso durante le lezioni.
Modalità di esame
Metodi didattici
Gli studenti avranno a disposizione gli strumenti e dovranno praticare direttamente con gli stessi per creare, pianificare e gestire il proprio progetto di lavoro.