I principali vincoli di un sistema embedded
Per la sua natura, un sistema embedded è caratterizzato da aspetti che, sotto un certo punto di vista, lo rendono unico. Questa considerazione ci spinge a pensare che vi siano alcuni punti cruciali che non possono essere trascurati prima di intraprenderne lo sviluppo.
Abbiamo, infatti, detto che il mondo embedded ha rappresentato e rappresenta tutt’oggi un grosso stimolo all’innovazione tecnologica, concetto che non potrebbe esistere senza quello della creatività.
È quest’ultima che spinge, da un canto alla scoperta di nuove soluzioni e, dall’alto, a trovare tecniche che consentano di adattare le vecchie soluzioni ai nuovi contesti. Del resto, una importante ed auspicabile caratteristica di un sistema embedded è certamente la ripetibilità, che, nel caso di famiglia di prodotto, consente di capitalizzare gli sforzi profusi per qualcosa che si è già sviluppato. In tal modo, infatti, si eviterebbe di partire daccapo ogni volta che si debba iniziare un nuovo progetto analogo.
Oltre agli aspetti appena discussi, lo sviluppo di un sistema embedded dovrebbe tener conto dei vincoli posti sulla durata della fase di progetto, nonché ai costi ad esso correlati (di progettazione, fabbricazione e manutenzione) e previsti.
Abbiamo, quindi, definito alcuni vincoli dell’attività:
- Creatività (non è un vincolo);
- Ripetibilità;
- Rapidità;
- Prevedibilità.
Bisogna osservare che questi vincoli non potranno essere soddisfatti senza la definizione di una metodologia di sviluppo adeguata.
I dispositivi embedded sono sistemi complessi, al cui sviluppo partecipano più team e per i quali l’adozione di una metodologia standardizzata rappresenta una necessità.
Si noti che, per metodologia di sviluppo, non si intende solo un’astrazione o, comunque, una guida teorica da seguire; piuttosto, essa deve essere definita in termini di strumenti e risorse disponibili.