100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached
logo-home
Software Design : Volledige samenvatting $5.94   Add to cart

Summary

Software Design : Volledige samenvatting

1 review
 274 views  7 purchases
  • Course
  • Institution

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) ...

[Show more]
Last document update: 8 year ago

Preview 8 out of 78  pages

  • June 4, 2016
  • June 12, 2016
  • 78
  • 2014/2015
  • Summary

1  review

review-writer-avatar

By: thomas_d • 7 year ago

avatar-seller
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

The benefits of buying summaries with Stuvia:

Guaranteed quality through customer reviews

Guaranteed quality through customer reviews

Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.

Quick and easy check-out

Quick and easy check-out

You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.

Focus on what matters

Focus on what matters

Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!

Frequently asked questions

What do I get when I buy this document?

You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.

Satisfaction guarantee: how does it work?

Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.

Who am I buying these notes from?

Stuvia is a marketplace, so you are not buying this document from us, but from seller EHB. Stuvia facilitates payment to the seller.

Will I be stuck with a subscription?

No, you only buy these notes for $5.94. You're not tied to anything after your purchase.

Can Stuvia be trusted?

4.6 stars on Google & Trustpilot (+1000 reviews)

80796 documents were sold in the last 30 days

Founded in 2010, the go-to place to buy study notes for 14 years now

Start selling
$5.94  7x  sold
  • (1)
  Add to cart