- •Проектирование информационных систем
- •Формирование видения Бизнес-анализ Анализ требований
- •Формирование видения Бизнес-анализ Анализ требований
- •Формирование видения Бизнес-анализ Анализ требований
- •Формирование видения Бизнес-анализ Анализ требований
- •Развитие языков и парадигм программирования связано с решением проблемы постоянно увеличивающейся сложности программ.
- •Машинное программированиеАлгоритмическое П/ПСтруктурное П/ПМодульное П/П
- •Э. Дэйкстра (60-е годы):
- •Простая программа – ровно один вход и один выход.
- •Стандартизация и линейность программы – снижение сложности.
- •Данные не защищены от неправильного использования.
- •Основная идея: разбиваем сложную задачу на
- •Структурное программирование – универсальный базис алгоритмических конструкций.
- •Модули вынуждены модифицировать данные за
- •Дальнейшая борьба со сложностью
- •Основные принципы объектной модели:
- •Компонентный подход – развитие объектно- ориентированной идеологии;
- •Компонент:
- •Unified Modeling Language
- •Древние греки – «мир можно рассматривать в терминах объектов и событий»
- •1980е – начало 90х – гг.
- •OOSE – средства представления вариантов использования
- •1995-96 гг. – “Три Амиго” работают над предварительными версиями UML в Rational Software
- •ООП как развитие структурного анализа данных
- •Поведение реализуется через набор операций
- •Модель есть упрощение исходного объекта
- •Объект - это экземпляр класса.
- •Наследование – уточнение задаваемого множества объектов
- •ВидТранспорта
- •«Один интерфейс – много реализаций»
- •Переопределение методов (override): в унаследованном классе можно переопределить метод базового класса.
- •А) Процесс разделения элементов абстракции, которые образуют ее структуру и поведение.
- •Внешний вид класса, объекта или модуля, выделяющий его существенные черты и не показывающий
- •Служит для представления статической структуры модели системы
- •Класс может не иметь конкретных экземпляров. Такой класс называют абстрактным.
- •ассоциация (именованная связь)
- •Возникает, когда один класс использует другой
- •Бинарная ассоциация
- •Каждый экземпляр n-арной ассоциации представляет собой n-арный кортеж значений объектов из соответствующих классов
- •из нескольких потенциально возможных вариантов данной ассоциации в каждый момент времени может использоваться
- •имеет место между несколькими классами в том случае, если один из классов представляет
- •частный случай агрегации
- •между более общим элементом (предком) и более частным или специальным элементом (потомком)
- •{complete} - указаны все классы-потомки, и других потомков быть не может.
- •Предоставить в распоряжение пользователей легко воспринимаемый и выразительный язык визуального моделирования, специально предназначенный
- •Описание языка UML должно включать в себя семантический базис для понимания общих особенностей
- •Диаграмма вариантов использования (use case diagram)
- •Диаграмма вариантов использования (use case diagram)
- •Диаграмма состояний (statechart diagram)
- •Диаграмма состояний (statechart diagram)
- •Диаграмма вариантов использования (use case diagram)
- •Диаграмма компонентов (component diagram)
Проектирование информационных систем
Формирование видения Бизнес-анализ Анализ требований
Разработка архитектуры
Детальное
проектирование
Реализация
Тестирование Управление проектом Управление средой
Управление
конфигурацией
Управление
требованиями
Усовершенствование Экспертиза (испытание) Документирование Обучение Внедрение Эксплуатация Сопровождение
Формирование видения Бизнес-анализ Анализ требований
Разработка архитектуры
Детальное
проектирование
Реализация
Тестирование Управление проектом Управление средой
Управление
конфигурацией
Управление
требованиями
Усовершенствование Экспертиза (испытание) Документирование Обучение Внедрение Эксплуатация Сопровождение
Формирование видения Бизнес-анализ Анализ требований
Разработка архитектуры
Детальное
проектирование
Реализация
Тестирование Управление проектом Управление средой
Управление
конфигурацией
Управление
требованиями
Усовершенствование Экспертиза (испытание) Документирование Обучение Внедрение Эксплуатация Сопровождение
Формирование видения Бизнес-анализ Анализ требований
Разработка архитектуры
Детальное
проектирование
Реализация
Тестирование Управление проектом Управление средой
Управление
конфигурацией
Управление
требованиями
Усовершенствование Экспертиза (испытание) Документирование Обучение Внедрение Эксплуатация Сопровождение
Развитие языков и парадигм программирования связано с решением проблемы постоянно увеличивающейся сложности программ.
Для программирования сравнительно простых задач было достаточно машинного языка и ассемблера.
Машинное программированиеАлгоритмическое П/ПСтруктурное П/ПМодульное П/П
Объектно-ориентированное П/ПКомпонентное П/П
Э. Дэйкстра (60-е годы):
Для любой простой программы можно построить функционально эквивалентную ей структурную программу, т.е. программу, сформированную на основе фиксированного
базисного множества, включающего:структуру последовательного действия,
структуру выбора одного из двух действий
структуру цикла, то есть многократного повторения некоторого действия с проверкой условия остановки повторения.
Простая программа – ровно один вход и один выход.
Базисные конструкции:
Стандартизация и линейность программы – снижение сложности.
Некоторые соображения:
Алгоритм должен иметь 1 вход и 1 выход
Никаких goto
Нет зависимости от языка программирования
Ясен набор операторов, который необходим в языках программирования
Алгоритмы + структуры данных = программа.