Programvara ska kunna växa utan att bli obegriplig.
EOSX bygger på en långsiktig idé: komplexitet ska inte främst hanteras genom allt mer kod med ömsesidiga beroenden. Systemutveckling ska i högre grad utgå från funktionella byggblock, relationer, komposition och kontrollerad vidareutveckling.
Funktionella byggblock som utgångspunkt
Den centrala frågan flyttas från ”Vilken kod skriver vi?” till ”Vilka funktionella byggblock behöver systemet och hur ska de samverka?”
Vidareutveckla det som redan finns
EOSX ska inte bara möjliggöra nya system. Befintliga lösningar ska kunna analyseras, importeras och moderniseras stegvis.
Från programvara till tekniska system
Samma grundidé kan överföras till vitt skilda områden, så länge deras funktionella byggblock, regler och relationer kan beskrivas tydligt och implementeras korrekt.
Aktiv utveckling
Arkitekturen utvecklas och valideras löpande i olika tillämpningsscenarier. Interna tekniska detaljer offentliggörs avsiktligt inte i sin helhet.
Komposition i stället för växande kodmängd
Nya krav ska så långt det är möjligt uttryckas genom funktionella byggblock och relationer i stället för att ständigt öka komplexiteten i monolitisk kod.