Making sense of Open Source
Open Source quotes

“Real quality means making sure that people are proud of the code they write, that they're involved and taking it personally.”

Linus Torvalds


Agile Software Engineering

Un corso introduttivo alle pratiche tecniche la cui padronanza è importante per ottenere successo nell’applicazione dei metodi agili.

Formato: 3 giorni di formazione in aula e in laboratorio, erogato in pair coaching.

Numero di partecipanti: 6-12

Destinato a: sviluppatori, tester, tech lead, architects. Prerequisito: conoscenza di Java. (Possiamo erogare una versione C# su richiesta.)

Obiettivi: formare gli sviluppatori su Test-Driven Development, Refactoring, Simple Design, Pair Programming. Dopo avere seguito questo corso, gli sviluppatori saranno in grado di:
  • scrivere test automatici
  • usare i test automatici per guidare il design
  • distinguere unit test, focused integration test, end-to-end test, exploratory test; che cosa sono, a che cosa servono, quali sono i loro pro e contro.
  • identificare alcuni “smell” di design e applicare mosse di refactoring per eliminarli
  • scrivere codice più facile da testare e da manutenere
  • lavorare in coppia per aumentare qualità, produttività e soddisfazione sul lavoro

Agenda:

Primo giorno: refactoring
  • Presentazione interattiva: Introduzione alle pratiche tecniche
  • Domande & risposte
  • Presentazione interattiva: code smells and refactoring moves
  • Laboratorio: esperienza di refactoring
  • Feedback
Secondo giorno: test-driven development
  • Standup meeting
  • Domande & risposte
  • Presentazione interattiva: il testing
  • Demo: test-driven development
  • Laboratorio: esperienza di test-driven development
  • Feedback
Terzo giorno: simple design
  • Standup meeting
  • Domande & risposte
  • Presentazione interattiva: simple design, testable code, eliminare gli IF, iniettare le dipendenze, mock objects
  • Laboratorio: calistenia a oggetti
  • Retrospettiva