Программирование
<<  Разработка ТЗ Принципы разработки эор  >>
Процесс разработки
Процесс разработки
Фазы процесса
Фазы процесса
Методы
Методы
CRC - карточки
CRC - карточки
UML
UML
UML
UML
История
История
Нотация
Нотация
Нотация
Нотация
Варианты использования
Варианты использования
Пример: Экзамен
Пример: Экзамен
Включаемые use-cases
Включаемые use-cases
Генерализация actor-ов
Генерализация actor-ов
Расширение use-cases
Расширение use-cases
Tips
Tips
Диаграммы состояний
Диаграммы состояний
Пример: сдача экзамена
Пример: сдача экзамена
Пример: вложенные состояния
Пример: вложенные состояния
Пример: состояния с историей
Пример: состояния с историей
Диаграммы деятельностей
Диаграммы деятельностей
Пример: банкомат
Пример: банкомат
Классы
Классы
Примеры классов
Примеры классов
Атрибуты классов
Атрибуты классов
Атрибуты классов
Атрибуты классов
Атрибуты классов
Атрибуты классов
Методы(операции)
Методы(операции)
Диаграмма классов
Диаграмма классов
Dependency
Dependency
Association
Association
Association
Association
Aggregation
Aggregation
Composition
Composition
Generalization
Generalization
Realization
Realization
Диаграммы пакетов
Диаграммы пакетов
Package
Package
Package diagram
Package diagram
Package diagram
Package diagram
package: service
package: service
package: service::local
package: service::local
package: service::server
package: service::server
package: service::agent
package: service::agent
Стереотипы пакетов
Стереотипы пакетов
Диаграммы взаимодействия
Диаграммы взаимодействия
sequence diagram
sequence diagram
collaboration diagram
collaboration diagram
Диаграммы компонент
Диаграммы компонент
component
component
component diagram
component diagram
servers
servers
Диаграмма размещения
Диаграмма размещения
deployment diagram
deployment diagram
Rational Unified Process
Rational Unified Process
RUP: Business modeling
RUP: Business modeling
business use-case model
business use-case model
business use-case model
business use-case model
business object model
business object model
business objects
business objects
business object model
business object model
Activity diagram для use-case realization “контракт”
Activity diagram для use-case realization “контракт”
Class diagram для use-case realization “контракт”
Class diagram для use-case realization “контракт”
Collaboration diagram для use-case “контракт”
Collaboration diagram для use-case “контракт”
RUP: Анализ требований
RUP: Анализ требований
Vision
Vision
Use-case model
Use-case model
Пример: use-case model
Пример: use-case model
Actors generalization
Actors generalization
included use-cases
included use-cases
Семантика <<include>>
Семантика <<include>>
extended use-cases
extended use-cases
Семантика <<extend>>
Семантика <<extend>>
use-case generalization
use-case generalization
Семантика generalization
Семантика generalization
use-case package
use-case package
use-case storyboard
use-case storyboard
SRS
SRS
RUP: Analysis & Design
RUP: Analysis & Design
Analysis model
Analysis model
Boundary class
Boundary class
Control
Control
Entity
Entity
Проверка контрактов
Проверка контрактов
Class diagram
Class diagram
Заключение контракта
Заключение контракта
Сlass diagram
Сlass diagram
Collaboration diagram
Collaboration diagram
Ограничения на связи
Ограничения на связи
Design model
Design model
Layer
Layer
Package
Package
SAD
SAD
RUP: Implementation
RUP: Implementation
Implementation model
Implementation model

Презентация: «Процесс разработки». Автор: mukhort. Файл: «Процесс разработки.ppt». Размер zip-архива: 435 КБ.

Процесс разработки

содержание презентации «Процесс разработки.ppt»
СлайдТекст
1 Процесс разработки

Процесс разработки

“Design and programming are human activities. Forget it and all is lost.” B.Stroustrup, 1991

2 Фазы процесса

Фазы процесса

Начало Уточнение Разработка Развитие

3 Методы

Методы

OMT (Object Modeling Technique, Rumbaugh) RDD (Responsibility Driven Design) Objectory RUP (Booch, Rumbaugh, Jacobson) Способ моделирования Артефакты фаз процесса

4 CRC - карточки

CRC - карточки

Class Student

Ответственность Учиться Сдать экзамены

Коллаборанты Teacher

5 UML

UML

Unified modeling language CASE - средства: rational rose together argouml

6 UML

