Software-ontwerp (B-KUL-G0Q40C)

6.0 studiepunten Nederlands 101.5 Tweede semesterTweede semester Uitgesloten voor examencontract
Holvoet Tom (coördinator) |  Holvoet Tom |  Jacobs Bart
POC Informatica

In dit opleidingsonderdeel ligt het accent op het ontwerpen van softwaresystemen. Er zal vooral aandacht zijn voor objectgerichte methodes. In lijn met recente evoluties in het ontwerpen van softwaresystemen zal er in detail worden ingegaan op ontwerppatronen en refactoring.
Beide moeten inzicht geven in de kunst en vooral de wetenschap van het maken van kwalitatief hoogstaand software-ontwerp en in de trade-offs die daarbij onvermijdelijk aan bod komen.
Er wordt ook een eerste licht geworpen op de analysefase aan de hand van een studie van informele methodes voor het analyseren van de vereisten die gesteld worden aan het te ontwikkelen systeem.
Bovendien wordt beoogd dat de studenten leren in groep een niet-triviaal software-ontwikkelingsproces succesvol te doorlopen.


Grondige kennis van een object-gerichite programmeertaal en object-georienteerde concepten. Praktische vaardigheden bij het ontwikkelen van programma's, i.c. het gebruik van een IDE (integrated development environment) zoals Eclipse.

Zie OLA's

Handboek
Presentatiesoftware

Je mag dit opleidingsonderdeel enkel opnemen als je nog maximaal 90 studiepunten moet verwerven om het diploma te behalen.

Je moet voldoen aan een volgtijdelijkheidsvoorwaarde om dit opleidingsonderdeel te mogen opnemen. Volgtijdelijkheid kan STRENG of SOEPEL zijn of een GELIJKTIJDIGHEID inhouden. Ook kan een diplomaNIVEAU als voorwaarde gesteld zijn.
Verklaring:
STRENG: Om dit opleidingsonderdeel op te nemen, moet je geslaagd zijn voor of een tolerantie ingezet hebben voor de opleidingsonderdelen waarvoor dit soort voorwaarde geldt.
SOEPEL: Om dit opleidingsonderdeel op te nemen, moet je de opleidingsonderdelen waarvoor dit soort voorwaarde geldt, gevolgd hebben.
GELIJKTIJDIG: Om dit opleidingsonderdeel op te nemen, moet je ook de opleidingsonderdelen waarvoor dit soort voorwaarde geldt, opnemen of al opgenomen hebben.
NIVEAU: Om dit opleidingsonderdeel op te nemen, moet je ten minste deze graad behaald hebben.


((STRENG (H01P1A) OF STRENG (X0A27A)) EN (STRENG (G0P81A) OF STRENG (X0A45A))) EN (GELIJKTIJDIG (H01O9A) OF GELIJKTIJDIG (X0A58A))

Bovenstaande codes van opleidingsonderdelen stemmen overeen met onderstaande omschrijvingen van die opleidingsonderdelen:
H01P1A : Objectgericht programmeren
X0A27A : Objectgericht programmeren
G0P81A : Gegevensstructuren en algoritmen
X0A45A : Gegevenstructuren & algoritmen
H01O9A : Gegevensbanken
X0A58A : Gegevensbanken

Onderwijsleeractiviteiten

1.1 sp. Software-ontwerp (B-KUL-G0Q40a)

1.1 studiepunten Nederlands Werkvorm: College 34.0 Tweede semesterTweede semester
POC Informatica

De volgende onderwerpen worden behandeld:
1) Het software-ontwikkelingsproces: de verschillende activiteiten (vereistenanalyse, ontwerp, implementatie, verificatie, onderhoud); procesmodellen (watervalmodel, transformationeel en evolutionair model, spiraalmodel, objectgericht model);
2) Analyse van softwaresystemen: algemeenheden; informele objectgerichte analyse; elementen van gestructureerde analyse.
3) Ontwerpmethodes:
- algemeenheden: modularisatie om de complexiteit van zowel het softwareproduct als het ontwikkelingsproces te beheersen; het verbergen van informatie als algemene ontwerpstrategie; modulestructuren en -relaties; abstractie door parameterisatie en door specificatie; kwaliteitsfactoren.
- objectgericht ontwerpen: statische modellering (klasse- en modulediagramma's); dynamische modellering (scenario- en objectdiagramma's); ontwerppatronen; frameworks (voor sequentiële systemen).
- functionele decompositie (structured design).
4) Implementatie-aspecten: meervoudige overerving; generische klassen; metaklassen; expliciet werken met adressen; illustratie in verschillende objectgerichte talen.
5) Testen: module- en integratietesten; organisatie van het testproces.
6) Software-ontwikkelingsomgevingen: grondige studie van een CASE-tool voor objectgerichte software-ontwikkeling; elementen van gebruikersinterfaces.
7) Management van softwareprojecten: projectplanning en -controle; elementen van softwaremetrieken.

Hoorcolleges, ev. aangevuld met seminarie door een externe spreker.

0.4 sp. Software-ontwerp: oefeningen en practica (B-KUL-G0Q41a)

0.4 studiepunten Nederlands Werkvorm: Practicum 28.5 Tweede semesterTweede semester
POC Informatica

zie 'inhoud' hoger

Een beperkt aantal oefenzittingen maakt studenten wegwijs in de tools die voor het projectwerk gebruikt kunnen worden, en in de basisprincipes van goed software-ontwerp.

4.5 sp. Software-ontwerp: project (B-KUL-G0Q42a)

4.5 studiepunten Nederlands Werkvorm: Opdracht 39.0 Tweede semesterTweede semester
POC Informatica

Samen met deze cursus wordt een groepsproject uitgevoerd.
Door teams van vier studenten moet een vrij omvangrijk softwaresysteem voor een niet-triviaal probleem worden gerealiseerd. Op die manier kunnen studenten ervaring opdoen met het ontwikkelen in groep van een groter softwaresysteem en de technieken en methodes toepassen die in de cursus worden bestudeerd.

Het project is georganiseerd rond 3 opeenvolgende iteraties, waarbij de
2e en 3e iteratie uitbreidingen m.b.t. de vereisten van het systeem
aanbrengen. Elk team bouwt een ontwerp voor elke iteratie en beschrijft
dit in een ontwerpdocument. Een functionele implementatie dient
ontwikkeld te worden - de aandacht ligt op de implementatie van de
domein-laag, en minder op de grafische gebruikersinterface, die vnl.
het testen moet ondersteunen.
De iteraties worden typisch verspreid over de 2 semesters, met de 1e iteratie lopende van begin oktober tot half november, de 2e iteratie vanaf half november tot het eind van het 1e semester, en de 3e iteratie gedurende het 2e semester.
Studenten worden in hun projectwerk begeleid door zgn. 'project managers', zijnde leden van het didactisch team die het projectwerk opvolgen en bijsturen indien nodig.

Evaluatieactiviteiten

Evaluatie : Software-ontwerp (B-KUL-G2Q40c)

Modaliteit van de evaluatie : Schriftelijk / Mondeling met schriftelijke voorbereiding
Tijdstip : partiële evaluatie met afrondend examen tijdens de examenperiode

De evaluatie bestaat uit een combinatie van:
- de evaluatie van de project iteraties;
- een individuele bespreking van het projectwerk en de cursusinhoud tijdens  de examenperiode.

De evaluatie van de project-iteraties hebben een gewicht van 15/20 op de eindquotatie, de individuele bespreking 5/20. Slagen voor het individueel deel van de evaluatie is een noodzakelijke voorwaarde om te slagen voor het vak.