Progettazione (ingegneria del software)

In ingegneria del software, la progettazione (chiamata talvolta progetto o con il falso amico disegno, dall'inglese design) è una fase del ciclo di vita del software. Sulla base della specifica dei requisiti prodotta dall'analisi, il progetto definisce come tali requisiti saranno soddisfatti,…

In ingegneria del software, la progettazione (chiamata talvolta progetto o con il falso amico disegno, dall'inglese design) è una fase del ciclo di vita del software. Sulla base della specifica dei requisiti prodotta dall'analisi, il progetto definisce come tali requisiti saranno soddisfatti, entrando nel merito della struttura che dovrà essere data al sistema software che deve essere realizzato.

Descrizione

La progettazione rimane comunque una fase distinta dalla programmazione o codifica, che corrisponde alla traduzione in un particolare linguaggio di programmazione delle decisioni prese in sede di progettazione, cioè dunque la fase implementativa.

Le distinzioni fra le attività fin qui menzionate non sono sempre chiare come vorrebbero le teorie classiche dell'ingegneria del software. La progettazione, in particolare, può descrivere il funzionamento interno di un sistema a diversi livelli di dettaglio, ciascuno dei quali si colloca in una posizione intermedia fra analisi e codifica.

Normalmente si intende con progettazione dell'architettura (o progettazione architetturale) la progettazione "ad altissimo livello", in cui si definisce solo la struttura complessiva del sistema in termini dei principali moduli di cui esso è composto e delle relazioni macroscopiche fra di essi. A questo livello di progettazione appartengono formule come client-server o three-tier, o più in generale decisioni sull'uso di particolari architetture hardware, sistemi operativi, DBMS, protocolli di rete, e così via.

Un livello intermedio di dettaglio definisce ancora la scomposizione del sistema in moduli, ma questa volta con riferimento più o meno esplicito alle modalità di scomposizione offerte dal particolare linguaggio di programmazione con cui avverrà lo sviluppo; per esempio, in una progettazione condotta con tecnologie a oggetti, il progetto potrebbe descrivere il sistema in termini delle principali classi e delle loro interrelazioni.

Il progetto di dettaglio, infine, rappresenta una descrizione del sistema molto vicina alla codifica, ovvero che la vincola in maniera sostanziale (per esempio, descrivendo non solo le classi in astratto ma anche i loro attributi e metodi, con relativi tipi e "firma").

A causa della natura "impalpabile" del software, e a seconda degli strumenti che si utilizzano nel processo, il confine fra progettazione e codifica può essere anche praticamente impossibile da identificare. Per esempio, alcuni strumenti CASE sono in grado di generare codice a partire da diagrammi UML che descrivano graficamente la struttura di un sistema software.

Servizi correlati

Altre voci

InformaticaI

Informatica

L'informatica è la disciplina scientifica che si occupa dello studio dell'elaborazione delle informazioni e delle sue applicazioni pratiche. Più nel dettaglio, essa si concentra sulla rappresentazione, organizzazione e gestione automatica delle informazioni. Il termine ha origine dal francese…

Leggi la voce →
Ingegneria informaticaI

Ingegneria informatica

L'ingegneria informatica è un ramo dell'ingegneria dell'informazione, derivato in larga parte dall'ingegneria elettronica, che applica principi di quest'ultima e dell'informatica pura a processi di progettazione, realizzazione, perfezionamento e gestione di sistemi e soluzioni per l'elaborazione…

Leggi la voce →
OdooO

Odoo

Odoo, nato nel 2005 ad opera della Fabien Pinckaers con il nome TinyERP e fino al 2014 chiamato OpenERP, è una suite di software gestionali che include un'applicazione di customer relationship management, una di e-commerce, una di fatturazione, una di contabilità e altre ancora.

Leggi la voce →
S

SAP ERP

L'applicazione SAP ERP è un sistema Enterprise Resource Planning (ERP) prodotto dalla SAP AG. Negli anni 90 e inizio 2000 grazie a SAP molte aziende di grande dimensione si sono dotate di un software ERP. Tuttavia SAP (considerato troppo rigido) non si è mai affermato nel mondo delle piccola…

Leggi la voce →
E

Enterprise resource planning

Un enterprise resource planning o ERP, conosciuto come pianificazione delle risorse d'impresa, è un software di gestione (o Software gestionale) che integra tutti i processi aziendali e tutte le funzioni aziendali rilevanti, ad esempio vendite, acquisti, gestione magazzino, finanza o…

Leggi la voce →
SAP Business OneS

SAP Business One

SAP Business One è un'applicazione ERP (Enterprise Resource Planning) progettata per le piccole e medie imprese e commercializzata dalla società tedesca SAP SE. Come azienda, SAP Business One si concentra sull'automazione delle funzioni aziendali chiave in finanza, management control, acquisti,…

Leggi la voce →