UML

Язык моделирования Не является языком программирования Определяет нотацию Имеет метамодель, выраженную на нем самом

7 История

История

1988 – 1995 работы mellor, booch, rambough, jacobson, koad, jordan, shlaer… 1995 – UML 0.8 (grady booch, jim rambough) 1997 – UML 1.0 (grady booch, jim rambough, ivar jacobson) rational software

8 Нотация

Нотация

Сущности Структурные Поведенческие Группирующие аннотационные Отношения Зависимость Ассоциация Обобщение Реализация

9 Нотация

Нотация

Диаграммы Вариантов использования Состояний Деятельностей Классов Объектов Последовательностей и кооперации Компонентов Размещения

10 Варианты использования

Варианты использования

Actor – внешнее по отношению к системе действующее лицо, некто или нечто взаимодействующее с системой, роль. Use case – некая последовательность действий системы, представляющая ценность для actor-а, вариант использования системы (ivar jacobson). Use-case описывает, что делает система, но не указывает как.

11 Пример: Экзамен

Пример: Экзамен

Teacher принимает экзамен у student.

12 Включаемые use-cases

Включаемые use-cases

Stereotype: <<include>> Различные use-cases могут иметь общие части abstract use-case не активируется actor-ами

13 Генерализация actor-ов

Генерализация actor-ов

Различные actors могут играть одну и те-же общую роль в некотором use-case

14 Расширение use-cases

Расширение use-cases

Stereotype: <<extend>> Некоторые use-cases могут вызываться в контексте других только при некоторых условиях

15 Tips

Tips

Use-case должен описывать ЧТО делает система, но НЕ КАК => Глубокие иерархии use-cases чаще всего бесполезны и ведут к функциональной декомпозиции => Большое количество мелких use-case не прибавят понимания того, что делает система

16 Диаграммы состояний

Диаграммы состояний

Описывают состояния объекта и переходы между состояниями State – некое состояние объекта Event – событие, вызывающее переход Transition – переход в новое состояние Condition – условие перехода (true|false) Action – мгновенное непрерываемое действие, сопровождающее переход Activity – деятельность, связанная с состоянием

17 Пример: сдача экзамена

Пример: сдача экзамена

18 Пример: вложенные состояния

Пример: вложенные состояния

Применение: группировка состояний и упрощение диаграммы Имеют не более одного начального и конечного состояний

19 Пример: состояния с историей

Пример: состояния с историей

Н – недавнее историческое состояние Н* - глубокое историческое состояние

20 Диаграммы деятельностей

Диаграммы деятельностей

Описывают последовательности действий используются для описания операций и вариантов использования Activity - деятельность Transition – переходы между деятельностями Guard condition – условие перехода Decision – блок принятия решения Concurrent threads – параллельные деятельности Synchronization bar – линейка синхронизации параллельных деятельностей

21 Пример: банкомат

Пример: банкомат

22 Классы

Классы

Class – набор объектов с общей структурой и поведением interface – базовый класс, задающий только поведение, имеет стереотип <<interface>> abstract class – базовый класс, не имеющий экземпляров parameterized class – параметризованный класс, шаблон instantiated class – депараметризованный шаблон

23 Примеры классов

Примеры классов

24 Атрибуты классов

Атрибуты классов

Attribute – атрибут (поле) class attribute – атрибут класса (static) derived attribute – производный атрибут export control – доступ (public, protected, private) containment – способ включения (value, reference) syntax: <role_name>:<class_name><=default_value>

25 Атрибуты классов

Атрибуты классов

Name, birth_date – аттрибуты age – производный аттрибут (вычисляется через birth_date)

26 Атрибуты классов

Атрибуты классов

Name, birth_date и age - аттрибуты класса

27 Методы(операции)

Методы(операции)

Method (operation) – метод class method – метод класса (static) export control – public, protected, private syntax: <stereotype> name(<parameters>) : <return type> parameter: parameter_name : type

28 Диаграмма классов

Диаграмма классов

- Определяет типы объектов системы и статические связи между ними

29 Dependency

Dependency

Отношение зависимости Обладает ролью и множественностью Может иметь стереотип

30 Association

Association

Ассоциация - отношение взаимодействия Обладает 2-мя ролями Роль обладает множественностью (1, n, *, 0..n, 1..n, 1..*) Пример: работник может занимать несколько должностей, на одной должности находится не более одного работника

31 Association

Association

