Современна Программная инженерия. Системная...

Post on 14-Jan-2015

1.302 views 4 download

description

 

Transcript of Современна Программная инженерия. Системная...

Современна Программная инженерия

Системная инженерия

Акоев Марк Анатольевичmrcs@acm.org

Кафедра Программных средств и систем ФУО УрФУ

02 ноября 2011 г

Software Engineering (SE)

1968 год Конференции НАТО

3

Новое – хорошо забытое старое

Системный подход

Начало XX века

1940-1960

Hall A Methodology for Systems Engineering [1962]

Холл Системотехника 1975

INCOSE1990

1990-2020-1970-1980

Ф.Е.Темников

Software Engineering NATO 1968 ACM/IEEE CS/

INCOSE2009

The Graduate Software Engineering 2009 (GSwE2009) [Требования к

подготовке магистров в области программной инженерии]

http://www.gswe2009.org Разработаны совместно • ACM (the Association for Computing Machinery)

www.acm.org • IEEE Computer Society www.computer.org Профессиональные сообщества принявшие участие в разработке

и поддерживающие GSwE2009: • International Council on Systems

Engineering (INCOSE) • National Defense Industrial Association (NDIA)

Systems Engineering Division

Что такое Systems Engineering?

6

Главные идеи системной инженерии

• Общий междисциплинарный язык, позволяющий договориться участникам проекта

• Покупка информации, уменьшающей проектные риски.

• Исправление ошибок на как можно более ранней стадии, когда это относительно дешево – идея жизненного цикла.

7

7

Systems Engineer

Stakeholders

Management

Engineers

Programm/Projectmanagement

QuailityManagement

8

Что дает системная инженерия(по данным INCOSE)

Это достигается черезА) введение общего языка,

описывающего проектБ) сознательный сдвиг усилий

на ранние стадии проекта, где цена ошибки экспоненциально меньше

Стадия обнаружения ошибки

Коэффициент стоимости ошибки

Требования x1 (единица отсчета)

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

Строительство x12

Проверки x40

Функционирование x250

8% затрат на внедрение сиcтемной инженерии дают выигрыш в 20% стоимости проектов, и на 50% увеличивают вероятность окончания проекта в срок

9

Стилизованное представление функции ценности на протяжении ЖЦ

Time

Value

Lifecycle ValueProvided by System

(Next System)

Systemdelivered

Need identified

Next Systemdelivered

System unsatisfactory

Value Desired by Stakeholders

Lifecycle value lost due to lead time

Value loss partially offset by upgrades

Lifecycle value lost due to lack of adaptability

Source: (Browning & Honour, 2008), P17 9

Disposal

Delivery

SystemSystem dtVLCVПоставка

Списание

СистемыСистемы

Ценность системы на протяжении жизненного цикла

Система поставлена

Выявлена потребность

Системане устраивает

Следующая система поставлена

Время

(Следующая система)

Ценность

Желательная для заинтересованных сторон ценность

Потеря ценности из-за недостатка адаптивности

Потеря ценности из-за задержки поставки

Потеря ценности частично компенсируется обновлениями

10

Опасность недооценки требований

• Модель INCOSE: усилия по выполнению проекта растут как куб от числа требований

11

Кто использует методы системной инженерии в России?

• Атомная промышленность

• Судостроение

• Энергетика

12

Стандарты системной инженерии• Международные стандарты (базовый

стандарт -- ISO 15288 «Системная инженерия - процессы жизненного цикла систем»)

• Стандарты закупок Минобороны США, NATO, европейских военных

• Стандарты профессиональных организаций (IEEE).

• Используются в крупных проектах: военных, строительных (туннели, мосты), атомной энергетике (ITER)

Связь системной и программной инженерии

ISO 12207 => ISO 15288

14

25 обязательных процессов системной инженерии

Обеспечения проектов

– управление моделью жизненного цикла

– управление инфраструктурой

– управление портфелем проектов (программой)

– управление персоналом

– управление качеством Техническиеанализ требований архитектурный дизайн изготовление интеграция проверка (Verification) переход к эксплуатации приёмка (Validation) эксплуатация обслуживание вывод из эксплуатации

Проектныеуправление проектами

планирование проекта управление выполнением и контроль проекта

поддержка проектов управление решениями управление рисками управление конфигурацией управление информацией измерения

КонтрактацииЗакупкаПоставка

обеспечивают

15

Подход системной инженериик управлению жизненным циклом

