Пәндік саланы талдау

UML деген не?

Бірыңғай модельдеу тілі (Unified Modeling Language, UML) — бағдарламалық жүйелерді көрсету, спецификациялау, құрастыру және құжаттандыруға арналған тіл. Сонымен бірге, ол бизнес-процестерді және бағдарламалық емес жүйелерді де модельдеуге қолданылады.

UML ірі әрі күрделі жүйелерді модельдеу кезінде тиімділігі дәлелденген инженерлік тәсілдерді біріктіреді. UML құрамдас бөлігі ретінде OCL (Object Constraint Language) — объектілерге шектеулер қою тілі де кең қолданылады.

Негізгі міндеттері

  • Артефактілерді көрсету және бірегей нотация арқылы түсінікті ету
  • Спецификациялау: жүйенің күтілетін мінез-құлқын және құрылымын дәл сипаттау
  • Құрастыру: жобалық шешімдерді іске асыруға жақындату
  • Құжаттандыру: талаптардан бастап тесттерге дейінгі толық циклді бекіту

UML-дің көпқырлы түсіндірмесі

  • Әдіс ретінде — жүйенің даму логикасын түсіну үшін
  • Тіл ретінде — пәндік аймақ туралы білімді формализациялау үшін
  • Модельдеу тілі ретінде — байланыстар заңдылықтарын түсіндіру (және қажет болса, формальдау) үшін
  • Бірыңғайлау құралы ретінде — әзірлеушілердің жұмысын үйлестіру үшін

UML қалай пайда болды?

UML-ды әзірлеу 1994 жылдың қазанында Rational Software Corporation компаниясында басталды. Бұл кезде Грэди Буч (Grady Booch) және Джим Рамбо (Jim Rumbaugh) OMT (Object Modeling Technique) әдістемесін бірыңғайландыру бағытындағы жұмысты қолға алды.

1995 жылдың қазанында бірыңғайландыру әдісінің алдын ала нұсқасы ұсынылды. Сол кезеңдегі нарықтық өзгерістер аясында Ивар Якобсон (Ivar Jacobson) және оның Objectory компаниясы Rational-мен бірікті. Нәтижесінде OOSE (Object-Oriented Software Engineering) тәсілі бірыңғайландыру жұмысына қосылды.

Әзірлеушілер қойған мақсаттар

  • Объектіге бағытталған (ОБ) әдістемелерді тек бағдарламалық жасақтамада ғана емес, кеңірек жүйелерді модельдеуде қолдануға мүмкіндік беру
  • Тілдің анық әрі бірмәнді тұжырымдамасын қалыптастыру
  • Күрделі жүйелерде көлем (масштаб) мәселесін шешуге көмектесу
  • Адамға да, машинаға да түсінікті модельдеу тілін жасау

1996

Қазан айында UML жобасына қатысты құжаттар дайындалды. Сол жылы Rational серіктестермен бірге UML консорциумын құрды.

1997 қаңтар

Консорциум ынтымақтастығы нәтижесінде UML 1.0 нұсқасының ерекшелігі жасалды.

1997 1 қыркүйек

Қосымша серіктестердің қатысуымен UML 1.1 нұсқасының ерекшелігі жарияланды.

Консорциум және индустриялық қолдау

UML консорциумына әр кезеңде DEC, HP, i-Logix, IntelliCorp, IBM, ICON Computing, MCI Systemhouse, Microsoft, Oracle, Rational Software, TI, Unisys сияқты компаниялар, кейін Object Time, Platinum Technology, Ptech, Taskon & Reich Technologies, Softeam секілді қатысушылар қосылды.

1990-жылдар: объектілік технологиялар толқыны

Ақпараттық жүйелерді дамытуда 1990-жылдар объектілік технологиялардың қалыптасу кезеңі болды. Объектілік бағдарламалық жасақтама құралдарының нарығы қалыптасып, белсенді дами бастады.

Oracle, Informix және IBM сияқты жетекші жеткізушілердің объектілік-реляциялық серверлерінің пайда болуына байланысты, 1996–1997 жылдары реляциялық ортадан объектілік ортаға көшу үрдісі күшейді. Бұл өз кезегінде объектілік талдау технологиялары мен жүйелерді жобалаудың дамуын ынталандырды.

Компаниялар бағдарламалық жасақтаманың стратегиялық маңызы артқан сайын өндірісті автоматтандыру, сапаны көтеру, нарыққа шығу құнын және уақытын азайту жолдарын іздеді. Бұл ізденістер компоненттік технологияларға, үлгілерді (pattern) және құралдық орталарды (framework) қолдануға сүйенді.

UML — көрсетілім (визуализация) тілі

Көптеген бағдарламашылар үшін жобаны іске асыру туралы ойлау көбіне код жазумен теңестіріледі. Расында да, кейбір идеялар бағдарламалау тілінде қысқа әрі дәл беріледі: код — алгоритм мен өрнектерді сипаттаудың ықшам тәсілі.

