SEMAT (ソフトウェアエンジニアリングの方法と理論) は、ソフトウェアエンジニアリングを厳密な分野として再形成するための取り組みです。この取り組みは、Ivar Jacobson、Bertrand Meyer、Richard Soley [1]によって、行動宣言[2]とビジョン宣言[3]とともに 2009 年 12 月に開始されました。この取り組みは、開発者コミュニティと学術コミュニティの溝を埋め、ソフトウェアコミュニティ全体に価値をもたらすコミュニティを構築するための、数年にわたる取り組みとして構想されました。
この作業は現在、実践、教育、理論、コミュニティという 4 つの異なるが密接に関連した領域に分かれています。[要出典]実践領域は主に実践を扱います。教育領域は、開発者と学生を含む学者の両方に対するトレーニングに関連するすべての問題に関係します。理論領域は主にソフトウェア エンジニアリングの一般理論の探求に取り組んでいます。最後に、コミュニティ領域は、法人の設立、Web サイトの作成、コミュニティの成長に取り組んでいます。実践領域、教育領域、理論領域は、いずれすべてにとって価値のある方法で統合されると予想されていました。実践領域は理論領域の「顧客」となり、研究を開発者コミュニティにとって有用な結果に導きます。理論領域は、実践領域に堅実で実用的なプラットフォームを提供します。そして、教育領域は、適切な方法で結果を伝えます。
練習場
ここでの最初のステップは、ソフトウェア エンジニアリングのエッセンス (ソフトウェアを開発するときに常に持ち、常に行い、常に生み出すもの) を含む共通の基盤またはカーネルを開発することでした。2 番目のステップでは、特定の方法 (使用するチームの好み、構築するソフトウェアの種類など、さまざまな理由に固有のもの) になるように構成されるプラクティスのライブラリの形で、このカーネル上に価値を追加することが想定されました。この記事の執筆時点では、最初のステップがまもなく完了します。その結果、ソフトウェア開発の普遍的な要素を含むカーネル (Essence Kernel と呼ばれます) と、これらの要素 (およびカーネル上に構築される要素 (プラクティス、方法など)) を記述するための言語 (Essence Language と呼ばれます) が生まれました。カーネルと言語の両方を含む Essence は、2013 年 7 月にベータ ステータスでOMG標準として公開され[4]、2014 年初頭に正式に採用される標準になると予想されています。
2 番目のステップは始まったばかりで、実践領域はいくつかの別個の、しかし相互に関連するトラックに分割されます。実践 (ライブラリ トラック) とツール トラックはこれまでに特定されており、作業は開始されているか、まもなく開始されます。[引用が必要]実践トラックでは現在、ユーザー ガイドの作成に取り組んでいます。
教育分野
この領域は、学術界と産業界の両方でソフトウェア エンジニアリング教育における SEMAT の取り組みを活用することに重点を置いています。Essence と呼ばれる共通の基盤に基づいたグローバル教育を推進しています。この領域の対象グループは、大学教授や産業コーチなどのインストラクター、およびその学生や学習実践者です。
この分野の目標は、国際的に実行可能な教育コースとコース教材を作成し、特定の対象グループに適切かつ効果的な教育アプローチを特定し、経験と教訓を広めることです。
この分野には、世界中の多くの大学や研究所のメンバーが参加しています。[要出典]ほとんどのメンバーは、すでにソフトウェア エンジニアリング コースのコンテキストで SEMAT の側面を活用することに取り組んでいます。メンバーはリソースを集め、SEMAT を活用した新世代のソフトウェア エンジニアリング カリキュラムを定義するための共同事業を開始しています。
2018年現在、教育現場でのEssenceの活用に関する研究がいくつか存在する。大学教育におけるEssenceの活用例としては、ノルウェー科学技術大学で実施されたソフトウェアエンジニアリングのコースが挙げられる。プロジェクトベースのソフトウェアエンジニアリングのコースにEssenceを導入した研究[5]では、学生がEssenceの使用でどのような困難に直面したか、Essenceが有用であったかどうかを理解することを目的としていた。その結果、Essenceは、(1)新しいプラクティスや方法を調べて研究し、独自のものを作成することを奨励する、(2)状況に応じて反省的に作業方法を調整することを奨励する、(3)作業方法の構造化を支援するなど、初心者のソフトウェアエンジニアにとっても有用であることが示された。デジタルゲームを通じて学生にEssenceを紹介した別の研究の結果もこれらの結果を裏付けており、学生はEssenceが将来の実際のプロジェクトで役立つと感じ、それらでEssenceを活用したいと考えていることがわかった。[6]
理論領域
SEMATの重要な部分は、ソフトウェア工学の一般理論が大きな利益をもたらすように計画されていることです。[7]
SEMATワークショップ「ソフトウェア工学の一般理論(GTSE)」と題して開催される一連のワークショップは、一般理論に関する認識を高める上で重要な要素である。[8]
コミュニティの認知度向上に加え、SEMAT はソフトウェア エンジニアリングの特定の一般理論に貢献することも目指しています。この理論は SEMAT Essence 言語とカーネルにしっかりと基づいており、ソフトウェア エンジニアリング実践者の目標指向の意思決定をサポートする必要があります。他の場所で議論されているように、このようなサポートは理論の予測能力に基づいています。したがって、SEMAT Essence は、重要なソフトウェア エンジニアリング現象を予測できるように拡張する必要があります。
GTSE ワークショップ シリーズは、SEMAT 理論の基礎として使用できる有望な理論の検索、開発、評価に大規模なコミュニティを参加させることにより、SEMAT 一般的なソフトウェア エンジニアリング理論の開発を支援します。
組織構造
主な組織
SEMAT の議長は、Tata Consultancy Services の Sumeet S. Malhotra 氏が務めます。[9]この組織の CEO は富士通の Ste Nadin です。 SEMAT の執行管理委員会は、Ivar Jacobson、Ste Nadin、Sumeet S. Malhotra、Paul E. McMahon、Michael Goedicke、Cecile Peraire です。
日本支部
日本支部は2013年4月に設立され、2013年11月現在、会員数は250名を超えています。[要出典]会員の活動としては、SEMATに関するセミナーの開催、異なる要件エンジニアリング手法や知識体系(BoK)を統合するためのSEMAT Essenceの活用の検討、記事の日本語への翻訳などがあります。
韓国支部
この支部は、2013 年 10 月に約 50 名のメンバーで発足しました。メンバーの活動には、2e Consulting が Essence カーネルを使用して IT サービス エンゲージメント メソッドを書き直し、uEngine Solutions が Essence カーネル ベースのプラクティスをプロジェクト メソッドに統合するツールの開発を開始したことなどがあります。韓国政府は、KAIST が Essence の研究を実施できるよう支援しました。
ラテンアメリカ支部
Semat ラテンアメリカ支部は、2011 年 8 月にメデジン (コロンビア) で、ラテンアメリカ ソフトウェア エンジニアリング シンポジウム中に Ivar Jacobson によって設立されました。この支部には、コロンビアの Carlos Zapata 博士が議長を務め、コロンビア、ベネズエラ、ペルー、ブラジル、アルゼンチン、チリ、メキシコ出身の 9 人の執行委員会メンバーがいます。支部の最初の宣言には 80 人以上が署名し、現在、支部メンバーはラテンアメリカ全域で Semat のアイデアを広める役割を担っています。支部メンバーは、ラテンアメリカ情報科学会議 (CLEI) [10] 、イベロアメリカ ソフトウェア エンジニアリングおよび知識エンジニアリング ジャーニー (JIISIC) [11] 、コロンビア コンピューティング会議 (CCC) [12]、チリ コンピューティング ミーティング (ECC) など、さまざまなラテンアメリカの会議に参加しています。この支部は、OMG の提案募集に応えて提出された提案に貢献しており、現在はゲームで Semat カーネルを教える教授戦略、いくつかのカーネル要素に関する理論的研究、および Semat カーネルを使用したいくつかのソフトウェア開発および品質方法の実践的表現を研究しています。メンバーの一部は、Essence の本やその他の Semat 資料や論文をスペイン語に翻訳しました。
ロシア支部
ロシア支部には約 20 名の会員がいます。モスクワ国立大学、モスクワ物理工科大学、高等経済大学、モスクワ国立経済・統計・情報大学など、いくつかの大学が SEMAT をトレーニング コースに取り入れています[要出典] 。支部といくつかの商業企業が SEMAT に関するセミナーを実施しています。INCOSE ロシア支部は、システム エンジニアリングへの SEMAT の拡張に取り組んでいます。EC-leasing は、ソフトウェア ライフ サイクル用カーネルの拡張に取り組んでいます。ロシア支部は、システムおよびソフトウェア エンジニアリングの実際の問題と SECR の 2 つの会議に出席し、SEMAT セクションと記事を掲載しました[要出典]。Essence ブックのロシア語への翻訳が進行中です。
SEMATの実用的応用
SEMAT コミュニティによって開発されたアイデアは、産業界と学界の両方で応用されています。注目すべき例は次のとおりです。
- 再保険会社のミュンヘン再保険会社は、ソフトウェアとアプリケーションの作業の全範囲をカバーする「コラボレーション モデル」のファミリーを編成しました。探索的、標準的、保守的、サポート的という 4 つのコラボレーション モデルは、同じ 12 のプラクティス セットから同じカーネル上に構築されています。[13]
SEMATをサポートするツール
カーネルに基づくSEMATプラクティスの作成と開発をサポートした最初のツールは、Ivar Jacobson Internationalが提供したEssWork Practice Workbench [14]ツールでした。Practice Workbenchツールは2012年6月にSEMATコミュニティに提供され、現在は公開されており、無料で使用できます。Practice Workbenchは、共同プラクティスとメソッド開発をサポートする統合プラクティス開発環境です。Practice Workbenchの主な機能は次のとおりです。
- エッセンスカーネルのインタラクティブなプレゼンテーション
- Essence Languageを使用したオーサリングと拡張の練習
- メソッドの構成
- 革新的なカードベースの表現
- 方法、実践、カーネルをカードベースの HTML ウェブサイトとして公開
- EssWork展開環境へのエクスポート
SEMAT の Essence をサポートするその他の公開ツールには、次のものがあります。
- SematAcc [15] [16]エッセンスアクセラレータシステムは、ソフトウェアエンジニアリングにおけるエッセンス理論の学習をスピードアップし、あらゆるソフトウェアプロジェクトで簡単にテストできるように設計されている。
- エッセンスボードゲーム[17]は、エッセンスの基礎を楽しく教えることを目的としている。
- Essencery [18] [19] Essenceグラフィカル言語構文を使用してメソッドを作成するためのオープンソースの代替手段
参考文献
- ^ 「ようこそ - SEMAT」。www.semat.org。
- ^ 「SEMATイニシアチブ:行動の呼びかけ」。ドクター・ドブズ。
- ^ http://semat.org/documents/20181/27952/SEMAT-vision.pdf [ベア URL PDF ]
- ^ http://www.omg.org/spec/Essence/1.0/PDF [ベア URL PDF ]
- ^ Kemell, Kai-Kristian; Nguyen-Duc, Anh; Wang, Xiaofeng; Risku, Juhanki; Abrahamsson, Pekka (2018). 「ソフトウェア エンジニアリングのエッセンス理論 - 450 名以上のソフトウェア エンジニアリング BSC 学生による大規模教室体験」. arXiv : 1809.08827 [cs.SE].
- ^ Pieper, J., Lueth, O., Goedicke, M., Forbrig, P. (2017)。デジタルゲームベース学習でサポートされるソフトウェアエンジニアリング手法教育のケーススタディ - ゲームとコースプロジェクトへの SEMAT Essence カーネルの適用。2017 IEEE Global Engineering Education Conference (EDUCON) の議事録、pp. 1689-1698。
- ^ 「アーカイブコピー」(PDF) 。 2014年8月1日時点のオリジナル(PDF)からアーカイブ。 2013年8月8日閲覧。
{{cite web}}: CS1 maint: archived copy as title (link) - ^ 「ようこそ - SEMAT」。セマット.org。
- ^ 「Dr. Sumeet Malhotra が SEMAT, Inc. の取締役会会長に選出されました - ニュース - SEMAT」www.semat.org。
- ^ “Tutoriales « CLEI 2013”. 2013年12月2日時点のオリジナルよりアーカイブ。2013年11月25日閲覧。
- ^ http://www.udem.edu.co/images/ACADEMICO/FacultadIngenierias/IngenieriaSistemas/Documentos/Programacion.pdf [ベア URL PDF ]
- ^ 「アーカイブコピー」(PDF) 。 2013年12月2日時点のオリジナル(PDF)からアーカイブ。 2013年11月25日閲覧。
{{cite web}}: CS1 maint: archived copy as title (link) - ^ 「ミュンヘン再保険におけるSEMATコンセプトの適用」2013年7月27日。
- ^ 「Agile Practices Workbench | Agile Development Tools」Ivar Jacobson International 2015年8月7日。
- ^ Graziotin, Daniel; Abrahamsson, Pekka ( 2013年 9 月2日)。「SEMAT Essence ソフトウェア エンジニアリング理論のための Web ベースのモデリング ツール」。Journal of Open Research Software。1 ( 1 ): E4。arXiv : 1307.2075。doi : 10.5334 /jors.ad。
- ^ http://sematacc.herokuapp.com/
- ^ Kemell, Kai-Kristian; Risku, Juhani; Evensen, Arthur; Abraharnsson, Pekka; Dahl, Aleksander Madsen; Grytten, Lars Henrik; Jcdryszek, Agata; Rostrup, Petter; Nguyen-Duc, Anh (2018). 「エンジニアリング手法の牢獄からの脱出をゲーミフィケーションする」2018 IEEE 国際工学技術革新会議 (ICE/ITMC) . pp. 1–9. arXiv : 1809.08656 . doi :10.1109/ICE.2018.8436340. ISBN 978-1-5386-1469-3. S2CID 52015385。
- ^ 「セマト」。www.essencery.com。
- ^ Evensen, Arthur; Kemell, Kai-Kristian; Wang, Xiaofeng; Risku, Juhani; Abrahamsson, Pekka (2018). 「Essencery - ソフトウェアエンジニアリングプラクティスを本質化するツール」. arXiv : 1808.02723 [cs.SE].
外部リンク
- 公式サイト
- SEMATイニシアチブ:行動の呼びかけ
- ソフトウェアエンジニアリングに理論が必要な理由
- 方法論には理論が必要
- SEMAT - ソフトウェア エンジニアリングの方法と理論
- ソフトウェアエンジニアリングの真髄: SEMAT カーネル
