V računalništvu je arhitektura programske opreme shematski načrt programske aplikacije. Ustvarila ga je ekipa za sistemsko arhitekturo. Ta arhitektura vključuje celoten sklop projektnih dokumentov, ki opisujejo, kako bo programska aplikacija delovala s strojno opremo, omrežji in drugimi komponentami podjetja.
Programska aplikacija je program, ki se izvaja v računalniku. Vsak računalnik ima posebne zahteve glede moči, zahteve telekomunikacijskega omrežja in zmogljivosti. Arhitektura programske opreme je oris, ki opredeljuje pričakovanja in zahteve, ki bodo postavljene pred infrastrukturo podjetja.
Arhitektura je kompleksna zasnova elementov v sistemu in razmerja med njimi. Arhitektura programske opreme je orodje, ki se uporablja za sporočanje podrobne strukture sistema. Pojasnjuje tako notranje kot zunanje odnose komponent, da opredeli, kako bodo sistemi delovali v proizvodnem okolju.
Večina računalniške programske opreme je zgrajena na podlagi definiranih procesov in upravljanja življenjskega cikla sistema. Ta proces vključuje področja zahtev, načrtovanja, kodiranja in testiranja. Pomembno je, da koncepte arhitekturnega načrtovanja zajamemo že zgodaj v procesu, običajno v fazi zahtev v življenjskem ciklu sistema. To zagotavlja, da je arhitektura programske opreme ustrezno načrtovana dovolj zgodaj, da vključuje strategije organizacije.
Strategija arhitekture podjetja je strateški načrt, ki opredeljuje, kako se bodo programske aplikacije uporabljale v organizaciji. Ta načrt vključuje smernice, modele in standarde za splošni okvir vse programske opreme. Za zagotovitev skladnosti arhitekture programske opreme s strategijo arhitekture podjetja je odgovoren sistemski arhitekt.
Sistemski arhitekt ima ključno vlogo. Je komunikacijski strokovnjak, ki zna aktivno poslušati vrednote, cilje in skrbi deležnikov. Te informacije uporablja za ustvarjanje tehnoloških zemljevidov, ki določajo tehnične smernice. Arhitektura programske opreme je načrt oblikovanja, ki se uporablja za vstavljanje nove tehnologije programske opreme v organizacijo.
Velike organizacije uporabljajo te podjetniške okvire kot načrt za usmerjanje notranjega oblikovanja vseh poslovnih sistemov. Ta pristop zmanjša skupne stroške vzdrževanja programske opreme v celotnem podjetju. Z delitvijo skupne infrastrukture za večino virov se skupni stroški lastništva programske opreme za organizacijo zmanjšajo.
Dober primer standardizirane arhitekturne strategije je široka uporaba zbirke Microsoft Office Suite®. Namesto tega, da bi veliko podjetje omogočilo več orodij za e-pošto, obdelavo besedil in preglednice, bo veliko podjetje izbralo eno arhitekturo programske opreme, ki se lahko uporablja v celotnem podjetju.