Ассоциация может иметь выделенное направление Должность связана базовым тарифом оплаты Тариф оплаты никак не связан с конкретной должностью

32 Aggregation

Aggregation

Агрегация – отношение часть-целое Часть принадлежит только одному целому Сотрудник относится к одному и только одному отделу

33 Composition

Composition

Композиция – частный случай агрегации Жизненный цикл частей и целого совпадают Отделы не существуют без компании

34 Generalization

Generalization

Генерализация (наследование, обобщение) – отношение частное-общее Отдел кадров – частный случай отдела

35 Realization

Realization

Реализация – отношение детализации Треугольник и квадрат – реализации абстрактной фигуры

36 Диаграммы пакетов

Диаграммы пакетов

Package – пакет. Общий механизм организации элементов модели в группы Имеет имя Определяет пространство имен Может быть импортирован другим пакетом

37 Package

Package

38 Package diagram

Package diagram

39 Package diagram

Package diagram

40 package: service

package: service

41 package: service::local

package: service::local

42 package: service::server

package: service::server

43 package: service::agent

package: service::agent

44 Стереотипы пакетов

Стереотипы пакетов

system – вся система subsystem – подсистема facade – представление другого пакета Например, пакет внешних интерфейсов подсистемы framework – набор шаблонов stub – заместитель другого пакета Созданный, например, для тестирования

45 Диаграммы взаимодействия

Диаграммы взаимодействия

Последовательностей - Sequence diagrams Коллабораций - Collaboration diagrams Отражают динамические аспекты поведения объектов Семантически эквивалентны Содержат: Объекты Связи Сообщения Потоки данных

46 sequence diagram

sequence diagram

47 collaboration diagram

collaboration diagram

48 Диаграммы компонент

Диаграммы компонент

Показывают связи между компонентами системы стереотипы компонент: executable - исполняемый компонент library - библиотека table - таблица базы данных file - файл данных document - документ

49 component

component

Компонент – физическая упаковка логической сущности Может реализовывать несколько классов и интерфейсов Использует другие компоненты

50 component diagram

component diagram

51 servers

servers

52 Диаграмма размещения

Диаграмма размещения

Показывает физическое расположение исполняемых компонент по процессорам системы и структуру сети Элементы: Node – узел, процессор Process – процесс, поток

53 deployment diagram

deployment diagram

54 Rational Unified Process

Rational Unified Process

55 RUP: Business modeling

RUP: Business modeling

Задачи: Идентификация бизнес-процессов (use-cases) Идентификация бизнес-акторов и сущностей(entity) Улучшение (refine) бизнес-процессов Модели: business use-case model business object model

56 business use-case model

business use-case model

Модель, описывающая бизнес процессы в терминах business-actors и business use-cases Business actor – некто или нечто вовне бизнеса, взаимодействующее с ним UML: класс со стереотипом <<business actor>> Business use-case – бизнес-процесс, представляющий ценность для business actor UML: use-case со стереотипом <<business use-case>>

57 business use-case model

business use-case model

58 business object model

business object model

Модель, описывающая реализацию business use-cases в терминах взаимодействующих business workers и entities Business use-case realization – коллаборация, описывающая при помощи activity, sequence, class и interaction диаграмм, как данный business use-case реализован в business-object model . UML: use-case со стереотипом “business use-case realization”

59 business objects

business objects

Business-worker – исполнитель бизнес-процесса UML: class со стереотипом <<business worker>> business-entity – пассивная сущность, используемая в бизнесе UML: class со стереотипом <<business entity>>

60 business object model

business object model

use-case realization содержит набор диаграмм, описывающих КАК реализован исходный use-case

61 Activity diagram для use-case realization “контракт”

Activity diagram для use-case realization “контракт”

62 Class diagram для use-case realization “контракт”

Class diagram для use-case realization “контракт”

63 Collaboration diagram для use-case “контракт”

Collaboration diagram для use-case “контракт”

64 RUP: Анализ требований

RUP: Анализ требований

Задачи: сбор и анализ требований к системе классификация use-cases оценки затрат и рисков Модели: Use-case model

65 Vision

Vision

Vision – представляет собой общее описание проекта и является базисом для уточнения требований к системе Содержит: Цели проекта Stakeholders & Users (описание инициаторов проекта и конечных пользователей ) Перспективы и возможности продукта Особенности Ограничения

66 Use-case model

Use-case model

