- •Введение в Программную Инженерию
- •Отчет о хаосе
- •Что влияет на успешность программного проекта ?
- •В конце 60-х – начале 70-х годов прошлого века произошло событие, которое вошло
- •Software Engineering ( SE ) 1968 год Конференции НАТО
- •Этапы развития программной инженерии
- •software engineering
- •Все виды деятельности, выполняемые в процессе промышленного программирования и необходимые для успешного выполнения
- •Установление и использование правильных инженерных принципов (методов) для экономичного получения надежного и работающего
- •ТАКИМ ОБРАЗОМ
- •Согласно SWEBOK (Software
- •Дополнительные области
- •Программное
- •ЖЦ, Программный
- •Программный процесс — это набор действий и связанных с ними результатов, приводящих к
- •Модель программного процесса
- •Говоря о моделях процессов, необходимо различать фазы и виды деятельности:
- •Вид деятельности
- •К наиболее известным
- •визуального программирования (3 пок – алгоритмический (как делать))
- •Артефакты - это некоторые продукты проекта, порождаемые или используемые в нем при работе
- •Методы программной инженерии
- •Метод программной индустрии основан на идее создания моделей ПО с поэтапным преобразованием этих
- •Методы должны включать в себя
- •Начиная с 70-х годов создано достаточно много методов разработки ПО. Наиболее известны:
- •UML Unified Modeling Language
- •Виды диаграмм
- •Структурные диаграммы
- •Поведенческие
- •1. Диаграммы вариантов использования (Use Case)
- •Бизнес ВИ и Системные ВИ
- •Системная диаграмма ВИ
- •Суть диаграммы use case
- •Базовые элементы этого вида диаграмм —
- •Стандартные элементы
- ••Множество вариантов использования в целом должно определять все возможные стороны ожидаемого поведения системы.
- •Актеры
- •Примечания
- •Отношения на диаграмме вариантов использования
- •Отношение ассоциации
- •Отношение расширения
- •Отношение обобщения
- •Отношение включения
- •Пример диаграммы вариантов использования
- •На следующем этапе разработки данной диаграммы вариант использования "Оформить заказ на покупку товара"
- •Приведенная диаграмма вариантов использования, в свою очередь, может быть детализирована далее с целью
- •Диаграмма деятельности
- •При моделировании поведения проектируемой или анализируемой системы возникает необходимость не только представить процесс
- •В контексте языка UML деятельность (activity) представляет собой некоторую совокупность отдельных операций.
- •Каждое состояние на диаграмме деятельности соответствует выполнению некоторой элементарной операции, а переход в
- •Ветвление на диаграмме деятельности обозначается небольшим ромбом, внутри которого нет никакого текста
- •В языке UML для распараллеливания операций используется специальный символ для разделения (рис. а)
- •Диаграммы деятельности в моделировании бизнес-
- •В общем случае действия на диаграмме деятельности выполняются над теми или иными объектами.
- •Состояние действия (action state) является специальным случаем состояния с некоторым входным действием и,
- •Каждая диаграмма деятельности должна иметь единственное начальное и единственное конечное состояния.
- •Переход как элемент языка UML переводит деятельность в последующее состояние сразу, как только
- •Поток объектов. Объекты, которые являются входными или выходными данными для какого- либо действия,
- •Пример
- •Центральным объектом процесса продажи является заказ или вернее состояние его выполнения.
- •Упражнение
- •Исходные данные
- •Проблемы
- •Решения
- •Цель
- •подсказка
- •Модель сущность- связь
- •ДАЛЕЕ ДЛЯ ДО
- •Архитектура ПО
- •Управление
Методы должны включать в себя
следующие компоненты:
Описание моделей системы и нотация, используемая для описания этих моделей (например, объектные модели, конечно-автоматные модели и т.д.)
Правила и ограничения, которые надо выполнять при разработке моделей (например, каждый объект должен иметь одинаковое имя)
Рекомендации — эвристики, характеризующие хорошие приемы проектирования в данном методе (скажем, рекомендация о том, что ни у одного объекта не должно быть больше семи подобъектов)
Руководство по применению метода — описание последовательности работ (действий), которые надо выполнить для построения моделей (все атрибуты должны быть задокументированны до определения операций, связанных с этим объектом)
Начиная с 70-х годов создано достаточно много методов разработки ПО. Наиболее известны:
Метод структурного анализа и проектирования Том ДеМарко (1978),
Метод объектно-ориентированного анализа Буч (1994), Рамбо (1991).
Метод сущность-связь проектирования информационных систем Чен (1976)
UML Unified Modeling Language
блок-схемы (40г) ()
структурный анализ (60 г SADT, 70 г сущность-связь, потоков данных)
Объектно-ориентированный подход стандарт UML(1997 г.) С
тех пор вышло несколько
версий стандарта UML.
Текущая версия UML 2.4.1
Виды диаграмм
Каждый вид диаграмм является типом моделей, реализующим определенную точку зрения на программную систему. Виды диаграмм не являются строго обязательными в UML – их можно перемешивать, создавать свои собственные виды диаграмм.
Структурные диаграммы
диаграммы классов (class diagrams) предназначены для моделирования структуры объектно-ориентированных приложений классов, их атрибутов и заголовков методов, наследования, а также связей классов друг с другом;
диаграммы компонент (component diagrams) используются при моделировании компонентной структуры распределенных приложений; внутри каждая компонента может быть реализована с помощью множества классов;
диаграммы объектов (object diagrams) применяются для моделирования фрагментов работающей системы, отображая реально существующие в runtime экземпляры классов и значения их атрибутов;
диаграммы композитных структур (composite structure diagrams) используются для моделирования составных структурных элементов моделей – коопераций, композитных компонент и т.д.;
диаграммы развертывания (deployment diagrams) предназначены для моделирования аппаратной части системы, с которой ПО непосредственно связано (размещено или взаимодействует);
Поведенческие
диаграммы
диаграммы активностей (activity diagrams) используются для спецификации бизнес-процессов, которые должно автоматизировать разрабатываемое ПО, а также для задания сложных алгоритмов;
диаграммы случаев использования (use case diagrams) предназначены для «вытягивания» требований из пользователей, заказчика и экспертов предметной области;
диаграммы конечных автоматов (state machine diagram) применяются для задания поведения систем;
диаграммы взаимодействий (interaction diagram):
диаграммы последовательностей (sequence diagram) используются для моделирования временных аспектов внутренних и внешних протоколов ПО;
диаграммы схем взаимодействия (interaction overview diagram) служат для организации иерархии диаграмм последовательностей;
диаграммы коммуникаций (communication diagrams) являются аналогом диаграмм последовательностей, но по-другому изображаются (в привычной, графовой, манере);
временные диаграммы (timing diagrams) являются разновидностью диаграмм последовательностей и позволяют в наглядной форме показывать внутреннюю динамику взаимодействия некоторого набора компонент системы.
1. Диаграммы вариантов использования (Use Case)
описывает функциональное назначение системы или, другими словами, то, что система будет делать в процессе своего функционирования.
.
Бизнес ВИ и Системные ВИ
На Бизнес Диаграмме ВИ (БДВИ) отображается, как взаимодействуют
внешние пользователи с вашей организацией для достижения бизнес целей. На ней обычно показывают внешних по отношению к вашей организации актеров, например, клиентов и внешние организации. Старайтесь на этом этапе избегать связей <include> и <extend>. Данная диаграмма используется на этапе Бизнес Моделирования. Очень важно на этом этапе показать диаграмму Бизнес Объектов, которая отображает основные бизнес-сущности (и их свойства) и взаимосвязи между ними.
Системная диаграмма ВИ
На Системной Диаграмме ВИ (СВИ) отображается, как взаимодействуют ваши внутренние Пользователи с вашей автоматизированной Системой, т.е. отображаются пользовательские функциональные требования к ПО. Данная диаграмма используется на этапе Системного Анализа и формализации требований к ПО.
