4a_sia_pdl_1617_informatica_ranieri

Transcript

4a_sia_pdl_1617_informatica_ranieri
Istituto Tecnico Commerciale e per geometri “G. Marconi” – PENNE (PE)
Settore SISTEMI INFORMATIVI AZIENDALI (SIA)
PIANO DI LAVORO – Prof. RANIERI VINCENZO PAOLO
DISCIPLINA
CLASSE/SEZIONE
ANNO SCOLASTICO
ANALISI DELLA
SITUAZIONE INIZIALE
DEGLI STUDENTI
INFORMATICA
4A INDIRIZZO SIA
2016 2017
La classe 4A SIA è composta da soli 7 alunni. La classe non è quindi numerosa, è generalmente attenta e
partecipe alle lezioni in classe e in laboratorio. Vi è a volte qualche momento di distrazione, che comporta un
calo di attenzione generale. Qualche comportamento appare ancora piuttosto infantile. La classe non sembra
molto omogenea nella preparazione: alcuni appaiono motivati e volenterosi, altri devono essere seguiti con più
attenzione e costanza per ottenere il raggiungimento degli obbiettivi prefissati. Si segnala qualche assenza e/o
ritardo di troppo da parte di qualcuno.
·
·
·
·
·
·
FINALITA’ SPECIFICHE E
TRASVERSALI DELLA
DISCIPLINA
·
·
·
Promuovere le facoltà intuitive e logiche
Educare ai procedimenti euristici e ai processi di astrazione
Esercitare al ragionamento induttivo e deduttivo
Sviluppare le attitudini analitiche e sintetiche
Utilizzare un linguaggio specifico, esprimendosi in modo chiaro e corretto
Raggiungere e consolidare la capacità di ragionamento coerente e argomentato, espresso con il
rigore linguistico della disciplina informatica.
Comprendere l’impostazione che privilegia gli aspetti concettuali e applicativi della materia
Comprendere l’importanza del linguaggio di programmazione come mezzo espressivo e
come strumento applicativo.
Inoltre,al fine di contribuire allo sviluppo del processo di maturazione dell’individuo e favorire lo
sviluppo civile e personale di ogni alunno si perseguiranno le seguenti finalità educative:
¨ promuovere il senso di responsabilità
¨ promuovere la motivazione alla conoscenza e all’apprendimento
¨ promuovere la capacità di condividere le regole all’interno del gruppo classe.
1
Obiettivi cognitivo – operativi
L’insegnamento dell’informatica in questa classe è finalizzato alla promozione e sviluppo delle competenze progettuali. Gli allievi, dopo aver
analizzato e scomposto in parti il problema, giungeranno alla soluzione assemblando i moduli che i singoli gruppi avranno messo a punto.
Per perseguire il traguardo, si porrà particolare attenzione a:
·
I processi di comunicazione.
·
Gli aspetti logici, tecnici, organizzativi.
·
Le dinamiche dei gruppi di lavoro.
Pertanto l’allievo dovrà essere in grado di:
·
·
Associare ad ogni situazione problematica la più idonea struttura di dati.
Codificare algoritmi, anche in un secondo linguaggio di programmazione, rilevando analogie e differenze con quello precedentemente
studiato.
·
Utilizzare manuali tecnici per risolvere autonomamente problemi di programmazione.
·
Validare programmi.
·
Produrre un’efficace documentazione contestualmente allo sviluppo del progetto.
·
Definire archivi senza ridondanze individuando le informazioni e le relazioni essenziali.
·
Operare con archivi diversamente organizzati valutandone potenzialità e limiti.
·
Possedere una visione d’insieme delle caratteristiche di uno specifico sistema di gestione di basi di dati e degli obiettivi che esso si
prefigge.
·
Analizzare situazioni complesse scomponendo i problemi in parti e definendo per ciascuna di esse le funzioni, i dati in ingresso e quelli
in uscita.
·
Realizzare procedure risolutive di sottoparti di progetti, nel rispetto delle specifiche.
·
Assemblare parti per ottenere la soluzione di problemi complessi.
Diventa di fondamentale importanza l’utilizzo del laboratorio e del sistema di elaborazione. L’attività dell’anno è finalizzata, essenzialmente, a
progetti complessi. Particolare attenzione sarà prestata a:
·
La stesura delle specifiche.
·
Il test delle singole parti.
·
L’assemblaggio e la coerenza tra moduli.
·
La stesura delle note operative.
2
Il numero delle ore di laboratorio destinate ad attività ripetitive come, ad esempio, la codifica e l’immissione di dati dovrebbe essere contenuto il più
possibile. Per agevolare questa fase di lavoro, si adotteranno tutti quegli accorgimenti che possono facilitarla. L’allievo deve mantenere una
visione di insieme sugli strumenti disponibili (word processor, sistemi di basi di dati, fogli elettronici) scegliendo, di volta in volta, quelli più idonei
per trattare i dati del problema. In tal modo si svilupperanno le competenze relative all’interazione tra ambienti software differenti.
Interventi di recupero
Si farà riferimento alle decisioni del Consiglio di Classe, per quanto riguarda le modalità e le attuazioni degli interventi di recupero per gli alunni
che risulteranno carenti nella preparazione.
Nuclei fondanti della disciplina (standard minimi da conseguire)
·
Costruzione di pagine Web complete (statiche e dinamiche), anche con fogli di stile.
·
Individuare le caratteristiche dei sistemi operativi moderni e saperli utilizzare.
·
Costruzione di programmi C/Python completi in ambiente Windows e GNU Linux.
·
Basi della programmazione a oggetti.
Contenuti della disciplina e loro scansione temporale
L’articolazione degli argomenti di insegnamento poggia su quattro moduli fondamentali:
§ Programmazione web statica e dinamica
§ Programmazione C++/Python imperativa e ad oggetti
§ Trasmissione dati.
§ Base di dati.
I moduli precedenti costituiscono ognuno un tema con il quale l’allievo:
·
Sistematizzerà le sue conoscenze acquisendo una visione organica e funzionale.
·
Acquisirà la determinata consapevolezza della sempre maggiore diffusione di strumenti telematici che interagiscono con banche dati.
·
Sarà aggiornato sulle più moderne tecnologie utilizzate e sui servizi che la rete offre, in modo da saper stabilire quali sono gli
strumenti più idonei e moderni in grado di risolvere un determinato problema.
3
·
Applicherà le proprie conoscenze anche a problematiche sviluppate in altre discipline, focalizzando l’attenzione da un lato sul sistema
organizzativo e informativo, dove si presentano precise rappresentazioni e si individuano problemi, dall’altro si studiano soluzioni e si
individuano e si coordinano strumenti.
Data la propedeuticità della disciplina, molto spesso durante l’anno gli argomenti trattati verranno ripresi e approfonditi, di volta in volta alla luce
delle nuove conoscenze e competenze acquisite. Si può comunque prevedere una scansione di questo tipo:
Settembre / Ottobre
Linguaggi HTML e CSS
Obiettivi generali (conoscenze, abilità e competenze):Conoscere le funzioni dei linguaggi di tipo markup. Conoscere le caratteristiche fondamentali del linguaggio
HTML. Scrivere un documento HTML e leggerlo con un browser. Saper applicare formattazioni semplici e complesse ai documenti. Migliorare la veste grafica di
un documento HTML e personalizzare documenti HTML esistenti.
·
Formato degli oggetti utilizzati nel Web.
·
Codici (tag) fondamentali del linguaggio HTML. Basi del linguaggio HTML: titolo e struttura di una pagina, commenti, testo e immagini,
collegamenti ipertestuali (link) relativi ed assoluti, elenchi puntati e numerati (liste).
·
Formattazione e allineamento del testo. Tipo e dimensione dei font. Paragrafi, intestazioni, stile dei caratteri, testo preformattato, linee
orizzontali, ritorno a capo, caratteri speciali. Link (relativi ed assoluti), immagini.
·
Tabelle: tag <TABLE> (attributi BORDER, CELLSPACING, CELLPADDING, WIDTH), tag <CAPTION> (attributo ALIGN), tag <TR>,
<TD> e <TH> (attributi ALIGN, VALIGN, ROWSPAN, COLSPAN, WIDTH).
·
Frames: tag <FRAMESET> (attributi COLS, ROWS, FRAMEBORDER, BORDERCOLOR, BORDER, FRAMESPACING), tag <FRAME>
(attributi SRC, NAME, SCROLLING, NORESIZE) tag <BASE> e attributo TARGET.
·
Image Map: tag <IMG> e attributo USEMAP, tag <MAP> e attributo NAME, tag <AREA> (attributi SHAPE, COORDS, HREF). Valori
RECT, CIRCLE, POLY.
·
Form (Moduli). Metodi POST e GET. Attributo ACTION. Pulsanti di inoltro (submit), campo di testo, campo reset, radio (opzione),
checkbox (selezione) e campo password. Tag <INPUT> e attributo TYPE (con valori SUBMIT, RESET, TEXT, PASSWORD, RADIO,
CHECKBOX, IMAGE), Attributi NAME, SIZE, MAXLENGTH, VALUE, CHECKED, SRC. Tag <SELECT> e attributi MULTIPLE, SIZE. Tag
OPTION e attributi SELECTED, VALUE. Aree di testo (TEXTAREA e attributi COLS e ROWS). Tag <BUTTON> e attributo TYPE.
·
Fogli di stile (Cascading Style Sheets). In linea, incorporati ed esterni. Classi, selettori e oggetti.
·
Pianificazione di un sito, sviluppo del progetto e realizzazione. CMS Wordpress e Joomla! Installazione e utilizzo in rete locale.
4
Novembre / Dicembre
Sistema operativo Linux
Obiettivi generali (conoscenze, abilità e competenze) Installare e personalizzare un sistema operativo, utilizzare le risorse del sistema attraverso comandi e script
della shell, conoscere le principali interfacce per l’utilizzo delle funzioni dei sistemi operativi. Essere in grado di utilizzare i comandi di base del sistema con la
sintassi corretta e gestire file e risorse attraverso i comandi del sistema operativo.
·
Distribuzioni del sistema operativo Linux. LiveCD e installazione su memoria di massa.
·
Organizzazione del file system. Manuale online di un comando Unix.
·
Comandi per la gestione di file e directory: pwd, mkdir, cd, ls, cat, cp, mv, rm, rmdir. Caratteri jolly ? e *.
·
Programmi di utilità per il desktop (calcolatrice interattiva bc, programma mail per l'invio di messaggi di posta elettronica fra utenti del
sistema, programma cal per la visualizzazione del calendario, date per la visualizzazione di data/ora e who per la lista degli utenti
connessi). Editor di testo mcedit e nano.
·
Comando chmod per la gestione dei permessi. Notazione ottale e notazione standard. Utenti u (user), g (group), o (others), a (all).
Significato delle opzioni +, - e = e dei permessi r, w, x applicati a file e directory.
·
Redirezione di standard input, standard output e standard error. Caratteri speciali (metacaratteri) < (input), > (output), >> (output in
modalità append), >? (standard output e standard error).
·
Pipeline di comandi. Filtri sui file. Comando tee.
·
Comandi sort (ordinamento, opzioni –n, -r, -u, -t e +x, con x = numero del campo in base al quale ordinare), wc (conteggio, opzioni –c, -w, l), grep (ricerca, opzioni –i, -n), cut (estrazione, opzioni –f, -c, -d), head e tail (inizio e fine di un file).
·
Gestione dei processi. Comandi per la gestione dei dispositivi di memoria di massa.
·
Utilizzo delle periferiche collegate al sistema. Meccanismo di avvio e arresto dei servizi. Comandi per eseguire il backup.
Febbraio / Marzo
Dati strutturati: vettori, matrici, stringhe e record
Obiettivi generali (conoscenze, abilità e competenze):Conoscere la differenza tra struttura astratta o informativa
e struttura interna o concreta dei dati.
Conoscere gli array unidimensionali (vettori) e bidimensionali (matrici). Conoscere gli algoritmi di ricerca e ordinamento. Conoscere il tipo di dato record e le sue
caratteristiche. Saper utilizzare variabili strutturate per risolvere un problema. Riuscire a manipolare e ordinare insiemi di dati secondo criteri di volta in volta
specificati.
o
o
o
o
Richiami sul linguaggio di programmazione C++: sequenza, selezione e iterazione
Array monodimensionali (vettori). Caricamento e visualizzazione di un vettore. Vettori con elementi casuali.
Algoritmi di ricerca e ordinamento. Fusione.
Array bidimensionali (matrici). Caricamento e visualizzazione di una matrice. Matrici ad elementi casuali. Matrici quadrate e rettangolari.
Operazioni notevoli fra matrici: somma, differenza, prodotto per un numero reale, prodotto riga per colonna (prodotto fra matrici).
5
o
Array di caratteri e stringhe. Carattere di controllo (fine stringa) \0. Specifiche di formato per l’input di stringhe senza spazi e con spazi.
o
o
Libreria <string.h> e funzioni principali. Applicazioni delle funzioni strcmp e strcpy per l’ordinamento di un elenco di stringhe.
Problemi con stringhe: calcolo della lunghezza, ricerca, conteggio e sostituzione di occorrenze di caratteri. Array di stringhe come casi
particolari di matrici. Metodi di ricerca elementari di una stringa all’interno di un testo
o
Strutture (record). Tracciato di un record. Clausola typedef per la definizione di nuovi tipi.
o
Tabelle. Rottura di codice in un array di strutture. Costanti ed enumerazioni.
Marzo / Aprile
Programmazione modulare. Metodologia top-down
Obiettivi generali (conoscenze, abilità e competenze):Conoscere la definizione di programma e sottoprogramma. Conoscere le forme per dichiarare e chiamare
un sottoprogramma. Conoscere i concetti top-down e bottom-up. Conoscere i parametri attuali e formali. Conoscere le procedure e le funzioni. Conoscere
l’ambiente e le regole di visibilità delle variabili. Conoscere la definizione di ricorsione. Saper suddividere un problema in sottoproblemi. Saper definire e
riconoscere ambienti locali e globali. Saper implementare procedure e funzioni. Rafforzare la comprensione nell’utilizzo dei sottoprogrammi.
·
Lo sviluppo top-down. Procedure e funzioni.
·
Funzioni con parametri. Parametri attuali e formali. Passaggio di parametri per valore (copia) e per indirizzo (riferimento).
·
Funzioni nel linguaggio C++. Prototipi. Valori di ritorno e parola chiave void.
·
Implementazione del corpo di una funzione. Istruzione return.
·
Regole di visibilità delle variabili (scope). Variabili locali e variabili globali.
·
Funzioni predefinite (built-in) e librerie di funzioni. Direttiva di inclusione #include.
·
Passaggio di parametri alla funzione main. Variabili argc (argument count) e argv[] (argument vector).
·
Funzioni ricorsive: esempi notevoli e applicazioni.
·
Array e funzioni. Costruzione di programmi modulari e passaggio di array alle funzioni.
Aprile
La progettazione di sistemi e l’object oriented
Obiettivi generali (conoscenze, abilità e competenze):Metodologia di sviluppo del software. Fasi di sviluppo di progetti software. Programmazione a oggetti.
Implementazione di algoritmi con il paradigma a oggetti. Documentazione relativa al progetto contestualmente al suo sviluppo. Progettazione software mediante
UML. Imparare le tecniche e i principali metodi per costruire programmi chiari, corretti e facilmente modificabili Saper definire le classi individuandone attributi e
metodi. Saper riconoscere le parti di un progetto UML. Saper realizzare classi e oggetti mediante un linguaggio di programmazione moderno.
·
L’ingegneria del software. Il ciclo di vita del software.
·
La programmazione orientata agli oggetti. UML.
·
Modellazione degli oggetti. Caratteristiche delle classi e degli oggetti.
6
·
Costruttori. Oggetti pubblici e privati. Gestione di una classe semplice.
·
Ereditarietà e generalizzazione. Associazioni e link. Diagramma delle classi.
·
Implementazione di classi e oggetti in un linguaggio di programmazione.
Maggio
Reti di calcolatori
Obiettivi generali (conoscenze, abilità e competenze):conoscere la struttura di una rete di computer. Conoscere le varie topologie fisiche e logiche. Conoscere le
tecniche per la trasmissione dei dati. Conoscere il modello architetturale ISO/OSI e TCP/IP. Conoscere gli indirizzi IP, le classi di indirizzi e le subnet mask.
Conoscere le tecniche e gli strumenti per implementare una rete locale. Saper individuare le topologie logiche e fisiche. Saper individuare l’architettura di rete più
efficiente nel contesto aziendale preso in esame. Saper implementare una rete locale. Saper configurare un computer in modo da poterlo connettere a una rete
locale oppure remota. Saper effettuare diagnosi in rete.
·
Introduzione alle reti di calcolatori. Breve storia. Tipi di reti. Reti locali LAN e globali WAN. Architettura Client / Server.
·
Mezzi fisici di trasmissione: cavo elettrico, cavi coassiali Thicknet e Thinnet, cavi a doppini incrociati UTP e STP, fibra ottica.
·
Topologie principali: a bus lineare, a stella, ad anello.
·
Ripetitori, terminatori, connettori a T e connettori cilindrici.
·
Hardware per reti LAN e WAN. Hub/Switch. Modem e Router.
·
Principi di progettazione e realizzazione di una LAN: problematiche, strumenti e implementazione. LAN virtuali (VLAN) e reti senza fili
(WLAN). Normative di riferimento.
·
Protocolli di rete. Tipi di trasmissione. Metodi di accesso.
·
Organizzazioni competenti. Basi del modelli OSI. Architettura di rete Ethernet. Velocità di trasmissione 10Mbps/100Mbps/1Gbps.
·
Internet e protocollo TCP/IP.
·
Indirizzi IP e loro classificazione: classi di indirizzi e maschere di sottorete. Reti private (RFC 1918). Maschera di sottorete (netmask).
Processo AND. Gateway predefinito e server DNS.
·
ID di rete e ID dell’host. Installazione e configurazione del protocollo TCP/IP in una rete locale.
·
Protocolli HTTP e FTP, trasferimento e condivisione file, posta elettronica. Client testuale ftp di Windows e comandi principali. Utilizzo del
browser e dei motori di ricerca.
·
Altri servizi di rete e loro utilizzo: SMTP, POP3, IMAP, Telnet, SSH.
7
Maggio
Archivi di dati, basi di dati DBMS e progettazione
Obiettivi generali (conoscenze, abilità e competenze):Richiamare le nozioni di base relative agli archivi e ai loro supporti di registrazione. Possedere una visione
d’insieme sui diversi tipi di organizzazione degli archivi. Rappresentare situazioni reali o processi aziendali attraverso modelli. Applicare le tecniche fondamentali
per la progettazione di basi di dati. Conoscere le caratteristiche di un sistema di gestione di basi di dati e degli obiettivi che esso si prefigge. Comprendere i
concetti e le tecniche per la progettazione di basi di dati. Individuare le fasi della metodologia di sviluppo software. Utilizzare le tecniche per la definizione del
modello di dati e documentare l’analisi di un problema in modo efficace. Saper determinare le entità, gli attributi e le associazioni e disegnare lo schema E/R.
Saper applicare le regole di lettura del modello e le regole di derivazione del modello logico.
·
Gli archivi. Operazioni su archivi: manipolazione (inserimento, modifica, cancellazione) e interrogazione.
·
Metodologia. Modellazione dei dati. Modello E/R (Entity/Relation Ship).
·
Entità, associazioni, attributi. Chiavi primarie ed esterne. Chiavi multiple.
·
Associazioni fra entità. 1 : 1, 1 : N, N : N. Regole di lettura. Regole di derivazione del modello logico.
·
Implementazione logica e fisica degli archivi (tabelle). Esempi notevoli di modellazione dei dati. Analisi di un problema e organizzazione in
funzioni.
·
Modello relazionale e concetti fondamentali. Operazioni relazionali (selezione, proiezione e congiunzione). Inner Join (congiunzione
interna), Self-Join (congiunzione di una tabella con se stessa). Alias e clausola AS. Congiunzioni interne multiple.
·
Esempi notevoli con modello E/R, tabelle e operazioni relazionali.
·
Integrità dell’entità e integrità referenziale. ON DELETE e ON UPDATE CASCADE.
LABORATORIO DI INFORMATICA
·
Linguaggio HTML e progettazione di pagine Web complete, con utilizzo di tabelle, frames, immagini a mappa, form e fogli di stile.
·
Sistema operativo Linux. Comandi principali. Utilizzo del sistema operativo attraverso login remoto mediante client SSH PuTTY.
·
Programmazione C++/Python
·
Corso multimediale sulle reti di calcolatori.
·
Programmazione client/server in ambiente LAMP (Linux, Apache, MySQL, PHP) e simulazione di un ambiente hosting.
·
Microsoft Access. Analisi, progettazione e implementazione di una base di dati e dei relativi archivi. Interrogazioni (query) alla base di dati.
8
Metodologie didattiche
Il raggiungimento degli obiettivi sarà realizzato attraverso metodi di insegnamento basati sulle seguenti tecniche didattiche:
§
Lezioni frontali nelle quali si cercherà di coinvolgere attivamente gli studenti con domande, riferimenti ad argomenti trattati in altre
§
discipline ed a problematiche reali.
Esercitazioni di tipo pratico/teorico con vari livelli di difficoltà e di integrazione: i) mirate all’apprendimento ed all’applicazione dei singoli
argomenti, ii) mirate all’integrazione dei vari argomenti trattati, iii) mirate ad ambiti multidisciplinari e iv) mirate alla risoluzione di
problematiche reali.
§
Ricerche finalizzate all’approfondimento ed all’aggiornamento degli argomenti trattati.
Strumenti
Per lo svolgimento delle attività si utilizzeranno, oltre ai metodi tradizionali (lavagna e libri di testo), il laboratorio di Informatica, dispense,
presentazioni multimediali, lavagne luminose, proiettori ed in genere il maggior numero di strumenti disponibili all’interno della scuola, al fine
di variegare le presentazioni dell’attività didattica.
Gli ambienti di lavoro saranno ripartiti tra aula e laboratorio.
Saranno previsti lavori di gruppo e gli allievi saranno suddivisi in modo eterogeneo allo scopo di stimolare lo scambio di esperienze diverse
maturate dai singoli allievi ed al fine di stimolare gli studenti tramite il confronto diretto e la collaborazione reciproca.
Libri di testo utilizzati:
o
EPROGRAM – Secondo Biennio
Autore: Iacobelli, Ajme, Marronei
Editore: Juvenilia Scuola
Verifiche periodiche/Criteri di valutazione
In accordo con la programmazione didattico-curricolare della classe, per la valutazione sono previste tre tipologie di verifiche: prove scritte
(compiti in classe, almeno 2 nel primo periodo e 3 nel secondo), prove orali (almeno 2 nel primo periodo e 2 nel secondo, compresi test a
risposta multipla), prove pratiche di laboratorio (almeno 1 nel primo periodo e 1 nel secondo). Il secondo periodo è comprensivo della
scansione valutativa intermedia alla data del 31/03/2017. Le verifiche saranno volte ad accertare il raggiungimento degli obiettivi prefissati. Le
verifiche saranno naturalmente periodiche, sia individuali che collettive. La valutazione sarà:
9
o
In itinere per verificare la capacità di apprendimento in modo progressivo e per poter praticare eventuali strategie di recupero per
gli allievi che si trovino in difficoltà;
o
o
Sommativa, in questo caso si sommano gli esiti delle varie prove nella maniera più obiettiva possibile;
Finale per valutare se l’allievo ha acquisito quelle conoscenze e abilità specifiche in maniera tale da poter sostenere l’Esame di
Stato conclusivo del corso di studi.
Data ____________30/10/2016_________________________
Firma _________
10
________________