Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектирование / Презентации / 03 Методы проектирования. UML. CASE. Шаблоны.pptx
Скачиваний:
68
Добавлен:
07.03.2015
Размер:
1.45 Mб
Скачать

Проектирование ПО

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

6/27/19

ИГЭУ. Кафедра ПОКС

Структурный подход (Structured Design)

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

Взависимости от объекта структурирования различают:

функционально-ориентированные методы;

методы структурирования данных.

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

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

2

Выразительные средства структурного подхода

1)Диаграммы потоков данных (Data Flow Diagram - DFD), в нотации Йодана-Де Марко или Гейна- Сарсона - BPWin, PowerDesigner.

2)Модели процессов IDEF0, IDEF3 – BPWin. 3)Диаграммы «сущность-связь» (Entity-Relationship

Diagram - ERD) в нотации Чена, Баркера, IE, IDEF1x – ERWin, PowerDesigner.

4)Диаграммы декомпозиции.

5)Диаграммы «состояния - переходы» (STD) и конечные автоматы.

6)Структурные схемы – блок-схемы.

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

3

Функционально-ориентированный метод (Function-Oriented Methods)

Метод Криса Гэйна (Chris Gane) и Триш Сэрсон (Trish Sarson):

1.Разработка DFD, охватывающей весь программный продукт.

2.Получение наброска модели данных

3.Построение ER-диаграммы.

4.Проведение нормализации данных.

5.Перестройка диаграммы потоков данных.

6.Разбиение логической модели процессов на процедурные единицы.

7.Определение для каждой процедурной единицы

деталей, которые потребуются для реализации

 

Подход прекрасно подходит для бизнес-анализа и системного

 

программного продукта.

 

анализа.

 

С помощью нотации DFD хорошо описывалась процедурная

 

логика программ, написанных в прошлом на языках типа COBOL

 

или Clipper.

4

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

Метод структурирования данных «Информационная инженерия»

В основе метода лежат 2 положения:

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

2)данные должны рассматриваться независимо от того, как они сейчас обрабатываются.

Фазы информационной инженерии:

Джеймс

Клайв

Мартин (James

Финкельштейн

Martin)

(Clive Finkelstein)

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

2.Выделяются подсистемы. Строятся ER-модели и матрицы «сущности-процессы».

3.Системное проектирование. Формируется детальная

модель, которая включает диаграммы: декомпозиции

процессов, зависимости процессов, потоков данных, действий, структур данных.

4Проектирование.ВыполняетсяПО. Методетальноеы проектированияконструирование. UML. CASE. Шаблоны процедур 5

обработки данных.

Объектный подход

Объектно-ориентированный подход (object-oriented approach) представляет систему в виде взаимодействующих объектов, которые имеют собственное локальное состояние и могут выполнять набор операций, определяемых этим состоянием.

Объектно-ориентированный анализ (ООА) представляет

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

установлении взаимных связей между ними.

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

динамической формах.

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

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

6

Объектная декомпозиция

 

 

1. op1()

1.1.

 

 

 

 

 

 

op2()

 

:A

 

 

 

:B

:C

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Клиент Сервер

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

«объекту-серверу» эквивалентна вызову соответствующего метода

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

объекта.

Принципы объектно-ориентированного проектирования (Enabling Techniques)

1)абстрагирован

ие,

2)инкапсуляция,

3)модульность,

4)иерархия,

5)типизация,

6)параллелизм,

7)сохраняемость.

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

8

1. Принцип абстрагирования (Abstraction)

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

 

Абстракция

Объект представляет собой полезную

 

 

сущности

модель некой сущности в предметной

 

 

Абстракция

области

 

 

Объект состоит из обобщенного

 

 

поведения

множества операций

 

 

Абстракция

Объект группирует операции, которые

 

 

виртуальной

либо вместе используются более высоким

 

машины

уровнем управления, либо сами

 

 

 

используют некоторый набор операций

 

 

 

более низкого уровня

 

 

Произвольная Объект включает в себя набор операций,

 

 

абстракция

не имеющих друг с другом ничего общего

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

9

2. Принцип инкапсуляции (Encapsulation)

Инкапсуляция -- это процесс отделения друг от друга

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

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

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

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

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

10