100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached 4.2 TrustPilot
logo-home
Summary

Software Design : Volledige samenvatting

Rating
3.0
(1)
Sold
7
Pages
78
Uploaded on
04-06-2016
Written in
2014/2015

Volledige samenvatting van 77 pagina's. Examenvragen van juni 2015 zijn te vinden op 't laatste pagina. Handelt alle belangrijke informatie per hoofdstuk. Met dit samenvatting hoef je niet meer een dik boek te lezen. Dit samenvatting kan ook gebruikt worden voor Software Design Advanced (2de jaar) Mooi score gegarandeert! Opmerkingen: Deze samenvatting bevalt enkel het theoriegedeelte voor het examen. werkcolleges zijn hierbij niet gerekend. Het gedeelte van de werkcolleges mbt version control/jenksins etc moet ook gekend zijn voor het theorie gedeelte, dat vind je niet in deze samenvatting! Hoofdstuk 3, slides 31 tem 90 zijn NIET bijgevoegd dit omvat tips voor het schrijven van een use case, oefeningen en de activity diagram (werking opbouw onderdeling) HOOFDSTUK 5 - DE PATTERNS BEVATTEN SOMS GEEN VOORBEELDEN OF EXTRA UITLEG! HOOFDSTUK 5 _ DIT HOOFDSTUK WERD BEHANDELD TEM MODEL VIEW SEPERATION

Show more Read less
Institution
Course















Whoops! We can’t load your doc right now. Try again or contact support.

Written for

Institution
Study
Course

Document information

Uploaded on
June 4, 2016
File latest updated on
June 12, 2016
Number of pages
78
Written in
2014/2015
Type
Summary

Subjects

Content preview

Software
Design

,Inhoud
1: Inleiding ................................................................................................................................................................ 3
Wat is software engeneering? ............................................................................................................................. 3
Best Practices! ...................................................................................................................................................... 3
RUP: de oplossing? ............................................................................................................................................... 6
2: Concepten............................................................................................................................................................. 7
Levenscyclus van software ................................................................................................................................... 7
Software levenscycli modellen ............................................................................................................................. 8
RUP ..................................................................................................................................................................... 10
3: Inception ............................................................................................................................................................. 14
Wat is inception?................................................................................................................................................ 14
Evolutionaire vereisten ...................................................................................................................................... 14
Use Cases............................................................................................................................................................ 15
4: Elaboration ......................................................................................................................................................... 28
Wat is elaboration? ............................................................................................................................................ 28
Domain models .................................................................................................................................................. 30
System Sequence Diagrams ............................................................................................................................... 35
Intermezzo: richting object design ..................................................................................................................... 37
Interaction diagrams .......................................................................................................................................... 38
Class diagrams .................................................................................................................................................... 39
OCL ..................................................................................................................................................................... 45
State machine diagrams ..................................................................................................................................... 46
5: Software design .................................................................................................................................................. 48
Inleiding .............................................................................................................................................................. 48
GRASP ................................................................................................................................................................. 50
GoF patterns ....................................................................................................................................................... 54
Besluit ................................................................................................................................................................. 66
6: Software testing ................................................................................................................................................. 67
Inleiding .............................................................................................................................................................. 67
Soorten testen.................................................................................................................................................... 68
Software testprincipes ....................................................................................................................................... 71
Test-case design ................................................................................................................................................. 72
Debugging .......................................................................................................................................................... 74

,1: Inleiding

Wat is software engeneering?
Software engeneering = nadenken en redeneren over ontwerp!

Best Practices!
Zonder software engineering...
• Software te laat geleverd
• Budgetten overschrijden
• Bugs
• Gebruikers/business behoeften niet gehaald
• Modules die niet integreren
• Slechte performantie onder grote belasting
• Fatale fouten
• Overdosis straling patiënten (Therac 25)
• Ariane 5: 7 miljard $
• …

Waarom SE?
• Complexiteit
• ...van het toepassingsgebied
• ...van de communicatie klant/programmeur
• ...van het werken met natuurlijke taal
• ...van de grootte van het project
• Beheersen van deze complexiteit
• Organisatie en structuur

Eerdere technieken
• Gestructureerd programmeren: GOTO
• Functionele decompositie
• Gestructureerde analyse en ontwerp
• Gegevensgericht model: ER
• Object-georiënteerd model
• Nu: component en agent georiënteerd model

3 belangrijke stappen
• Beeldvorming
• Procesgeoriënteerd
• Objectgeoriënteerd
• Representatie
• Notatie (UML)
• Implementatie

,Best practice 1: ontwikkel iteratief
• Software niet ineens volledig ‘af’
• Ontwikkelen in stadia
• Afstappen van klassieke waterfall model (zie
later)
• Snel risico’s inschatten
• Snelle user feedback
• Continu testen/integratie
• Gedeeltelijke implementatie




