Методология проектирования информационных систем МИФИ, Кафедра «Кибернетика»

Презентация:



Advertisements
Похожие презентации
Методология проектирования информационных систем МИФИ, Кафедра «Кибернетика»
Advertisements

Методология проектирования информационных систем МИФИ, Кафедра «Кибернетика»
МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ (ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ) © Л. Корякин ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ В САПР. МЕТОДОЛОГИЯ СТРУКТУРНОГО.
Лекция 1: Нотация IDEF. Структурный подход к проектированию ИС принцип "разделяй и властвуй" - принцип решения сложных проблем путем их разбиения на множество.
Лекция 3 Анализ модели деятельности предприятия Учебные вопросы: 1.Методология структурного анализа 2.Инструментальные средства системного анализа.
2 Основным понятием программной инженерии является понятие жизненного цикла ПО. Жизненный цикл ПО (software lifecycle) – это период времени, который начинается.
На следующих слайдах представлена функциональная схема осуществления процесса подготовки расписания, демонстрирующая действия всех участников этого процесса,
Жизненный цикл программного обеспечения Лекция 4.
Structure Analysis and Design Technique (SADT) Методология: графическое представление блочного моделирования графическое представление блочного моделирования.
Языки и методы программирования Преподаватель – доцент каф. ИТиМПИ Кузнецова Е.М. Лекция 7.
Дисциплина «Технология разработки программного обеспечения» Тема 1 « Основы разработки Тема 1 « Основы разработки программного продукта » программного.
Жизненный цикл программного обеспечения Подготовил студент 1 курса Лось Павел.
IDEF0 ДЛЯ МОДЕЛИРОВАНИЯ БИМЗНЕС - ПРОЦЕССОВ РАЗРАБОТКА МОДЕЛЕЙ « КАК ЕСТЬ »
1 Системный анализ и принятие решений Лекция 15 Методология IDEF0 Коробов Александр Сергеевич
CASE-средства создания информационных систем CASE-средства фирмы Platinum technology.
Лекция 5 Способы конструирования программ. Основы доказательства правильности.
1 Методология структурного анализа и проектирования SADT.
Объектно- ориентированная платформа Windows
Лекция 3 Архитектура информационных систем. Вопросы лекции 1. Архитектура информационной системы 2. Архитектурный подход к реализации информационных систем.
Разработка объектно- ориентированного ПО Итеративная модель разработки (развитие водопадной модели) анализ проектирование кодирование тестирование.
Транксрипт:

Методология проектирования информационных систем МИФИ, Кафедра «Кибернетика»

История разработки ПО Эволюция подходов к оценке программирования: искусство, инженерия, технология Эволюция систем (инструментальных средств) программирования Эволюция архитектур информационных систем (независимость от данных, независимость от платформы о т.п.) МИФИ, Кафедра «Кибернетика»

Эволюция языков Эпоха кодов и ассемблеров (автокодов) 60-е Фортран – эффективность, Алгол – синтаксис, Кобол – понимание Паскаль – обучение Ада – комплексный подход к разработке и сопровождению Язык ядро и язык оболочка (PL/1) МИФИ, Кафедра «Кибернетика»

Роль языка разработки Кодирование (эффективность реализации) Общение (понимание) Публикации (однозначность) Обучение (простота) Документирование и сопровождение (ясность структуры и комментариев) МИФИ, Кафедра «Кибернетика»

Свойства языка Эффективность реализации Время связывания (ранее, позднее) Гибкость и скорость Строгая типизация (именная и структурная эквивалентность) Полиморфизм МИФИ, Кафедра «Кибернетика»

Свойства языка Пример «космической» ошибки Язык Фортран оператор цикла DO 1 I=1, CONTINUE Заменой «,» на «.» превратился в DO1I=1.3 присваивание значения МИФИ, Кафедра «Кибернетика»

Свойства языка Пример «студенческой» фантазии Язык «С» оператор присваивания int x; x=1; x+=x x; Что же мы получим? Чему равен x? (3 + (1 + 3)) МИФИ, Кафедра «Кибернетика»

Технология разработки ПО Цель технологии – получить результат в определенные сроки, в условиях ограничений на ресурсы и с определенным качеством Сроки могут составлять десятки лет Критичность системы может быть чрезвычайно высока (авиация) Состав исполнителей меняется Цена дефектов увеличивается за счет оборудования (встроенное ПО) МИФИ, Кафедра «Кибернетика»

Жизненный цикл проектов разработки ПО Жизненный цикл – совокупность процедур (возможно итеративных), связанных с последовательным изменением состояния программного обеспечения от формирования исходных требований к нему до окончания его эксплуатации конечным пользователем. МИФИ, Кафедра «Кибернетика»

