Вернуться
на страницу <Model Vision Studium>
В начало
Технология моделирования UML
Введение
По природе своей компьютер может выполнять
только простейшие операции, которые можно
вводить одну за другой в его память прямо в
машинных кодах. Изнурительная монотонность
такой работы привела когда-то первых
программистов к естественному решению - созданию
Ассемблеров, то есть средств, упрощающих
написание программ засчет написания машинных
кодов в некоторых мнемонических обозначениях с
последующим автоматическим переводом.
Дальнейшее развитие этих идей привело к созданию
первых языков программирования высокого уровня,
в которых длинные и сложные последовательности
машинных кодов были заменены одним обозначающих
их словом - оператором.
Эти нововведения существенно упростили
написание программ. Но, тем не менее, программы,
написанные "сплошным текстом", часто
содержали запутанные последовательности
операторов, в которых зачастую было трудно
уловить нить логических рассуждений. Эти
проблемы были решены с появлением структурного
программирования, суть которого заключается в
возможности использования логических
конструкций в процессе написания программ, что
сделало текст программы более понятным и
удобочитаемым и упростило процесс модификации
текста программ. Параллельно был введен принцип
декомпозиции, позволявший избавиться от
зачастую по несколько раз повторяющиеся
последовательностей операторов, особенно в тех
случаях, когда приходилось решать большие
сложные задачи с выполнением практически одних и
тех же последовательностей операций над разными
объектами одного типа данных. Декомпозиция
крупных задач на меньшие по сложности и размеру
задачи, легче поддающиеся решению, позволила
решить эту проблему. Последовательности команд
стали оформляться как замкнутые функции и
процедуры, а также данные, связанные по смыслу,
стали объединяться в сложные структуры данных.
Следующим шагом стало появление модульного
подхода, когда отдельные части программ стали
объединяться в отдельные самостоятельные
структуры - модули, которые содержали в себе не
одну процедуру и функцию. Появление программирования
сверху вниз (задача разбивается на несколько
более простых, после чего каждая из задач
решается по отдельности. Затем компонуются
результаты решения простых задач и решается
задача проектирования в целом) и снизу вверх
(уже имеется набор отдельных процедур и функций,
подстраиваясь под которые, решается задача)
также существенно упростило процесс написания
программ. Благодаря этому повысилась
наглядность текста и упростилась его отладка.
Методы, основанные на этих подходах, имеют общую
черту: в них данные и код, их обрабатывающий,
существуют отдельно друг от друга.
В результате многолетних исследований был
разработан и опробован так называемый объектно-ориентированный
подход (ООП) (в 1967 году создан первый язык,
основанный на данном подходе - Simula67, в 1983 году -
язык C++). Главная причина возникновения ООП
связана с поиском простых путей для создания
сложных программ. ООП наследует лучшие черты
структурного программирования и комбинирует их
с некоторыми новыми подходами. Одно из основных
преимуществ ООП по сравнению с более ранними
методами построения программных систем - тесная
связь данных и кода, работающего с ними. То есть,
данные стали объединяться со соответствующими
операциями их обработки в некие структуры,
называемые объектами. В ООП были реализованы
механизмы, позволяющие:
- описывать структуру объекта,
- описывать действия с объектами,
- использовать специальные правила наследования
объектов,
- передавать сообщения между объектами.
Вместе с развитием объектно-ориентированного
программирования стали развиваться и общие
объектно-ориентированные методы разработки ПО.
Ведь основной задачей этапов разработки ПО,
предшествующих непосредственному
программированию, является спецификация
предметной области в терминах, удобных для
дальнейшего применения в процессе разработки.
Таким образом осуществляется перевод информации
из вида, в котором она существует в сознании
специалистов предметной области, на язык
программистов.
В течение последних нескольких лет при
поддержке консорциума Object Managing Group (OMG)
специалистами фирм Rational Software Corporation и др.
разрабатывался Унифицированный Язык
Моделирования (UML - Unified Modeling Language), который
предоставляет объектно-ориентированный метод
разработки ПО с поддержанием
объектно-ориентированной реализации.
UML представляет собой универсальный язык для
моделирования объектов, позволяющий
документировать объектно-ориентированные
системы, выполнять их анализ и проектирование. На
UML можно содержательно описывать классы, объекты
и компоненты в различных предметных областях,
часто сильно отличающихся друг от друга.
В начало
Вернуться на страницу <Model Vision
Studium> |