Разделы презентаций


03 Методы проектирования. UML. CASE. Шаблоны.pptx

Содержание

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныСтруктурный подход (Structured Design)В основе структурного проектирования лежит последовательная декомпозиция - целенаправленное структурирование на отдельные составляющие. В результате декомпозиции получается иерархическая модульная структура.В зависимости от

Слайды и текст этой презентации

Слайд 1Проектирование ПО
Тема 3. Методы проектирования. UML. CASE. Шаблоны
02.10.2013
ИГЭУ. Кафедра ПОКС

Проектирование ПОТема 3. Методы проектирования. UML. CASE. Шаблоны02.10.2013ИГЭУ. Кафедра ПОКС

Слайд 2Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Структурный подход (Structured Design)
В

основе структурного проектирования лежит последовательная декомпозиция - целенаправленное структурирование на

отдельные составляющие.

В результате декомпозиции получается иерархическая модульная структура.

В зависимости от объекта структурирования различают:
функционально-ориентированные методы;
методы структурирования данных.

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныСтруктурный подход (Structured Design)В основе структурного проектирования лежит последовательная декомпозиция -

Слайд 3Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Выразительные средства структурного подхода
Диаграммы

потоков данных (Data Flow Diagram - DFD), в нотации Йодана-Де

Марко или Гейна-Сарсона - BPWin, PowerDesigner.
Модели процессов IDEF0, IDEF3 – BPWin.
Диаграммы «сущность-связь» (Entity-Relationship Diagram - ERD) в нотации Чена, Баркера, IE, IDEF1x – ERWin, PowerDesigner.
Диаграммы декомпозиции.
Диаграммы «состояния - переходы» (STD) и конечные автоматы.
Структурные схемы – блок-схемы.
Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныВыразительные средства структурного подходаДиаграммы потоков данных (Data Flow Diagram - DFD),

Слайд 4Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Функционально-ориентированный метод (Function-Oriented Methods)
Метод

Криса Гэйна (Chris Gane) и Триш Сэрсон (Trish Sarson):
Разработка DFD,

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

Подход прекрасно подходит для бизнес-анализа и системного анализа.
С помощью нотации DFD хорошо описывалась процедурная логика программ, написанных в прошлом на языках типа COBOL или Clipper.

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныФункционально-ориентированный метод (Function-Oriented Methods)Метод Криса Гэйна (Chris Gane) и Триш Сэрсон

Слайд 5Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Метод структурирования данных «Информационная

инженерия»
Фазы информационной инженерии:
Разрабатывается функциональная модель и концептуальная модель предметной области

всего предприятия.
Выделяются подсистемы. Строятся ER-модели и матрицы «сущности-процессы».
Системное проектирование. Формируется детальная модель, которая включает диаграммы: декомпозиции процессов, зависимости процессов, потоков данных, действий, структур данных.
Выполняется детальное конструирование процедур обработки данных.

Джеймс Мартин (James Martin)

Клайв Финкельштейн (Clive Finkelstein)

В основе метода лежат 2 положения:
1) данные, циркулирующие в организации, дают более стабильную базу для проектирования систем, чем процедуры по их обработке;
2) данные должны рассматриваться независимо от того, как они сейчас обрабатываются.

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныМетод структурирования данных «Информационная инженерия»Фазы информационной инженерии:Разрабатывается функциональная модель и концептуальная

Слайд 6Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Объектный подход
Объектно-ориентированный подход (object-oriented

approach) представляет систему в виде взаимодействующих объектов, которые имеют собственное

локальное состояние и могут выполнять набор операций, определяемых этим состоянием.

Объектно-ориентированный анализ (ООА) представляет собой методологию анализа предметной области, основанную на преимущественном выявлении её объектов и установлении взаимных связей между ними.

Объектно-ориентированное проектирование (ООПр, Object-Oriented Design) является методологией проектирования, соединяющей процесс объектной декомпозиции и приёмы представления моделей проектируемой системы, как на логическом и физическом уровнях, так в статической и динамической формах.

Объектно-ориентированная технология (ООТ) – это совокупность языков, инструментальных средств и методологии, предназначенных для разработки ПО, ядром которого являются объекты.

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныОбъектный подходОбъектно-ориентированный подход (object-oriented approach) представляет систему в виде взаимодействующих объектов,