Дегенмен, мұндай жағдайда да әзірлеуші бейресми түрде модельдеумен айналысады: ойындағы жобаны тақтаға немесе қағазға түсіреді. Бірақ бұл тәсіл тәуекел тудырады: концепциялық модельді талқылау қатысушылардың ортақ тілде сөйлесуін талап етеді. Сондықтан көптеген ұйымдар бірізділік үшін арнайы ортақ терминология мен белгілеулер жүйесін енгізуге мәжбүр болады.

Маңызды ой: UML командалық талқылауды «бір тілге» келтіреді және күрделі идеяларды көрнекі түрде келісуге көмектеседі.

UML — құжаттандыру тілі

Бағдарламалық өнім шығаратын компания орындалатын кодпен бірге көптеген артефактілерді де дайындайды. Олар басқару, нәтижені бағалау және команда ішіндегі коммуникация үшін қажет.

Жобада жиі кездесетін артефактілер

  • Жүйеге қойылатын талаптар
  • Архитектура және жоба (design)
  • Бастапқы код және жоспарлар
  • Тесттер, прототиптер, нұсқаулықтар

UML бұл жерде не береді?

  • Архитектура мен құрамдас бөліктерді жүйелі түрде құжаттайды
  • Талаптарды тұжырымдауға және тесттерді анықтауға тіл ұсынады
  • Жоспарлау мен нұсқаларды (болжамдарды) басқаруды модельдеуге көмектеседі

UML-дің қолданылу салалары

UML ең алдымен бағдарламалық жүйелерді жасауға арналған. Ол төмендегі салаларда әсіресе тиімді:

Кәсіпорындық ақпараттық жүйелер
Банк және қаржы қызметтері
Телекоммуникация
Транспорт
Қорғаныс, авиация және ғарыш
Бөлшек сауда
Медициналық электроника
Ғылым
Үлестірілген Web-жүйелер
UML қолдану аясы бағдарламалық қамтамасыз етумен шектелмейді: ол құқықтық құжат айналымын, ауруханадағы пациенттерге қызмет көрсету үдерістерін немесе аппараттық құралдарды жобалауды модельдеуге де мүмкіндік береді.

UML-дің мақсаттары

  • Мағыналы модельдер құруға және олармен алмасуға мүмкіндік беретін мәнерлі модельдеу тілін ұсыну
  • Базалық тұжырымдаманы кеңейту және мамандандыру механизмдерін қарастыру
  • Нақты бағдарламалау тілдерінен және әзірлеу процестерінен тәуелсіздікті қамтамасыз ету
  • Тілді түсіну үшін формальды негіз ұсыну

UML: бүгіні мен болашағы

UML патенттелген, жабық құрал емес — ол баршаға ашық стандарт ретінде қалыптасты. Көптеген мамандар, ұйымдар және құрал жасаушылар UML-ды қолдануға міндеттеме алды, өйткені ол практикада сыналған әдістердің тәжірибесін және қауымдастықтың қажеттілігін қамтиды.

UML атауындағы «бірыңғай» ұғымы екі қырдан көрінеді: біріншіден, бұрынғы әдістер арасындағы ұсақ айырмашылықтарды азайтады; екіншіден, жүйелердің түрлерін, әзірлеу фазаларын (талаптарды талдау, жобалау, іске асыру) және ішкі тұжырымдарды (тек бағдарламалық жасақтаманы емес, бизнесті де) үйлестіруге ұмтылады.

UML нақты тіл ретінде бекітілгенімен, модельдеу идеяларын болашақта жетілдіруге кедергі келтірмейді. Ол өз «ұйытқысын» қайта анықтамай-ақ кеңейтіле алады және көптеген құралдық орталар үшін негіз болып қала береді (визуал модельдеу, имитациялық модельдеу және құрастыру ортасы).

OMG және стандарттандыру

Объектілік технологияларды дамытуда 1989 жылы құрылған Object Management Group (OMG) консорциумының рөлі ерекше. Оның мақсаты — бөлінген, біртекті емес объектілік орталар үшін индустриялық стандарттарды әзірлеу. 1991 жылдан бастап CORBA стандарты мен оған қатысты инфрақұрылымдық стандарттардың қабылдануы модельдеу тілдерін стандарттау қажеттілігін күшейтті. Осы үрдістердің нәтижесінде 1997 жылдың қыркүйегінде UML стандарты қабылданды.

UML стандартының негізінде объектілік талдау және жобалау саласындағы кең танымал үш бағыттың идеялары тоғысты: Г. Бучтың әдістері, И. Якобсонның OOSE тәсілі және Дж. Рамбоның OMT технологиясы. Бұл бастаманы Rational Software компаниясының ұсыныстары және бірқатар ірі корпорациялардың қолдауы күшейтті.