Cosa sono e differenza tra Forward Engineering e Reverse Engineering

Cosa sono e differenza tra Forward Engineering e Reverse Engineering

Cos’è il Forward Engineering?

Il forward engineering è un metodo per creare o realizzare un’applicazione con l’aiuto di determinati requisiti di un cliente o consumatore. Con il forward engineering, il programma / applicazione viene sviluppato da zero e tutti gli approcci e la pianificazione devono essere eseguiti prima che venga avviato lo sviluppo effettivo. Questo tipo di ingegneria ha principi diversi in vari processi software e database. Il risultato del forward engineering è un prodotto efficiente e affidabile.

Caratteristiche sul forward engineering

  • Il forward engineering è un metodo per creare o realizzare un’applicazione con l’aiuto di determinati requisiti di un cliente o consumatore.
  • Il forward engineering è di natura prescrittiva, in cui gli sviluppatori devono seguire regole particolari per i risultati corretti.
  • Il forward engineering richiede tempo rispetto al reverse engineering.
  • Nel forward engineering, il processo di produzione inizia con le specifiche del sistema e include la progettazione e l’implementazione del sistema di sviluppo.
  • Il modello finale del forward engineering deve essere completo ed esatto.
  • Il forward engineering richiede abilità e competenze elevate.
  • Esempi di forward engineering sono la costruzione di kit elettronici, la costruzione di motori CC ecc.

Cos’è il reverse engineering?

Il reverse engineering, noto anche come backward engineering, è il processo di scoperta dei principi di funzionamento di un sistema software attraverso l’analisi del suo funzionamento, ovvero la scoperta delle classi, della struttura e dei nomi dei metodi, delle interfacce e talvolta dei soli binari. Con il reverse engineering, l’ingegnere progettista inizia con il prodotto finale e lavora attraverso il processo nella direzione opposta per arrivare alle specifiche di progettazione del prodotto. Durante il processo, vengono scoperte informazioni vitali sul concetto di design e sui metodi di produzione.

Il reverse engineering viene eseguito per recuperare il codice sorgente di un programma perché il codice sorgente è stato perso, per studiare come il programma esegue determinate operazioni, per migliorare le prestazioni di un programma, per correggere un bug (correggere un errore nel programma quando il sorgente codice non disponibile), per identificare contenuti dannosi in un programma come un virus o in un programma scritto per essere utilizzato con un microprocessore per essere utilizzato con un altro.

Caratteristiche sul reverse engineering

  • Il reverse engineering è il processo di recupero del progetto, delle specifiche dei requisiti e delle funzioni di un prodotto da un’analisi del suo codice.
  • Il reverse engineering è adattivo in base al quale l’ingegnere deve scoprire cosa ha fatto lo sviluppatore.
  • Il reverse engineering richiede meno tempo rispetto al reverse engineering.
  • Nel reverse engineering, il processo di produzione inizia con il sistema esistente e la tecnica di sviluppo per la sostituzione si basa sull’interpretazione.
  • Un modello imperfetto o parziale è ancora utile nel reverse engineering.
  • Il reverse engineering non richiede molte competenze.
  • Un esempio di reverse engineering è la ricerca degli strumenti ecc.

Cosa sono e differenza tra Forward Engineering e Reverse Engineering

Differenza tra Forward Engineering e Reverse Engineering

BASE DI CONFRONTO FORWARD ENGINEERING
REVERSE ENGINEERING
Descrizione Il forward engineering è un metodo per creare o realizzare un’applicazione con l’aiuto di determinati requisiti di un cliente o consumatore.   Il reverse engineering è il processo di recupero del progetto, delle specifiche dei requisiti e delle funzioni di un prodotto da un’analisi del suo codice.  
Natura Il forward engineering è di natura prescrittiva, in cui gli sviluppatori devono seguire regole particolari per i risultati corretti.   Il reverse engineering è adattivo in base al quale l’ingegnere deve scoprire cosa ha fatto lo sviluppatore.  
Tempo Il forward engineering richiede tempo rispetto al reverse engineering.   Il reverse engineering richiede meno tempo rispetto al reverse engineering.  
Processi Nel forward engineering, il processo di produzione inizia con le specifiche del sistema e include la progettazione e l’implementazione del sistema di sviluppo.   Nel reverse engineering, il processo di produzione inizia con il sistema esistente e la tecnica di sviluppo per la sostituzione si basa sull’interpretazione.  
Modello Il modello finale del forward engineering deve essere completo ed esatto.   Un modello imperfetto o parziale è ancora utile nel reverse engineering.  
Competenze Il forward engineering richiede abilità e competenze elevate.   Il reverse engineering non richiede molte competenze.  
Esempio Esempi pratici di forward engineering sono la costruzione di kit elettronici, la costruzione di motori CC, ecc.   Un esempio pratico di reverse engineering è la ricerca degli strumenti, ecc.  

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *