SEMAT - SEMAT

SEMAT (Метод и теория программной инженерии) - это инициатива по изменению формы программная инженерия так что программная инженерия квалифицируется как строгая дисциплина. Инициатива была запущена в декабре 2009 г. Ивар Якобсон, Бертран Мейер, и Ричард Соли[1] с призывом к действию[2] и заявление о видении.[3] Инициатива задумывалась как многолетние усилия по преодолению разрыва между сообществом разработчиков и академическим сообществом и по созданию сообщества, приносящего пользу всему сообществу разработчиков программного обеспечения.

Работа теперь структурирована в четырех разных, но тесно связанных областях: практика, образование, теория и сообщество.[нужна цитата ] Область практики в первую очередь касается практик. Область образования касается всех вопросов, связанных с обучением как разработчиков, так и ученых, включая студентов. Область теории в первую очередь направлена ​​на поиск общей теории в программной инженерии. Наконец, область сообщества работает с созданием юридических лиц, созданием веб-сайтов и ростом сообщества. Ожидалось, что область практики, область образования и область теории в какой-то момент будут интегрированы в ценность для всех: область практики станет «заказчиком» области теории и будет направлять исследования к полезным результатам для сообщества разработчиков. Область Теории предоставит прочную и практическую платформу для области Практики. И область образования будет сообщать результаты надлежащим образом.

Область практики

