Качественно сформулированные требования критически важны для успеха проекта. Как с помощью business objects reference ontology (BORO by Chris Partridge) улучшить практику инженерии требований?
9. Повестка
⬜ О чем будем говорить?
⬜ Ключевые аспекты BORO
⬜ Онтологические иерархии и
паттерны
⬜ Простой пример анализа BORO и
формирование качественных
требований
9
11. Требование стейкхолдера
(1a) Это требование к системе,
обеспечивающей сервисы,
которые нужны пользователям и
другим стейкхолдерам в
определенной обстановке.
(ISO/IEC/IEEE, 2015, section 6.4.1)
11
13. Системное требование
(1a) Утверждение, которое
преобразует пользовательское
описание орг.способности в
техническое описание решения,
которое отвечает производственной
необходимости пользователя.
(ISO/IEC/IEEE, 2015, section 6.4.2)
13
24. оргспособность мы понимаем как
способность оргзвена выполнить SLA какой-то
практики на каких-то интерфейсах. То есть по сути
появление оргспособности это указание того, что
а) практика назначена на оргзвено, б) воплощена,
в) валидирована, г) налажено оперативное
управление (Model-Based Systems Engineering,
логистика ресурсов, нужных для выполнения
назначаемых на неё работ).
https://yadi.sk/i/DgjcxXh3yPjQIA
24
“Что-то то”орг.способность
как состояние мира
“Что-то
не то”
27. Системное требование
(1a) Утверждение, которое преобразует
пользовательское описание орг.способности в
техническое описание решения, которое отвечает
производственной необходимости пользователя.
(ISO/IEC/IEEE, 2015, section 6.4.2)
27
Концепция
defin.
Орг.
способность
impl.
sys. req’t
32. Контрольные вопросы
❏ Различие между требованиями
стейкхолдера и системными требованиями
❏ Различие между требованиями и
потребностями, через что связаны
❏ Связь орг.способности и системных
требований
❏ Связь системных требований и объектов
32
33. 33
Элементы BORO, которые
помогают лучше выявлять
требования (реальность)
http://www.borosolutions.net
(1a) Утверждение, которое преобразует
пользовательское описание орг.способности в
техническое описание решения
34. Для каких ИТ-систем используется
BORO?
Large Operational Enterprise
Systems
• ERP Systems
• CRM Systems
• FX Settlement Systems
• Trading Accounting
Systems
• Retail POS Systems
• Logistics Systems
• Air Defence Systems
Semantic Web Type
Applications
• “Collective
Knowledge” Systems
• Social networking –
Facebook
• Wikis
• Bio-medical
dictionaries
• Inference
• Logics – first order,
description
34
35. Критерии Куна хорошей теории
«Все эти пять характеристик: точность,
непротиворечивость, область приложения, простота и
плодотворность - стандартные критерии оценки
адекватности теории».
Томас Кун, Объективность, ценностные суждения и
выбор теории, в Хрестоматии: Современная
философия науки, М., «Логос», 1996 г., с. 62-63.
Источник: https://vikent.ru/enc/2006/
35
36. ГОСТ Р ИСО 15531-1-2008
36
3.6.50 область обсуждения (universe of
discourse, domain): Совокупность
физических или информационных
объектов, относящихся к области
реального мира, которые выбраны в
соответствии с интересом, который они
представляют для системы, подлежащей
моделированию, и ее окружением.
37. ОБЛАСТЬ ОБСУЖДЕНИЯ
37
❏ геометрическое проектирование и допуски
❏ обеспечение производства продукции и логистика
❏ спецификации на материалы и функции
❏ данные по жизненному циклу
❏ дифференциацию продукции и конфигурацию
❏ данные по качеству
❏ данные по проектированию процесса
❏ производственные данные (включая затраты)
38. ОБЛАСТЬ ОБСУЖДЕНИЯ
38
Также включает такие организационные
данные как связь между предприятиями и
составляющими одного предприятия с
целью идентификации поставщика, а
также данные по производственным
кадрам, позволяющие
идентифицировать их на право
выполнения поставленных задач.
39. ОБЛАСТЬ ОБСУЖДЕНИЯ
39
Данные по планированию производства,
например прогноз прибылей, денежный
поток и любые другие личные или
организационные данные,
исключены из области деятельности
41. Где начинается реинжиниринг?
ГОСТ Р ИСО 15531-1-2008 Промышленные автоматизированные системы и интеграция. Данные по
управлению промышленным производством. Часть 1. Общий обзор
начальная точка
реинжиниринга
41
Область
Обсуждения
42. Это разделение интересов
Based upon a separation of concerns (similar to OMG’s MDA divisions)
Layered concerns, where each concern builds upon all previous concerns.
Area
of
Application
Domain
Ontology
Layer
42
43. Онтологическая обусловленность:
Что такое “онтология”?
⬜ Современное определение по
Lowe - 1995;
⬜ “набор объектов, существование
которых признается
определенной теорией либо
школой мышления”
43
44. Онтологическая обусловленность:
Что такое “онтология”?
⬜ Если перевести это в термины
софта;
⬜ “определенной теорией либо
школой мышления” = само
приложение и данные
⬜ онтология = “набор объектов”, на
которые ссылаются эти данные
44
45. Урок 2. Онтология BORO
Почему надо выявлять реальность с помощью BORO?
Почему инженеры не игнорируют философские основания?
Как BORO помогает сформулировать качественные наборы
требований?
45
46. Онтологическая обусловленность:
Что такое “онтология”?
⬜ Философская онтология про
понимание:
⬜ Какие объекты существуют?
⬜ Какие типы объектов существуют?
⬜ Приводит нас к пониманию,
например, того, являются ли два
объекта одним и тем же или
различными объектами
46
47. Онтологическая обусловленность:
Что такое “онтология”?
⬜ Практическое применение
философской онтологии:
⬜ Бизнесовый софт должен
моделировать предметные
области из бизнеса
47
48. Онтологическая обусловленность:
Что такое “онтология”?
⬜ Философская онтология обеспечивает
привязку этих моделей к реальному
миру
⬜ Она обеспечивает качественное
доказательство того, что модель
отражает реальную деятельность
48
50. Прямолинейный подход к
построению онтологии
Предположим, что вещи,
объекты такие, какими они
кажутся.
Подход “Навесить ярлыки”.
Упрощенный вариант
онтологии.
В варианте для умных
‘transparent vision thesis’,
современная дискуссия:
(E.g.) Goodwin, Charles (1996). Transparent Vision.
Interaction and Grammar. E. Ochs, E. A. Schegloff
and S. Thompson. p. 370-404.)
See ODISE Keynote – CAiSE 2011)
50
51. А такие ли вещи, объекты, какими они
нам кажутся?
⬜ Ludwig Wittgenstein once asked me: ‘
⬜ Why do people say it is more logical to think that the sun
turns around the Earth than Earth rotating around its own
axis?’
⬜ I answered: ‘I think because it seems as if the sun turns
around the Earth.’
⬜ ‘Good,’ he said, ‘but how would it have been if it had
seemed as if the Earth rotates around its own axis then?’
⬜ Elizabeth Anscombe: An Introduction to Wittgenstein’s
Tractatus’ (London, 1959) p.151
51
53. А если нет?
⬜ Если между Реальностью и
Видимостью реальности есть
разница
⬜ То тезис ’transparent vision thesis’
не верен
53
54. И что делать?
⬜ И тогда нам нужен мощный
промышленный способ выявления
реальности
⬜ Для этого и был разработан BORO
⬜ Первая стадия реинжиниринга -
это выявление реальности
текущей системы
54
55. Что такое BORO? - основы
⬜ BORO состоит из:
⬜ Методологии
⬜ Базовой онтологии
55
56. ⬜ BORO описывает методологию
реинжиниринга системы и данных
⬜ Успешно использовался в
различных производственных
секторах, включая финансы,
нефтегаз и оборонку.
Что такое BORO? - основы
56
57. Что такое BORO? - основы
⬜ BORO включает в себя базовую
онтологию, созданную на основе
философской онтологии.
⬜ Повлияла на ISO 15926
⬜ Повлияла на International Defence
Enterprise Architecture Specification for
exchange (IDEAS) Group.
57
58. С виду простой
“набор объектов”
Философская онтология (Lowe - 1995);
“набор объектов, существование которых признается определенным
[приложением]”
58
59. ⬜ Начальный набор “фактов”;
⬜ Иван
⬜ Иван поступает в университет
Простой “набор объектов”
59
60. ⬜ Стандартный онтологический вопрос:
⬜ Какие вещи, объекты существуют?
⬜ Вспоминаем определение онтологии Lowe
“набор объектов … “
⬜ В таких простых случаях как этот мы должны быть
способны перечислить список существующих
вещей, объектов.
⬜ Ситуация выглядит простой, но поднимает
глубокие вопросы по тому, как отражать
изменения.
Простой “набор объектов”
60
62. ⬜ Подчеркивает, что нам надо сделать
онтологические выборы по поводу
того, что существует
⬜ Первый выбор - способ мышления
об изменениях: 4Д или 3Д
Простой “набор объектов”
62
63. Один из способов думать об
изменениях: 4Д
⬜ Пердурантизм или 4Д
⬜ У индивида есть 4-х мерный экстент во
вселенной (занимаемый объем в
пространстве и времени)
⬜ Идентичность определяется экстентом
⬜ Изменение отражается как изменение
состояний индивида
63
BORO - 4Д
Критерий
идентичности
64. Другой способ думать об
изменениях: 3Д
⬜ Эндурнатизм или 3Д
⬜ 3Д объект полностью присутствует в любой
момент и сохраняется, перемещаясь во
времени
⬜ Объект полностью находится в каждый момент
времени в течение своего существования,
идентичность определяется через
набор основных атрибутов
⬜ Изменение определяется через приобретение
или утрату свойств (каких, мы обычно не знаем)
64
66. 4Д выбор в пердурантизме
⬜ Иван простирается сквозь пространство и время
⬜ “Студент Иван” есть временная стадия Ивана
⬜ Они отличаются друг от друга, т.к. занимают разные
пространственно-временные экстенты
⬜ Стало быть, существуют два объекта.
66
И
в
а
н
Простран-
ство
Время
Иван в состоянии
студента
67. … в противоположность 3Д выбору
в эндурантизме
⬜ Типовое представление в 3Д (эндурантизм)
⬜ Есть только один Иван.
⬜ Иван рождается
человеком и умирает
человеком; он всегда
остается человеком.
⬜ Иван становится
экземпляром студента в
момент поступления.
⬜ Иван прекращает быть
экземпляром студента в
момент выпуска из
университета.
67
68. Считаем, сколько объектов в
“наборе объектов”
⬜ В случае 4Д;
⬜ Иван
⬜ Иван в состоянии студента
⬜ В случае 3Д;
⬜ (только) Иван
⬜ Разные выборы, разное количество
объектов
68
69. Другой пример простого
“набора объектов”
⬜ “Факт” того, что Владимир Путин является
президентом Российской Федерации
⬜ Без сомнения есть два разных объекта;
⬜ Владимир Путин
⬜ Президент РФ
⬜ Опять-таки “факт” выглядит простым, но вызывает
глубокие онтологические вопросы
⬜ Точно ведь есть какое-то отношение между этими
двумя объектами, но какое?
69
71. Как на это смотрит пердурантизм, 4Д
⬜ Путин и есть Президент РФ потому что они
разделяют стадию.
⬜ В этой стадии они занимают один
пространственно-временной экстент
⬜ А в целом Путин и Президент РФ это не одно и
то же, потому что они занимают разные
пространственно-временные экстенты
71
72. Объяснительная сила
⬜ Объясняем “является” в предложении
“Путин в данный момент является президентом”
⬜ (4Д) потому что в этой стадии это буквально
одно и то же
⬜ (3Д) потому что (?) Путин занимает пост ...
⬜ это объяснение идет через специально
введенные для этого случая онтологические
выборы (например, через сущности,
управление ролями)
72
73. Последствия для автоматизации
⬜ В случае 4Д все просто:
⬜ есть Путин
⬜ есть Президент РФ
⬜ Есть стадия Путина как Президента РФ
⬜ или стадия Президента РФ как Путина
⬜ если мы выбираем 3Д, то представление может
отличаться от того, какую онтологическую
позицию мы выберем.
73
75. От объектов к фактам
“истинное событие, происшествие,
явление, то, что действительно было,
имело место” … с объектами
Происходит от лат. factum «сделанное,
деяние, действие, поступок»
75
ИЗМЕНЕНИЯ ОБЪЕКТОВ
76. Событий как бы и нет
Факт = «Фиксированный кем-то АКТ».
Нет позиции, нет средств — нет факта.
Другая позиция, другие средства —
другой факт.
Никаких «освобождений» нет.
http://anticomplexity.org/sobytie-i-fakt-v-kommunikatsii/
76
77. 77
требования СХ фокусируют внимание
(оптика) на объектах,
важных для стейкхолдера
контрольная точка = выполнение
требования, “случилось что-то важное”
79. Требования и факты
“2+2=4” абстрактный проверяемый
факт
“мне холодно” - “субъективный факт”
“должен достигать скорости 100 км/ч
за 7,9-8,1 секунд” - конкретный,
проверяемый факт
79
81. 81
системные требования СХ фокусируют
внимание (оптика) на объектах, важных
для команды через дисциплину
82. Контрольные вопросы
❏ Как соотносятся объект и факт
❏ Как соотносятся факт и
требование
❏ Различие между объектами
“человек”, “стейкхолдер” и “орг.
звено”
❏ Как стейкхолдеры выделяют
объекты
82
84. Что почитать на русском?
http://anticomplexity.org/shema-teoreticheskih-predstavleni
y-o-vremeni-i-prostranstve/
https://thpectrum.livejournal.com/8785.html
https://ailev.livejournal.com/1427265.html
https://thpectrum.livejournal.com/11639.html
https://thpectrum.livejournal.com/9845.html
https://thpectrum.livejournal.com/10771.html
84
85. Введение в BORO
⬜ Один из “инструментов” BORO -
базовая онтология.
⬜ BORO на верхнем уровне - это
онтология пердурантизма и
экстенсионализма.
⬜ Но в нем сделаны еще и другие
онтологические выборы.
85
86. Основания для
онтологических выборов
⬜ Они зависят друг от друга, поэтому
нужно делать их согласовано.
⬜ Выборы должны отражать
инженерные цели в отношении
предприятия.
86
87. Онтологические выборы BORO
Характеристики онтологии Выбор BORO
Extensionalism versus non-extensionalism –
I – Universals (общие сущности)
extensionalism
Extensionalism versus non-extensionalism –
II – Particulars (частности)
extensionalism
First versus Higher Order Universals
(универсалии)
higher order universals
Perdurantism versus endurantism perdurantism
Presentism versus eternalism eternalism
Absolute versus relative space, time and
space-time
relative space-time
Modally extended versus unextended
individuals
unextended individuals
Materialism and non-materialism materialism
Topology of time – branching or linear. linear
See Partridge, C. (2002). LADSEB-CNR - Technical report 06/02 - Note: A Couple of Meta-Ontological Choices for Ontological Architectures. 87
88. А. Эйнштейн
Сейчас он ушёл из этого странного
мира немного раньше меня. Это
ничего не означает. Для нас,
убежденных физиков, различие
между прошлым, настоящим и
будущим - не более, чем иллюзия,
хотя и весьма навязчивая.
88
92. Ключевые иерархии BORO
⬜ Три основные иерархии
⬜ супер-под-тип
⬜ тип экземпляр
⬜ часть целое
⬜ Иерархии обеспечивают
методологическую основу
онтологии
92
95. 95
UN#1: Ограничить фин.риск опер.
обслуживания абонента
SysRq 1. Система должна показывать все _транзакции_ по выбранному
_контрагенту_.
SysRq 2. Система должна позволять задавать _дату_начала_периода_ и
_дату_окончания_периода_.
SysRq 3. Система должна показывать все _транзакции_ в заданной _валюте_.
SysRq 4. Система должна считать _суммы_нарастающим_итогом_ всех
_выбранных_транзакций_ в порядке _календарной_очередности_.
StkhRq 1. Оператор должен задавать _предельную_сумму_транзакций_ за
_период_ по _контрагенту_.
SysRq 5. Система должна помечать _транзакции_ по _выбранному_контрагенту_,
которые в _сумме_нарастающим_итогом_ превышают
_предельную_сумму_транзакций_ по _контрагенту_ как
_блокированные_транзакции_.
StkhRq 2. Оператор должен принимать решение об _аннулировании_транзакции
либо _ручном_одобрении_транзакции_ для _блокированных_транзакций_.
7 требований, 14 понятий