Use-case model – модель, описывающая требования к системе в терминах вариантов использования (use-case). Создается на основе Vision и Business Analysis. Элементы use-case model: Actor – внешнее по отношению к системе действующее лицо, роль. UML: Class со стереотипом <<actor>> Use-case – вариант использования системы actor-ом UML: use-case

67 Пример: use-case model

Пример: use-case model

68 Actors generalization

Actors generalization

69 included use-cases

included use-cases

70 Семантика <<include>>

Семантика <<include>>

71 extended use-cases

extended use-cases

72 Семантика <<extend>>

Семантика <<extend>>

73 use-case generalization

use-case generalization

74 Семантика generalization

Семантика generalization

75 use-case package

use-case package

Содержит набор вариантов использования, актеров, диаграмм и других пакетов используется для структуризации use-case model UML: package со стереотипом <<use-case package>>

76 use-case storyboard

use-case storyboard

Коллаборация, описывающая реализацию use-case с точки зрения пользовательского интерфейса UML: use-case со стереотипом <<use-case storyboard>>

77 SRS

SRS

SRS (Software Requirements Specification) - полностью определяет требования к системе, зависит от Vision Содержит: Функциональные требования (что должна делать система, роли пользователей, фактически, описание use-cases) Нефункциональные требования (производительность, ограничения по используемым технологиям и т.д.)

78 RUP: Analysis & Design

RUP: Analysis & Design

Задачи: Трансформировать требования собранные на предыдущем этапе в дизайн системы Проработать архитектуру системы Адаптировать дизайн к среде исполнения Модели: Analysis model Design model

79 Analysis model

Analysis model

Абстрактная модель системы, описывающая ее в терминах use-case realization. Язык реализации классов не фиксируется. Обычно не сопровождается. Элементы analysis model: Use-case realization – реализация use-case, набор activity, state, collaboration и class диаграмм Boundary class – класс, разграничивающий actor-ов и систему Control – класс, управляющий другими классами Entity – класс, моделирующий информацию, используемую в системе

80 Boundary class

Boundary class

Класс, разграничивающий (под-)систему и окружение. UML: class со стереотипом <<boundary>> Примеры: классы пользовательского интерфейса, классы интерфейсов систем и устройств

3 представления boundary class в rational rose

81 Control

Control

Класс, управляющий другими классами. Можно сказать, что control “исполняет” use-case UML: class со стереотипом <<control>>

3 представления control class в rational rose

82 Entity

Entity

Класс, класс, моделирующий информацию, используемую в системе UML: class со стереотипом <<entity>>

3 представления entity class в rational rose

83 Проверка контрактов

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

84 Class diagram

Class diagram

85 Заключение контракта

Заключение контракта

86 Сlass diagram

Сlass diagram

87 Collaboration diagram

Collaboration diagram

88 Ограничения на связи

Ограничения на связи

* Используйте обратные связи со стереотипом “subscribe-to” Avoid – короткоживущая связь, нет необходимости моделировать (RUP)

89 Design model

Design model

Модель реализации системы. Создается на основе Analysis model. Фиксирует язык реализации классов. Сопровождается до конца разработки. Элементы design model: Layer - слой (application, business, middle, system) Subsystem - подсистема Package - пакет Class – класс Use-case realization - коллаборация

90 Layer

Layer

- пакет, включающий другие пакеты некоторого уровня абстракции. UML: package со стереотипом <<layer>> Типичные уровни: Application – набор специфичных для приложения подсистем Business – подсистемы специфичные для данного типа бизнеса Middleware – подсистемы c платформно-независимыми сервисами System – интерфейсы к аппаратуре, API операционной системы и тд

91 Package

Package

Набор классов, отношений, use-case realization и других пакетов UML: package

92 SAD

SAD

SAD (Software Architecture Document) – содержит полное описание архитектуры системы Содержит: Use-case view Logical View (архитектурно важные части Design model) Process View Deployment View Implementation View Performance issues Quality issues

93 RUP: Implementation

RUP: Implementation

Задачи: Структурирование системы Реализация компонент системы Артефакты: Implementation model

94 Implementation model

Implementation model

Implementation model – коллекция подсистем (subsystems) и содержащих их компонентов (components). Компоненты включают как поставляемые компоненты (deliverable components, такие как программы),так и их составляющие.

«Процесс разработки»
http://900igr.net/prezentacija/informatika/protsess-razrabotki-169241.html
cсылка на страницу
Урок

Информатика

130 тем
Слайды