2009-06-06 2 views
20

Sono stato spronato a porre la domanda con una risposta che ho visto per una domanda su Software Engineering Videos. Ecco la risposta:Qual è la differenza tra informatica e ingegneria del software?

Come parte, fai attenzione a ciò che stai collegando qui. Ingegneria del software e Informatica sono discipline molto diverse. Software L'ingegneria comprende il ciclo di vita dello sviluppo del software (comprese le metodologie e il processo ), la modellazione, la cultura aziendale SE ecc. Ed è molto, molto meno interessato al codice, agli algoritmi, all'efficienza e simili.

con risposta il 12 maggio da JoshJordan

e questo è stato il mio commento:

Non sono d'accordo un po '. Ingegneria del software è una sottodisciplina di Computer Science. Una delle sottozone di Ingegneria del Software è la Costruzione, che riguarda interamente il codice. Si prega di fare riferimento a SWEBOK.

Penso che gli algoritmi non rientrino nell'ingegneria del software, ma la programmazione orientata agli oggetti, la programmazione sicura e simili non lo fanno.

Alcuni hanno detto che si tratta di un duplicato, ma Computer Engineering riguarda l'hardware e l'ingegneria del software riguarda il software.

+2

possibile duplicato? http://stackoverflow.com/questions/384164/computer-engineering-vs-computer-science – JasonV

+3

ingegneria informatica non è l'ingegneria del software ingegneria informatica è di fare ferramenta ... un mix di informatica e ingegneria elettrica – LWoodyiii

+1

Qual è la vostra domanda? Sembra che tu abbia semplicemente pubblicato un'opinione qui. Pubblica la tua opinione nella domanda originale. Questa domanda dovrebbe essere chiusa sulla base di "Not a question" e "Duplicate". –

risposta

3

L'informatica è più teoria che pratica; Ingegneria del software è ancora teoria, ma più mani; I sistemi informatici informatici sono più pratici e meno teorici e i sistemi informativi di gestione sono tutti pratici con una teoria molto piccola.

8

Come grande scienza del computer, Dijkstra ha detto, "L'informatica non riguarda più i computer che l'astronomia riguarda i telescopi." Quindi, dire che l'ingegneria del software (che ha a che fare con i computer) è una sotto-disciplina del computer la scienza, è come dire che l'ottica (che ha a che fare con i telescopi) è una sotto-disciplina dell'astronomia ;-)

Io, mi preoccupo dei telescopi, oops intendo i computer, quindi chiaramente non sono un astronomo, oops intendo uno scienziato informatico ;-) [qualunque cosa wikipedia insiste nel dire di me ;-)], esattamente come una volta ho scritto in my blog.

+0

Il link del tuo blog non funziona. – LWoodyiii

+0

funziona bene per me: facendo clic su di esso o copiandolo e incollandolo, http://aleaxit.blogspot.com/2008_09_01_archive.html - quali problemi stai osservando? –

+1

Non credo che Dijkstra lo abbia mai fatto. Si riferisce più al rapporto tra CS e l'elettronica, per esempio. E si potrebbe anche dire il contrario di quello che hai detto, che l'ingegneria del software è l'astronomia del telescopio CS. – dividebyzero

21

Nella maggior parte riduzionista e semplicistico dei termini: l'informatica è teoria, e l'ingegneria del software è pratica. Questo è simile alla relazione tra, per esempio, chimica (legami, gusci di valenza, tavola periodica, teoria dei quanti) e ingegneria chimica (produzione industriale, resa di purezza, ricerca del miglior materiale dato un insieme di vincoli).

+0

Buona intuizione, ma personalmente direi che l'ingegneria del software si trova ad un livello ancora più elevato rispetto all'ingegneria chimica rispetto alla chimica. O, per esempio, l'elettronica rispetto alla fisica dello stato solido. Ingegneria del software riguarda problemi come "quanti ingegneri chimici hai bisogno di sostituire una lampada?" – dividebyzero

0

Bene, tutte queste discipline sono solo una sottodisciplina della filosofia.

+0

Qual è la tua prospettiva in merito? La "risposta" così com'è, non lo è. –

0

Computer Science: Copre i concetti fondamentali e le tecnologie coinvolte con il modo di rendere un computer fare qualcosa. Imparare a programmare un computer scrivendo software è essenziale, e la programmazione per computer è usata nella maggior parte dei corsi di informatica.

Software Engineering: SE è sulla progettazione e sviluppo di software. Tecniche, tecnologie, buone pratiche, test e così via. Per fare un esempio, il tuo browser è stato sviluppato da Software Engineers.

0

direi che Informatica è l'intero campo della teoria e l'applicazione che coinvolge facendo calcoli su computer e che comprende come i computer di lavoro. È la scienza completa dei computer.

ingegneria del software è un sottoinsieme molto più piccolo di informatica che ha appena a che fare con la teoria, concetti, e le applicazioni di scrittura programmi attuali.

Computer Science si riferisce a molto di più di una semplice ciò che accade in programmi di scrittura.