Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

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

Область практики [ править ]

Первым шагом здесь было разработать общую основу или ядро, включающее в себя суть программной инженерии - вещи, которые мы всегда имеем, всегда делаем, всегда производим при разработке программного обеспечения. Второй шаг предполагал добавление ценности поверх этого ядра в виде библиотеки практик, которые должны быть составлены, чтобы стать конкретными методами, специфичными для всех видов причин, таких как предпочтения команды, использующей его, вид создаваемого программного обеспечения. и т. д. Первый шаг на момент написания этой статьи почти завершен. В результате получается ядро, включающее универсальные элементы для разработки программного обеспечения, называемые ядром сущности, и язык, называемый языком сущности, для описания этих элементов (и элементов, построенных на основе ядра (практики, методы и т. Д.). Сущность, включая ядро ​​и язык, был опубликован какСтандарт OMG находится в стадии бета-тестирования в июле 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], Ибероамериканской конференции по разработке программного обеспечения и разработке знаний (JIISIC) [11], Колумбийской компьютерной конференции (CCC), [12] ]и Чилийское компьютерное совещание (ECC). Глава внесла свой вклад в представление, отправленное в ответ на запрос предложений OMG, и в настоящее время изучает дидактические стратегии обучения ядру Semat с помощью игр, теоретические исследования некоторых элементов ядра и практические представления нескольких методов разработки и обеспечения качества программного обеспечения с использованием ядра Semat. . Некоторые участники также перевели книгу Essence и некоторые другие материалы и документы Semat на испанский язык.

Отделение России [ править ]

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

Практическое применение SEMAT [ править ]

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

  • Компания по перестрахованию Munich Re собрала семейство «моделей сотрудничества», которые охватывают весь спектр работы с программным обеспечением и приложениями. Четыре модели сотрудничества - исследовательская, стандартная, сопровождение и поддержка - были построены на одном ядре из одного и того же набора из 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] предназначена для обучения основам сущности в увлекательной форме.
  • Essencery, [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. ^ Пипер J., Lueth, О., Гедике, М. и Forbrig, П. (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 Workbench | Инструменты гибкой разработки" . Ивар Якобсон Интернэшнл . 7 августа 2015 года.
  15. ^ Грациотин, Даниэль; Абрахамссон, Пекка (2 сентября 2013 г.). «Инструмент веб-моделирования для теории разработки программного обеспечения SEMAT Essence» . Журнал открытого программного обеспечения . 1 (1): E4. arXiv : 1307.2075 . DOI : 10,5334 / jors.ad .
  16. ^ http://sematacc.herokuapp.com/
  17. ^ Кемелл, Кай-Кристиан; Риску, Джухани; Эвенсен, Артур; Абрахарнссон, Пекка; Даль, Александр Мадсен; Гриттен, Ларс Хенрик; Jcdryszek, Agata; Роструп, Петтер; Нгуен-Дук, Ань (2018). «Геймификация побега из тюрьмы инженерного метода». Международная конференция по инженерии, технологиям и инновациям IEEE 2018 (ICE / ITMC) . С. 1–9. arXiv : 1809.08656 . DOI : 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 ].

Внешние ссылки [ править ]

  • Официальный веб-сайт
  • Инициатива SEMAT: призыв к действию
  • Зачем нам нужна теория программной инженерии
  • Методы нуждаются в теории
  • SEMAT - Метод и теория программной инженерии
  • Суть программной инженерии: ядро ​​SEMAT