Системная инженерия – это гармонизация подходов:• системного (назначение, границы и элементы

системы)• процессного (деятельность и акторы)• архитектурного (методы описания и их группировка)• жизненного цикла (4D-эволюция системы)• оценки зрелости процессов (стадии ЖЦ процесса)• оценки специальных свойств системы (процессные

выписки)

• Подход (approach) - способ сущностного описания. Практики зависят от сущностного описания.

16

ИдеяФункционирование

и развитие

Требования иархитектура

Рабочийпроект

Реализация

Сборка итестирование

Проверка и приёмка

Проверка и оценка

Деком

позиция и

специфицирование проекта

Инт

егра

ция

и

тест

иров

ание

про

екта

время

V-диаграмма

17

Моделеориентированность• Зачем нужна моделеориентированность:

– уточнение представления системы для разных целей– связь разных представлений о системе по клику мышки (или

составление «сводного отчета» по разным базам данных), за счет чего

• Это сверхвыгодно: по оценке NIST для больших проектов выигрыш до 30% от стоимости системы

• Моделеориентированность противопоставляется документоориентированности.

• Дело не в электронной форме документа, а в другом отношении к их содержанию (так, база данных – не документ, а документы для нее либо «первичка», либо «выписки»).

• Стандарты интеграции данных (прежде всего – ISO 15926).

Информационный обмен на этапах ЖЦ

19

Договориться о терминологии

Из чего состоит организация?Что существенно в организации?

По материалам компании FutureModels

20

Структурированные данные – основа для моделеориентированного подхода

Бумага

Электронные образы документов

Файлы приложений

Структурированные данные

Подшивка и поиск

Отслеживание и мониторинг

Процесс создания и

использования

УправлениеИнформациейЖизненного

цикла

Бо

ль

ше

сло

жн

ост

ь ф

ор

м и

ст

ои

мо

сть

пер

ехо

да

от

бум

аги

Больше сложность процессов и бизнес-выгоды

Программы 3D

WordExcelAutoCAD

TIFFPDF

Модель данных

Контент-менеджмент

ISO 15926XML

Схема предложена компанией INVESYS

Почему не работают методы, стандарты и практики?

ИНСТРУМЕНТЫ = ПО

Моделеориентированные методы системной инженерии

DEMO

http://techinvestlab.ru/files/504456/demo_praxos_1.doc

ИлиJan L. G. Dietz (русск.: Дитц). Enterprise Ontology: Theory and

Methodology. -- B., Heidelberg, N. Y.: Springer, 2006 (ISBN-10 3-540-29169-5)

24

25

Почему необходим метод

Копирайт © 2010 César González-Pérez 25

задача

решение

НечеткоеФункционально ориентированноеОписание «чёрного ящика»

КонкретноеОбязательно структурированноеОписание «стеклянного ящика»

это и есть метод

26

Что я понимаю под «методом»?

Копирайт © 2010 César González-Pérez 26

Что мне делать?

Что является объектом действия?

ЯзыкиЯзыки

ПериодыПериоды

Кто должен это делать?

Когда это происходит?

Как я это выражаю?

Люди Продукты

Практики

27

ISO 15288: «Что делать»25 обязательных процессов системной инженерии

Обеспечения проектов

– управление описанием жизненного цикла

– управление инфраструктурой

– управление портфелем проектов (программой)

– управление персоналом

– управление качеством Техническиесбор требованийанализ требований архитектурный дизайн изготовление интеграция проверка (Verification) переход к эксплуатации приёмка (Validation) эксплуатация обслуживание вывод из эксплуатации

Проектныеуправление проектами

планирование проекта управление выполнением и контроль проекта

поддержка проектов управление решениями управление рисками управление конфигурацией управление информацией измерения

КонтрактацииЗакупкаПоставка

обеспечивают

Реализация ISO 24744

планируется

29

Инструменты для управления методами

Копирайт © 2010 César González-Pérez 29

Альтернатива ISO 24744 – SPEM

Есть реализация EPF_Composer

31

SPEM

• http://ailev.livejournal.com/917251.html • Инструмент для управление созданием

регламентов и инструкций из библиотеки модулей: Eclipse Process Framework Project (EPF) http://www.eclipse.org/epf/ Инструмент бесплатно (с открытыми кодами) распространяет IBM Пример использования в модели ISO 15288 ниже по ссылке http://community.livejournal.com/incose_ru/10384.html

Интеграционное моделирование

Моделеориентированное выявление требований

Ян Александер

34

35

36

37

38

39

http://www.simantics.org/Экосистема Simantics

ДемонстрацииДокументация

Продукт открытый

40

Modelica

• https://www.modelica.org/

• http://ko.com.ua/modelica_34622

• http://ko.com.ua/modelica_34904

