forked from ggiuffre/sweki
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path01_intro.html
52 lines (41 loc) · 4.97 KB
/
01_intro.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it">
<head>
<title>Introduzione all'ingegneria del software - sweki</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="author" content="Giorgio Giuffrè" />
<meta name="keywords" content="sweki, ingegneria, software, introduzione" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" type="text/css" href="main.css" />
<link rel="next" href="02_processi.html" />
</head>
<body>
<div id="header">
<h1>
<span class="prev"><</span>
<a href="index.html"><acronym title="SoftWare Engineering wiKI">sweki</acronym></a>
<a class="next" title="next" href="02_processi.html">></a>
</h1>
<h2>la <span xml:lang="en">wiki</span> di Ingegneria del <span xml:lang="en">Software</span></h2>
</div>
<div id="content">
<h1>Introduzione all'ingegneria del <span xml:lang="en">software</span></h1>
<h2>Cos'è l'ingegneria del software?</h2>
<p>Mentre la scienza è un insieme di princìpi interpretativi della realtà, l'<strong>ingegneria</strong> è un'<em>applicazione</em> della scienza alla realtà (magari in modo originale, ingegnoso). Quindi l'ingegneria non crea nuova conoscenza, come invece fa la scienza. Il termine <strong xml:lang="en">software</strong>, invece, si compone di due parti: <span xml:lang="en" lang="en">ware</span> significa "cosa inerte", oggetto; <span xml:lang="en">soft</span> aggiunge una connotazione astratta, dato che il <span xml:lang="en">software</span> non è altro che una costruzione del pensiero. L'ingegneria del <span xml:lang="en">software</span> è l'applicazione dell'ingegneria al <span xml:lang="en">software</span>, cioè l'applicazione di un approccio <strong>sistematico</strong>, <strong>disciplinato</strong> e <strong>quantificabile</strong> allo sviluppo, al funzionamento e al mantenimento del <span xml:lang="en">software</span>. Sistematico nel senso che abbraccia un metodo; disciplinato poiché segue delle norme, anzi la <span xml:lang="en">best practice</span>; quantificabile poiché si deve sapere <span xml:lang="la">a priori</span> quanto si consumerà (in risorse). Le ingegnerie dell'<span xml:lang="en">hardware</span>, del <span xml:lang="en">software</span> e dei processi sono specializzazioni dell'ingegneria dei sistemi.</p>
<h2>Cosa <em>non</em> è l'ingegneria del <span xml:lang="en">software</span>?</h2>
<p>L'ingegneria del <span xml:lang="en">software</span> (d'ora in avanti "<abbr title="Ingegneria del Software">IS</abbr>") non è un ramo dell'informatica; è una disciplina ingegneristica che fa affidamento solo in parte sull'informatica, allo stesso modo in cui l'ingegneria meccanica fa affidamento sulla fisica.</p>
<h2><span xml:lang="en">Software</span></h2>
<p>Per <span xml:lang="en">software</span> s'intende il programma con la sua documentazione. A causa dell'assenza di vincoli fisici, il <span xml:lang="en">software</span> ha un potenziale illimitato; tuttavia, per lo stesso motivo, esso può velocemente diventare complesso, difficile da capire e costoso da cambiare. Difatti, l'<abbr title="Ingegneria del Software">IS</abbr> si confronta con progetti così impegnativi da richiedere necessariamente un lavoro di gruppo.</p>
<h2>Efficacia ed efficienza</h2>
<p>I prodotti <span xml:lang="en">software</span> devono presentare due qualità: <strong>efficacia</strong> (conformità alle attese) ed <strong>efficienza</strong> (contenimento dei costi per raggiungere un obiettivo). L'efficienza ha a che fare soprattutto con i bisogni e le risorse<sup class="footnote"><a id="txt1" href="#ftn1">[1]</a></sup>; l'efficacia, invece, riguarda il prodotto finale. Tuttavia i due termini confliggono: l'efficacia sottintende il verbo "fare", mentre la massima efficienza è proprio il non fare nulla! Bisogna dunque badare a trovare un compromesso, possibilmente in modo sistematico. Ma sappiamo che esiste un ciclo virtuoso tra sistematizzazione ed esperienza. Ecco allora che si ricorre alla <span xml:lang="en">best practice</span>, la prassi che per esperienza e per studio abbia mostrato di garantire i migliori risultati in circostanze note e specifiche.</p>
<h2>Come studiare</h2>
<p>Due sono i tipi di libri su cui si può studiare: i <strong>libri teorici</strong> espongono i princìpi ma non l'esperienza concreta; i <strong>libri esperienziali</strong> fanno l'opposto e servono soprattutto per risolvere dubbi. ingegneria del <span xml:lang="en">software</span> va capita studiando con entrambi questi tipi di libri e, soprattutto, partecipando al <strong>progetto didattico</strong>. Inoltre, torna molto utile compilare un proprio <strong>glossario</strong> dei termini.</p>
</div>
<div id="footnotes">
<ol>
<li id="ftn1">Risorse: persone, tempo, denaro e materiale.</li>
</ol>
</div>
</body>
</html>