SEMAT — различия между версиями
Admin (обсуждение | вклад) (Новая страница: «'''SEMAT''' (Software Engineering Method and Theory) - инициатива по превращению программной инженерии в настоя…») |
Admin (обсуждение | вклад) м |
||
(не показано 9 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
− | '''SEMAT''' (Software Engineering Method and Theory) | + | '''SEMAT''' (Software Engineering Method and Theory) — инициатива по превращению [[Программная инженерия|программной инженерии]] в настоящую научно-техническую [[Дисциплина|дисциплину]]. |
− | SEMAT - это не метод, он не конкурирует с [[agile]]-подходами или | + | SEMAT - это не метод, он не конкурирует с [[agile]]-подходами или “[[водопад|водопадом]]”, а подкрепляет их, делает лучше и при этом позволяет быстро понять, в каком состоянии находится проект. В каждой организации применяются самые разные [[:Категория:Языки|языки]] программирования, среды и [[:Категория:Методологии|методологии]] разработки, но без единой платформы SEMAT они будут существовать сами по себе, без взаимосвязей с единой проектной структурой. '''SEMAT kernel''' - "метаметод", который предоставляет универсальные механизмы измерения и анализа процесса производства, контроля за его прогрессом. |
+ | |||
+ | == Цели и задачи == | ||
+ | Главной своей задачей SEMAT ставит выработку нового набора типов компонент метода (новую "схему акта деятельности"), по составу которого будет достигнут не столько "научный результат" (творцов в SEMAT более чем хватает), но общественное согласие. По факту, основатели SEMAT хотят повторить успех [[UML]] в области [[SME]] — в начале 90-х по поводу UML договорились между собой представители самых разных методологий разработки и соответствующих им языков ОО-моделирования. Результат известен, UML сегодня "царь горы". Те же самые люди, которые занимались унификацией UML из своих разнородных подходов в середине 90-х, возглавляют теперь SEMAT. Тем самым развитие SME приобретает еще и социальное измерение: способ задания в SEMAT онтологии метода упирает на "разделяемость" (shared) множеством людей, как основное свойство онтологии — когда они получат результат (набор компонент метода), по факту под этим результатом подпишутся множество людей, и SEMAT будет претендовать на статус "стандарта де-факто". | ||
== Концепция == | == Концепция == | ||
− | В концепции SEMAT выделяют | + | [[Файл:semat-concept.jpg|center]] |
− | # '''Ядро'''. Под всеми методологиями лежит единое ядро (это то, что в девелоперских проектах делается всегда и везде). Ядро | + | |
− | # '''Язык'''. Так как разработчики документацию и книги практически не читают, им нужно предоставить интуитивно понятный графический синтаксис (символический визуальный язык). Эффект от него поразительный: например, полсотни страниц классического описания [[Scrum]] умещается в две страницы в синтаксисе SEMAT. | + | В концепции SEMAT выделяют: |
− | # '''[[ | + | # '''Ядро'''. Под всеми методологиями лежит единое ядро (это то, что в девелоперских проектах делается всегда и везде). Ядро не “математично”, а представляет собой скорее '''экспертные суждения'''. Главный принцип его формирования таков: использовать только что, что нужно абсолютно всем. При этом, конечно, пользователи могут добавлять собственные проектные практики, которые описываются в терминологии ядра и таким образом становятся более понятными. |
+ | #* '''[[Альфа|Альфы]]'''. Ядро само по себе очень компактно, а основная работа с помощью SEMAT строится на так называемых “альфах”, абстрактных атрибутах, которые изменяются в проекте, и изменения которых нужно понимать, отслеживать, обеспечивать, направлять, контролировать. | ||
+ | # '''[[:Категория:Языки|Язык]]'''. Так как разработчики документацию и книги практически не читают, им нужно предоставить интуитивно понятный графический синтаксис (символический визуальный язык). Эффект от него поразительный: например, полсотни страниц классического описания [[Scrum]] умещается в две страницы в синтаксисе SEMAT. | ||
+ | # '''[[Практика|Практики]]''' - последовательность действий, совершаемых в рабочих процессах. Практики описываются элементами Ядра. | ||
+ | # '''[[Метод|Методы]]''' - наборы практик. | ||
+ | |||
+ | == Программное обеспечение == | ||
+ | * [https://github.com/s4fs/sematacc SEMAT Accelerator] ([http://sematacc.herokuapp.com/demo demo]) | ||
+ | |||
+ | == Ссылки == | ||
+ | * [http://semat.org/ Официальный сайт] | ||
+ | |||
+ | == См. также == | ||
+ | * [[OMG Essence]] | ||
+ | |||
+ | [[Категория:Дисциплины]] |
Текущая версия на 00:17, 9 декабря 2017
SEMAT (Software Engineering Method and Theory) — инициатива по превращению программной инженерии в настоящую научно-техническую дисциплину.
SEMAT - это не метод, он не конкурирует с agile-подходами или “водопадом”, а подкрепляет их, делает лучше и при этом позволяет быстро понять, в каком состоянии находится проект. В каждой организации применяются самые разные языки программирования, среды и методологии разработки, но без единой платформы SEMAT они будут существовать сами по себе, без взаимосвязей с единой проектной структурой. SEMAT kernel - "метаметод", который предоставляет универсальные механизмы измерения и анализа процесса производства, контроля за его прогрессом.
Цели и задачи
Главной своей задачей SEMAT ставит выработку нового набора типов компонент метода (новую "схему акта деятельности"), по составу которого будет достигнут не столько "научный результат" (творцов в SEMAT более чем хватает), но общественное согласие. По факту, основатели SEMAT хотят повторить успех UML в области SME — в начале 90-х по поводу UML договорились между собой представители самых разных методологий разработки и соответствующих им языков ОО-моделирования. Результат известен, UML сегодня "царь горы". Те же самые люди, которые занимались унификацией UML из своих разнородных подходов в середине 90-х, возглавляют теперь SEMAT. Тем самым развитие SME приобретает еще и социальное измерение: способ задания в SEMAT онтологии метода упирает на "разделяемость" (shared) множеством людей, как основное свойство онтологии — когда они получат результат (набор компонент метода), по факту под этим результатом подпишутся множество людей, и SEMAT будет претендовать на статус "стандарта де-факто".
Концепция
В концепции SEMAT выделяют:
- Ядро. Под всеми методологиями лежит единое ядро (это то, что в девелоперских проектах делается всегда и везде). Ядро не “математично”, а представляет собой скорее экспертные суждения. Главный принцип его формирования таков: использовать только что, что нужно абсолютно всем. При этом, конечно, пользователи могут добавлять собственные проектные практики, которые описываются в терминологии ядра и таким образом становятся более понятными.
- Альфы. Ядро само по себе очень компактно, а основная работа с помощью SEMAT строится на так называемых “альфах”, абстрактных атрибутах, которые изменяются в проекте, и изменения которых нужно понимать, отслеживать, обеспечивать, направлять, контролировать.
- Язык. Так как разработчики документацию и книги практически не читают, им нужно предоставить интуитивно понятный графический синтаксис (символический визуальный язык). Эффект от него поразительный: например, полсотни страниц классического описания Scrum умещается в две страницы в синтаксисе SEMAT.
- Практики - последовательность действий, совершаемых в рабочих процессах. Практики описываются элементами Ядра.
- Методы - наборы практик.