[Title will be auto-generated]

5
INHOUDSOPGAVE Inhoudsopgave 5 Voorwoord 11 Inleiding 13 Deel 1 Kleine systemen 17 Hoofdstuk 1 Kwaliteitseisen 19 1.1 Primaire eisen 19 1.2 Afgeleide eisen 21 Hoofdstuk 2 Hergebruik 23 2.1 Voordelen en problemen 23 2.2 Bronnen 25 2.3 Hergebruik en eigen code 28 2.3.1 Standaardisatie van gegevens 28 2.3.2 Modulaire indeling 29 2.3.3 Robuustheid 29 2.3.4 Documentatie 30 Hoofdstuk 3 Het ontwikkelingsproces 33 3.1 Indeling in fasen 34 3.1.1 Behoefteanalyse 34 3.1.2 Ontwerp 35 3.1.3 Realisatie 36 3.1.4 Invoering 36 3.1.5 Onderhoud en beheer 37 3.1.6 Kleine projecten 38 3.2 Indeling naar acties 38 Hoofdstuk 4 Modellering en softwareontwikkeling 41 4.1 Indeling 42 4.1.1 Modules en koppeling 43 4.1.2 Inkapseling 43 4.1.3 Niveaus van indeling 46 4.2 Nut van modulair programmeren 48 5

description

http://www.lannoo.be/sites/default/files/books/attachments/inhoudsopgave_21.pdf

Transcript of [Title will be auto-generated]

Page 1: [Title will be auto-generated]

INHOUDSOPGAVE

Inhoudsopgave 5

Voorwoord 11

Inleiding 13

Deel 1 Kleine systemen 17

Hoofdstuk 1 Kwaliteitseisen 191.1 Primaire eisen 191.2 Afgeleide eisen 21

Hoofdstuk 2 Hergebruik 232.1 Voordelen en problemen 232.2 Bronnen 252.3 Hergebruik en eigen code 28

2.3.1 Standaardisatie van gegevens 282.3.2 Modulaire indeling 292.3.3 Robuustheid 292.3.4 Documentatie 30

Hoofdstuk 3 Het ontwikkelingsproces 333.1 Indeling in fasen 34

3.1.1 Behoefteanalyse 343.1.2 Ontwerp 353.1.3 Realisatie 363.1.4 Invoering 363.1.5 Onderhoud en beheer 373.1.6 Kleine projecten 38

3.2 Indeling naar acties 38

Hoofdstuk 4 Modellering en softwareontwikkeling 414.1 Indeling 42

4.1.1 Modules en koppeling 434.1.2 Inkapseling 434.1.3 Niveaus van indeling 46

4.2 Nut van modulair programmeren 48

5

Page 2: [Title will be auto-generated]

6 programmaontwerp en -realisatie

4.3 Nadelen van modulair programmeren 49

Hoofdstuk 5 Objecten en berichten 515.1 Waarschuwing 515.2 Wat is een object? 515.3 Klassen 545.4 Soorten modules 54

Hoofdstuk 6 Het statische model 576.1 Associaties en verbindingen. 586.2 Het UML-diagram 58

Hoofdstuk 7 Het dynamisch model 617.1 Het takendiagram 61

7.1.1 Actoren 627.2 Beschrijving van de taken 647.3 Sequentiediagrammen 647.4 Statendiagrammen 65

7.4.1 Automaten 67

Hoofdstuk 8 Terug naar het klassenmodel 718.1 Attributen en toestand 728.2 Operaties en methodes 738.3 Associaties 768.4 Veralgemening en overerving 77

8.4.1 Soorten overerving 778.4.2 Methodes overschrijven 808.4.3 Overerving omwille van opportuniteit 81

8.5 Functionele modellen 828.6 Bijkomende documentatie 86

Hoofdstuk 9 Behoefteanalyse en modellering 899.1 De behoefteanalyse 90

9.1.1 Het resultaat 909.1.2 Gebruikersinformatie 929.1.3 Hergebruik bij de behoefteanalyse 94

