Object georienteerd programmereren in Java 2

by
234 Flashcards en notities
6 Studenten
  • Deze samenvatting
  • +380.000 andere samenvattingen
  • Een unieke studietool
  • Een oefentool voor deze samenvatting
  • Studiecoaching met filmpjes
Onthoud sneller, leer beter. Wetenschappelijk bewezen.

PREMIUM samenvattingen zijn gecontroleerd op kwaliteit en speciaal geselecteerd om je leerdoelen nog sneller te kunnen bereiken!

Samenvatting - Object georienteerd programmereren in Java 2

  • 1.1.1 1.1 Software ontwikkeling

  • Wat is software ontwikkeling in het klein?
    Bij software ontwikkeling in het klein is er sprake van de volgende kenmerken:
    • Ontwikkeld door één programmeur
    • Kan in een beperkte tijd worden ontwikkeld.  Beperkte tijd is meer uren of dagen dan maanden of jaren.
    • Er is een duidelijke productomschrijving voorhanden waaruit nauwkeurig valt op te maken wat het programma moet doen.
    • Er is geen gebruikersgroep voor wie het programma per se moet worden onderhouden.
  • Wat is software ontwikkeling in het groot?
    Als de ontwikkeling van een programma aan geen enkele van de kenmerken voor klein voldoet is er duidelijk sprake van ontwikkeling in het groot. Al het overige valt in een schemergebied hiertussen in.
  • Geef een globaal overzicht van de ontwikkeling van een groot softwaresysteem.
    Globaal gezien bestaat een  dergelijk traject uit de volgende fasering :
    • Voortraject
    • Analyse : producten zijn use case model en een domeinmodel.
    • Constructie : iteraties bestaande uit ontwerp, implementatie, testen. Producten zijn ontwerpmodel, technisch ontwerp
    • Afronding : producten bv prototype maar ook GAT vindt hier plaats.
    • Overdracht waarna onderhoudsfase begint.
  • Waarom is een analyse fase vereist?
    Om vast te stellen wat de specificaties zijn die aan het product worden gesteld en te bepalen of het systeem wel met bestaande methoden en technieken kan worden gerealiseerd en of dat binnen de randvoorwaarden kan die in het voortraject zijn gesteld.
  • Geef een manier aan waarmee specificaties kunnen worden vastgesteld.
    Opsporen van alle gebruiksmogelijkheden (use cases) van het systeem door opdrachtgever, toekomstige gebruiker en ontwikkelaars. 
    Een use case of gebruiksmogelijkheid is een soort scenario waarin een typische interactie tussen een mogelijke gebruiker en het systeem wordt weergegeven.
  • Wat is een domeinmodel?
    Een domeinmodel is een model waarin het deel van de werkelijkheid is beschreven waar het systeem betrekking op heeft.  Bij een objectgeorieenteerde analyse wordt dat gedaan in de vorm van klassen, hun relaties en interacties.
  • Lijkt het domeinmodel eigenlijk niet op een ontwerp voor een objectgeorienteerd programma?
    Nee! Er wordt namelijk helemaal geen rekening gehouden met de functionaliteit die de software moet gaan bieden. Een domeinmodel is vaak niet volledig, allerlei details worden bewust weggelaten om het geheel begrijpelijk en hanteerbaar te maken. 
    Daarnaast worden de essentiële processen uit het domein vaak beschreven.
  • Wat gebeurt er in het constructie gedeelte?
    Hier wordt gefaseerd het te realiseren systeem gemaakt. In iedere fase worden dezelfde stappen doorlopen te weten: ontwerp, implementatie en testen. De basis voor de verschillende faseringen kan liggen in de lijst van gebruiksmogelijkheden die in de analysefase zijn opgesteld.
  • Wat gebeurt er in de ontwerp stap van een objectgeoriënteerd systeem?
    Dan wordt vastgesteld uit welke klassen het programma zal bestaan en hoe die klassen met elkaar samenhangen. Aan het van deze stap moet duidelijk zijn welke verantwoordelijkheden elke klasse in het programma zal hebben.
  • Wat is een ontwerpmodel?
    Een ontwerpmodel is een klassenstructuur die niet alleen de verantwoordelijkheden van een klasse in beeld brengt maar ook aangeeft hoe die verantwoordelijkheden zullen worden gerealiseerd.
  • Vaak zal bij het opstellen van een ontwerpmodel het domeinmodel als vertrekpunt worden gebruikt. Maar het ontwerpmodel kan significant afwijken van dit domeinmodel bijvoorbeeld als gevolg van beheerstaken of effectievere oplossingen. 
    Zeker bij grote ontwikkeltrajecten zijn het opstellen van het domein model en ontwerp of software model (aka technisch ontwerp) gescheiden activiteiten en verantwoordelijkheden. 
  • Wat gebeurt er allemaal in een implementatie stap?
    Op basis van een ontwerpmodel wordt een mini-ontwerpstap doorlopen waarin wordt bepaald hoe de klasse haar verantwoordelijkheden gaat realiseren. Dit kan leiden tot een separaat implementatiemodel waarin alle attributen met hun typen zijn vastgelegd en alle methoden met hun signatuur (de kop vd methode) en een beschrijving van hun werking.
    Daarna wordt de klasse gecodeerd. Omdat de specificatie nauwkeurig is vastgelegd kunnen nu meerdere programmeurs onafhankelijk van elkaar aan verschillende klassen werken.
  • Wat gebeurt er allemaal in de stap testen in de constructie fase?
    Elke klasse wordt apart getest dmv een kleine testomgeving (Junit in ons geval). 
    Als alle klassen werken worden ze samengevoegd tot een een programma wat weer wordt getest.

    Een adequate teststrategie zou hierbij moeten helpen om het aantal fouten zo klein mogelijk te maken. De  teststrategie is er op gericht om de set van tests dusdanig te maken dat een representatieve set van invoermogelijkheden is beschreven.
  • Wat gebeurt in de afrondingsfase?
    Overdracht naar de opdrachtgever om GAT uit te voeren of bijvoorbeeld demoversie op internet. Doel is om de laatste fouten obv gebruikerservaringen boven water te halen zodat het product kan worden afgehecht, opgeleverd en overgedragen.
  • Wat is een prototype?
    Dit is een experimentele versie van een te realiseren systeem. 
    Hiermee kan worden vastgesteld of aan alle eisen van het programma is voldaan en of aan de verwachtingen van de opdrachtgever wordt tegemoet gekomen.
    Een prototype kan worden gerealiseerd door korte iteraties van de volledige cyclus : analyse, constructie en afronding.
  • Waar bestaat onderhoud uit?
    1. Het corrigeren van fouten die in de software zitten;
    2. Veranderingen doorvoeren agv veranderingen in het domein of in de omgeving waar de software draait.
    3. Toevoegingen realiseren agv nieuwe gebruiksmogelijkheden (use cases).
Lees volledige samenvatting
Deze samenvatting. +380.000 andere samenvattingen. Een unieke studietool. Een oefentool voor deze samenvatting. Studiecoaching met filmpjes.

Voorbeelden van vragen in deze samenvatting

Wat is software ontwikkeling in het klein?
5
Wat is delegatie?
4
Wanneer is delegatie een betere keuze dan overerving?
4
Wanneer is overerving een betere keuze?
4
Pagina 1 van 52