Език за моделиране
Език за моделиране е всеки изкуствен език, който може да се използва за представяне на информация или знания в структура, която се определя от последователен набор от правила. Правилата са използвани за тълкуване на смисъла на компонентите в структурата. Примери за езици на моделиране са Unified Modeling Language (UML) за компютърни системи, IDEF за процеси и VRML за 3-D компютърни графични модели, предназначени специално за използване с World Wide Web.
UML
Унифицираният език за моделиране (UML - Unified Modeling Language) представлява фамилия от графични нотации, обединени от общ мета-модел, които помагат при описанието и проектирането на софтуерни системи, по специално обектно-ориентирани. Създаден през 1997 г, UML е сравнително нов стандарт контролиран от отворения консорциум от компании Object Management Group (OMG). Най-известния стандарт на OMG e CORBA (Comman Object Request Broker Architecture). В своето текущо състояни UML дефинира нотация и мета-модел:
- Нотацията (notation) са графичните елементи, които се използват в моделите, т.е. това е графичния синтаксис на езика за моделиране. Както всички графични езици, така и тук нотацията има малка степен на точност. Тя зависи по-скоро от интуицията и опита на разработчиците, от колкото от някакви формални дефиниции.
- Мета-модел (meta-model) е всички видове диаграми, дефиниращи концепцията на езика. Мета-моделът е жизнено важен за хората разглеждащи UML като език за програмиране, тъй като той дефинара абстрактния синтаксис на този език.
В UML 2 съществуват 13 официални типа диаграми, като части от един тип легално могат да бъдат използвани в друг. Те са:
- Диаграма на дейност (Activity diagram) - Описва процедурното и паралелно поведение
- Клас диаграма (Class diagram) - Описва класове от обекти и връзките между тях
- Диаграма на комуникация (Communication diagram) - Описва взаимодействията между обектитие, като особенно внимание се отделя на връзките между тях
- Диаграми на компоненти (Component diagram) - Описва структурата и връзките между компонентите
- Съставни структури (Composite structure) - Предназначението им е за декомпозиция на клас по време на изпълнение
- Диаграма за разгръщане (Deployment diagram) - Разгръщане на артефактите във възлите
- Диаграма за преглед на взаимодействието (Interaction overview) - Комбинация от диаграми на последователност и дигарами за дейност
- Диаграма на обекти (Object diagram) - За представяне на примерни кофигурации на инстанции
- Диаграма на пакети (Package diagram) - Йерархична структура по време на компилиране
- Диаграма на последователност (Sequence diagram) - Служи за представяне на взаимодйствието между обектите, като се набляга върху последователностите
- Диаграма на машина за състояние (State machine diagram) - Описва как събитията променят обекта по време на неговия живот
- Диаграма за време (Timing diagram) - Взаимодействие между обекти, като се набляга върху синхронизацията
- Случай на употреба (Use case) - Представя начина на взаимодействие между потребител и система.
VRML
VRML (Virtual Reality Modeling Language)
- Език, който указва на браузъра как да изобразява 3D обекти.
- Явява се стандартен формат на файлове за демонстрация на тримерна интерактивна векторна графика, която най-често се използва във WWW.
- Файловете завършват с .wrl и указват на браузъра типа на своето съдържание. След заглавния ред се намира главния код на файла.
В по-напреднала форма подържа Java и Java Script апликации, които да карат обектите да подскачат, да се въртят, да пулсират, да се свиват и нарастват и каквото и да е възможно действие. Организиран е в обекти, наречени възли, които притежават техни собствени полета и атрибути. Тези възли могат също да влизат в състава на полетата на други, и т.н. Съществува близост между VRML, Java и C++, като тя се изразява в това, че обектно-ориентираната основа на тези езици заменя възлите с обекти, които притежават методи, атрибути и полета.
Вижте още
- Размита логика
- Когнитивна наука
- Комплексност
- Симулация
- Агрегатно планиране
- Делови игри
- Модел
- Имитационен модел
- Симулационен език
- Еволюционен алгоритъм
- Интегрираност
- Управление
- Невронна мрежа