9.2 Modellering 949.3 Het statisch model 969.4 Het dynamische model 989.5 Het functionele model 101

9.5.1 Vergelijkende controle 102

Hoofdstuk 10 Ontwerp 103

Page 3: [Title will be auto-generated]

inhoudsopgave 7

Hoofdstuk 11 Realisatie 10911.1 Dataontwerp 111

11.1.1 Attributen 11111.1.2 Afgeleide attributen en statenvariabelen 11211.1.3 Permanente gegevens en programma’s 11411.1.4 Associaties 114

11.2 Procedureontwerp 11711.3 Niet-objectgerichte talen 12011.4 Programmeerstijl 121

11.4.1 Vormgeving 12311.4.2 Logische structuur 12511.4.3 Documentatie 127

11.5 IDE 131

Deel 2 GROTE SYSTEMEN 133

Hoofdstuk 12 Ontwikkelingsmodellen en bedrijfsculturen 13512.1 Lineaire modellen 136

12.1.1 Het cascademodel 13612.1.2 Het spiraalmodel 137

12.2 Parallelle modellen 13912.2.1 Parallelle uitwerking 139

12.3 Iteratieve modellen 14012.4 Bedrijfsculturen 142

12.4.1 Rapid Prototyping 14212.4.2 Kwaliteitsbeheer 14312.4.3 eXtreme Programming 144

12.5 Hulpmiddelen 14512.5.1 CASE 14512.5.2 Versiebeheer 14612.5.3 Projectbeheerssysteem 147

Hoofdstuk 13 Aanvullingen bij UML 14913.1 Takendiagram 14913.2 Klassendiagram 151

13.2.1 Associatieklassen 15113.2.2 Aggregatie en associatie 15213.2.3 Implementatie van aggregatie 154

13.3 Sequentiediagram 15513.3.1 Creatie en vernietiging van objecten 15613.3.2 Tijdsafhankelijkheid 15613.3.3 Voorwaarden en opsplitsing 15713.3.4 Meervoudige objecten 158

13.4 Activiteitsdiagrammen 159

Page 4: [Title will be auto-generated]

8 programmaontwerp en -realisatie

13.5 Statendiagram 16013.6 Samenwerkingsdiagrammen 162

Hoofdstuk 14 Ontwikkeling van grote systemen 16714.1 Uitgebreide behoefteanalyse 167

14.1.1 Problemen bij het ontwerp van het takenmodel 16914.2 Verdere indelingen 170

14.2.1 Pakketten en deelsystemen 17114.2.2 Het ontplooiingsdiagram 17314.2.3 Verdelen in deelsystemen 17414.2.4 Gelaagde systemen 175

14.3 Systeemarchitectuur 17614.3.1 Het keuzeprobleem 17814.3.2 Generische systemen 180

Hoofdstuk 15 Documentatie 18315.1 Methodes 18415.2 De doelgroepen 18515.3 De functies 185

Hoofdstuk 16 Planning 18916.1 Verdeling en taakdefinitie 19016.2 Schattingen 19116.3 Afhankelijkheden en werkschema’s 191

Hoofdstuk 17 Verificatie en validatie 19517.1 Statische verificatie 196

17.1.1 Programma-inspectie 19617.1.2 Mathematische inspectie 19717.1.3 Organisatie 198

17.2 Testen op fouten 19917.2.1 Testen bij hergebruik 20317.2.2 Foutenschattingen 204

17.3 Functioneel testen en betrouwbaarheid 204

Hoofdstuk 18 Voorbeelden 20718.1 Het liftenprobleem 207

18.1.1 Probleembeschrijving 20718.1.2 Functiebeschrijving 20718.1.3 Het takendiagram 209

18.2 Treinreservatie 21018.3 Een tekenprogramma 21418.4 Het Pacmanproject 217

18.4.1 De behoefteanalyse 21818.4.2 Het ontwerp: nodige bestanden 220

Page 5: [Title will be auto-generated]

inhoudsopgave 9

18.4.3 Het ontwerp: statisch model 224

BIBLIOGRAFIE 235