Eindtermen Opleiding Informatica Universiteit Antwerpen – Faculteit Wetenschappen Versie 0.3 - zaterdag, 6 juli, 2002 (Na Onderwijscommissie 19 juni en e-mail feedback). Aanpassingen: (a) Sterkere opsplisting Bachelor-Master; (b) Uitbreiding kerntaken; (c) Extra modules voor de bachelor-opleiding (operating systems, …); (d) Classificatie essentiëel belangrijk - nuttig bij de eindtermen Te bespreken op de Onderwijscommissie informatica — 10 juli 2002 Dit is een 'levend' document en wordt aangepast op basis van discussie en feedback. Het document is te vinden op http://win-www.uia.ac.be/u/sdemey/BaMa/ Samenvatting
De Informatica opleiding aan de Universiteit Antwerpen wordt —net zoals alle andere hogere opleidingen— gevraagd zich te reorganiseren naar het komende Bachelor/Master model. Liever dan enkele minimale aanpassingen door te voeren aan de huidige opleiding heeft de Onderwijscommissie Informatica ervoor gekozen om de opleiding grondig te hervormen, mede op basis van de aanbevelingen geformuleerd tijdens de net afgelopen visitatieronde. Daarom poogt dit document de competenties op te sommen die een student dient te verwerven tijdens zijn opleiding Informatica. Het is de expliciete bedoeling op basis van die opsomming ons onderwijs te reorganiseren in functie van een 3-jarige Bachelor gevolgd door een 2-jarige Master opleiding. Inleiding Informatica is vandaag de dag alomtegenwoordig. Bij elke administratie fungeert informatica als een essentieel element van de organisatie, ongeveer alle elektronische apparaten worden gestuurd door software en via het internet heeft de computer zijn opmars naar de huiskamer ingezet. Als gevolg daarvan is de vraag naar professionele informatici enorm gestegen, in zoverre zelfs dat het aanbod de vraag niet kan bijhouden. Anderzijds impliceert dit groeiend maatschappelijk belang een verhoogde eis naar kwaliteit, wat belangrijke consequenties heeft voor het opleidingsniveau van de informatici. Geconfronteerd met de vraag naar hooggekwalificeerde informatici, kiest de onderwijscommissie Informatica resoluut voor een opleiding van hoogwaardig wetenschappelijk niveau. Daartoe wil de onderwijscommissie de opleiding Informatica reorganiseren in functie van een 3-jarige Bachelor gevolgd door een 2-jarige Master opleiding. Deze reorganisatie zal tevens gebeuren op basis van de visitatieronde, die bij de informatica net achter de rug is 1. Als eerste stap van deze reorganisatie is een discussietekst opgesteld waarin een aantal toekomstscenerio's werden uitgetekend 2. Dat zijn er drie, te weten een Master Informatica (de huidige licentie Informatica) een Polyvalente Master (staat open voor Bachelors uit andere richtingen - vb. ASIB) en een Minor Informatica (Informatica als bijkomende opleiding naast een andere major - vb. Wiskunde-Informatica). Hier beperken we ons tot de Master Informatica; in een later stadium zullen we de Polyvalente Master en Minor Informatica uitwerken. Als tweede stap willen we een consensus bereiken rond de eindtermen die moeten gelden voor een komende Bachelor/Master informatica. Dit document maakt daartoe een eerste inventaris op van alle competenties die een student tijdens zijn opleiding dient te verwerven. De eindtermen zijn doelbewust erg gedetailleerd opgesteld, om het verschil duidelijk te maken met andere informaticagerelateerde opleidingen (industrieel en burgerlijk ingenieur, graduaat, …).
Eindtermen Opleiding Informatica (versie 0.3)
2/16
Doelstelling Het ultieme doel van de opleiding Informatica aan de Universiteit is bekwame informatici af te leveren die in staat zijn om (a) op leidinggevend niveau te functioneren, (b) bij te dragen tot de nieuwe ontwikkelingen in de informatica, en (c) deze waar nodig te exploiteren binnen hun beroepscontext. Beroepsprofielen
Zoals bevestigd in het zelfstudierapport informatica 1 is de beroepscontext waarin onze studenten moeten functioneren enorm gevarieerd. Hij wordt in hoofdzaak bepaald door de sector waar de informatica wordt toegepast; zo is er bijvoorbeeld een hemelsbreed verschil tussen transactieverwerking in banksystemen en controlesystemen voor geautomatiseerde fabricageprocessen. Ook de soort organisatie heeft een niet te verwaarlozen invloed, aangezien KMO's en multinationals nu eenmaal verschillende eisen aan hun informatica afdeling stellen. Tenslotte is er ook een aanzienlijke jobmigratie, waardoor pas afgestudeerden —zeker in het begin van hun carrière— vaak in verschillende omgevingen zullen terechtkomen. Ondanks die grote variëteit is het toch nuttig enkele typische beroepsprofielen te definiëren. Het weze duidelijk dat die alleen als leidraad dienen, en dat de situatie op de werkvloer vaak een combinatie van de verschillende beroepsprofielen zal inhouden. Bachelor
Een Bachelor Informatica moet in principe kunnen uitstromen naar de arbeidsmarkt, vandaar dat er daar enkele beroepsprofielen zijn voorzien. Toch is een Bachelor Informatica in hoofdzaak iemand die verondersteld wordt verder te studeren als Master Informatica. • •
Analist-programmeur. Analyseert problemen en creëert software oplossingen. Werkt meestal in teamverband (5-tal personen). Eerste-lijnshelper. Functioneert als een soort duivel-doe-al in een kleine onderneming, waarin hij een brede waaier aan problemen oplost (opzetten en beheren van netwerk, selectie van informatica platform, opleiden van gebruikers).
Master •
• • •
Projectleider. Draagt de technische verantwoordelijkheid over een (onderdeel van) een groot softwareproject (groter dan 10 manjaar). Is in staat een kleine ploeg (5-tal personen) op technisch niveau te leiden, zodat die ploeg in staat is problemen te analyseren en software oplossingen te creëeren. Consulent. Wordt ingehuurd om specifieke technische kennis en vaardigheden over te dragen; zowel aan andere informatici als aan managers. Vorser. Draagt bij tot de ontwikkeling van spitstechnologie, zowel in een academische als industriële context. Leraar. Combineert de master informatica met de lerarenopleiding om zo een gekwalificeerd lesgever te worden.
Lange termijn
Een master Informatica moet in staat zijn om op termijn door te groeien naar een verantwoordelijke positie binnen een grote organisatie. De meest voor de hand liggende functie is die van •
Beleidsadviseur Informatica [Chief Information Officer — CIO, EDP-Manager]. Adviseert de top van een groot bedrijf (directeur, manager) over strategische keuzes betreffende informatica infrastructuur. Zet die strategische keuzes om in actieplannen en zorgt voor de nodige opvolging ervan.
Eindtermen Opleiding Informatica (versie 0.3)
3/16
Uit de enquêtes afgenomen ter voorbereiding van het zelfstudierapport 1, bleek dat het leeuwenaandeel van onze pas afgestudeerden tijdens hun eerste vier jaar van hun professionele carrière functioneren als analist-programmeur of consulent. Maar de categorie "andere" was de op twee na grootste, wat een indicatie is voor de variatie aan beroepssituaties waarin onze afgestudeerden terechtkomen. Kerntaken
Los van de variërende beroepssituaties zijn er een aantal kerntaken die steeds terugkeren en waar we onze studenten op willen voorbereiden. Bachelor •
Implementatie van nieuwe software-systemen. Al dan niet als deel van een team, een gegeven basisontwerp omzetten in een werkend programma. Verfijnen van het basisontwerp (vb., geschikte interface ontwerpen), selecteren van te gebruiken software, integratie van bestaande componenten. • Onderhoud van bestaande software-systemen. Aanpassing van bestaande programma's aan veranderingen in mogelijkheden van zowel hardware als software (upgrades). In beperkte mate, aanpassing van bestaande programma's aan veranderde behoeften. • Implementatie en onderhoud van een databank. Gegevensmodel voor een databank kunnen opstellen en implementeren. In beperkte mate, bestaande databanken aanpassen in functie van veranderende behoeften. • Beheer van een lokaal netwerk. Selectie van geschikte netwerk-infrastructuur en protocollen. Uitvoeren van de nodige verbeteringen om schaal- en performantie problemen aan te pakken. • Support en advies. Oplossen van problemen, helpdesk functie. In kleinere organisaties (KMO) advies over nieuwe automatiseringsprojecten (haalbaarheid, nut, benodigde apparatuur, ...). De volgende twee kerntaken vormen de essentie van wat een "academische" bachelor onderscheidt van een "professionele" bachelor (cfr. graduaat). • •
Opvolgen technologische ontwikkelingen. De vakliteratuur volgen om op de hoogte te blijven van recente ontwikkelingen. Eigen maken nieuwe technieke. In staat zijn om heel efficient nieuwe programmeertalen, databanktechnieken, netwerktechnologie te leren gebruiken.
Master •
•
•
•
Analyse voor grootschalige informaticaprojecten. Identificeren van taken die voor automatisering in aanmerking komen, begrijpen van de achterliggende bedrijfsprocessen, vastleggen van de overeenkomstige gebruikersbehoeften. Ontwerp van grootschalige informaticaprojecten. Abstractie en decompositie van het specifieke probleem om tot een haalbare oplossing te kunnen komen. Identificatie van componenten die kunnen bijdragen tot een oplossing (vb. software bibliotheek, type netwerk, soort databank). Herstructureren van bestaande informatica-systemen. Identificatie van problematische componenten, selectie van de oplossingsstrategieën, doorvoeren van de nodige aanpassingen zonder de werking van het bestaande systeem te compromitteren. Kwaliteitscontrole. Tijdens het uitvoeren van informaticaprojecten de nodige controles voorzien om vooraf gespecifieerde kwaliteitsnormen te halen (cfr. betrouwbaarheid, onderhoudbaarheid, veiligheid, …).
Eindtermen Opleiding Informatica (versie 0.3)
•
•
•
Selectie van technieken, methodes, talen, architecturen, …. Het nemen van strategische beslissingen in dit verband: vb. hoe beveiligen we ons netwerk ? welk type databank ? welke rol voor formele methoden? ... Leiden van een groep informatici, met inbegrip van (a) het inschatten van de benodigde middelen (tijd, budget, apparatuur, mankracht, competenties); (b) taakverdeling op basis van technische competenties; (c) het plannen in de tijd van wanneer welke taken worden uitgevoerd; (d) het opvolgen en bijsturen van de planning. Wetenschappelijk onderzoek in de informatica. Een master informatica moet (a) experimenten kunnen opzetten om vast te stellen of bepaalde technieken bruikbaar zijn voor zijn bedrijf, (b) een bijdrage maken tot spitstechnologie om een strategisch voordeel op de concurrentie te creëeren, (c) doorstromen naar doctoraatsonderzoek.
4/16
Eindtermen Opleiding Informatica (versie 0.3)
5/16
Kerncompetenties Op basis van bovenstaande kerntaken is het mogelijk de competenties te identificeren die nodig zijn om die taken te vervullen. NOG UIT TE WERKEN: De bedoeling is dat er hier een 10 a 20-tal kerncompetenties komen voor zowel een bachelor als een master. Binnen de UA circuleren al een aantal lijsten met voorbeelden , maar ook hier zal het eerder een kwestie worden van keuzes maken. Liever dan teveel ineens te doen willen we van beneden af beginnen en eerst de eindtermen vastleggen. De kerncompetenties moeten dan de brug vormen tussen de kerntaken en de eindtermen. Het lijstje hieronder is dus eerder als tentatief te beschouwen Merk op dat die kerncompetenties essentieel zijn, aangezien ze de basis zullen vormen voor het accreditatiedossier. Bovendien zullen we a.h.v. die kerncompetenties moeten argumenteren waarom een +2 master de moeite waard loont. • • • • • •
Technische kennis en inzicht, om informaticaproblemen op een abstracte manier te analyseren en vervolgens een oplossingen te kunnen realiseren in een concreet systeem. Originaliteit en creativiteit om autonoom een complex probleem aan te pakken Wetenschappelijke methodiek, om nieuwe ontwikkelingen kritisch te kunnen evalueren en als basis voor een permanente vorming. Communicatievaardigheden —zowel schriftelijk als mondeling— spelen een centrale rol in de contacten met collega's en opdrachtgevers. Ploeggeest om grootschalige informaticasystemen te kunnen bouwen. Flexibiliteit, om in een steeds wisselende context te kunnen functioneren.
Eindtermen Opleiding Informatica (versie 0.3)
6/16
Modulair Overzicht Om bovenstaande competenties te verwerven splitsen we het curriculum op in een aantal modules. Daarbij maken we een sterk onderscheid tussen de bachelor —een brede basisvorming— en de master opleiding — een specialisatie. Anderzijds zijn er een aantal elementen die inherent zijn aan een wetenschappelijke opleiding op academisch niveau, en die worden gebundeld in drie basispijlers. Bachelor
hardware & operating systems
computer graphics
artificiële intelligentie
numerieke analyse
telecommunicatie
gegevens-en informatiebeheer
software ontwikkeling
Voor de bachelor opleiding voorzien we 7 basismodules (software ontwikkeling, gegevens en informatiebeheer, telecommunicatie, numerieke analyse, artificiële intelligentie, computer graphics, hardware & operating systems) die instaan formeel denken voor de kennis en inzichten specifiek voor de informatica. wetenschappelijke basis Anderzijds zijn er drie basispijlers (formeel denken, wetenschappelijke basis en maatschappelijke vorming maatschappelijke vorming) die Figuur 1: Modulair overzicht van de BachelorInformatica zorgen voor de noodzakelijke wetenschappelijke fundering (zie Figuur 1). DISCUSSIE: Is het idee van de vele basismodules in de bachelor OK ?En zijn de verschillende basismodules zelf dan voldoende ? Op basis van het huidige curriculum, zijn de modules computer graphics en artificiele intelligentie (in mindere mate ook hardware en operating systems) wat licht. We kunnen die evt. onderbrengen in de basispijler "formeel denken" en/of "wetenschappelijke basis". We kunnen ze ook samennemen in een module "Diversen / Perifiere Informatica / …".
computationele wetenschappen
telecommunicatie
software ontwikkeling
Tijdens de master opleiding bieden we vier opties aan: • gegevens en informatiebeheer • software ontwikkeling • telecommunicatie • computationele wetenschappen Deze opties sluiten nauw aan bij de aanwezige onderzoeksexpertise, zoals trouwens vereist voor een master opleiding. Desalnietemin is het de bedoeling samen te werken met andere departementen en universiteiten om de nodige kwaliteitsgaranties te bieden.
gegevens-en informatiebeheer
Master
formeel denken
wetenschappelijke basis
maatschappelijke vorming
Figuur 2: Modulair overzicht van de Master Informatica
Eindtermen Opleiding Informatica (versie 0.3)
7/16
Eindtermen Bachelor In dit hoofdstuk sommen we de verschillende eindtermen op die gelden voor een bachelor informatica. Een eindterm wordt hier gedefinieerd als "wat gemeten kan worden in een examen", waarbij we de eindtermen zoveel mogelijk formuleren in een active zin (kunnen i.p.v. kennen). Het aantal eindtermen moet ook beperkt worden, bij voorkeur een 3-tal per module en per categorie. Bovendien splitsen we die eindtermen op in drie categorieën (a) essentieel — i.e. zonder die kan een student zichzelf geen bachelor/master noemen; (b) belangrijk — daaraan kunnen we een goede bachelor/master herkennen; (c) nuttig — hier kan een bachelor/master zich differentiëren van zijn medestudenten. Deze classificatie is nodig om de volgende vragen —die zich op korte termijn gaan stellen— te beantwoorden. •
•
•
•
Waar liggen de prioriteiten ? Aangezien we nu overgaan van een 2 + 2 naar een 3 + 2 structuur, met de mogelijkheid om uit te stromen na 3 jaar, hebben we een instrument nodig om vast te leggen wat onze minimumnorm is voor studenten die afstuderen. Hoe verschilt onze opleiding van de andere ? In de nabije toekomst zullen we moeten vastleggen waarin onze opleiding verschilt van andere informatica-gerelateerde opleidingen (industrieel en burgerlijk ingenieur ICT, graduaat informatica, …). Wat zijn de toelatingsvoorwaarden voor de master ? Binnenkort zullen we moeten onderhandelen over wat bachelors uit andere richtingen moeten kunnen als ze de master informatica willen volgen. Wat verwachten we precies van een minor informatica ?Wat kunnen we eisen in het korte tijdsbestek van een minor ?
Software ontwikkeling
ESSENTIEEL: Een bachelor informatica moet minstens in staat zijn om … • de syntax en semantiek van een nieuwe programmeertaal zelfstandig en op een minimum aan tijd te leren • de basisconcepten van procedureel, objectgebaseerd, objectgeoriënteerd en generisch programmeren beheersen • te programmeren aan de hand van het objectgeoriënteerd paradigma in een gangbare programmeertaal (bijv. C++) BELANGRIJK: Een goede bachelor informatica is in staat om … • informaticaproblemen te specifiëren, analyseren, ontwerpen, programmeren en testen • bij te dragen tot het opstellen en opvolgen van een projectplan • vooraf gedefinieerde kwaliteitsnormen (cfr. betrouwbaarheid, onderhoudbaarheid, veiligheid, …) in zijn werk te bereiken Gegevens en informatiebeheer
VRAGEN EN OPMERKINGEN (in hoofdzaak aan JAN PAREDEANS). * Ik heb de essentiële eindtermen in actieve zin geformuleerd; heb ik ze goed geinterpreteerd ? (Ik heb er bijvoorbeeld een vermelding naar de normalisatietheorie bijgevoegd) * Kun je de belangrijke en nuttige eindtermen herformuleren in actieve zin (t.t.z. wat kan een bachelor/master met de aangegeven kennis doen ?) * Kun je de eindtermen wat groeperen, zodat je tot een 3-tal essentiële, een 3-tal belangrijke en een 3-tal nuttige komt ? * Wil je die eindtermen eens vergelijken met de kerntaak " Implementatie en onderhoud van een databank". Moet er iets aan de eindtermen of kerntaken veranderd worden ? * Vind je een databank verbinden met het internet + XML echt essentiëel ? Ik zou dat eerder rangschikken onder belangrijk.
Eindtermen Opleiding Informatica (versie 0.3)
8/16
* Security zou ik anderzijds als "belangrijk" rangschikken. ESSENTIEEL: Een bachelor informatica moet minstens in staat zijn om … • een databank model op te stellen (o.a. via E-R diagrammen) • een databank te ontwerpen (rekening houdend met de normalisatietheorie) • een databank te ondervragen a.h.v. de Structured Query Language (SQL) • de gebruikerstoegang te controleren a.h.v. transacties (commit & rollback) • een databank te verbinden met het internet (o.a. via XML) BELANGRIJK: Een goede bachelor informatica is in staat om … • ... Constraints en triggers • ... Expressive kracht van ondervragingstalen • ... Optimization • ... Datalog • ... Database implementeren NUTTIG: Een bachelor informatica kan uitblinken door … • de relationele algebra te begrijpen • ... Fysische ondervraag modellen • ... Security • ... Missing information Telecommunicatie
VRAGEN EN OPMERKINGEN (in hoofdzaak aan CHRIS BLONDIA). * Kun je de eindtermen herformuleren in actieve zin (t.t.z. kun je een werkwoord toevoegen zodat duidelijk wordt wat een bachelor/master met die kennis doen ?) * Wil je die eindtermen eens vergelijken met de kerntaken van een Bachelor ?Zoals ik de kerntaak heb geformuleerd zijn jouw eindtermen niet verregaand genoeg -- wat moet ik aanpassen ? * Wat met cryptografie ?Anderen hebben dat gerangschikt onder formeel denken, maar ik denk dat het minstens ook onder de noemer telecommunicatie thuishoort. ESSENTIEEL: Een bachelor informatica moet minstens in staat zijn om … • ... De belangrijkste protocols uit de verschillende lagen van het OSI model (Ethernet, sliding window, CRC fouten detectie, IP, TCP, HTTP, ....) BELANGRIJK: Een goede bachelor informatica is in staat om … • ... Een overzicht van de huidige telecommunicatiesystemen (ISDN, ADSL, GSM, ATM,...) • ... Het ontwikkelen (specificatie, ontwerp, ontwikkelen, testen), analyzeren (modeleren, prestatie, complexiteit) van eenvoudige communicatieprotocols Numerieke Analyse
VRAGEN EN OPMERKINGEN (in hoofdzaak aan ANNIE CUYT). * Ik heb enkele eindtermen in actieve zin geformuleerd; heb ik ze goed geinterpreteerd ? * Tom Dhaene (en mezelf) vond eindterm rond de stabiliteit van een algoritme en de conditionering van een probleem wel essentieel; ik heb ze er opnieuw bijgezet * Wil je die eindtermen eens vergelijken met de kerntaken van een Bachelor. Welke kerntaken moet ik toevoegen (of welke eindtermen moet ik aanpassen) ? ESSENTIEEL: Een master informatica moet minstens in staat zijn om … • basisbegrippen exact vs. floating-point rekenen te beheersen • numerieke algoritmes kunnen gebruiken voor typische problemen in de lineaire algebra, data fitting, data smoothing, functiebenadering, oplossen van een niet-lineaire vergelijking, kwadratuur, Monte Carlo methodes
Eindtermen Opleiding Informatica (versie 0.3)
•
9/16
de stabiliteit van een rekenalgoritme en de conditionering van een probleemstelling uit te drukken
BELANGRIJK: Een goede master informatica is in staat om … • gebruik te kunnen maken van bestaande Problem Solving Environments (Matlab, computer algebra systemen) en bestaande numerieke softwarebibliotheken Artifici le Intelligentie
VRAGEN EN OPMERKINGEN (in hoofdzaak aan BRIGITTE VERDONK). * Ik heb enkele eindtermen in actieve zin geformuleerd; heb ik ze goed geinterpreteerd ? * Wil je die eindtermen eens vergelijken met de kerntaken van een Bachelor. Welke kerntaken moet ik toevoegen (of welke eindtermen moet ik aanpassen) ? * Vind je " te weten waar en hoe AI technieken gebruikt worden in enkele recente toepassingen" maar belangrijk ? Ik zou dat eerder rangschikken onder essentieel. * Ik vond die verdere specificatie van zoekmethodeswel relevant, vooral omdat het de enige plaats is waar heuristieken expliciet wordt vernoemd. Misschien een extra argument om het in een hoofdstuk samen met graphics te plaatsen ? * Wat doe je met "natuurlijke taalverwerking". Nu niet vernoemd (ook niet in de masters) dus dat betekent dat we die keuzevakken moeten laten vallen. ESSENTIEEL: Een bachelor informatica moet minstens in staat zijn om … • de klassieke paradigma's van artificiële intelligentie (zoekstrategieën, kennisrepresentatie, kennisinferentie) te begrijpen • zoekmethodes: heuristische zoekmethodes, niet-deterministische, iteratieve zoekmethodes (simulated annealing, GA, ...), spelspecifieke zoekmethodes BELANGRIJK: Een goede bachelor informatica is in staat om … • kennisrepresentatietechnieken uit te breiden om rekening te houden met vage begrippen en onzekerheid • te weten waar en hoe AI technieken gebruikt worden in enkele recente toepassingen Computer Graphics
VRAGEN EN OPMERKINGEN (in hoofdzaak aan FRANS ARICKX). * Dat zijn de eindtermen die ik rond Graphics heb gevonden. Kun je de eindtermen herformuleren in actieve zin (t.t.z. kun je een werkwoord toevoegen zodat duidelijk wordt wat een bachelor/master met die kennis doen ?) * Komen die overeen met de kerntaken van een bachelor ?Zo niet, wat moet er veranderen ? • computer laten tekenen • (master niveau ?) visie Hardware & operating systems
VRAGEN EN OPMERKINGEN (in hoofdzaak aan JAN DE SITTER). * Dat zijn de eindtermen die ik rond hardware en operating systems heb gevonden. Kun je de eindtermen herformuleren in actieve zin (t.t.z. kun je een werkwoord toevoegen zodat duidelijk wordt wat een bachelor/master met die kennis doen ?) * Komen die overeen met de kerntaken van een bachelor ?Zo niet, wat moet er veranderen ? * Kun je de eindtermen voor het master-niveau op een of andere manier onder een optie plaatsen (telecom bijvoorbeeld) ? • Security • computer architectuur • basisbegrippen elektronica kunnen hanteren • basiskennis van de structuur van computersystemen: structuur van de hardware, rol van besturingssytemen vs. applicaties, lagere en hogere programmeertalen. • (master niveau ?) een besturingssysteem kunnen configureren en eventueel aanpassen
Eindtermen Opleiding Informatica (versie 0.3)
•
10/16
(master niveau ?) een besturingssysteem kunnen ontwerpen en implementeren
Formeel Denken
VRAGEN EN OPMERKINGEN (in hoofdzaak aan DIRK JANSSENS). * Ik heb enkele eindtermen in actieve zin geformuleerd; heb ik ze goed geinterpreteerd ? * Wil je die eindtermen eens vergelijken met de kerntaken van een Bachelor. Moet er iets aan de eindtermen of kerntaken veranderd worden ? * Ik heb correctheidsbewijzen van algoritmes toegevoed. * de twee eindtermen rond algoritmen horen overlappen met software ontwikkeling * Annie, Brigitte en Tom kwamen op proppen met het volgende lijstje voor de wiskunde. Misschien te gedetailleerd om als eindtermen voor een bachelor te formuleren, maar toch te belangrijk om uit het oog te verliezen. [Vectorrekenen, matrixrekenen, vlakke meetkunde, elementaire ruimtekunde, limieten, asymptoten, functieverloop, nulpuntberekening, polen, complexe getallen, afgeleiden (een- en meer dimensionaal), algebraische structuren, combinatoriek, kanstheorie, statistiek ] ESSENTIEEL: Een bachelor informatica moet minstens in staat zijn om … • een basiskennis wiskunde (discrete wiskunde, algebra, analyse, statistiek) te gebruiken voor het oplossen van vraagstukken • op een formele manier te redeneren (vb. sluitend bewijs opstellen, niet-sluitende redenering herkennen) • formele logica te gebruiken in een informatica-context (vb. redeneren over pre- en postcondities, syntax vs. semantiek, model en interpretatie, samenhang met de theorie van programmeertalen) • eenvoudige modellen te gebruiken voor de abstracte beschrijving van algoritmen (vb. eindige automaten voor herkennen van talen, turing machines voor de analyse van algoritmen) • complexiteitsanalyse van typische algoritmen (sorteren, zoeken) en bijhorende datastructuren (lijsten, hash-tabellen, bomen, …) te verrichten BELANGRIJK: Een goede master informatica is in staat om … • voor enkele veel gebruikte algoritmes te bewijzen dat ze correct zijn Wetenschappelijke Basis
VRAGEN EN OPMERKINGEN (aan iedereen) * In hoeverre is "de wetenschappelijke methodiek begrijpen"een haalbare eindterm voor een bachelor ?Hoe toetsen we ze in examens ? * In hoeverre horen vectoren. integralen en differentialen hier thuis, of onder Formeel Denken * Hoe zit het nu met de classificatie fysica - scheikunde - biologie ?En moeten we bijvoorbeeld biologie niet hoger waarderen gezien de kruisbestuiving tussen biologie en informatica (neurale netwerken, …) * Electronica val voorlopig onder de noemer "hardware en operating systems" Waar hoort het het best thuis ? ESSENTIEEL: Een bachelor informatica moet minstens in staat zijn om … • de wetenschappelijke methodiek te begrijpen, hanteren en informatica daarop toepassen • standaard scalaire en vectorgrootheden kunnen gebruiken in een wetenschappelijke context, en buiten het formele karakter van de wiskundige definitie (grad, rot, div, laplaciaan, ...) • oppervlakte- en volumeintegralen kunnen hanteren • elementaire differentiaalproblemen kunnen oplossen BELANGRIJK: Een goede master informatica is in staat om … • basisprincipes van de fysica beheersen NUTTIG: Een bachelor informatica kan uitblinken door …
Eindtermen Opleiding Informatica (versie 0.3)
• •
11/16
een overzicht te hebben van scheikundige beginselen (anorganisch-organisch analysetechnieken - ...) een overzicht te hebben van biologische beginselen (planten en dieren taxonomie)
Maatschappelijke Vorming
VRAGEN EN OPMERKINGEN (aan iedereen). * Hier moeten we toch eensgoed nadenken over de classificatie in essentiëel, belangrijk en nuttig. Bijna iedereen had hier een andere rangschikking. * basisbegrippen wetenschapsfilosofie, is dat bachelor niveau (specifiek gericht op informatica) of master niveau (een algemene cursus) ? VRAGEN EN OPMERKINGEN (in hoofdzaak aan Tom Dhaene). * Kun je de eindtermen herformuleren in actieve zin (t.t.z. kun je een werkwoord toevoegen zodat duidelijk wordt wat een bachelor/master met die kennis doen ?) Een aantal ervan heb ik al gedaan, heb ik ze goed geinterpreteerd ? * Wil je die eindtermen eens vergelijken met de kerntaken van een Bachelor ?Zoals ik de kerntaak heb geformuleerd zijn jouw eindtermen niet verregaand genoeg -- wat moet ik aanpassen ? ESSENTIEEL: Een bachelor informatica moet minstens in staat zijn om … • te weten wanneer de deontologische code van toepassing is BELANGRIJK: Een goede master informatica is in staat om … • basisbegrippen macro-economie (geldmarkt, betalingsbalans, Inflatie, ...) en microeconomie (vraag en aanbod, elasticiteit, marktvormen, …) juist te hanteren • basiskennis over de grote deelgebieden van het vakgebied, hun samenhang en evolutie: algorithmiek, programmeertalen, databases, arithmetiek, telecom, formele methoden • basisbegrippen wetenschapsfilosofie: de grondslagen van de wiskunde en de theoretische computerwetenschappen NUTTIG: Een bachelor informatica kan uitblinken door … • communicatievaardigheden, te weten zijn capaciteit om in groep te werken, efficient te vergaderen, te onderhandelen, mondeling te presenteren, schriftelijk te rapporteren
Eindtermen Opleiding Informatica (versie 0.3)
12/16
Eindtermen Master In dit hoofdstuk sommen we de verschillende eindtermen op die gelden voor een master informatica. Ook hier hanteren we als werkdefinitie voor een eindterm "wat gemeten kan worden in een examen", waarbij we de eindtermen zoveel mogelijk formuleren in een active zin (kunnen i.p.v. kennen). Net zoals voor de bachelor splitsen we de eindtermen op in drie categorieën (a) essentieel — i.e. zonder die kan een student zichzelf geen bachelor/master noemen; (b) belangrijk — daaraan kunnen we een goede bachelor/master herkennen; (c) nuttig — hier kan een bachelor/master zich differentiëren van zijn medestudenten. Met die classificatie willen we de volgende vragen kunnen beantwoorden. •
•
•
Wat is gemeenschappellijk tussen de verschillende opties ? Binnen de master opleiding voorzien we een gemeenschappelijke stam, maar het is niet duidelijk wat we daarin moeten voorzien. Hoe organiseren we een inter-universitaire samenwerking ? Om met andere universiteiten (en departementen) te onderhandelen over het, moeten we weten wat we willen bereiken en welke expertise we eventueel moeten zoeken. Hoe gaan we onze opties profileren ? Om studenten aan te trekken, moeten we duidelijk maken wat we met de master willen bereiken.
Gegevens en informatiebeheer
>>> GUI overlapt met software ontwikkeling.. VRAGEN EN OPMERKINGEN (in hoofdzaak aan JAN PAREDEANS). * Kun je de eindtermen herformuleren in actieve zin (t.t.z. kun je een werkwoord toevoegen zodat duidelijk wordt wat een bachelor/master met die kennis doen ?) * Wil je die eindtermen eens vergelijken met de Master kerntaken. Moet er iets aan de eindtermen of kerntaken veranderd worden ? * Zijn Decision support systems belangrijk ? Ik (en Jan De Sitter) denk eerder nuttig ESSENTIEEL: Een master informatica moet minstens in staat zijn om … • ... Distributed databases • ... Object georienteerde databases • XQuery te gebruiken op XML documenten • De taken van een Database Manager waar te nemen BELANGRIJK: Een goede master informatica is in staat om … • ... Temporal databases • ... Decision support systems • datamining technieken gebruiken om ... NUTTIG: Een master informatica kan uitblinken door … • een grafische user-interface te bouwen bovenop een databank • Object georienteerde databases Software Ontwikkeling
>>> Gedistribueerd en paralel programmeren + graphics + ontwerp vormt een overlap met computationele wetenschappen >>> GUI vormt een overlap met databanken >>> Een aantal elementen uit formeel denken (hoog-niveau talen, niet imperatieve programmeertalen) en maatschappelijke vorming (projectplanning, ethiek) kunnen ook onder deze noemer VRAGEN EN OPMERKINGEN
Eindtermen Opleiding Informatica (versie 0.3)
13/16
* Hoe rangschikken we "compilers en interpreters" ?Belangrijk of essentiëel ? * Wat doen we met de expliciete vermelding van Java ?Is dat een sterk punt of een zwak punt ? * Advanced computer graphics moet nog actief geformuleerd worden ESSENTIEEL: Een bachelor informatica moet minstens in staat zijn om … • aan de hand van formele specificatietechnieken precies vastleggen hoe een software component zich moet gedragen • een overzicht te hebben van de "state-of-the-art" software-ontwerp methodes en technieken (vb. software architectuur, design patterns, frameworks, …) • methoden, technieken en technologie voor het programmeren van gedistribueerde applicaties en systemen te beheersen BELANGRIJK: Een goede master informatica is in staat om … • de interne structuur van een bestaand informatica-systeem te reorganiseren zonder de werking ervan te compromitteren • gedistribueerde applicaties te ontwikkelen op basis van Java technieken en vanuit Java toegankelijke technologieën • de interne werking van informatica-tools (parsers, compilers, interpreters) te snappen • deel te nemen aan de kwaliteitscontrole van een informatica-project (vb. a.h.v. qualityreviews) • weet hebben van de voornaamste ontwerp-principes voor het bouwen van userinterfaces • advanced computer graphics NUTTIG: Een uitstekende master informatica is in staat om … • voor een gegeven informaticaprobleem een goede oplossingsstrategie kiezen (welke technieken zijn het meest geschikt om het probleem te analyseren, specifiëren, ontwerpen, implementeren en te testen + argumentatie waarom) Telecommunicatie
>>> Eventuele overlap rond cryptografie (computationele wetenschappen & formeel denken) VRAGEN EN OPMERKINGEN (in hoofdzaak aan CHRIS BLONDIA). * Kun je de eindtermen herformuleren in actieve zin (t.t.z. kun je een werkwoord toevoegen zodat duidelijk wordt wat een bachelor/master met die kennis doen ?) * Wil je die eindtermen eens vergelijken met de kerntaken van een Bachelor / Master ? De huidige opzet is er een van alles of niets-- 't is pas helemaal op het einde dat een student iets nuttigs kunnen doen, namelijk prestatie-analyse. * Kunnen hier eventueel een aantal eindtermen toegevoegd worden omtrent hardware & operating systems ? * Wat met cryptografie, netwerkbeveiliging ? Dat valt toch ook onder een master telecommunicatie ? BELANGRIJK: Een goede master informatica is in staat om … • Grondige kennis van de belangrijke protocols gebruikt in het internet (IP, Mobile IP, TCP, QoS in IP netwerken, ...) • Modelering van systemen en bepalen van de prestaties gebruik makend van het model. NUTTIG: Een uitstekende master informatica is in staat om … • een IP netwerk op te zetten in een laboratoriumomgeving • de prestaties te bepalen van een telecommunicatiesysteem via modelering (analytisch / simulatief) • systeemwijzigingen te suggereren ter verbetering van de prestaties van een telecommunicatiesysteem
Eindtermen Opleiding Informatica (versie 0.3)
14/16
Computationele Wetenschappen
>>> Parallel en gedistribueerd programmeren overlapt met software ontwikkeling >>> Cryptografie overlapt met "Telecommunicatie" en "Formeel denken". VRAGEN EN OPMERKINGEN (in hoofdzaak aan ANNIE CUYT). * Kun je de eindtermen herformuleren in actieve zin (t.t.z. kun je een werkwoord toevoegen zodat duidelijk wordt wat een bachelor/master met die kennis doen ?) * Wil je die eindtermen eens vergelijken met de kerntaken van een Master. Welke kerntaken moet ik toevoegen (of welke eindtermen moet ik aanpassen) ? * Tom Dhaene vond systeemtheorie en systeemidentificatie belangrijk, ik heb dat dus toegevoegd. Wat doen we daarmee ? * Parallel en gedistribueerd programmeren zou ik eerder als essentieel beschouwen. * Ik heb twee eindtermen AI toegevoegd. Fuzzy logic en genetic algorithms vind ik (en anderen) toch belangrijk genoeg om in de lijst te houden. Ook natuurlijke taalverwerking zou ik minstens als nuttig klasseren, gezien de betreffende keuzevakken ESSENTIEEL: Een master informatica moet minstens in staat zijn om … • ... gevorderde kennis numerieke algoritmes (zelfde domeinen als hierboven) • ... simulatietechnieken • ... symbolische algoritmes • ... getaltheorie en cryptografie BELANGRIJK: Een goede master informatica is in staat om … • parallel en gedistribueerd programmeren • basisbegrippen systeemtheorie & syteemidentificatie: lineaire sytemen, modelleren & simulatietechnieken, beginselen regeltheorie • numeriek methodes voor het oplossen van gewone en partiele differentiaalvergelijkingen • (numerieke) optimalisatietechnieken • AI, zelf-lerende systemen, fuzzy logic, genetic algorithms, … NUTTIG: Een uitstekende master informatica is in staat om … • alternatieven voor floating-point aritmetiek: validatietechnieken, symbolisch-numerieke technieken, veeltermrekenen • toepassingen van AI: taalverwerking, beeldverwerking, intelligent agent, informatieextractie, data mining, .. Formeel Denken
VRAGEN EN OPMERKINGEN (aan iedereen). * De eindtermen overlappen sterk met software ontwikkeling -- en weinig met alle andere modules. Moeten we die basispijler gewoon latten vallen ? VRAGEN EN OPMERKINGEN (in hoofdzaak aan DIRK JANSSENS). * De eindterm "niet-imperatieve programmeertalen" (en in mindere mate "hoog-niveau beschrijvingen") kan ook onder software ontwikkelling vallen. Wat doen we er mee ? * Wil je die eindtermen eens vergelijken met de kerntaken van een Master. Moet er iets aan de eindtermen of kerntaken veranderd worden ? ESSENTIEEL: Een master informatica moet minstens in staat zijn om … • een hoog-niveau beschrijving van software op te stellen aan de hand van geavanceerde modelleertalen en tools (vb. UML, Coloured Petri nets, ...) • de basisprincipes van de belangrijkste types niet-imperatieve programmeertalen (vb. functionele talen, logische talen, rule-based programmeren) te begrijpen BELANGRIJK: Een goede master informatica is in staat om … • in een niet-imperatieve programmeertaal te programmeren
Eindtermen Opleiding Informatica (versie 0.3)
• •
15/16
parallelle algoritmes uitdrukken aan de hand van proces algebras de basisprincipes van de cryptografie te begrijpen
Wetenschappelijke Basis
VRAGEN EN OPMERKINGEN (aan iedereen). * Als we ons sterk willen profileren als wetenschappelijke richting, zijn de eindtermen hier misschien wat mager ? * De vraag hoe de link te leggen naar andere wetenschappen komt hier opnieuw aan bod. ESSENTIEEL: Een master informatica moet minstens in staat zijn om … • zelfstandig opzoekingswerk in de literatuur kunnen verrichten over een gegeven onderwerp • zelfstandig informatie over een complex informatica-onderwerp kunnen synthetiseren, en over deze synthese rapporteren • een gegeven vraag op een wetenschappelijk manier beantwoorden (cfr. haalbaarheidsstudie, gevalsonderzoek, vergelijkende analyse, literatuurstudie, formeel model, simulatie) BELANGRIJK: Een goede master informatica is in staat om … • grote hoeveelheden data (vb. meetgegevens) visualiseren, analyseren en interpreteren NUTTIG: Een bachelor informatica kan uitblinken door … • een overzicht te hebben van nattuurkundige beginselen (...) • een overzicht te hebben van scheikundige beginselen (anorganisch-organisch analysetechnieken - ...) • een overzicht te hebben van biologische beginselen (planten en dieren taxonomie) Maatschappelijke Vorming
VRAGEN EN OPMERKINGEN (aan iedereen). * Ook hier waren er verschillen van mening omtrent wat essentieel - belangrijk - nuttig is. VRAGEN EN OPMERKINGEN (in hoofdzaak aan Tom DHaene). * Kun je de eindterm rond vakdidactie informatica verder uitwerkenh ? Wat bedoel je precies -- de lerarenopleiding ? ESSENTIEEL: Een master informatica moet minstens in staat zijn om … • een plan voor een informatica-project op te stellen met inbegrip van (a) het inschatten van de benodigde middelen (tijd, budget, apparatuur, mankracht, competenties); (b) taakverdeling op basis van technische competenties; (c) het plannen in de tijd van wanneer welke taken worden uitgevoerd; (d) het opvolgen en bijsturen van de planning • binnen een industriele context een concrete opdracht tot een goed einde brengen BELANGRIJK: Een goede master informatica is in staat om … • de deontologische code in praktijk kunnen toepassen • basisbegrippen informaticarecht beheersen (vb. intellectual property, juridische vraagstukken ivm informatie- en communicatietechnologieën) • wetenschapsfilosofische vraagstukken kunnen beantwoorden NUTTIG: Een bachelor informatica kan uitblinken door … • basisbegrippen management te beheersen (vb. bedrijfskunde, technieken voor leiden van een onderneming of organisatie, strategische planning en organisatie) • weten hoe software beveiligegd kan worden (vb. cryptografie, technische protektie en juridische normen, de bescherming van soft- en firmware) • vakdidactiek informatica
Eindtermen Opleiding Informatica (versie 0.3)
16/16
Conclusies De huidige inventaris is slechts een eerste benadering van wat we uiteindelijk als eindtermen zullen vastleggen. Als volgende stap moeten we nagaan in hoeverre de huidige lijst consistent en compleet is, door • •
de eindtermen te vergelijken met de kerntaken de eindtermen te vergelijken met ons huidige curriculem (in een later stadium) • een nieuw curriculum op te stellen op basis van die eindtermen • de eindtermen vergelijken met bestaande curricula (ACM, IFIP) Een aantal knelpunten moeten eerst besproken worden op de onderwijscommissie •
• • • • •
AI, graphics, operating systems, hardware zijn nogal stiefmoederlijk behandeld. Specifiek voor AI moeten we ons de vraag stellen wat we doen met keuzevakken rond natuurlijke taalverwerking. Willen we master vakken rond operating systems en hardware, en zo ja, waar horen ze dan thuis ? Cryptografie, beveiliging etc. komt verschillende malen terug, maar het is niet goed duidelijk wat we ermee willen bereiken De grootste verschillen van mening doken op in de eindtermen "Maatschappelijke vorming" (zowel bachelor als master). Daar moeten we dus over discussieren. De discussie rond "wetenschappelijke basis" is ook verre van uitgeklaard. Wat doen we met fysica (nu een vak), biologie (met de opkomst van bio-informatica), scheikunde ? Formeel denken is nogal zwak vertegenwoordigd in de master ?: Hoe komt dat ? Binnen de masters was er een overlap rond gedistribueerd en paralel programmeren + graphics + design + GUI + cryptografie. (evt. ook rond projectplanning + ethiek). Dat kan van belang zijn voor de discussie wat in de gemeenschappelijke stam.
Referenties 1.
Zelfstudie Informatica ten behoeve van de onderwijsvisitatie. Onderwijscommissie Informatica, Universiteit Antwerpen, Juni 2001
2.
Toekomstscenario's Opleiding Informatica (versie 0.3). Onderwijscommissie Informatica, Universiteit Antwerpen, 6 februari 2002