System and Software Architecture Development
Wat?
Het ontwikkelen van systeem en softwarearchitecturen voor onze opdrachtgevers staat
hierbij centraal.
Systeemontwikkeling is meer dan het ontwikkelen van een software
architectuur. Vanuit de systeem architectuur is het belangrijk grip te krijgen op
de belangrijkste ‘business
drivers’ en requirements (architectural objectives, constraints
and principles). Hoe bepalen deze drivers de architectuur? Welke technische beslissingen
werden er genomen en waarom? (Architectural issues and rationale for decisions.)
Hoe ziet de functionele architectuur van het systeem eruit en op welke wijze wordt
deze fysisch afgebeeld op de hardware, software en mechanica?
Performance engineering
en het vastleggen van budgetten en strategieën ten aanzien van het gebruik van resources
in het systeem, vormen hierbij een belangrijk onderdeel.
Waarom?
Vaak zien we bij klanten dat bij architectuurontwikkeling de nadruk ligt op de softwarearchitectuur
terwijl de systeemarchitectuur weinig of geen aandacht krijgt. Hierdoor blijven
veel aspecten van het systeem onderbelicht. Wij zijn van mening dat een goede balans
tussen systeem- en softwarearchitectuur zal leiden tot kostenbesparingen.
Doorlooptijden
kunnen worden verkort en de herbruikbaarheid
en schaalbaarheid van het systeem zullen
verbeteren.

Hoe?
Smits-IT heeft in de loop der jaren veel ervaring opgedaan met het ontwikkelen van
systeem- en software architecturen. Het gebruik van risk-driven system analysis
en het in kaart brengen van sensitivity- en tradeoff points zijn hierbij belangrijke
concepten.
Bij het ontwikkelen van systeem- en softwarearchitecturen vinden wij het belangrijk
dat:
- De context van het systeem duidelijk is.
- Product family
- System variability, invariability
- System configuration points
- Aandacht is voor de ‘system architecture analysis’ en dat deze wordt gedeployed;
basis om te komen tot architectuurbeslissingen.
- Logische systeemarchitectuur wordt uitgewerkt; basis voor performance engineering.
- Fysische deployment van de architectuur op SW/HW.
- Performance modellen, streaming modelen duidelijk zijn.
- Operationele concepten van het systeem duidelijk zijn (start-up, firmware upgrade,
etc.)
- Budgetten en strategieën die ten aanzien van resource gebruik
zijn uitgewerkt (memory
usage strategieën, power consumption strategieën, etc.).