UML یک زبان مدلسازی همه منظوره استاندارد در زمینه مهندسی نرم افزار است . با استفاده از یو ام ال می توان تقریبا هر گونه برنامه کاربردی که ممکن است بر روی هر ترکیبی از سخت افزار، سیستم عامل، زبان برنامه نویسی و شبکه اجرا شود را مدلسازی نمود.
طراحی بر پایه مفاهیم شی گرایی یو ام ال سبب میشود که ذاتا با محیطها و زبانهای برنامه نویسی شی گرا (مانند سی پلاس پلاس، جاوا و سی شارپ) سازگاری کامل داشته باشد، اگرچه می توان از آن برای مدلسازی برنامههای غیر شی گرا مانند برنامه هایی که با زبانهای ویژوال بیسیک، کوبول و فرترن نوشته می شوند نیز استفاده نمود.