Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Modeling With Uml

948 views

Published on

  • Login to see the comments

  • Be the first to like this

Modeling With Uml

  1. 1. Моделирование на UML Денис Иванов. Ай Ти Консалтинг
  2. 2. Каков был Ваш ПЕРВЫЙ ШАГ, после того как Вы узнали о существовании UML? 1. Пошел(а) на курсы 2. Прочитал(а) книгу 3. Установил(а) программу, позволяющую рисовать UML диаграммы и попытал(а)ся что- то сделать 4. А что такое UML? 5. Другое
  3. 3. Что такое UML? Язык Моделирования Унифицированный UML = Unified Modeling Language
  4. 4. Назначение UML ―UML – графический язык моделирования общего назначения, предназначенный для спецификации, визуализации, проектирования и документирования всех артефактов, создаваемых при разработке программных систем‖
  5. 5. Спецификация Так объяснил Так понял менеджер Так описал аналитик Так реализовал Так презентовал заказчик проекта программист проект менеджер Такой оказалась Таким оказался Такими оказались Такой оказалась Что реально хотел документация продукт затраты работоспособность заказчик ...
  6. 6. Визуализация
  7. 7. Проектирование ―The Unified Modeling Language (UML) – is a general-purpose visual modeling language that is used to specify, visualize, construct, and document the artifacts of a software system‖
  8. 8. Документирование • Все элементы модели могут содержать текстовое описание • Почти все инструменты могут собирать из них осмысленные документы • Почти никто из разработчиков этим не пользуется
  9. 9. Чем не является UML? 1. Языком программирования – Генерация кода возможна 2. Моделью процесса разработки приложений – Модель необходима и имеется – Rational Unified Process (RUP)
  10. 10. Модель UML • Модель UML — это совокупность конечного множества конструкций языка, главные из которых — сущности и отношения • Модель UML — это нагруженный мульти-псевдо- гипер-орграф.
  11. 11. Сущности «artifact» «library» Analysis Order Requirement Product QT Model {abstract} Specification Здесь находится DataBase Make Order Make Order комментарий «component» Logged DataBase Customer entry/OpenLog Server exit/CloseLog Customer Visitor Display main IAudio «interface» a=15 IAudio menu :Rectangle
  12. 12. Какие из перечисленных отношений существуют в UML? 1.Зависимости 2.Ассоциации 3.Уточнения 4.Обобщения 5.Реализации 6.Расширения
  13. 13. Механизмы расширения (i) Механизмы расширения — встроенный в язык способ изменить язык — позволяют определять новые элементы модели на основе существующих управляемым и унифицированным способом
  14. 14. Механизмы расширения (ii) Write the book {importance=high, Author=”Ivanov, Novikov”} Person {0<age<99} -age:Integer
  15. 15. Механизмы расширения (iii) Has full access to specified domain «stereotype» «metaclass» PowerUser Actor 1 domain «PowerUser» Administrator {domain=LAN}
  16. 16. Диаграммы • Что делает система? – Диаграмма использования / Use case diagram • Из чего состоит система? – Диаграмма классов / Class diagram – Диаграмма компонентов / Component diagram – Диаграмма размещения / Deployment diagram – Диаграмма объектов / Object diagram – Диаграмма внутренней структуры / Composite structure diagram • Как работает система? – Диаграмма деятельности / Activity diagram – Диаграмма коммуникации / Communication diagram – Диаграмма последовательности / Sequence diagram – Диаграмма автомата / State machine diagram – Обзорная диаграмма взаимодействия / Interaction overview diagram – Диаграмма синхронизации / Timing diagram • Как управлять сложностью модели? – Диаграмма пакетов / Package diagram
  17. 17. use case Система заказа товаров Выписать счет-фактуру Issue 7 invoice Продавец 6 «include» 3 Make order Customer Seller Покупатель 4 5 2 Make order 1 Computer of computer Seller
  18. 18. class Структура системы обработки заказов 1 * 1 Order Customer 2 1 1 1 4 3 «instantiate» VIP 1..* Customer «utility» OrderProcessor Address 1..* 1..* 1..* 1 Payment CreditCard Платеж
  19. 19. state machine Состояния лифта pressDOWN pressUP [! 1 s t floor] [! last floor] Idle 2 Moving down Moving up 1
  20. 20. activity Сборка приложения CheckOut Component 2 [else] [no more сomponents] Build Build Component Application 3 1
  21. 21. sd Печать через сервер печати 1 :Computer :PrintServer :Printer :Queue print(file) 3 4 print(file) 2 alt [printer free] print(file) 5 [printer busy] store(file) 6
  22. 22. comm Печать через сервер печати [printer busy] :Computer 1.2: store(file) :Queue 3 1 1: print(file) 2 [printer free] 1.1: print(file) :PrintServer :Printer
  23. 23. component Web приложение 1 DBMS Application Service 3 2 WebBrowser
  24. 24. deployment Web приложение «executable» «manifest» 1 DBMS Oracle «deploy» 2 5 DataBase Server 4 «execution environment» 3 J2EE AS «EJB» «manifest» Application Server Service 6 Workstation «executable» «manifest» WebBrowser Mozilla
  25. 25. object Структура системы обработки заказов :Order :Customer home:Address :OrderProcessor 1 :Payment visa:CreditCard 2 master:CreditCard
  26. 26. component Компилятор 1 Compiler 2 4 In :Lexical :Syntax Analyzer Analyzer 6 5 3 Out :CodeGenerator :SemanticAnalyzer
  27. 27. interaction Печать документа [подключен [подключен локальный сетевой принтер] принтер] [else] ref Печать на ref локальный 1 1 Печать через принтер сервер печати
  28. 28. timing Цикл работы стиральной машины Spinning Rinsing 2 1 Washing Soaking 0 5 10 15 20 25 30 35 40 45 50
  29. 29. package Пакеты UML верхнего уровня L0 «import» PrimitiveTypes Basic 1 «merge» 2 L0 «merge»
  30. 30. Системы • Информационные системы управления предприятием (Enterprise Resource Planning - ERP) • Приложения реального времени (real-time) и встроенные (embedded) системы • Клиент-серверные системы массового обслуживания
  31. 31. References • http://www.uml.org • http://www.it-konsulting.spb.ru • Иванов Д.Ю., Новиков Ф.А. «Моделирование на UML», Санкт-Петербург, Наука и техника, 2009 (срок выхода – октябрь 2009)

×