Modeli është pamje abstrakte e një sistemi që i injoron disa detale të sistemit. Mund të zhvillohen modele komplementare të sistemit për ta treguar kontekstin, ndërveprimet, strukturën, dhe sjelljen e sistemit.
Modelet kontekstuale e tregojnë se si një sistem që po modelohet është i pozicionuar në një ambient me sistemet dhe proceset tjera. Ato ndihmojnë të definohen kufijtë e sistemit që do të zhvillohet.
Diagramet e rasteve të përdorimit dhe diagramet sekuenciale përdoren për t’i përshkruar ndërveprimet ndërmjet sistemit që po projektohet dhe përdoruesve/sistemeve tjera. Rastet e përdorimit i përshkruajnë ndërveprimet ndërmjet një sistemi dhe aktorëve të jashtëm; diagramet sekuenciale iu shtojnë atyre më shumë informata duke i treguar ndërveprimet ndërmjet objekteve të sistemit.
Modelet strukturale e tregojnë organizimin dhe arkitekturën e një sistemi. Diagramet e klasave përdoren për ta definuar strukturën statike të klasave në një sistem dhe asociacionet e tyre.
Modelet e sjelljes përdoren për ta përshkruar sjelljen dinamike të një sistemi që ekzekutohet. Kjo mund të modelohet nga perspektiva e shënimeve që procesohen nga sistemi apo nga ngjarjet që i stimulojnë përgjigjet nga një sistem.
Diagramet e aktivitetit mund të përdoren për ta modeluar procesimin e shënimeve, ku secili aktivitet e paraqet një hap të procesit.
Diagramet e gjendjes përdoren për ta modeluar sjelljen e një sistemi si përgjigje ndaj ngjarjeve të brendshme apo të jashtme.
Inxhinierimi i udhëhequr nga modelet është qasje ndaj zhvillimit softuerik në të cilën një sistem paraqitet si grup i modeleve që mund të transformohen automatikisht në kod të ekzekutueshëm.
Burimi: Ian Sommerville, Inxhinierimi i softuerit