1 Inleiding
- Situering
→ Probleemanalyserend
denken en business
• Nu: analyse naar ontwerpen-programmeren
- Kwaliteitsvolle, succesvolle ICT projecten opleveren
• Driehoek van project management → hoe evenwicht zoeken tussen veelheid aan
wensen en beperktheid aan tijd en middelen?
- Kwaliteitsvolle, succesvolle IT projecten
• Communicatie met
▪ Klant, eindgebruiker, opdrachtgever
▪ Collega’s
▪ Management
➔ Enkel door te vragen en te luisteren kunnen we kwaliteitsvolle IT-
projecten succesvol afleveren
2 Software ontwikkelingsproces
- Software crisis: 1965-… en 2013
- Kader dat vastlegt hoe een softwareproject wordt aangepakt
Pagina 1 van 41
2018-2019
, - Methode om de activiteiten in verband met creatie, oplevering en onderhoud van
softwaresystemen te organiseren
- Elk ontwikkelingsproces bevat volgende onderdelen:
1. Requirements verzamelen door te luisteren naar opdrachtgever
2. Requirements analyseren
3. Een ontwerp (plan) maken
4. Implementeren: het ontwerp uitvoeren
5. Testen/controleren
2.1 Watervalmethode
- Nadeel: na eenmaal het proces doorlopen is het product
nog niet af
Oplossing: iteratieve en incrementele ontwikkelmethode
Pagina 2 van 41
2018-2019
, - Per iteratie een milestone
- Iteratief-incrementele software-
ontwikkelingsmethode = Agile
Wendbaar/flexibel (vs waterval)
- Iteratief: je werkt in stappen, na elke
stap lever je werkende software,
gebruiker test en je krijgt feedback
- Incrementeel: bij elke stap bouw je
verder aan je software
Pagina 3 van 41
2018-2019
, 2.2 Het Agile Manifesto (2001)
- Belangrijkste principes:
• Hoogste prioriteit: klant tevreden
• Accepteren dat gebruikerseisen en wensen veranderen
• Lever geregeld werkende software op
• Business en ontwikkelaars werken dagelijks samen “face-to-face” communicatie
binnen team
• Werkende software is de eerste meting van vooruitgang
2.3 Risico: Agile vs Waterval
- Projectrisico = risico dat het project niet op tijd zal klaar zijn, niet innen budget en niet met
de juiste scope
2.4 OOA/D: de analyse en ontwerpstappen in meer detail
- OOAnalyse binnen iteratief-incrementeel
• Opdrachtgever formuleert probleem
• Analist noteert het verhaal en eisen
• Analist vertaalt het verhaal naar use cases
• Ontwerper stelt aan de hand van use case(s) scenario’s en testen op
• Ontwerper stelt adhv use case(s) domeinmodel op
• Vervolgens wort het Systeem Sequentie Diagram (SSD) opgesteld
• Opstellen van de nodige Operation Contracts (OC)
- OODesign binnen iteratief-incrementeel
• Verdere vertaling naar Sequentie Diagram (SD)
• Klassendiagram op basis van de verworven kennis opgesteld
• Nodige aandacht aan het voorbereiden van de testen
• De vertaalslag in de gewenste programmeertaal kan gebeuren
Dit hele proces wordt Iteratief benaderd
2.5 UML
= Unified modeling language
Pagina 4 van 41
2018-2019