• Открытая реализация http://www.openmodelica.org/

41

• class DE "Решение ДУ"

• Real x(start=1);

• equation

• der(x) = -2*x;

• end DE;

42

Онтология 4D ISO 15926

Про ISO 15926 читать тут:http://techinvestlab.ru/ISO15926

смотреть лекцию по основам ISO 15926 тут:http://incose-ru.livejournal.com/21164.html

44

BORO

• Chris Partridge "Business Objects: Re-Engineering for Re-Use", 2000

• http://www.brunel.ac.uk/%7Ecssrcsp/BusObj.pdf

45

Gellish

• A. S. H. P. van Renssen. Gellish, A Generic Extensible Ontological Language: Design and Application of a Universal Data Structure. -- Delft: Delft University Press, 2005 (ISBN 90-407-2597-4).

West, Matthew Developing High Quality Data Models Morgan

Kaufmann 2011http://www.elsevierdirect.com/

ISBN/9780123751065/Developing-High-Quality-Data-

Models

47

Содержание

• Что такое ISO 15926?

• Мир в 4-мерном (4D) представлении

• Системы и элементы систем

• Классы

• Требования

• Каталоги продукции

• Выводы

47

48

What is ISO 15926?

• Серия стандартов по интеграции и обмену информацией в течение всего жизненного цикла крупных объектов – напр., АЭС, НПЗ, морских буровых платформ

• Включает:– Модель данных с семантикой на основе 4D-онтологии– Справочные данные– Методы реализации

• Я сосредоточусь на модели данных

48

49

3D

время

прос

тран

ство

Объект протяжён во времени

Наряду с настоящим, существуют и прошлое, и

будущее

1. Индивиды расположены как во времени, так и в пространстве , и имеют как темпоральные, так и пространственные части.

2. Если два индивида занимают одинаковую пространственно-временную область, они представляют собой одно и то же (экстенсионализм).

время

прос

тран

ство

Настоящее(все, что существует)

Объект движется во времени

1. Физические объекты не имеют темпоральных (временнЫх ) частей.

2. Возможно совмещение разных физических объектов (отсутствие экстенсионализма).

4D + экстенсионализм

49

50

Возможные миры

Прошлое Будущее

Реализованный

Возможный

Возможный

Желаемый

Время

Про

стра

нств

о

50

51

Онтологические допущения• Индивиды существуют в пространстве-времени и могут занимать

область, простирающуюся как в пространстве, так и во времени.• Индивиды идентифицируются занимаемой ими пространственно-

временной областью, т.е., если два индивида занимают одинаковую пространственно-временную область, то это один и от же индивид.

• Наряду с миром, в котором мы живем, существуют и другие возможные миры, и мы можем говорить не только о том, что фактически осуществилось, но и о том, что возможно, ссылаясь при этом на тот мир, где эта возможность реализуется.

• Классы – это объекты, не существующие в пространстве-времени, и состоящие из своих членов.

• Классы идентифицируются своими членами, т.е., если два класса состоят из одинаковых членов, то это один и тот же класс.

• Отношение – это совокупность объектов, играющих в этом отношении определенные роли. Отношение определяется «сигнатурой» - набором ролей.

51

52

Отношение целого и части

A

B

время

C

D

E

F

1. Ничто не может быть (нетривиальной) частью самого себя.

2. Если B является частью A, то A не является частью B (асимметрия).

3. Если B является частью A , а C – частью B, то C является частью A (транзитивность).

4. Если A имеет части (т.е. не является атомарным – в исходном, а не в физическом смысле), то A имеет как минимум две непересекающиеся части (напр., B и D на рис. 11‑1)

5. Если у E существует часть, не являющаяся также частью A, то E не является частью A.

6. При суммировании пересекающихся частей, например, D and F – области пересечения засчитываются только один раз.

7. Если какая-то часть целого F является частью целого D, то D и F пересекаются.

8. Существуют варианты мереологии (науки о частях и целом), в которых пространственно–временные области являются (тривиальными) частями самих себя. Я буду придерживаться более повседневного представления о том, что такое часть.

52

прос

тран

ство

53

Индивиды и состояния

состояние

период времени

индивид

время

прос

тран

ство

событие

53

54

Русское отделение INCOSE

• Сайт http://incose.ru/• Очные встречи вторую и четвертую среду

месяца в Москве (для иногородних организуется видеотрансляция).

• Материалы заседаний: http://community.livejournal.com/incose_ru53 заседания (доступен архив видеозаписей)

• Участвуют только члены INCOSE (вступить стоит $105 вот тут: http://incose.org).

55

Вопросы