ЛЕКЦИЯ 29. Курс: Проектирование систем: Структурный подход Каф. Коммуникационные сети и системы, Факультет радиотехники и кибернетики Московский физико-технический институт (университет) / Марк Ш. ЛЕВИН Институт проблем передачи информации, РАН Ноябрь 26, 2004 PLAN: 1.Разработка требований к системе (Requirements engineering): предварительные сведения 2.Типы требований 2.Дополнения 3.Анализируемые системы 4.Модели
1.Предварительные сведения Проекти- рование t Производ- ство Тестиро- вание Маркетинг Эксплуатация, Техобслужи- вание Утили- зация 0 T
ОПЫТ В РОССИИ: NB!!! БАЗОВЫЕ ПУБЛИКАЦИИ: 1.Ralph R. Young, The Requirements Engineering Handbook, Artech House, 2004 (Carnegie Mellon Univ.) 2.S. Robertson, J. Robertson, Mastering the Requirements Process. Addison-Wesley, K.E. Wiegers, Software Requirements. 2 nd ed., Microsoft Press ЖУРНАЛЫ: Requirement Engineering (Springer), etc. КОНФЕРЕНЦИИ: IEEE Requirement Engineering Conference, etc. 1.Предварительные сведения Проекти- рование t Производ- ство Тестиро- вание Маркетинг Эксплуатация, Техобслужи- вание Утили- зация 0 T
1.Стандарты 2.Требования к системе 3.Система (продукт, семейство продуктов, платформа) 1.Предварительные сведения: уровни (продукты, требования, стандарты) Проекти- рование t Производ- ство Тестиро- вание Маркетинг Эксплуатация, Техобслужи- вание Утили- зация 0 T
Соседние дисциплины: 1.Системный инжениринг (Systems engineering, & life cycle engineering) 2.Стратегический менеджмент 3.Маркетинг 4.Прогнозирование 5.Технологии знаний (выявление опыта) 1.Предварительные сведения Проекти- рование t Производ- ство Тестиро- вание Маркетинг Эксплуатация, Техобслужи- вание Утили- зация 0 T
1.Предварительные сведения: роли и ответственность (пример: системное тестирование) СПЕЦИАЛИСТ ПО ТЕСТИРОВАНИЮ: *проверка моделей системы (model checking) *др. ПРОЕКТИРОВЩИК: *тестирование блоков (частей) *интегрирующие тест (integration test) ПОЛЬЗОВАТЕЛЬ: *тестирование функций системы (functional test) СИСТЕМНЫЙ СПЕЦИАЛИСТ: * производительность системы * безопасность системы * жизненный цикл системы * новые требования * новые поколения системы * новые стандарты
Проекти- рование t Производ- ство Тестиро- вание Маркетинг Эксплуатация, Техобслужи- вание Утили- зация 0 T 1.Предварительные сведения СИСТЕМА Спецификация требований Проектировщик Пользователь Заказчик Системный специалист
СИСТЕМА Спецификация требований Проектировщик Пользователь Заказчик Системный специалист Персонал с высоким уровнем мастерства (ГРАМОТНОСТЬ) Проекти- рование t Производ- ство Тестиро- вание Маркетинг Эксплуатация, Техобслужи- вание Утили- зация 0 T 1.Предварительные сведения
СИСТЕМА Требования Проекти- рование t Производ- ство Тестиро- вание Маркетинг Эксплуатация, Техобслужи- вание Утили- зация 0 T 1.Предварительные сведения
СИСТЕМА Процесс разработки требований (спец. проект) NB! Требования Проекти- рование t Производ- ство Тестиро- вание Маркетинг Эксплуатация, Техобслужи- вание Утили- зация 0 T 1.Предварительные сведения
Процесс разработки требований (спец. проект) Требования ИСТОЧНИКИ: 1.Информация от пользователя 2.Прежний опыт (проектирование, Производство и т.п.) 3.Системы-аналоги 4.Случая из истории техники (Use Cases) Проекти- рование t Производ- ство Тестиро- вание Маркетинг Эксплуатация, Техобслужи- вание Утили- зация 0 T 1.Предварительные сведения
ПРОБЛЕМЫ & МЕТОДЫ: 1.Системный анализ 2.Открытия 3.Выявление знаний, опыта, мастерства 4.Структуризация & интеграция 5.Моделирование 6.Анализ динамики 6.Тестирование 7.Прогнозирование Проекти- рование t Производ- ство Тестиро- вание Маркетинг Эксплуатация, Техобслужи- вание Утили- зация 0 T Процесс разработки требований (спец. проект) Требования ИСТОЧНИКИ: 1.Информация от пользователя 2.Прежний опыт (проектирование, Производство и т.п.) 3.Системы-аналоги 4.Случая из истории техники (Use Cases) 1.Предварительные сведения
2.Типы требований (иерархия требований к системе) ТИПЫ ТРЕБОВАНИЙ: 1.Требования бизнеса (Business requirements) 2.Требования пользователя (Users requirements) 3.Требования системы со стороны более высокого уровня системной иерархии (High-level or system requirements) 4.Функциональные требования (система должна выполнять функции …) 5.Нефункциональные требования система должна иметь характеристики …) 6.Проектные требования / ограничения 7.Ограничения технологии производства 8.Требования по производительности (Performance requirements) 9.Требования к интерфейсу (с др. системами) 10.Требования по квалификации персонала (Qualification requirements) 11.Логистические требования (Logistics requirements) 12.Требования среды (например, экологические) 13.Требования к системе, подсистеме и компонентам 14.Повторное использование требований (Reusing) ETC.
3.Дополнения ДОПОЛНЕНИЯ: 1.Критерии для оценивания требований 2.Метод прототипов 3.Сценарии 4.Повторное использование требований (reusing)
3.Типы анализируемых систем (иерархические уровни; продукты, семейства продуктов и др.) ОБЪЕКТ & ИЕРАРХИЯ: 1.Система И / ИЛИ ее часть (компонент, блок) 2.Состояние системы, группа состояний, блок-диаграмма состояний 3.Функция системы, кластер функций, орграф кластеров функций
1.СИСТЕМЫ / ПРОДУКТЫ 2.СЕМЕЙСТВА ПРОДУКТОВ 3.ПЛАТФОРМА ОБЪЕКТ & ИЕРАРХИЯ: 1.Система И / ИЛИ ее часть (компонент, блок) 2.Состояние системы, группа состояний, блок-диаграмма состояний 3.Функция системы, кластер функций, орграф кластеров функций 3.Типы анализируемых систем (иерархические уровни; продукты, семейства продуктов и др.)
3.Анализируемые системы (сценарии) Сценарии: 1.Структура (цепи, деревья и др.) для системных состояний, функций 2.Количественные сценарии 3.Интеграция базовых случаев (use cases) & прогнозирование
МОДЕЛИ: 1.Отношения на сущностях (Entity relationship) 2.Модель переходов на множестве состояний 3.Entity relationship & Диаграмма переходов на множество состояний 3.Анализируемые системы (сценарии) Сценарии: 1.Структура (цепи, деревья и др.) для системных состояний, функций 2.Количественные сценарии 3.Интеграция базовых случаев (use cases) & прогнозирование
4.Модели Модели: I.ИЕРАРХИЯ ТРЕБОВАНИЙ 1.Иерархия информации 2.Интеграция информации (синтез) II.СЦЕНАРИИ 1.Концептуальные схемы (conceptual maps) 2.Графы и сети III.МОДЕЛИРОВАНИЕ ДИНАМИКИ 1.Имитационное моделирование 2.Тестирование и др.