Laajennettavuuden
Laajennettavuus on ohjelmistojärjestelmän ominaisuus, jonka avulla siihen voidaan lisätä uusia toiminnallisuuksia tai muuttaa käyttäytymistä ilman suuria uudelleen kirjoituksia ytimeen tai olemassa olevaan arkkitehtuuriin. Hyvin laajennettavuutta tukevassa järjestelmässä on erilliset laajennus- tai laajennuspisteet, selkeät rajapinnat ja minimaalinen tiukka kytkös komponenttien välillä.
Keskeisiä periaatteita ovat modulaarisuus, kapselointi, mahdollisuus vaihtaa tai laajentaa osia ilman sivuvaikutuksia sekä hyvä versionointi ja
Toteutustapoja ovat plug-in-arkkitehtuuri, jossa lisäosat ovat erillisiä komponentteja, sekä tapahtumapohjaiset tai palvelukeskeiset rakenteet. Käyttöliittymissä voi olla
Hyödyt ovat muun muassa pidempi järjestelmän elinkaari, nopeampi reagointi muuttuviin vaatimuksiin sekä pienemmät muutos- ja riskikustannukset.
Arviointi laajennettavuudesta perustuu kriteereihin kuten lisäosien eristys, rajapintojen vakaus, dokumentaatio, kehittäjien tuottama lisäyksen laajuus ja järjestelmän