1
Hoofdstuk 1: Inleiding ............................................................................................................................. 2
Hoofdstuk 2: Software-ontwikkelingsproces .......................................................................................... 3
Hoofstuk 3: Behoeftenanalyse (FR’s, UCD, …)......................................................................................... 6
Hoofdstuk 4: Domeinmodel/klassendiagram (UML)............................................................................... 9
Hoofdstuk 5: System Sequentie Diagram (SSD) en Operation Contracts (OC’s) ................................... 13
Hoofdstuk 6: User Interface (ontwerpen) NIET KENNEN ...................................................................... 17
, 2
Hoofdstuk 1: Inleiding
Kwaliteitsvolle, succesvolle ICT projecten opleveren
• FR: functional requirement = wat je juist moet doen in een kort verhaal (Use Case)
• Driehoek v/h project management
o Scope/afbakening: antwoorden binnen de vraag
▪ Bv: deze muur moet geschilderd worden → niet vragen “en deze muur?”, maar wel
“tegen wanneer, welk soort verf, …”
o Schedule: tegen wanneer moet het af zijn
o Resources: wat is het budget? (bepaalt ook de kwaliteit)
• Methodes:
o Waterfall: van boven naar beneden, onomkeerbaar dus → succes rate is lager dan agile
▪ Is nog perfect mogelijk voor kleine projecten (max 3 maand)
o Agile: opeenvolgende watervallen. Agility=flexibel → hogere succes rate, zeker bij grote
projecten.
• Communicatie met
o De klant / opdrachtgever / eindgebruiker
o Collega’s
o Business-management
, 3
Hoofdstuk 2: Software-ontwikkelingsproces
= hoe een project wordt aangepakt
= een methode/werkwijze om de activiteiten (creatie, oplevering, onderhoud) van softwaresystemen
te organiseren
“ik kan programmeren, dus leggo”
• Nee, eerst moet je de opdracht goed begrijpen, weten wat er juist moet gebeuren, wat de
bedoeling ervan is, wat is de scope, kwaliteitsnormen, budget, …
Onderdelen van het software-ontwikkelingsproces
1. Requirements verzamelen (door te converseren)
2. Requirements analyseren
3. Een ontwerp maken
4. Het ontwerp implementeren
5. Testen & controleren
➔ Integreren en onderhouden
Waterfall-methode
• =één grote iteratie
• Voordelen:
o Bij de start v/h project is het makkelijker fouten te herstellen
• Nadelen:
o Onmogelijk terug te keren, geen flexibiliteit
o Moeilijk om tijd en kosten in te schatten
o Testen kan pas op het einde
o …
Agile-methode: iteratief en incrementeel
• Agile=wendbaar, flexibel
• Iteratief: herhalend, terugkerend. Per stap/iteratie lever je “werkende software”, na elke iteratie
is er dus een milestone en feedback van de klant.
• Incrementeel: opbouwdend. Bij elke iteratie bouw je verder aan de software: er komt telkens
een iteratie bij
o Elke iteratie is dus een waterfall
• Pas integreren als de vorige iteraties
perfect zijn, want na een aantal
integraties is het (zoals bij waterfall)
moeilijk om terug te keren.
➔ Alles goed testen voor te integreren
• Golf-voorbeeld:
Hoofdstuk 1: Inleiding ............................................................................................................................. 2
Hoofdstuk 2: Software-ontwikkelingsproces .......................................................................................... 3
Hoofstuk 3: Behoeftenanalyse (FR’s, UCD, …)......................................................................................... 6
Hoofdstuk 4: Domeinmodel/klassendiagram (UML)............................................................................... 9
Hoofdstuk 5: System Sequentie Diagram (SSD) en Operation Contracts (OC’s) ................................... 13
Hoofdstuk 6: User Interface (ontwerpen) NIET KENNEN ...................................................................... 17
, 2
Hoofdstuk 1: Inleiding
Kwaliteitsvolle, succesvolle ICT projecten opleveren
• FR: functional requirement = wat je juist moet doen in een kort verhaal (Use Case)
• Driehoek v/h project management
o Scope/afbakening: antwoorden binnen de vraag
▪ Bv: deze muur moet geschilderd worden → niet vragen “en deze muur?”, maar wel
“tegen wanneer, welk soort verf, …”
o Schedule: tegen wanneer moet het af zijn
o Resources: wat is het budget? (bepaalt ook de kwaliteit)
• Methodes:
o Waterfall: van boven naar beneden, onomkeerbaar dus → succes rate is lager dan agile
▪ Is nog perfect mogelijk voor kleine projecten (max 3 maand)
o Agile: opeenvolgende watervallen. Agility=flexibel → hogere succes rate, zeker bij grote
projecten.
• Communicatie met
o De klant / opdrachtgever / eindgebruiker
o Collega’s
o Business-management
, 3
Hoofdstuk 2: Software-ontwikkelingsproces
= hoe een project wordt aangepakt
= een methode/werkwijze om de activiteiten (creatie, oplevering, onderhoud) van softwaresystemen
te organiseren
“ik kan programmeren, dus leggo”
• Nee, eerst moet je de opdracht goed begrijpen, weten wat er juist moet gebeuren, wat de
bedoeling ervan is, wat is de scope, kwaliteitsnormen, budget, …
Onderdelen van het software-ontwikkelingsproces
1. Requirements verzamelen (door te converseren)
2. Requirements analyseren
3. Een ontwerp maken
4. Het ontwerp implementeren
5. Testen & controleren
➔ Integreren en onderhouden
Waterfall-methode
• =één grote iteratie
• Voordelen:
o Bij de start v/h project is het makkelijker fouten te herstellen
• Nadelen:
o Onmogelijk terug te keren, geen flexibiliteit
o Moeilijk om tijd en kosten in te schatten
o Testen kan pas op het einde
o …
Agile-methode: iteratief en incrementeel
• Agile=wendbaar, flexibel
• Iteratief: herhalend, terugkerend. Per stap/iteratie lever je “werkende software”, na elke iteratie
is er dus een milestone en feedback van de klant.
• Incrementeel: opbouwdend. Bij elke iteratie bouw je verder aan de software: er komt telkens
een iteratie bij
o Elke iteratie is dus een waterfall
• Pas integreren als de vorige iteraties
perfect zijn, want na een aantal
integraties is het (zoals bij waterfall)
moeilijk om terug te keren.
➔ Alles goed testen voor te integreren
• Golf-voorbeeld: