Rakenduse arhitektuur on kogu tarkvararakenduse organisatsiooniline ülesehitus, sealhulgas kõik alamkomponendid ja välised rakenduste vahetused. Seda tüüpi arhitektuuri määratlemiseks kasutatakse mitut disainimustrit ja need mustrid aitavad edastada teavet selle kohta, kuidas rakendus viib lõpule vajalikud äriprotsessid, nagu on määratletud süsteeminõuetes.
Tarkvararakendus on süsteem, mis on loodud konkreetsete ülesannete loogiliseks automatiseerimiseks, et täita teatud nõudeid. See tugineb rakenduses olevate operatsioonisüsteemide ja andmebaaside salvestamiseks ja ülesannete täitmiseks. Rakenduse arhitektuur on plaan, mis määrab, kuidas programm suhtleb serverite ja komponentidega rakendusekihtide domeenides.
Tarkvarasisese koostalitlusvõime laienemisega on loodud modulaarsed komponendid, mis on spetsialiseerunud rakenduses äriprotsesside teatud valdkondadele. Arhitektuur määratleb kõik disaini komponendid ja selle, kuidas need rakenduses suhtlevad. See määratlus hõlmab rakenduse kõiki kihte.
Kõikides rakendustes on kolm peamist kontrollivaldkonda: esitluskiht, ärikiht ja andmetele juurdepääsu kiht. Igal rakenduses oleval domeenil on konkreetne vastutus, mis teiste kihtidega ühendatuna vastab rakenduse põhilistele ärinõuetele.
Rakenduse arhitektuuri kasutatakse plaanina tagamaks, et rakenduse aluseks olevad moodulid toetavad tulevast kasvu. Kasv võib tulla tulevase koostalitlusvõime, suurenenud ressursinõudluse või suurenenud töökindlusnõuete valdkonnas. Lõpetatud arhitektuuri korral mõistavad sidusrühmad aluseks olevate komponentide keerukust, kui muudatused peaksid tulevikus olema vajalikud.
Täiustatud objektorienteeritud programmeerimise loomisega on organisatsiooni ülesehitus muutunud oluliseks komponendiks rakenduse toimimise määratlemisel. See on tingitud N-taseme rakenduste laialdasest kasutamisest enamikus ettevõtetes. N-taseme rakendused võimaldavad juurutada alamkomponente või mooduleid ettevõtte mitmes serveris.
Rakenduse arhitektuuri määratlemisel on oluline määratleda ka rakendusserveri arhitektuur. See serveri arhitektuur katab riistvara disaini, mis hõlbustab tarkvarakomponentide juurutamist. Head rakendusserveri arhitektuurid peaksid toetama nii horisontaalset kui ka vertikaalset kasvuparadigmat.
Rakenduse teenuse arhitektuur määrab, kuidas rakendus muudab peamised ärikomponendid kättesaadavaks rakenduse teistele moodulitele. Olemasolevate liideste määratluse tõttu saavad organisatsiooni sidusrühmad rakendusekihtide vahelist koostalitlusvõimet paremini mõista.