22 мая 2015 в 12:08

SEMAT? Приятно познакомиться

А что-то про SEMAT тут никто еще не написал? Исправляем.


Предисловие


Знакомлюсь с SEMAT – Software Engineering Method and Theory. Показалось разумным. Размышляю о возможности применения в своих проектах. Анализирую риски. Хотелось бы привлечь Хабраразум.

Определение из Википедии


SEMAT (Software Engineering Method and Theory) is an initiative to reshape software engineering such that software engineering qualifies as a rigorous discipline. The initiative was launched in December 2009 by Ivar Jacobson, Bertrand Meyer, and Richard Soley.

At the start of the initiative the founders wrote a call for action statement and a vision statement. The initiative was envisioned to be a multi-year effort working in parallel to bridge the gap between the developer community and the academic community and create a community giving value to the whole software community.

Предыстория


В сентябре 2009 года Ивар Якобсон, Бертран Мейер и Ричард Соули выступили с инициативой SEMAT, основы которой они изложили в своей книге The Essence of Software Engineering: Applying the SEMAT Kernel. Идею тройки поддержали такие гуру программирования, как Барри Боэм, Эд Йордан, Скотт Амблер, Ларри Константин и Билл Куртис. В работу над SEMAT включились корпорации ABB, SAAB, IBM и Samsung.

Суть (совсем кратко)


Независимо от метода Scrum/RUP/… /водопад определены семь инвариантов — альф, которые общие для всех программных систем. Между инвариантами определены зависимости.



Каждый инвариант в процессе жизненного цикла программной системы имеет набор последовательных состояний.



Например, альфа Требования имеет следующий набор состояний:
  • Выявлены
  • Определены
  • Ясны
  • Приняты
  • Адресованы
  • Удовлетворены

SEMAT задает еще и другие сущности: деятельности, работы, компетенции, — абсолютно необходимые в программной инженерии.

Разработаны чек-листы, которые позволяют в каждый момент экспертно оценить в каком состоянии находятся все альфы. Имея текущее состояние, мы можем сравнить между собой прогресс во всех проектах независимо от методов и технологий. Кроме того, зная очередное требуемое состояние альфы, мы понимаем, что надо сделать чтобы туда попасть.

Знакомимся подробнее


Доклад Ивара Якобсона в Гугле. Dr. Ivar Jacobson — The Essence of Software Engineering: the SEMAT Approach

Презентация

Доклад Б.А. Позина д.т.н., профессор, Председатель SEMAT Russian Chapter в МГУ — SEMAT. К теории программной инженерии. Состояние и направления развития

Презентация

Для фанатов стандартов — Kernel and Language for Software Engineering Methods (Essence), OMG 02/11/2014.

Ну и, напоследок


Три заголовка немногочисленных для российских медиа статей о SEMAT:
  • «Развернётся ли SEMAT на сто миллионов программистов?»
  • «SEMAT – вторая революция в программной инженерии?»
  • «Наука программировать — средство от катастроф».

Ну и, самое последнее


Вчера завершилась четвертая научно-практическая конференция «Актуальные проблемы системной и программной инженерии» (АПСПИ — 2015) , на которой прошел workshop “SEMAT – новая методология программной и системной инженерии. Опыт использования в 2013-2015 г.г.”. На worksope с докладом «Подход к Essence в варианте для системной инженерии». выступил А.И.Левенчук, Российское отделение INCOSE.

Таки, да! мы — «российские программисты»? как всегда, готовы все переписать и обобщить. На всякий случай — это была шутка.
Сергей Архипенков @craft_brother
карма
65,0
рейтинг 0,0
Эксперт в управлении разработкой ПО
Самое читаемое Разработка

Комментарии (8)

  • 0
    Вот ещё можете BPMN посмотреть на досуге. Всё от тех же OMG (ребята, развивавшие и продвигавшие UML).
    • 0
      Какое отношение эта ссылка имеет к SEMAT?
      • +1
        Намёк, что SEMAT, как и BPMN хорошо вписываются в xkcd: Standards?
  • +1
    Боже мой, как сумбурно!
  • 0
    Я помню, как эти картинки Якобсон показывал на SEAFOOD 2010, это все казалось довольно утопично уже тогда. Под громкие имена они набрали сотни полторы supporter'ов, встретились несколько раз, и дело заглохло. Последние документы на сайте датируются 2013 годом, примерно тогда же Мейер перестал себя публично с этим проектом ассоциировать. Не знаю, может когда-то вся эта область знаний уложится в голове кого-нибудь одного, и ему удастся сделать единый мета-метод программной инженерии, но пока это все напоминает попытку формализовать необъятное. Кому оно пригодится в реальной жизни с реальным бюджетом, коллективом, задачами и проблемами?

    На мой взгляд, предлагаемый ими подход — это крайность. И если они каким-то чудом доведут ее до чего-то применимого на практике, получится то же, что с UML — в реальной жизни из него используется лишь несколько «народных» диаграмм, а остальные находят свое применение лишь у фанатиков и в книжках про этот язык. Ну а попытка сделать из него язык программирования — это отдельная история (тоже, кстати, с треском провалившаяся).
    • 0
      Мнение, конечно, интересное. Но, я пока не знаю альтернатив, которые позволили бы привести к общему знаменателю (провести сравнительную хотя бы экспертную оценку) разных проектов оп разработке ПО. А делать это необходимо.

      Как-то, так.
      • 0
        Так а Вы можете рассказать про свой опыт, как Вы привели к общему знаменателю разные проекты с помощью SEMAT, и чем это Вам помогло?
        • 0
          Опыта нет. Пока только продумываем способы применения.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.