Object Oriëntatie Foundation (OOF.NL)
EXIN Hét exameninstituut voor ICT ers Janssoenborch - Hoog Catharijne Godebaldkwartier 365 3511 DT Utrecht Postbus 19147 3501 DC Utrecht Nederland T +31 30 234 48 11 F +31 30 231 59 86 E info@exin.nl I www.exin.nl Datum: 1 juli 2010 Alle rechten voorbehouden. Niets uit deze uitgave mag worden openbaar gemaakt of verveelvoudigd, opgeslagen in een dataverwerkend systeem of uitgezonden in enige vorm door middel van druk, fotokopie of welke andere vorm dan ook zonder toestemming van EXIN 2
INHOUD 1. Profiel 4 2. Exameneisen 5 3. Begrippenlijst 7 4. Literatuur 9 3
1. Profiel De is een onmisbare module voor startende IT ers. De inhoud van deze foundation biedt een goede basis voor iedereen die zich verder wil ontwikkelen op het gebied van systeemontwerp, systeemontwikkeling, programmeren en software engineering. Inhoud De module biedt een praktische introductie op Object Oriëntatie (OO). Er wordt aandacht gegeven aan Unified Modelling Language (UML), belangrijke modelleringstechniek en aan de belangrijkste OO-begrippen die via UML worden toegepast. Verder vormt de module een kennismaking met verschillende typen programmeertalen. Diverse aspecten als het plaatsen van OO-programmeertalen en de belangrijkste verschillen en voordelen van OO ten opzichte van gestructureerd programmeren komen aan bod. De onderwerpen van deze module zijn: objectoriëntatie en systeemontwikkeling, object georiënteerd denken en een inleiding Unified Modeling Language (UML). Doelgroep De module richt zich op starterende IT ers die weinig of niets afweten van OO-ontwikkeling en zich graag willen oriënteren op objectoriëntatie. Of IT ers met kennis van gestructureerde programmeertalen die op objectoriëntatie willen overstappen. Context De module maakt deel uit van de Tracks Foundation serie: kwadrant Informatiesystemen. Voorkennis Geen. Indicatie studielast 60 uren. Training Het maximum aantal deelnemers is 25. (Dit geldt niet voor een online- of computer based training.) Contacturen Het minimum aantal contacturen tijdens de training is 15. Dit omvat groepsopdrachten, voorbereiding op het examen en korte pauzes. Dit aantal uren is exclusief huiswerk, logistieke voorbereiding van het examen en lunchpauzes. Praktijkopdracht(en) Niet van toepassing. Examenvorm Computergestuurde multiplechoicevragen. Examenduur 60 minuten. Examendetails Aantal vragen: 30 Cesuur: 65 % (20 van 30) Open boek/notities: nee Elektronische hulpmiddelen toegestaan: nee Voorbeeldvragen U kunt een voorbeeldexamen downloaden via www.exin.nl. Training provider Op de website van EXIN vindt u een lijst van geaccrediteerde training providers http://www.exin.nl/opleiders. 4
2. Exameneisen De exameneisen zijn uitgewerkt in examenspecificaties. In onderstaande tabel staan de onderwerpen van de module (exameneisen). Het gewicht van de verschillende onderwerpen in het examen wordt uitgedrukt in een percentage van het totaal. Exameneis Examenspecificatie Gewicht (%) 1. Objectoriëntatie en systeemontwikkeling 10 1.1 De kandidaat heeft inzicht in de historische achtergrond van objectoriëntatie. 10 2 Objectgeoriënteerd denken 40 2.1 De kandidaat kent de voordelen en valkuilen van objectoriëntatie (OO). 10 2.2 De kandidaat kent de basisbegrippen van OO en hun toepassing. 15 2.3 De kandidaat kent de basisprincipes van het Objectgeoriënteerd modelleren. 15 3 Inleiding Unified Modeling Language (UML) 50 3.1 De kandidaat kent de belangrijkste begrippen en basisnotaties van UML. 10 3.2 De kandidaat heeft inzicht in klasse- (class) en objectdiagrammen. 15 3.3 De kandidaat heeft inzicht in use-case-diagrammen. 10 3.4 De kandidaat heeft inzicht in de toepassing van interactiediagrammen. 15 Totaal 100 5
Examenspecificaties 1. Objectoriëntatie en systeemontwikkeling (10%) 1.1 De kandidaat heeft inzicht in de historische achtergrond van objectoriëntatie. 1.1.1 de verschillen tussen objectgeoriënteerd en gestructureerd modelleren beschrijven; 1.1.2 de verschillen beschrijven tussen moderne methoden en de traditionele methode van systeemontwikkeling. 2. Objectgeoriënteerd denken (40%) 2.1 De kandidaat kent de voordelen en valkuilen van objectoriëntatie (OO). 2.1.1 de voordelen van OO benoemen; 2.1.2 de valkuilen van OO benoemen. 2.2 De kandidaat kent de basisbegrippen van OO en hun toepassing. 2.2.1 de basisbegrippen van OO beschrijven; 2.2.2 de onderlinge relaties tussen de OO begrippen omschrijven. 2.3 De kandidaat kent de basisprincipes van het objectgeoriënteerd modelleren. 2.3.1 het concept insluiting (encapsulation) omschrijven; 2.3.2 het concept overerving (inheritance) omschrijven; 2.3.3 het concept polymorfie (polymorphism) omschrijven. 3. Inleiding Unified Modeling Language (UML) (50%) 3.1 De kandidaat kent de belangrijkste begrippen en basisnotaties van UML. 3.1.1 een aantal basisbegrippen omschrijven; 3.1.2 de verschillende diagrammen en hun onderlinge samenhang beschrijven. 3.2 De kandidaat heeft inzicht in klasse- (class) en objectdiagrammen. 3.2.1 een klassendiagram interpreteren; 3.2.2 een objectdiagram interpreteren. 3.3 De kandidaat heeft inzicht in use-case-diagrammen. 3.3.1 aangeven welke categorie systeemeisen geschikt is voor beschrijving met use-case-beschrijvingen; 3.3.2 een use-case-diagram interpreteren; 3.3.3 de relatie tussen use-case-beschrijvingen en use-case-diagrammen beschrijven. 3.4 De kandidaat heeft inzicht in de toepassing van interactiediagrammen. 3.4.1 een sequencediagram interpreteren; 3.4.2 een communicatiediagram interpreteren; 3.4.3 de relatie tussen een sequencediagram en een communicatiediagram beschrijven. 6
3. Begrippenlijst De begrippenlijst bevat de begrippen die in de toets kunnen worden behandeld. 1. Objectoriëntatie en systeemontwikkeling 1.1 Historische achtergrond agile ontwikkelen datageoriënteerde ontwikkeling domeinmodellering functionele decompositie incrementeel ontwikkelen iteratief ontwikkelen waterval ontwikkeling 2. Objectgeoriënteerd denken 2.2 Basisbegrippen OO associatie (association) attribuut (attribute) bericht (message) instantie (instance) klasse (class) methode (method) object operatie (operation) 2.3 Basisprincipe OO generalisatie implementatie implementation-hiding insluiting (encapsulation) interface overerving (Inheritance) polymorfie (polymorpism) specialisatie verantwoordelijkheden (responsibilities) 3. Inleiding Unified Modeling Language (UML) 3.1 Begrippen en basisnotaties UML activiteitsdiagram (activity diagram) applicatiemodel communicatiediagram (communication diagram) componentdiagram (component diagram) deploymentdiagram (deployment diagram) domeinmodel gedrag (behavorial) implementatiemodel klassediagram (class diagram) modelleertaal objectdiagram (object diagram) sequencediagram (sequence diagram) structuur (structural) toestandsdiagram (state chart diagram) use-case-diagram (use-case-diagram) 7
3.2 Klasse- en objectdiagrammen abstracte klasse (abstract class) aggregatie (aggregation) applicatieklasse associatieklasse (association class) beschermd (protected) compositie (composition) commentaar (note box) concrete klasse (concrete class) constraint domeinklasse hulpklasse implementatieklasse link multipliciteit (multiplicity) publiek (public) privé (private) rol (role) stereotype zichtbaarheid (visibility) 3.3 Use-case-diagrammen actor extends-relatie functionele systeemeisen include-relatie interactiestappen niet-functionele systeemeisen scenario use case 3.4 Interactiediagrammen actief object conditionele boodschap frame interactie iteratie levenslijn (life line) recursie (recursion) resultaat (result) verwijzing (ref frame) Toelichting en verantwoording Het basisbegrip methode (method) wordt niet gebruikt in boek B en C. Het wordt wel gebruikt in boek A, echter niet gedefinieerd. Er wordt wel verondersteld dat kandidaten het begrip methode (method) kennen, omdat het zo n algemeen gebruikt OO-begrip is. In boek B wordt het begrip extends-relatie gebruikt voor de UML use-case-relatie <<extend>>. In een van de diagrammen, komt <<extends>> voor. Dit is in UML 2.1 geen correct stereotype. 8
4. Literatuur Examenliteratuur A Sintes, A. Objectgeoriënteerd programmeren in 21 dagen Den Haag: Pearson Education/ Addison Wesley, 6e herziene druk, 2002 ISBN 978 90 430 0543 2 B Warmer, J. & Kleppe, A. Praktisch UML 4e editie Amsterdam: Pearson Education Benelux BV, 4e editie, 2007 ISBN 978 90 430 1265 2 C Warmer, J. & Kleppe, A. Praktisch UML 2e editie Pearson Education/ Addison Wesley, 2e druk, 2001 ISBN 90 430 0494 4 N.B De betreffende paragrafen uit deze literatuur zijn als pdf beschikbaar via de website www.exin.nl. Aanvullende literatuur D Faber, E., Kockelkoren, Ch., Kreeft, L., Reubsaet, G., Snel, R., & Wesselink, M. Object Oriented Foundation E3 ICT, 1e druk, 2005 ISBN 10: 90 769 3964 0 ISBN 13: 978 90 769 3964 3 Samenhang literatuur en examenspecificaties Examenspecificatie Literatuur 1.1 B: 2.7-2.8 C: 2.1 t/m 2.5 2.1 A: H 1 blz. 19-23; H 3 blz. 75-77 2.2 A: H 1 blz. 10-12; H 4 blz. 92-97; H 6 2.3 B: 2.3; 4.1.2 t/m 4.2.5 A: H 2; H 4, blz. 83-92 en blz. 101-102; H 6, blz. 139-144; H 8 blz. 216, blz. 630 B: 4.2.8, 4.6.7 en 5.7 3.1 B: 2.3, 2.5 t/m 2.7 3.1 t/m 3.4, 5.3 3.2 A: B: 3.3 A: H 9 blz. 235 H 8 blz. 213-215 4.2, 4.3, 4.4.2, 4.4.7, 4.4.8, 4.4.9, 4.4.11, 4.4.18 4.6.1, 4.6.2, 16.6.3 B: 8.2 t/m 8.6 3.4 B: 10.2.1 t/m 10.2.4, 10.2.7, 10.2.8, 10.2.10, B: 10.2.11, 10.3, 10.4 9