Слайд 7Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Объектная декомпозиция
При объектной декомпозиции

система разбивается на «активные сущности» (объекты или компоненты), которые взаимодействуют

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

:A

:B

:C

1. op1()

1.1. op2()

Клиент

Сервер

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныОбъектная декомпозицияПри объектной декомпозиции система разбивается на «активные сущности» (объекты или

Слайд 8
Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Принципы объектно-ориентированного проектирования (Enabling

Techniques)
абстрагирование,
инкапсуляция,
модульность,
иерархия,
типизация,
параллелизм,
сохраняемость.

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныПринципы объектно-ориентированного проектирования (Enabling Techniques)абстрагирование, инкапсуляция, модульность, иерархия, типизация, параллелизм, сохраняемость.

Слайд 9Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
1. Принцип абстрагирования (Abstraction)
Абстракция

выделяет существенные характеристики некоторого объекта, отличающие его от всех других

видов объектов и, таким образом, четко определяет его концептуальные границы с точки зрения наблюдателя.
Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны1. Принцип абстрагирования (Abstraction)Абстракция выделяет существенные характеристики некоторого объекта, отличающие его

Слайд 10Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
2. Принцип инкапсуляции (Encapsulation)
Инкапсуляция

- это процесс отделения друг от друга элементов объекта, определяющих

его устройство и поведение; инкапсуляция служит для того, чтобы изолировать контрактные обязательства абстракции от их реализации.

Абстракция и инкапсуляция дополняют друг друга: абстрагирование направлено на наблюдаемое поведение объекта, а инкапсуляция занимается внутренним устройством.

Скрываются и внутренняя структура объекта и реализация его методов, не влияющие на внешнее поведение объекта.

В интерфейсной части собрано все, что касается взаимодействия данного объекта с другими объектами.

Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны2. Принцип инкапсуляции (Encapsulation)Инкапсуляция - это процесс отделения друг от друга

Слайд 11Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
3. Принцип модульности (Modularization)
Модульность

- это свойство системы, которая состоит из внутренне связанных, но

слабо сцепленных между собой модулей.

Модули выполняют роль физических контейнеров, в которые помещаются определения классов и объектов при логическом проектировании системы.

В большинстве языков интерфейс модуля отделен от его реализации.

Конечной целью декомпозиции программы на модули является снижение затрат на программирование за счет независимой разработки и тестирования.

Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны3. Принцип модульности (Modularization)Модульность - это свойство системы, которая состоит из

Слайд 12Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
4. Принцип иерархии
Иерархия -

это упорядочение абстракций, расположение их по уровням.
Образование из абстракций иерархической

структуры упрощает понимание сложных систем.

Основными видами иерархических структур применительно к сложным системам являются структура классов (иерархия "is-a") и структура объектов (иерархия "part of").

Объекты имеют способность наследовать методы и данные одного или более объектов-предков, то есть можно формировать из существующего ПО новое с меньшим количеством нового кода (повторное использование).

Наследование позволяет применять общие компоненты более логично по сравнению со структурным анализом и проектированием.
Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны4. Принцип иерархииИерархия - это упорядочение абстракций, расположение их по уровням.Образование

Слайд 13Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
5. Принцип типизации
Типизация -

это способ защититься от использования объектов одного класса вместо другого,

или по крайней мере управлять таким использованием.

Класс реализует понятие типа.

Типизация может быть сильной или слабой, со статическим или динами-ческим связыванием имен с типами.

Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны5. Принцип типизацииТипизация - это способ защититься от использования объектов одного

Слайд 14Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
6. Принцип параллелизма (Concurrency)
Параллелизм

- это свойство, отличающее активные объекты от пассивных.
Объектная модель хороша

для распределенных систем, поскольку она неявно разбивает программу на: (1) распределенные единицы и (2) сообщающиеся субъекты.

Каждый объект (полученный из абстракции реального мира) может представлять собой отдельный поток управления (абстракцию процесса). Такой объект называется активным.

Унификация принципов параллелизма для объектов позволила создать параллельные языки программирования.

Эта тема рассматривает организацию процессов, задач и потоков для обеспечения эффективности, атомарности, синхронизации и распределения (по времени) обработки информации.

Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны6. Принцип параллелизма (Concurrency)Параллелизм - это свойство, отличающее активные объекты от

Слайд 15Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
7. Принцип сохраняемости (Data

Persistence)
Сохраняемость - способность объекта существовать во времени, переживая породивший его

процесс, и (или) в пространстве, перемещаясь из своего первоначального адресного пространства.

Спектр сохраняемости объектов охватывает:
промежуточные результаты вычисления выражений;
локальные переменные в вызове процедур;
собственные переменные (как в ALGOL-60), глобальные переменные и динамически создаваемые данные;
данные, сохраняющиеся между сеансами выполнения программы;
данные, сохраняемые при переходе на новую версию программы;
данные, которые вообще переживают программу.

Сохраняемость приводит к созданию объектно-ориентированным базам данных (OODB, object-oriented databases).

Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны7. Принцип сохраняемости (Data Persistence)Сохраняемость - способность объекта существовать во времени,

Слайд 16Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Создатели UML (Unified Modeling

Language)
Грэди Буч
(Grady Booch)
Джеймс Рамбо
(James Rumbaugh)
Ивар Якобсон
(Ivar Jacobson)
Первая версия

UML 1.0 опубликована в январе 1997 года.
Последняя версия UML 2.4.1 опубликована в августе 2011 года.
Развивается консорциумом OMG (Object Management Group), www.uml.org

Object-Oriented Software Engineering

Object-Modeling Technique

Booch method

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныСоздатели UML (Unified Modeling Language)Грэди Буч (Grady Booch)Джеймс Рамбо(James Rumbaugh)Ивар Якобсон

Слайд 17Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
1. Структурные диаграммы (Structure

diagrams)
1.1. Классов (Class - сlass)
1.2. Компонентов (Component - component)
1.3.

Композитной/составной структуры (Composite structure - сlass)
1.4. Кооперации (Collaboration) (UML2.0)
1.5. Развёртывания (Deployment - deployment)
1.6. Объектов (Object - object)
1.7. Пакетов (Package - package)
1.8. Профилей (Profile) (UML2.2)
Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны1. Структурные диаграммы (Structure diagrams)1.1. Классов (Class - сlass) 1.2. Компонентов

Слайд 18Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
2. Диаграммы поведения (Behavior

diagrams)
2.1. Деятельности (Activity- activity)
2.2. Автомата / Состояний (State machine /

Statechart – state machine)
2.3. Вариантов использования (Use case - use case)
2.4. Диаграммы взаимодействия (Interaction diagrams):
2.4.1. Коммуникации (Communication - comm) (UML2.0) / Кооперации (UML1.x)
2.4.2. Обзора взаимодействия (Interaction overview - intover) (UML2.0)
2.4.3. Последовательности (Sequence - sd)
2.4.4. Синхронизации (Timing - timing) (UML2.0)

Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны2. Диаграммы поведения (Behavior diagrams)2.1. Деятельности (Activity- activity)2.2. Автомата / Состояний

Слайд 19Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Модели в жизненном цикле

ПО
Модель вариантов использования
Модель анализа
Модель проектирования
Модель развёртывания
Модель реализации
Модель тестирования

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныМодели в жизненном цикле ПОМодель вариантов использованияМодель анализаМодель проектированияМодель развёртыванияМодель реализацииМодель

Слайд 20Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Модель проектирования

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныМодель проектирования

Слайд 21Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Модель проектирования

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныМодель проектирования

Слайд 22Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Кооперации (Collaboration)
В терминологии фирмы

Rational кооперации называют реализациями вариантов использования.
Динамическая составляющая
Статическая составляющая
Кооперация –

это описание совокупности объектов, взаимодействующих для реализации определённого поведения и достижения некоторой цели.
Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныКооперации (Collaboration)В терминологии фирмы Rational кооперации называют реализациями вариантов использования.Динамическая составляющаяСтатическая

Слайд 23Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Шаблоны
Шаблон (template) в технологии

объектов — технология повторного использования проекта в отличие от повторного

использования кода.

Шаблон обеспечи­вает скелет решения проблемы, который должен быть настроен и расширен, чтобы он мог выполнять полезную функцию. Настройка включает написание определенного кода, который «заполняет пробелы» в шаблоне (то есть, кото­рый реализует различные элементы шаблона, приспосабливая их к оконча­тельному структурному и поведенческому проекту).

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныШаблоныШаблон (template) в технологии объектов — технология повторного использования проекта в

Слайд 24Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Паттерны
Паттерн Observer (Наблюдатель) из

книги Эриха Гаммы
Параметризованные, то есть настраиваемые кооперации называют паттернами –

patterns (образцами).
Паттерн как шаблон проекта означает и объяс­няет лучшие и широко подтвержденные теорией и практикой решения задач проектирования.
Он является решением типичной проблемы в определенном контексте.
Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныПаттерныПаттерн Observer (Наблюдатель) из книги Эриха ГаммыПараметризованные, то есть настраиваемые кооперации

Слайд 25Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Связывание паттерна для создания

кооперации

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныСвязывание паттерна для создания кооперации

Слайд 26Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Каталоги паттернов

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныКаталоги паттернов

Слайд 27Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Описание паттерна

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныОписание паттерна

Слайд 28Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Шаблоны приложений
Будем различать термины:
паттерн

(pattern) — образец (шаблон структуры ПО) и
фреймворк (framework) —

каркас (шаблон приложения).

Наиболее известные шаблоны приложений — системы пла­нирования ресурсов предприятия (enterprise resource planning — ERP) типа SAP R/3. ERP-системы предлагают и проектирование, и повтор­ное использование кода. Это базовые пакеты ПО. ПО настраивается и расши­ряется в соответствии с перечнем потребностей клиента. Настройка выполняется в пределах скелетного проекта, заданного шаблоном.
Application framework - каркас приложений (интегрированная среда, содержащая библиотеки классов и определяющая структуру разрабатываемого приложения). Например, MFC application framework - каркас приложения на основе библиотеки базовых классов Microsoft.
 
Шаблон обеспечивает структурное проектирование системы. В этом смысле, каждый шаблон является структурным шаблоном независимо от того, является ли он программным продуктом типа ERP-системы или только идеей проекта и условием, наложенным на коллектив разработчиков.

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныШаблоны приложенийБудем различать термины:паттерн (pattern) — образец (шаблон структуры ПО) и

Слайд 29Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Инструментальные средства поддержки процесса

проектирования
Аббревиатура CASE (Computer-aided Software Engineering — автоматизированная разработка ПО) обозначает

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

Средства проектирования компонентов программного обеспечения и информационного обеспечения обеспечивают:
моделирование структуры и поведения компонентов ПО как на логическом уровне так и на физическом;
логическое и физическое моделирование данных, автоматическое преобразование моделей данных в «третью нормальную форму», автоматическую генерацию схем БД и описаний форматов файлов на уровне программного кода.

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныИнструментальные средства поддержки процесса проектированияАббревиатура CASE (Computer-aided Software Engineering — автоматизированная

Слайд 30Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Rational Software Architect (IBM

Rational Software)

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныRational Software Architect  (IBM Rational Software)

Слайд 31Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
ERwin Data Modeler R9

(Computer Associaties)

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныERwin Data Modeler R9 (Computer Associaties)

Слайд 32Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
PowerDesigner 16 (SAP Sybase)

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныPowerDesigner 16 (SAP Sybase)

Слайд 33Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Enterprise Architect (Sparx Systems)

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныEnterprise Architect (Sparx Systems)

Слайд 34Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
ArgoUML (Collab.Net)

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныArgoUML (Collab.Net)

Слайд 35Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
ER/Studio (Embarcadero)

Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныER/Studio (Embarcadero)

Слайд 36Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Средства моделирования сред программирования
MS

Visual Studio 2010 Ultimate
Borland Together 2005 for Microsoft Visual Studio

.NET
Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныСредства моделирования  сред программированияMS Visual Studio 2010 UltimateBorland Together 2005

Слайд 37Проектирование ПО. Методы проектирования. UML. CASE. Шаблоны
Достоинства CASE-средств
улучшают качество создаваемого

ПО за счет средств автоматического контроля (прежде всего, контроля проекта);


позволяют за короткое время создавать прототип будущей системы, что позволяет на ранних этапах оценить ожидаемый результат;
ускоряют процесс проектирования и разработки;
освобождают разработчика от рутинной работы, позволяя ему целиком сосредоточиться на творческой части разработки;
поддерживают развитие и сопровождение разработки;
поддерживают технологии повторного использования компонентов разработки.
Проектирование ПО. Методы проектирования. UML. CASE. ШаблоныДостоинства CASE-средствулучшают качество создаваемого ПО за счет средств автоматического контроля (прежде

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика