Requisiti Implementativi
I requisiti implementativi specificano i dettagli che riguardano l’implementazione del sistema, concentrandosi sugli aspetti tecnici, linguaggi di programmazione, piattaforme e strumenti specifici necessari per sviluppare il software. I requisiti implementativi definiscono le linee guida e le specifiche tecniche che dovranno essere seguite durante tutto il processo di sviluppo per garantire un’implementazione efficace ed efficiente.
- Devono essere applicati i pattern del Domain Driven Design durante l’analisi, la progettazione e l’implementazione del sistema;
- La web app dovrà essere sviluppata utilizzando lo stack MEVN (MongoDB [1], Express [2], Vue.js [3], Node.js [4]) e Typescript [5];
- Il sistema deve essere distribuito e testato su un server remoto;
- Il codice deve essere versionato con l’utilizzo di Git [6] con repository disponibile sull’hosting GitHub [7];
- Per effettuare continuous integration e continuous deployment devono essere utilizzate le GitHub Actions [8] dove possibile;
- Per gestire il flusso di lavoro basato su Git deve essere utilizzato Gitflow e, in particolare, ogni feature branch deve essere utilizzata per sviluppare un requisito funzionale differente;
- Per identificare le versioni del software rilasciato deve essere utilizzato Semantic Versioning [9] 2.0.0.
Riferimenti
[1] MongoDB, https://www.mongodb.com/it-it
[2] Express, https://expressjs.com/it/
[3] Vue.js, https://vuejs.org/
[4] Node.js, https://nodejs.org/en
[5] Typescript, https://www.typescriptlang.org/
[6] Git, https://git-scm.com/
[7] GitHub, https://github.com/
[8] GitHub Actions, https://github.com/features/actions
[9] Semantic Versioning, https://semver.org/