ParetoAnalyse Deel1
Het Pareto-principe, in de volksmond ook wel de 80-20-regel genoemd, is een economische regel die opgesteld werd door Vilfredo Pareto in 1906. Hij stelde vast dat 80% van de bezittingen in Italië in handen was van 20% van de Italiaanse bevolking. Een Pareto-analyse kan gebruikt worden voor het analyseren van de impact van een aantal problemen of kwesties. Het laat toe om te bepalen welke problemen of kwesties de grootste prioriteit hebben.

Deel 1: Klasse ParetoKwestie (2 punten)
Download de interface IKwestie
en de enumeration Meeteenheid
. Zet deze in de default package (= rechtstreeks in de ‘src’-map van je NetBeans project) en werk ook hierin verder.
- De klasse ParetoKwestie implementeert de interface Comparable<…>.
- Voeg de instantievariabelen toe zoals beschreven in het bovenstaande klassendiagram.
- Definieer de constructor zoals beschreven in het bovenstaande klassendiagram. Deze initialiseert de instantievariabele kwestie met de overeenkomstige parameter. De andere twee instantievariabelen worden geïnitialiseerd op 0.
- Voeg accessor- en mutator-methodes toe voor alle instantievariabelen.
- Maak het mogelijk om twee ParetoKwestie objecten te rangschikken door gebruik te maken van de door Java voorziene functionaliteit hiervoor. De compareTo-methode vergelijkt hen op basis van hun procentuele impact (hoogste eerst).
Hierbij nog wat uitleg over de Dodona-testen voor deze oefening:
- test00objectConcept: test of de ingediende klasse de verwachte de klasse definitie heeft (interface/abstracte klasse/klasse/enum/…).
- test01inheritance: test of de ingediende klasse de verwachte superklasse heeft en de verwachte interfaces implementeert.
- test02variables_presence: test of de ingediende klasse de verwachte instantievariabelen en statische variabelen definieert.
- test03variables_staticInitialValue: test of de statische variabelen van de klasse geinitialiseerd worden met de verwachte waarde (indien van toepassing).
- test04constructor: test of de constructor het gewenste effect heeft (indien van toepassing).
- test05methodsPresent: test of de verwachte methodes aanwezig zijn in de ingediende klasse en of de methode definities overeenkomen met de verwachte definities (= test geen effect!).
- test06accessorsMutators: test of de ingediende klasse de al dan niet verwachte accessor- en mutatormethodes definieert en of deze het verwachte effect hebben.
- test07compareTo: test de compareTo-methode. Indien de test succesvol is, scoor je de maximale punten voor deze methode.
- test08compareTo_reverseSort: test de compareTo-methode, maar aanvaart ook oplossingen die consequent in de omgekeerde volgorde sorteren.
- test09compareTo_cumulIpvPerc: test de compareTo-methode, maar aanvaart ook oplossingen waarbij foutief de instantievariabele ‘cumulatieveImpact’ gebruikt werd i.p.v. de instantievariabele ‘procentueleImpact’.
- test10compareTo_reverseSort_cumulIpvPerc: test de compareTo-methode, maar aanvaart ook oplossingen die consequent in de omgekeerde volgorde sorteren en waarbij foutief de instantievariabele ‘cumulatieveImpact’ gebruikt werd i.p.v. de instantievariabele ‘procentueleImpact’.
Let op:
- Bij de beoordeling van het examen wordt niet enkel naar de resultaten van de tests gezien. Het is niet omdat een bepaalde test niet succesvol is, dat er automatisch punten afgetrokken worden. Bij het verbeteren wordt rekening gehouden met de resultaten van de testen, maar de beoordeling is nog altijd de code zelf (niet enkel het resultaat).
- Indien er niets over punten bij een test staat, zijn de resultaten louter indicatief. De resultaten van deze testen worden bij de beoordeling meegenomen, maar staan dus niet rechtstreeks voor een bepaald aantal punten.