Типы жизненных циклов Каскадный V-образный Спиральный «Быстрые» варианты МИФИ, Кафедра «Кибернетика»

Каскадный жизненный цикл МИФИ, Кафедра «Кибернетика»

V-образный жизненный цикл МИФИ, Кафедра «Кибернетика»

Спиральный жизненный цикл МИФИ, Кафедра «Кибернетика»

Роли в проекте Менеджер проекта Разработчик Тестировщик Специалист по контролю качества Специалист по внедрению и сопровождению Технический писатель МИФИ, Кафедра «Кибернетика»

Документы жизненного цикла МИФИ, Кафедра «Кибернетика»

Процессы разработки ПО Основные процессы – Разработка требований – Разработка программного кода – Верификация Поддерживающие процессы – Управление качеством – Управление конфигурациями – Управление рисками МИФИ, Кафедра «Кибернетика»

Стандарты проекта Стандарты – основные документы, регламентирующие деятельность сотрудников в проекте Типы стандартов: – Общие – Отраслевые – Предприятия – Проекта МИФИ, Кафедра «Кибернетика»

Стандарты в IT ISO/IEC: 9000, 10007, 12207, 10013, 15846, … DO: 178A, 178B, 248 AS: 9100, 9006 IEEE: 730, 828, 830, 1008, 1012, … BS: 7799, … CMM SWEBOK, PMBOK, … ГОСТ: 19, 34 МИФИ, Кафедра «Кибернетика»

Верификация Требования к системе должны быть составлены так, чтобы можно было проверить корректность работы системы Верификация – процесс проверки корректности системы по отношению к требованиям МИФИ, Кафедра «Кибернетика»

Верификация и отладка – разные вещи Верификация – поиск того, что именно не работает в системе Отладка – устранение ошибок Верификация МИФИ, Кафедра «Кибернетика»

Пример требования: «Система должна печатать 2, если на вход подается 3, и 3, если на вход подается 2» Как может работать система, реализующая требование? – Что будет, если на вход будет подано число, отличное от 2 и 3? Выдается ошибка Выдается само это число Выдается «5 минус число» Верификация МИФИ, Кафедра «Кибернетика»

Процессный подход к разработке требований Процесс – совокупность взаимосвязанной деятельности по преобразованию входа в выход, которая использует определенные ресурсы Процесс может быть управляемым и неуправляемым МИФИ, Кафедра «Кибернетика»

Основы системного анализа Системный подход – признание того, что объекты реального мира декомпозируются на взаимодействующие части Система – совокупность взаимодействующих элементов, выполняющих общую задачу МИФИ, Кафедра «Кибернетика»

Основные системные принципы Целостность – система это больше, чем ее составные элементы Структурность – система может быть описана определением взаимосвязей ее элементов Иерархичность – каждый компонент системы может рассматриваться как система МИФИ, Кафедра «Кибернетика»

Множественность описания – система может быть описана различными способами, каждый из которых охватывает только часть аспектов системы Модель – описание реальной системы, позволяющее оценивать отдельные ее аспекты, абстрагируясь от других аспектов Основные системные принципы МИФИ, Кафедра «Кибернетика»

Методология SADT SADT – Structured Analysis & Design Technique Разработана по заказу Министерства обороны США группой специалистов под руководством Дугласа Росса (MIT) Методология базируется на предположении, что любая система может быть декомпозирована на более мелкие взаимодействующие системы МИФИ, Кафедра «Кибернетика»

Методология включает в себя несколько графических языков, ориентированных на моделирование различных аспектов систем: – IDEF0 – функциональное моделирование – IDEF1 – информационное моделирование – IDEF2 – имитационное моделирование – IDEF3 – моделирование бизнес-процессов – IDEF1X – моделирование данных – IDEF4 – объектное моделирование Методология SADT МИФИ, Кафедра «Кибернетика»

SADT – ключевые понятия Модель – некоторое толкование системы. Должна четко определять моделируемые аспекты, степень подробности моделирования и ограничения Цель модели – дать ответ на набор вопросов, на которые должна дать ответ модель Границы модели – перечень того, что входит, а что не входит в модель МИФИ, Кафедра «Кибернетика»

Точка зрения – модель должна рассматриваться с одной и той же позиции Для построения модели необходимо определить: – Границы модели – Точку зрения модели – Цель модели В результате будет получен иерархический набор описаний модели SADT – ключевые понятия МИФИ, Кафедра «Кибернетика»

