Objektno usmerjeno oblikovanje (OOD) je posebna vrsta načrtovanja programske opreme, ki je bila razvita za zamenjavo preproste linearne kode z vrsto kode, ki se drži bolj zapletenih konvencij. V objektno usmerjenem oblikovanju se koda nanaša na določen “objekt” in se konceptualno “prilega” temu objektu, da zagotovi posebne uporabniške operacije ali druge pogoje. Objektno usmerjeno načrtovanje se imenuje tudi objektno usmerjeno programiranje (OOP).
Objektno usmerjeno oblikovanje je spodbudilo razvoj številnih novih tehnologij, vključno s tistimi, ki so povezane z Microsoft Visual Basic in C Suite (C, C++, C#) programskih jezikov, ki so še danes zelo v uporabi. Objektno usmerjeno programiranje je kot konceptualni model za boljše dogovore o programski kodi kot nalašč za vrste vizualnih aplikacij, ki so pogosto izdelane v Visual Basicu, ki se običajno uporabljajo v operacijskih sistemih Windows. Objektno usmerjena analiza lahko zagotovi tudi boljši pogled na “surovo kodo”, da bi razumeli, kaj deluje v določenem programu ali aplikaciji.
Primer objektno usmerjenega oblikovanja vključuje različne gumbe, besedilna polja, polja s slikami itd., ki so programirana v vizualne aplikacije. Vsak od teh “predmetov” lahko vsebuje svojo specifično kodo, ki ureja vedenje ali uporabo tega predmeta. Programerji lahko nadalje ločijo različne primerke predmeta v “razrede”, ki jih lahko upravljajo funkcije ali drugi kodni moduli.
Pri objektno usmerjenem načrtovanju je lahko koristen diagram zaporedja sistema. Ti diagrami delujejo v skladu z enotnim jezikom modeliranja. Diagram sistemskega zaporedja (SSD) prikazuje različne dogodke, ki jih poganjajo »akterji«, ki pomagajo definirati vedenje in uporabo predmetov v programu.
Kot bolj vsestranska oblika kode kot starejši linearni sistemi, ki so se razvili s primitivno programsko opremo, kot sta BASIC in FORTRAN, bo objektno usmerjeno programiranje verjetno še naprej spodbujalo tehnološki napredek pri načrtovanju programske opreme. Skupaj s kodirnimi jeziki, kot so XML in drugi označevalni jeziki, lahko objektno usmerjeno programiranje poganja tako zelo konceptualne kot zelo funkcionalne programe. Tovrstna zasnova programske opreme prispeva k filozofiji ustvarjanja virtualnih objektov, ki bodo dobro služili IT skupnosti pri prizadevanjih za izolacijo in izboljšanje različnih funkcij programske opreme ali modeliranje programske opreme za posnemanje dogodkov v fizičnem svetu. Medtem je objektno usmerjeno programiranje postalo standardna konvencija, ki je univerzalno uporabna v skupnosti računalniškega programiranja.