Premi

Revisione di Progettazione

Diagrammi di attività

Attività principali

  • Accesso all'applicazione

  • Attività utente autenticato

  • Modifica presentazione

  • Riproduzione presentazione

1/29

Avvio dell'applicazione

2/29

Attività da autenticato

3/29

Modifica di una presentazione

4/29

Riproduzione di una presentazione

5/29

Tecnologie utilizzate

Express

Stack tecnologico

6/29

Librerie e framework

Fabric.js

Fabric.js is a powerful and simple JavaScript HTML5 canvas library

Impress.js

It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com

             Materialize

​A modern responsive front-end framework based on Material Design

mongoose

elegant mongodb object modeling for node.js

7/29

Linguaggi

8/29

Architettura

client-server

HTTP

9/29

MVC

10/29

Struttura componenti

client

Organizzato in moduli (e sotto-moduli quando necessario). Struttura verticale dei package, in ognuno di essi è riconoscibile il pattern MVC come avviene in MEAN.JS.

server

La struttura dei package è organizzata orizzontalmente. È riconoscibile un unico pattern MVC dentro il package server.

11/29

Come rappresentare lo $scope di AngularJS?

Lo $scope fa da collante tra la view e il controller.

view

controller

Gli attributi e metodi condivisi da che parte stanno?

$scope

12/29

La soluzione? Non rappresentare lo $scope all'interno dei diagrammi UML.

Attributi e metodi fanno tutti parte del controller e sono dichiarati come oggetti nello $scope.

app.controller('myCtrl', function($scope) {
    // definizione di un metodo
    $scope.method = function() {
        // codice...
    };
});
app.controller('myCtrl', function() {
    // definizione dello stesso metodo
    this.method = function() {
        // codice...
    };
});
<div ng-controller="myCtrl">
    <form ng-submit="method()">
        ...
    </form>
</div>
<div ng-controller="myCtrl as ctrl">
    <form ng-submit="ctrl.method()">
        ...
    </form>
</div>
$scope
controllerAs

utopia

13/29

Componenti e classi

premi::server

14/29

premi::server::view

15/29

premi::server::controller

16/29

premi::server::model

17/29

premi::client

18/29

premi::client::core

19/29

premi::client::users

20/29

premi::client::presentations

21/29

premi::client::player

22/29

premi::client::editor

23/29

premi::client::live

24/29

Incremento documenti

Norme di Progetto

  • Norme per la stesura della Specifica Tecnica
  • Definizione delle convenzioni per l'attività di analisi dinamica

Analisi dei Requisiti

  • Approfondimento dei requisiti e casi d'uso
  • Ridimensionamento del progetto

25/29

Piano di Qualifica

  • Stabilite le metriche di valutazione del codice
  • Pianificazione dei test
    • Validazione
    • Integrazione
    • Sistema

Piano di Progetto

  • Prima pianificazione (Piano di Progetto v2.0)
  • Seconda pianificazione (Piano di Progetto v3.0) causa ritardo sulla consegna per la RP

26/29

Esito periodo

Esiti verifica

Documenti

Processi

  • Schedule Variance: -7 %

  • Budget Variance: -3 %

27/29

Soglia di accettazione: -10 %

Soglia di accettazione: >40

Riscontro dei rischi

  • Inesperienza software utilizzato

  • Problemi tra i componenti del gruppo

28/29

Incidenza ruoli - Fase PA

Consuntivo parziale

Confronto preventivo/consuntivo

+90 €

29/29

Premi

Revisione di Progettazione