Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Java_Промышленное программирование1.doc
Скачиваний:
173
Добавлен:
13.04.2015
Размер:
5.58 Mб
Скачать

П риложение3

UML

Создаваемое программное обеспечение (ПО) постоянно усложняется. При работе над любыми информационными (распределенными) системами в первую очередь возникает проблема взаимопонимания программиста и заказчика уже на стадии обсуждения структуры системы. До начала кодирования программы предлагаемая концепция предусматривает решение двух предварительных задач: проанализировать поставленную перед разработчиком задачу и разработать проект будущей системы. Программа разбивается на отдельные модули, взаимодействующие между собой с помощью механизмов передачи параметров.

Унифицированный язык моделирования (Universal Model Language) − графический язык визуализации, специфицирования, конструирования и документирования программного обеспечения. С помощью UML можно разработать детальный план создаваемой системы, отображающий системные функции и бизнес-процессы, а также конкретные особенности реализации. А именно:

  • классы, написанные на специальных языках программирования;

  • схемы БД;

  • программные компоненты многократного использования.

Поскольку UML интенсивно изменяется, то здесь не ставится цель дать все детали и аспекты UML. В настоящее время существуют две крайние точки зрения на применение UML и моделирвование как таковое:

  1. Необходимо замоделировать всё.

  2. Моделирование – пустая трата времени: заказчик, как правило, не оплачивает эту работу, поэтому надо сразу писать код.

Истина, как всегда, где-то рядом. Здравый смысл никто не отменял, поэтому– если есть необходимость что-то замоделировать, это следует сделать, если нет – не следует.

В текущей жизни человек всегда сталкивается с UML. Даже пытаясь набросать чертёж полочки для книг – это уже UML. Таким образом, графические наброски проекта всегда рядом с человеком. Для промышленного программирования, выполняемого большими и зачастую распределёнными интернациональными командами, наибольшая ценность UML – в возможности эффективного взаимодействия и в облегчении понимания. Хорошая диаграмма может помочь донести идею проекта, модуля, особенно если нужно избежать большого количества деталей, которые только усложнят понимание. Диаграммы более наглядно представляют систему или процесс, что облегчит понимание. Особенно важно отметить, что UML широко используется в пределах объектно-ориентированного (ОО) сообщества, хорошо стандартизован и является доминирующей графической нотацией. Так же UML популярен и вне пределов ИТ индустрии, поскольку он нейтрален к технологии, предметной области и т.д.

Не являясь заменой языков программирования, диаграммы – полезный помощник программиста. Хотя многие полагают, что в будущем графические методы будут доминировать на рынке программного обеспечения, следует скептически относиться к этому. С трудом можно себе представить, хотя многие менеджеры мечтают об этом, что будет создан инструмент, в котором, нарисовав всё и нажав «волшебную кнопку», на выходе получишь готовое приложение.

Задача состоит в том, чтобы получить оценку того, в чём диаграммы могут быть полезны и в чём нет.

UML – семейство графических нотаций, базирующихся на единой метамодели, помогающий в описании и проектировании систем программного обеспечения, особенно систем программного обеспечения, использущих объектно-ориентированный стиль. Универсальность UML имеет побочный эффект – разные люди используют UML разными способами. Это ведет к долгим и бесполезным дискуссиям о том, как же он должен использоваться. Чтобы избежать этого, главное – добиться единого понимания использования UML в пределах группы разработчиков, где вы сейчас работаете. В другой группе может быть несколько другое понимание, но главное – чтобы все это понимали одинаково.

Основные пути использования UML

Эскизы

Главное преимущество рисования эскизов – их выборочность. Рисуя эскизы, можно набрасывать условно некоторые проблемы кода, который будет создан, обычно после обсуждения их с группой людей в команде. Главная цель состоит, с одной стороны в том, чтобы, используя эскизы, донести до своих коллег идеи и альтернативы того, что планируется сделать, с другой стороны – более полно понять проблемную область.

При этом нет смысла говорить о сотнях или тысячах строках кода, которые будут созданы или модифицированы. Концентрация осуществляется на ключевых, концептуальных проблемах. Визуализировав их, прежде чем начнется программирование, можно избежать многих часов бессмысленного кодирования.