Il programmatore e le sue api

684 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
684
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Il programmatore e le sue api

  1. 1. Il programmatore e le sue api<br />Sviluppare progetti: il percorso dall’idea al rilascio<br />Speaker: Giovanni Puliti<br />
  2. 2. Il programmatore e le sue api<br />Il lavoro del PM <br />Il lavoro dell’analista<br />Il lavoro del designer<br />Il lavoro della promozione<br />Giovanni Puliti<br />Il programmatore e le sue api<br />2<br />
  3. 3. Il progetto “il programmatore e le sue api”<br />Introduzione<br /><ul><li>Genesi dell’iniziativa
  4. 4. Obiettivo
  5. 5. Applicazione</li></ul>Il programmatore e le sue api<br />3<br />
  6. 6. Genesi della iniziativa<br />Nasce come consulenza formativa su PM<br />Si allarga alle metodologie<br />Infine approccia al problema delle tecnologie<br />Comunicazione<br />Il programmatore e le sue api<br />4<br />
  7. 7. Scopo del progetto<br />Lo scopo: roadmap di un progetto enterprise<br />Definire i passi e le priorità <br />Definire i macro temi<br />Dare indicazione sugli strumenti da usare<br />Gestione della evoluzione di un progetto<br />Il programmatore e le sue api<br />5<br />
  8. 8. Inceptionphase<br />Studio di fattibilità – macro progettazione<br /><ul><li>Processo
  9. 9. Studio di fattibilità
  10. 10. Vincoli - il cubo d'acciaio
  11. 11. Definizione della architettura –I parte
  12. 12. Scelte tecnologiche – I parte</li></ul>Il programmatore e le sue api<br />6<br />
  13. 13. Processo<br />Quale è la modalità di lavoro?<br />Processo agile <br />Processo strutturato rigoroso<br />Approccio iterativo<br />Spesso il buon senso è un ottimo alleato<br />Formalizzare il processo<br />Ridurre le rigidità<br />Non stravolgere il modo di lavorare<br />Usare strumenti semplici e noti <br />Il programmatore e le sue api<br />7<br />
  14. 14. Studio di fattibilità<br />Identificare<br />Scope di progetto<br />Gli stakeholders e gli interlocutori<br />Sponsor e avversari<br />Intercettare il bisogno del cliente<br />Individuare i requisiti non funzionali<br />Identificare le priorità<br />Elencodelleindeterminazioni<br />Il programmatore e le sue api<br />8<br />
  15. 15. Vincoli e obiettivi: il cubo d'acciaio <br />Scegliere due fra tre<br />Economico<br />Buono<br />Prestazionale<br />A priori nessun progetto vuole essere costosto, fatto male, lento<br />Il mantra del cliente “Ok tutto bello ma noi purtroppo siamo una realtà particolare”<br />Il programmatore e le sue api<br />9<br />
  16. 16. The art of project management <br />Il programmatore e le sue api<br />10<br />“Ok tutto bello, ma noi purtroppo siamo una realtà particolare”<br />Più si forza un sistema – più questo si ritorce contro<br />
  17. 17. Scelte architetturali – I parte<br />La fase di inception aiuta a sciogliere i macro dubbi<br />3Tier<br />RAD<br />RIA<br />Tecnologie coinvolte<br />Rispettare i requisiti cliente<br />Tempistiche<br />Costi<br />Complessità<br />User experience<br />Rispettare i vincoli sui requisiti<br />Complessità<br />Skill acquisiti<br />Tempi di sviluppo<br />Il programmatore e le sue api<br />11<br />
  18. 18. Scelte tecnologiche – I parte<br />Non tutte le domande trovano risposta in questa fase<br />Potrebbero essere necessarie ulteriori indagini<br />Potrebbe essere necessario un POC<br />Alcune risposte arrivano poco dopo<br />In fase di analisi – raccolta di requisiti<br />In fase di setup del PM – compilazione del PID<br />Massima chiarezza che non abbiamo ancora la risposta<br />Il programmatore e le sue api<br />12<br />
  19. 19. Il lavoro del PM<br />Project management<br /><ul><li>PID
  20. 20. Scomposizione strutturale del progetto
  21. 21. Organizzazione
  22. 22. Strumentario</li></ul>Il programmatore e le sue api<br />13<br />
  23. 23. Il lavoro del project manager<br />Tenere sotto controllo l’avanzamento del progetto<br />Individuare le parti e le attività associate<br />Individuare le criticità<br />MakingThingsHappen<br />Il programmatore e le sue api<br />14<br />
  24. 24. PID<br />Scope di progetto<br />Definisce cosa è il progetto<br />Cosa non è nel progetto<br />Aiuta nella definizione del confine <br />Utile nel dettaglio della contrattualizzazione<br />Fa emergere eventuali requisiti non chiari<br />Il programmatore e le sue api<br />15<br />
  25. 25. PID<br />Il programmatore e le sue api<br />16<br />
  26. 26. PID<br />Il programmatore e le sue api<br />17<br />Schema delle priorità di progetto<br />
  27. 27. Scomposizione<br />Mindmap<br />Il programmatore e le sue api<br />18<br />
  28. 28. Scomposizione<br />WBS<br />Il programmatore e le sue api<br />19<br />
  29. 29. Pianificazione<br />Gestione stato avanzamento dettagliato (privato?) - Gantt<br />Il programmatore e le sue api<br />20<br />
  30. 30. Pianificazione<br />Gestione stato avanzamento semplice e condiviso - UCList<br />Il programmatore e le sue api<br />21<br />
  31. 31. Controllo<br />Gestione del tempo<br />Il programmatore e le sue api<br />22<br />
  32. 32. Il lavoro dell’analista<br />Analisi funzionale<br /><ul><li>Visione dinamica del sistema
  33. 33. Raccolta dei requisiti funzionali
  34. 34. Raccolta dei requisiti non funzionali
  35. 35. Analisi </li></ul>Il programmatore e le sue api<br />23<br />
  36. 36. Analisi<br />Visione dinamica<br />Activitydiagrams<br />Interactiondiagrams<br />State diagrams<br />Visione statica<br />Use case (inter dipendenze logiche)<br />Il programmatore e le sue api<br />24<br />
  37. 37. Analisi<br />Scomposizione ulteriore della WBS<br />Elencazione degli Use Cases<br />UC-FORM<br />Elenco delle BR<br />Il programmatore e le sue api<br />25<br />
  38. 38. UC Form<br />Il programmatore e le sue api<br />26<br />
  39. 39. BR Form<br />Il programmatore e le sue api<br />27<br />
  40. 40. GUI prototyping<br />Il programmatore e le sue api<br />28<br />
  41. 41. GUI prototyping<br />Il programmatore e le sue api<br />29<br />
  42. 42. Less is more<br />Il programmatore e le sue api<br />30<br />
  43. 43. Il lavoro del designer<br />Progettazione e implementazione<br /><ul><li>Visione statica del progetto
  44. 44. datamodeling- ORM - OOA –ER
  45. 45. pattern di riferimento
  46. 46. schemi progettuali: data layer, middle layer, front end
  47. 47. test</li></ul>Il programmatore e le sue api<br />31<br />
  48. 48. Design del sistema<br />Visione statica del sistema<br />Use case (inter dipendenze tecnologiche)<br />Data model<br />Progettazione dei layer<br />Disegno delle componenti<br />Patternprogramming<br />Façade, Delegation, Proxy, DTO, ….<br />Il programmatore e le sue api<br />32<br />
  49. 49. Datamodeling<br />Da dove partire?<br />Disegno il DB e ci creo gli oggetti sopra?<br />OOAD che poi mappo su tabelle?<br />Dicotomia OO – ER<br />Impedencemismatch<br />Obiettivi e risposte diverse<br />Il programmatore e le sue api<br />33<br />
  50. 50. Datamodeling<br />Si parte dalle entità<br />Il programmatore e le sue api<br />34<br />
  51. 51. Datamodeling<br />Si creano le associazioni<br />Il programmatore e le sue api<br />35<br />
  52. 52. Datamodeling<br />Si raffinano le relazioni OO<br />Il programmatore e le sue api<br />36<br />
  53. 53. E’ un processo iterativo<br />Il programmatore e le sue api<br />37<br />
  54. 54. Il lavoro del marketing<br />Comunicazione– promozione -<br /><ul><li>Promozione del prodotto
  55. 55. Creare l’interesse
  56. 56. Social marketing</li></ul>Il programmatore e le sue api<br />38<br />
  57. 57. Comunicazione<br />Il prodotto deve essere pubblicizzato<br />Il prodotto deve essere presentato<br />Il prodotto deve essere spiegato<br />Il programmatore e le sue api<br />39<br />
  58. 58. Approccio tradizionale<br />Pubblicità<br />Presentazioni – video –how to - articoli<br />Manuali - help<br />Il programmatore e le sue api<br />40<br />
  59. 59. Approccio non tradizionale<br />Community online<br />Social network<br />Social marketing<br />Il programmatore e le sue api<br />41<br />
  60. 60. La comunicazione non convenzionale<br />Il programmatore e le sue api<br />42<br />
  61. 61. La comunicazione non convenzionale<br />Il programmatore e le sue api<br />43<br />dilloaobama.org<br />
  62. 62. La comunicazione non convenzionale<br />Il programmatore e le sue api<br />44<br />
  63. 63. Facebook<br />Il programmatore e le sue api<br />45<br />Teoria degli insiemi <br />Le bolle o cerchi di interessi<br />Innescodell’interesse<br />Strumenti tipici di FB<br />Gruppi <br />Elenti <br />Liste di appartenenza<br />Fuso orario e stagionalità<br />
  64. 64. gpuliti@mokabyte.it<br />giovanni@apeoperosa.it<br />Il programmatore e le sue api<br />46<br />

×