IDEF0-диаграммы Диаграмма – описание части процессов системы Иерархия диаграмм составляет процессную модель системы Основные компоненты: – Блоки – изображают функции (процессы) системы – Дуги – связывают блоки и изображают взаимодействия между ними МИФИ, Кафедра «Кибернетика»

IDEF0-диаграммы На каждой диаграмме пишется стандартная информация: – Автор – Дата – Проект – Стадия подготовки – Контекст – Номер – Узел – … МИФИ, Кафедра «Кибернетика»

Блоки IDEF0 Процесс Механизм Выход Вход Управление МИФИ, Кафедра «Кибернетика»

Блоки IDEF0 Блоки рисуются в виде прямоугольников Названия блоков – глаголы или глагольные обороты На одной диаграмме от 3 до 6 блоков Блоки размещаются по важности или по последовательности в виде ступенчатой схемы МИФИ, Кафедра «Кибернетика»

Дуги IDEF0 Дуги рисуются в виде одинарных линий со стрелками на концах Дуги – это объекты Названия дуг - существительные Типы дуг – Входные – объекты, преобразуемые блоками – Выходные – результаты преобразования – Управление – управление преобразованием – Механизм – ресурсы, необходимые для преобразования МИФИ, Кафедра «Кибернетика»

Связи между блоками Существует 5 типов связей – Связь по входу-выходу – Связь по управлению – Обратная связь по управлению – Обратная связь по входу – Связь по механизму МИФИ, Кафедра «Кибернетика»

Связь по входу-выходу Процесс 1 Процесс 2 МИФИ, Кафедра «Кибернетика»

Связь по управлению Процесс 1 Процесс 2 МИФИ, Кафедра «Кибернетика»

Обратная связь по входу Процесс 1 Процесс 2 МИФИ, Кафедра «Кибернетика»

Обратная связь по управлению Процесс 1 Процесс 2 МИФИ, Кафедра «Кибернетика»

Связь по механизму Процесс 1 Процесс 2 МИФИ, Кафедра «Кибернетика»

Сдвоенные связи Процесс 1 Процесс 2 МИФИ, Кафедра «Кибернетика»

Разветвления дуг Разветвление дуг означает, что весь набор объектов или его часть появляется в каждой ветви Если ветвь после ветвления не помечена – в ней все объекты, которые были до ветвления Если ветвь помечена – в ней часть объектов МИФИ, Кафедра «Кибернетика»

Слияния дуг Слияние дуг означает, что объекты в каждой ветви формируют новые объекты Если слившаяся дуга не помечена, то в ней находятся все объекты, которые были слиты Если слившаяся дуга помечена, то пометка явно указывает на то, какой объект был получен в результате слияния МИФИ, Кафедра «Кибернетика»

Разветвления и слияния МИФИ, Кафедра «Кибернетика»

Иерархия и декомпозиция МИФИ, Кафедра «Кибернетика»

Кодирование иерархии A-0 диаграмма A0 диаграмма A1, A2, A3, … диаграммы A11, A12, …, A21, … диаграммы A111, A112, …, A211, … диаграммы … МИФИ, Кафедра «Кибернетика»

Пример иерархии МИФИ, Кафедра «Кибернетика»

Входящие и выходящие дуги По умолчанию считается, что на диаграмме есть все дуги, входящие и выходящие из родительского блока МИФИ, Кафедра «Кибернетика»

ICOM-контроль Автоматическое выполнение контроля входящих-выходящих дуг листа – ICOM- контроль Можно создавать дуги, которые входят только в данную диаграмму – туннельные дуги. Однако их использование не рекомендуется МИФИ, Кафедра «Кибернетика»

Процесс построения модели Собрать материал по задаче Создать модель Рецензи- ровать модель Эксперт План и цель проекта Автор Факты, данные о субъекте модели Диаграммы, отчеты, описания Утвержден- ная модель Знания, инфор- мация А1 А2 А3 Потребность в информации Принять модель Готовая модель А4 Модель с замечаниями Рецензент Модель с замечаниями Комитет контроля МИФИ, Кафедра «Кибернетика»

Начало моделирования Очерчивание границ объекта Определение цели и точки зрения Построение диаграммы верхнего уровня Обобщение, критическая оценка и доработка диаграммы верхнего уровня МИФИ, Кафедра «Кибернетика»

Моделирование декомпозиции Декомпозиция диаграммы верхнего уровня – Выделение блоков – Уточнение интерфейсов с родительским блоком – Модификация интерфейса родительского блока Построение и доработка иерархии МИФИ, Кафедра «Кибернетика»

СПАСИБО ЗА ВНИМАНИЕ ! МИФИ, Кафедра «Кибернетика»