Первым шагом здесь была разработка общей основы или ядра, включающего в себя суть программной инженерии - вещи, которые мы всегда имеем, всегда делаем, всегда производим при разработке программного обеспечения. Второй шаг предполагал добавление ценности поверх этого ядра в виде библиотеки практик, которые должны быть составлены, чтобы стать конкретными методами, специфичными для всех видов причин, таких как предпочтения команды, использующей его, вид создаваемого программного обеспечения На момент написания этой статьи первый шаг близок к завершению. В результате получается ядро, включающее универсальные элементы для разработки программного обеспечения, называемые ядром сущности, и язык, называемый языком сущности, для описания этих элементов (и элементов, построенных поверх ядра (практики, методы и т. Д.). Сущность, включая ядро ​​и язык, был опубликован как мой Бог стандарт в статусе бета в июле 2013 г.[4] и ожидается, что он станет официально принятым стандартом в начале 2014 года.

Второй шаг только начался, и область практики будет разделена на несколько отдельных, но взаимосвязанных дорожек: практика (дорожка библиотеки), дорожка инструментов уже определены, и работа началась или вот-вот начнется.[нужна цитата ] Тренировочный трек в настоящее время работает над Руководством пользователя.

Область образования

Область фокусируется на использовании работы SEMAT в образовании по программной инженерии как в академических кругах, так и в промышленности. Он продвигает глобальное образование, основанное на общей основе, называемой Сущностью. Целевыми группами региона являются такие преподаватели, как профессора университетов и производственные тренеры, а также их студенты и практики обучения.

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

Область включает членов из ряда университетов и институтов по всему миру.[нужна цитата ] Большинство участников уже участвовали в использовании аспектов SEMAT в контексте своих курсов по разработке программного обеспечения. Они собирают свои ресурсы и начинают совместное предприятие по определению нового поколения учебных программ по разработке программного обеспечения на базе SEMAT.

По состоянию на 2018 год существуют некоторые исследования использования Essence в образовательных учреждениях. Одним из примеров использования Essence в университетском образовании был курс по разработке программного обеспечения, который проводился в Норвежском университете науки и технологий. Изучение[5] был проведен путем введения Essence в проектный курс разработки программного обеспечения с целью понять, с какими трудностями сталкиваются студенты при использовании Essence и считают ли они это полезным. Результаты показали, что Essence также может быть полезен для начинающих инженеров-программистов: (1) побуждая их искать и изучать новые практики и методы, чтобы создавать свои собственные, (2) побуждая их рефлексивно корректировать свой способ работы и в зависимости от ситуации, (3) помогая им структурировать свой стиль работы. Результаты другого исследования, знакомящего студентов с Essence посредством цифровой игры, подтвердили эти выводы: студенты чувствовали, что Essence будет полезен для них в будущих реальных проектах и ​​что они хотят использовать его в себе.[6]

Теоретическая область

Важной частью SEMAT является то, что планируется разработать общую теорию программной инженерии со значительными преимуществами.[7]

Серия семинаров, проводимых под названием SEMAT Workshop on a General Theory of Software Engineering (GTSE), является ключевым компонентом в повышении осведомленности об общих теориях.[8]

Помимо повышения осведомленности сообщества, SEMAT также стремится внести свой вклад в развитие конкретной общей теории программной инженерии. Эта теория должна быть прочно основана на языке и ядре SEMAT Essence и должна поддерживать целенаправленное принятие решений практиками программной инженерии. Как утверждается в другом месте, такая поддержка основана на предсказательных возможностях теории. Таким образом, SEMAT Essence следует расширить, чтобы можно было прогнозировать критические явления в программной инженерии.

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

Организационная структура

Основная организация

SEMAT возглавляет Сумит С. Малхотра из Tata Consultancy Services.[9] Генеральный директор организации - Сте Надин из Fujitsu. В исполнительный комитет SEMAT входят Ивар Якобсон, Сте Надин, Сумит С. Малхотра, Пол Э. МакМахон, Майкл Гедике и Сесиль Перайр.

Японское отделение

Японское отделение было создано в апреле 2013 года, и по состоянию на ноябрь 2013 года оно насчитывает более 250 членов.[нужна цитата ] Деятельность членов включает проведение семинаров по SEMAT, рассмотрение возможности использования SEMAT Essence для интеграции различных методов разработки требований и совокупности знаний (BoKs), а также перевод статей на японский язык.

Корейское отделение

В октябре 2013 года в отделении приняли участие около 50 членов. Деятельность членов включает: 2e Consulting начала переписывать свои методы взаимодействия с ИТ-услугами с использованием ядра Essence, а uEngine Solutions приступила к разработке инструмента для преобразования практик, основанных на ядре Essence, в метод проекта. Правительство Кореи поддержало KAIST в проведении исследования Essence.

Латиноамериканское отделение

Латиноамериканское отделение Semat было создано в августе 2011 года в Медельине (Колумбия) Иваром Якобсоном во время латиноамериканского симпозиума по разработке программного обеспечения. В эту главу входят 9 членов Исполнительного комитета из Колумбии, Венесуэлы, Перу, Бразилии, Аргентины, Чили и Мексики под председательством доктора Карлоса Сапата из Колумбии. Более 80 человек подписали первоначальную декларацию Отделения, и в настоящее время члены Отделения отвечают за распространение идей Семата во всей Латинской Америке. Члены отделения участвовали в различных латиноамериканских конференциях, включая Латиноамериканскую конференцию по информатике (CLEI),[10] Ibero American Software Engineering and Knowledge Engineering Journeys (JIISIC);[11] Колумбийская компьютерная конференция (CCC),[12] и Чилийское компьютерное совещание (ECC). Глава внесла свой вклад в представление, отправленное в ответ на запрос предложений OMG, и в настоящее время изучает дидактические стратегии обучения ядру Semat с помощью игр, теоретические исследования некоторых элементов ядра и практические представления нескольких методов разработки и обеспечения качества программного обеспечения с использованием ядра Semat. . Некоторые из участников также перевели книгу Essence и некоторые другие материалы и документы Semat на испанский язык.

Россия Глава

Русское отделение насчитывает около 20 членов. Несколько университетов включили SEMAT в свои учебные курсы.[нужна цитата ], включая Московский Государственный Университет, Московский физико-технический институт, Высшая школа экономики, Московский государственный университет экономики, статистики и информатики. Отделение и некоторые коммерческие компании проводят семинары по SEMAT. INCOSE Российское отделение работает над расширением SEMAT до Системная инженерия. EC-leasing работает над расширением жизненного цикла ядра программного обеспечения. Российское отделение участвовало в двух конференциях: «Актуальные проблемы системной и программной инженерии» и «SECR» с секциями и статьями SEMAT.[нужна цитата ] Выполняется перевод книги Essence на русский язык.

Практическое применение SEMAT

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

  • Перестраховочная компания Мюнхен Ре собрали семейство «моделей сотрудничества», чтобы охватить весь спектр работы с программным обеспечением и приложениями. Четыре модели сотрудничества - исследовательская, стандартная, сопровождение и поддержка - были построены на одном ядре из одного и того же набора из 12 практик.[13]

Инструменты, поддерживающие SEMAT

Первым инструментом, который поддерживал создание и разработку практик SEMAT на основе ядра, была EssWork Practice Workbench.[14] Инструмент предоставлен Ivar Jacobson International. Инструмент Practice Workbench был предоставлен сообществу SEMAT в июне 2012 года и теперь общедоступен и бесплатен для использования. Практика Workbench - это интегрированная среда разработки практик с поддержкой совместной практики и разработки методов. Ключевые особенности Practice Workbench:

  • Интерактивная презентация ядра сущности
  • Практикуйтесь в создании и расширении с помощью Essence Language
  • Состав метода
  • Инновационное карточное представление
  • Публикация методов, практик и ядер в виде карточных HTML-сайтов.
  • Экспорт в среду развертывания EssWork

Другие общедоступные инструменты, поддерживающие SEMAT's Essence, включают:

  • SematAcc,[15][16] Система Essence Accelerator, разработанная для ускорения изучения теории сущности в разработке программного обеспечения и для простого тестирования с любым программным проектом
  • Настольная игра Сущность,[17] предназначен для обучения основам Essence в увлекательной форме
  • Сущность,[18][19] альтернатива с открытым исходным кодом для методов компоновки с использованием синтаксиса графического языка Essence

Рекомендации

  1. ^ «Добро пожаловать - СЕМАТ». www.semat.org.
  2. ^ «Инициатива SEMAT: призыв к действию». Доктора Добба.
  3. ^ http://semat.org/documents/20181/27952/SEMAT-vision.pdf
  4. ^ http://www.omg.org/spec/Essence/1.0/PDF
  5. ^ Кемелл, Кай-Кристиан; Нгуен-Дук, Ань; Ван, Сяофэн; Риску, Юханки; Абрахамссон, Пекка (2018). «Сущность теории программной инженерии - крупномасштабный аудиторный опыт от более чем 450 студентов BSC программной инженерии». arXiv:1809.08827 [cs.SE ].
  6. ^ Пипер, Дж., Лют, О., Гедике, М., и Форбриг, П. (2017). Практический пример обучения методам разработки программного обеспечения при поддержке обучения на основе цифровых игр - применение ядра SEMAT Essence в играх и курсовых проектах. В материалах Глобальной конференции по инженерному образованию IEEE 2017 (EDUCON), стр. 1689-1698.
  7. ^ http://semat.org/wp-content/uploads/2012/02/IEEESoftware_SepOct_2012.pdf
  8. ^ «Добро пожаловать - СЕМАТ». semat.org.
  9. ^ «Д-р Сумит Малхотра был избран председателем совета директоров SEMAT, Inc. - Новости - SEMAT». www.semat.org.
  10. ^ http://clei2013.org.ve/tutoriales/
  11. ^ http://www.udem.edu.co/images/ACADEMICO/FacultadIngenierias/IngenieriaSistemas/Documentos/Programacion.pdf
  12. ^ http://semat.org/wp-content/uploads/2013/10/Tutorial-8ccc.pdf
  13. ^ «Применение концепций SEMAT в Munich Re». 27 июля 2013 г.
  14. ^ «Инструментальные средства Agile Practices | Инструменты гибкой разработки». Ивар Якобсон Интернэшнл. 7 августа 2015 года.
  15. ^ Грациотин, Даниэль; Абрахамссон, Пекка (2 сентября 2013 г.). «Инструмент веб-моделирования для теории разработки программного обеспечения SEMAT Essence». Журнал открытого программного обеспечения для исследований. 1 (1): E4. arXiv:1307.2075. Дои:10.5334 / jors.ad.
  16. ^ http://sematacc.herokuapp.com/
  17. ^ Кемелл, Кай-Кристиан; Риску, Джухани; Эвенсен, Артур; Абрахарнссон, Пекка; Даль, Александр Мадсен; Гриттен, Ларс Хенрик; Jcdryszek, Agata; Роструп, Петтер; Нгуен-Дук, Ань (2018). «Геймификация побега из тюрьмы инженерного метода». Международная конференция по инженерии, технологиям и инновациям IEEE 2018 (ICE / ITMC). С. 1–9. arXiv:1809.08656. Дои:10.1109 / ICE.2018.8436340. ISBN  978-1-5386-1469-3. S2CID  52015385.
  18. ^ «Семат». www.essencery.com.
  19. ^ Эвенсен, Артур; Кемелл, Кай-Кристиан; Ван, Сяофэн; Риску, Джухани; Абрахамссон, Пекка (2018). «Essencery - инструмент для совершенствования практики разработки программного обеспечения». arXiv:1808.02723 [cs.SE ].

внешняя ссылка