Best practice 2: requirements managen
• In 1998
• 74% van software projecten te laat, gecancelled, over budget, …
• Requirements managen wil zeggen
• Juiste probleem oplossen
• Juiste systeem ontwerpen
• Hoe?
• Organiseren, documenteren en managen van de requirements (vereisten)

,Best practice 3: gebruik componenten
• Basis voor herbruikbaarheid
• Hergebruik van
componenten/architectuur
• Basis voor project management
• Planning, personeel, aflevering
• Basis voor “intellectuele controle”
• Complexiteit aankunnen
• Integriteit handhaven


Best practice 4: modelleer visueel
• Een model geeft een gedeeltelijke weergave van de realiteit weer, gezien vanuit een
bepaald perspectief.
• Modellen zijn nodig om de complexiteit van het geheel de baas te kunnen
• ~bouwplan voor een huis
• Taal bij uitstek: UML (Unified Modeling Language)
• 1 standaardtaal, geen twijfel over betekenis




Best practice 5: continue kwaliteitscontrole
• Testing kan 30%-50% van project
inhouden!
• Redenen voor bugs in release
• Testen blijft enorm moeilijk
• Testen gebeurt dikwijls ad hoc,
zonder methodologie

, Best practice 6: verandering managen
• Grootste uitdaging
• Met meer programmeurs tegelijk werken, op verschillende locaties, op
verschillende builds, platformen, releases, …
• Problemen
• Simultane update (2 programmeurs op zelfde code)
• Niet iedereen is op de hoogte van wijzigingen
• Multiple versions

RUP: de oplossing?

RUP = Rational Unified Process
• = gestandaardiseerd proces om software te ontwikkelen
• Voordelen van het gebruik van een proces
• Gids voor ontwikkelen van kwaliteitssoftware
• Verminderen van risico’s en verbeteren voorspelbaarheid
• Gedeelde visie en cultuur voor ontwikkeling
• Is doorspekt met best practices

RUP bestaat uit 4 fases
• Inception
• Elaboration
• Construction
• Transition

,2: Concepten

Levenscyclus van software

I. Beeldvorming (vereisten)
II. Specificatie
III. Ontwerp (representatie)
IV. Implementatie
V. Integratie
VI. Onderhoud
VII. Buiten werking stellen

Opmerkingen
• Geen testfase!
• Gebeurt gedurende ganse project
• Geen documentatiefase!
• Gebeurt gedurende ganse project

Specificatie = Contract tussen klant en informaticus
• Geen dubbelzinnigheden
• Volledig
• Dikwijls met behulp van juristen
• Documenteren!

Ontwerp:
Produktontwerp
- Architectuur, database, ...
Architecturaal ontwerp
- Modules, Pakketten
Gedetailleerd ontwerp
- Leunt zeer dicht aan bij implementatie
- UML schema’s
- “Testen!”


Implementatie:
Ontwerp omzetten in code
- Coderingsstandaarden
Testen!
Documenteren!

Integratie:
Interne integratie
- Combineer modules en check product
Externe integratie
- Installatie van hardware, software, opleiding van de klant, finale review van
klant
- Testen zeer belangrijk
- Opnemen in documentatie

, Onderhoud:
= eender welke verandering
• Na acceptatie van de klant!
Groot probleem in huidige projecten
Regressietesten


Buiten werking stellen:
Eerder uitzonderlijk
• Drastische veranderingen
• Totaal nieuwe platformen ingebruiknemen
• Geen of foute documentatie
• “Maak jezelf niet onmisbaar...”



Software levenscycli modellen


1. Build & repair model
Maak een eerste versie
- Pas aan tot klant tevreden
Slechtste model!




2. Waterfall

Volgende stap kan pas als vorige stap afgewerkt
Idee
• Veel tijd spenderen aan initiële fasen, bespaart
veel geld!
• Fout in later stadium (bv.
implementatiefase) zorgt inderdaad
voor veel problemen
• Deze situatie is niet realistisch
-> Met trugkoppeling

Reviews from verified buyers

Showing all reviews
8 year ago

3.0

1 reviews

5
0
4
0
3
1
2
0
1
0
Trustworthy reviews on Stuvia

All reviews are made by real Stuvia users after verified purchases.

Get to know the seller

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
EHB Erasmushogeschool Brussel
Follow You need to be logged in order to follow users or courses
Sold
35
Member since
11 year
Number of followers
19
Documents
1
Last sold
2 year ago

3.0

3 reviews

5
0
4
0
3
3
2
0
1
0

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their tests and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can instantly pick a different document that better fits what you're looking for.

Pay as you like, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Frequently asked questions