SA 6 - Architecture Analysis
Architectural analysis: het identificeren van en de oplossingen van de non-functionele
requirements binnen de context van de functionele requirements
Steps within Architectural Analysis
1. Which requirements have an impact on the architecture?
Identificeer architectural factors (architectural drivers).
Identificeer points of variations and points of evolution.
Architectural factors/drivers: Alle (non-)functionele requirements die uiteindelijk een impact
hebben op de architectuur.
Points of variation: variaties binnen het bestaande, huidige systeem of de requirements. Zoals de
verschillende soorten belastingen die moeten worden berekend.
Evolution point: mogelijke points of variations die nu nog niet voorkomen in het systeem, maar
hoogstwaarschijnlijk wel kunnen voorkomen in de toekomst.
2. How can the impact on the architecture be resolved?
Verzamel meer informatie die te vinden is over de architectural factors.
Ga op zoek naar alternatieve oplossingen.
Maak uiteindelijk een architecturale beslissing en kies voor de beste oplossing.
Documenteer de factors, de oplossing, motivatie voor de oplossing, onopgeloste problemen en
alternatieven. Doe dit in het Software Architecture Document of Notebook.
GRASP
GRASP bestaat uit een aantal guidelines voor het toekennen van verantwoordelijkheden aan
klassen en objecten. Het is niet gerelateerd aan het SOLID design principe.
Verschillende patronen en principes die gebruikt worden binnen GRASP zijn controller, creator,
indirection, information expert, high cohesion, low coupling, polymorfisme, protected variations en
pure fabrication. Alle patterns beantwoorden een bepaald software probleem.
Controller
Welk object dat onder de UI-laag zit, ontvangt en coördineert een operatie?
Oplossing: Geef de verantwoordelijkheid aan;
- Óf een object dat het gehele systeem representeert ( root object)
- Óf een use case scenario binnen het systeem representeert (session controller)
Creator
Het aanmaken van objecten is een van de meest gebruikelijke objecten binnen een object-
oriented system. Welke klas hiervoor verantwoordelijk is is een fundamenteel gedeelte van de
relatie tussen objecten en klassen.
In het algemeen is klasse B verantwoordelijk voor het aanmaken van instanties van klasse A als
een (en liever meer) van deze punten aan bod komt:
• Instanties van B bevatten of hebben een composite/aggregatie relatie met instanties van A
• Instanties van B slaan instanties van A op
• Instanties van B maken veel gebruik van A
• Instanties van B hebben de informatie die instanties van A initialiseert en geven dit door
wanneer een instantie van A wordt gecreëerd
Jet Wardenier 27/12
The benefits of buying summaries with Stuvia:
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
You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.
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 jetwardenier. Stuvia facilitates payment to the seller.
Will I be stuck with a subscription?
No, you only buy these notes for $3.79. You're not tied to anything after your purchase.