semat in discussion corner @ sec(r) 2013
DESCRIPTION
TRANSCRIPT
![Page 1: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/1.jpg)
Стандарт OMG Essence
(Beta)
Андрей Байда
SECR 2013
25 октября 2013
![Page 2: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/2.jpg)
История
2
• Сентябрь 2009: инициатива основана Бертраном Майером, Ричардом Соли и Иваром Якобсоном
• Декабрь 2009: опубликован призыв к действию (http://semat.org/?page_id=2)
• Февраль 2010: видение на год (http://blog.paluno.uni-due.de/semat.org/wp-content/uploads/2012/03/SEMAT-vision.pdf)
• Июнь 2011: OMG FACESEM (Foundation for the Agile Creation and Enactment of Software Engineering Methods) RFP
• Март 2012: видение на 3 года (http://blog.paluno.uni-due.de/semat.org/wp-content/uploads/2012/03/Semat_-_Three_Year_Vision13Jan12.pdf)
• Осень 2012: появляются инструменты (карты, моделер)
• Январь 2013: вышла книга «The Essence of Software Engineering»
• Март 2013: успешно прошли голосования комитетов OMG, начала работать OMG FTF
![Page 3: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/3.jpg)
In a Nut Shell – what we need to change
3
Executives Big companies have
many processes.
Challenges:
-Reuse practices
-Reuse training
-“Reuse” of people
-Evolutionary
improvement is hard
Professionals Want to become
experts. Challenges:
-Their skills are not
easily reusable for a
new product.
-Their career path
follows a zig-zag track
from hype to hype.
Education -Teaching instances
of methods such as
Scrum, RUP, instead
of common base;
doesn’t create
generalists
SEMAT targets the whole software community.
Industry Academics
Research -The Gap between
research and
industry
-No widely accepted
theory
![Page 4: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/4.jpg)
Standing on a solid theoretical basis
Желаемое решение: Архитектура метода
4
Метод является
композицией практик.
Методы исполняемы.
Практика – это
повторяемый подход к
деланию чего-либо с
определенной целью.
Практика дает
систематический
контролируемый
способ решения
определенной
проблемы.
Ядро является точкой
соприкосновения
(common ground), т.к.
включает основные
элементы программной
инженерии.
Язык является предметно-
ориентированным языком
для определения методов,
практик и основных
элементов Ядра.
![Page 5: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/5.jpg)
Standing on a solid theoretical basis
Желаемое решение: Архитектура метода
5
Существует, вероятно,
более чем 100,000
методов, включая,
например, RUP, CMMI,
XP, Scrum, Lean, Kanban
Существует примерно
250 описанных
практик, включая,
например, use cases,
use stories, features,
components.
Ядро включает такие
элементы как
Требования,
Программная
система, Работа,
Команда etc.
Язык легок в
практическом
использовании.
![Page 6: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/6.jpg)
Желаемое решение: Архитектура метода
6
The Essence
Standing on a solid theoretical basis
![Page 7: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/7.jpg)
Ядро
7
Ядро
• Охватывает основы программной инженерии
• Формирует карту программно-инженерного контекста
• Составляет базис для оценки программно-инженерной деятельности
![Page 8: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/8.jpg)
Структура Ядра
8
Endeavor
Решение
Альфы
Пространства дел
Клиент
• Три области интересов
• Альфы
• Пространства дел
• Компетенции
Компетенции
Альфы
Пространства дел
Компетенции
Альфы
Пространства дел
Компетенции
![Page 9: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/9.jpg)
Что такое Альфа?
9
• Альфа является акронимом от Abstract-Level Progress Health Attribute.
• Необходимый элемент программно-инженерной деятельности, имеюший отношение к оценке прогресса и «здоровья» деятельности.
![Page 10: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/10.jpg)
Альфы (alphas)
оп
ред
еляю
т п
ред
мет и
огр
ани
чиваю
т (Sco
pe
s and
con
strains) >
ор
ган
изу
ютс
я д
ля
реа
гир
ова
ни
я н
а (
set
up
to
ad
dre
ss)
>
< определяют (identifies)
по
дд
ерж
иваю
т (sup
po
rt) >
уточн
яет fo
cuse
s >
< планирует и выполняет (performs and plans)
< удовлетворяет (fulfils)
исп
ол
ьзуют
(use
and
con
sum
e) >
< пр
ои
звод
ит
(pro
du
ces)
Работы Work
Технология работы
(Way of Working)
Команда Team
Требования Requirements
Программная система Software System
Возможность Opportunity
Заинтересованные стороны
Stakeholders
Реш
ени
е
(So
luti
on)
Дея
тел
ьно
сть
(En
de
avo
r)
Кл
иен
т
(Cu
sto
mer
)
10
![Page 11: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/11.jpg)
Пространства дел (activity spaces)
Исследовать возможности
Explore Possibilities
Обеспечить удовлетворение заинтересованных сторон
Ensure Stakeholder Satisfaction
Спроектировать систему
Shape the System
Изготовить систему
Implement the System
Протестировать систему
Test the System
Развернуть систему
Deploy the System
Понять потребности заинтересованных сторон
Understand Stakeholder Needs
Подготовиться к работе
Prepare to do the Work
Координировать дела
Coordinate Activity
Поддерживать команду
Support the Team
Завершить работу
Stop the Work
Отслеживать прогресс
Track Progress
Понять требования
Understand the Requirements
Кл
иен
т
(Cu
sto
mer
)
Реш
ени
е
(So
luti
on)
Дея
тел
ьно
сть
(E
nd
eav
or)
Использовать систему
Use the System
Управлять
системой
Operate the System
11
![Page 12: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/12.jpg)
Компетенции
Представительство заинтересованной стороны
Stakeholder Representation
Разработка Development
Анализ Analysis
Тестирование Testing
Лидерство Leadership
Менеджмент Management
Кл
иен
т Ре
шен
ие
Д
еяте
льн
ост
ь
1 Помогает 2 Применяет 3 Владеет
4 Адаптирует
5 Cовершенствует
12
![Page 13: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/13.jpg)
Требования
Что программная система должна делать, чтобы адресовать возможность и удовлетворить стейкхолдеров.
Требования обеспечивают непротиворечивое описание существенных характеристик новой системы. The requirements provide a consistent description of the essential characteristics of the new system.
Достаточное количество требований было адресовано, чтобы удовлетворить потребность в новой системе способом, приемлемым для стейкхолдеров. Enough of the requirements have been addressed to satisfy the need for a new system in a way that is acceptable to the stakeholders.
Согласована потребность в новой системе. The need for a new system has been agreed.
Требования, которые были адресованы, полностью удовлетворяют потребность в новой системе. The requirements that have been addressed fully satisfy the need for a new system.
Начаты Conceived
Ограничены Bounded
Непротиворечивы Coherent
Приемлемы Acceptable
Треб
ова
ни
я (R
eq
uir
em
en
ts)
Удовлетворены Fulfilled
Назначение и тема новой системы ясны. The purpose and theme of the new system are clear.
Адресованы Addressed
Требования описывают систему, которая будет приемлема для стейкхолдеров. The requirements describe a system that is acceptable to the stakeholders.
13
![Page 14: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/14.jpg)
Чеклисты для состояний
Начаты Conceived
Ограничены Bounded
Непротиворечивы Coherent
Приемлемы Acceptable
Треб
ова
ни
я (R
eq
uir
em
en
ts)
Удовлетворены Fulfilled
Адресованы Addressed
14
Начальное множество стейкхолдеров согласно, что система должна быть произведена.
Заинтересованные стороны, которые будут использовать новую систему, определены.
Заинтересованные стороны, которые профинансируют начальную работу по созданию новой системы, определены.
Есть ясная возможность, которую будет адресовывать новая система.
![Page 15: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/15.jpg)
Единица требований
a condition or capability needed by a stakeholder to solve a problem or achieve an objective.
The Requirement Item is ready to be implemented.
Successful implementation of the Requirement Item in the Software System has been confirmed.
Identified
Described R
equ
irem
ent
Item
A specific condition or capability that the Software System must address has been identified.
Implemented The Requirement Item is implemented in the Software System and demonstrated to work.
Verified
Conceived
Bounded
Coherent
Acceptable
Req
uir
emen
ts
Fulfilled
Addressed
Drives
15
![Page 16: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/16.jpg)
Язык, сущности, практики
16
...
Язык Сущности
(абстрактные) Практики
(конкретные)
Источник: ТехИнвестЛаб (http://www.slideshare.net/ailev/essence-21700931)
...
![Page 17: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/17.jpg)
Ключевые свойства Ядра
Ядро:
• Исполняемое
• Расширяемое
• Практичное
17
![Page 18: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/18.jpg)
Примеры проблем
• Определение текущего положения
дел в проекте
• Определение «узких мест»
• Единая версия правды
• Определение дальнейших шагов
для достижения целей проекта
18
![Page 19: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/19.jpg)
Решение проблем
Основанные на использовании
Ядра:
• Модель жизненного цикла
• Описанные методы
• Описанные практики
• Инструменты
19
![Page 20: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/20.jpg)
Моделирование жизненного цикла
Каскадная модель (водопад)
Testing
Deployment
$$
Opportunity Requirements System Team Work Way of Working
Initiated
Requirements
Analysis & Design
Implementation
Stakeholders
Initiation Solution Needed
Viable
Addressed
Benefit Accrued
Value Established
Identified
Bounded
Acceptable
Addressed
Coherent
Conceived
Demonstrable
Ready
Retired
(Usable)
Architecture Selected
Seeded
(Collaborating)
Formed
Adjourned
Under Control
Concluded
Prepared
Closed
Principles Established
In Place
(Working Well)
(Retired)
(Foundation Established)
(Performing)
Fulfilled
Started In Use
Operational
Represented
In Agreement
Satisfied for Deployment
Satisfied in Use
Involved
Recognized
(Collaborating)
Formed
(Performing)
(Collaborating)
Formed
(Performing)
(Collaborating)
Formed
(Performing)
(Collaborating)
Formed
(Performing)
(Working Well)
(Working Well)
(Working Well)
20
![Page 21: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/21.jpg)
Overview of the End of Phase Milestones
Vanilla EssUP
$$
Opportunity Requirements System Team Work Way of Working Stakeholders
Seeded
Collaborating
Formed
Adjourned
Initiated
Under Control
Concluded
Concluded
Prepared
Closed
Principles Established
In Place
Working Well
Retired
Foundation Established
Performing
Performing
Started In Use
Bounded
Acceptable
Addressed
Fulfilled
Coherent
Conceived
Demonstrable
Ready
Retired
Usable
Approach Selected
Fulfilled
Operational
Solution Needed
Viable
Addressed
Benefit Accrued
Value Established
Identified
Represented
In Agreement
Satisfied for Deployment
Satisfied in Use
Involved
Recognized
Inception
Elaboration
Construction
Transition
up
21
![Page 22: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/22.jpg)
Отслеживание текущего состояния
22
SematAcc
Карты состояний
![Page 23: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/23.jpg)
Графический синтаксис
Software System
Requirements fulfills >
Ядро
Objectives Agreed
Состояние
Рабочий продукт
Activity
Компетенция
Activity Space
23
![Page 24: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/24.jpg)
Метод и практики
Scrum
Практика вариантов
использования
Архитектурная практика
Метод проекта Х
24
![Page 25: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/25.jpg)
Пример для Scrum
Requirements
Work
Team
Software System
Scrum
Sprint 1..*
Product Backlog
1
Sprint Backlog
1
Increment
1..*
Product owner
Developer
Scrum master
25
![Page 26: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/26.jpg)
Пример для Scrum
Sprint Review
Daily Scrum
Sprint Planning Meeting
Sprint Retrospective
Sprint Planning Meeting
Prepare to do the Work
Daily Scrum Coordinate the Work
Sprint Review Track Progress
Sprint Retrospective
Support the Team
26
![Page 27: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/27.jpg)
Как пользоваться
[0. Связать достижение альфами определенных состояний с переходами между стадиями жизненного цикла.]
1. Определить текущее состояние проекта при помощи чеклистов, предлагаемых стандартом для альф.
2. Определить к каким состояниям каких альф требуется перейти в первую очередь.
3. Определить те задания, которые необходимо выполнить, чтобы достичь желаемых состояний, определенных на шаге 2.
[4. Убедиться, что используемые практики позволяют заполнить все пространства дел.]
[5. Убедиться в наличии достаточного количества членов команды с необходимыми уровнями компетенций для успешного следования практикам.]
27
![Page 28: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/28.jpg)
Средства моделирования
Колода карт SEMAT http://www.ivarjacobson.com/SEMAT_Kernel_Cards_Download/
Моделер http://www.ivarjacobson.com/EssWork_Practice_Workbench/
28
![Page 29: SEMAT in Discussion Corner @ SEC(R) 2013](https://reader034.vdocuments.net/reader034/viewer/2022051514/549439cdb47959744d8b4a8f/html5/thumbnails/29.jpg)
Summary – What is new?
29
“This (SEMAT) meeting in Zurich
(2010) is likely to be an historic
occasion much like the 1968 NATO
session in Garmish.”
- Watts Humphrey (CMMI)