ソーシャル ソフトウェア エンジニアリング( SSE ) は、ソフトウェア開発と開発されたソフトウェアの社会的側面を扱う ソフトウェア エンジニアリングの分野です。
SSE は、ソフトウェア エンジニアリングと開発されたソフトウェアの両方の社会性に焦点を当てています。一方では、ソフトウェア エンジニアリングのアクティビティ、プロセス、CASE ツールにおける社会的要因の考慮は、開発プロセスと生成されたソフトウェアの両方の品質を向上させるのに役立つと考えられています。例としては、共同ソフトウェア開発における状況認識と多文化的要因の役割が挙げられます。他方では、ソフトウェアが動作する可能性のある社会的コンテキスト (クラウド環境など) の動的性により、実行時の反復アクティビティとして社会的適応性をエンジニアリングする必要があります。例としては、ソフトウェアがユーザーの品質フィードバックを収集し、それを使用して自律的または半自律的に適応できるようにするアプローチが挙げられます。
SSE は、ソフトウェア エンジニアリングにおけるコラボレーションと知識の共有をサポートするために、社会的指向のツールを研究し、構築しています。また、SSE は、ソフトウェアが動作する可能性のある動的な社会的コンテキストへのソフトウェアの適応性、および実行時にソフトウェアの適応決定を形成するクライアントとエンド ユーザーの関与についても調査します。社会的コンテキストには、規範、文化、役割と責任、利害関係者の目標と相互依存性、各ソフトウェア動作の品質と適切性に関するエンド ユーザーの認識などが含まれます。
第1回ソーシャルソフトウェアエンジニアリングとアプリケーションに関する国際ワークショップ(SoSEA 2008) [1]の参加者は、次のような特徴づけを提案した。
- コミュニティ中心: ソフトウェアは個人に焦点を当てるのではなく、コミュニティによって、またはコミュニティのために作成され、消費されます。
- コラボレーション/集団性: 人間のコラボレーション能力と集団能力を活用する
- 交友関係:人々の間のさまざまなつながりを明確にする
- 人間/社会活動: ソフトウェアは人間の活動をサポートし、社会問題に対処することを意識して設計されています
- 社会的包摂:ソフトウェアは、コミュニティ内のつながりと信頼を強化する社会的包摂を可能にする必要があります。
したがって、SSEは「オンライン環境でのコミュニティ主導のソフトウェアの作成、管理、展開、使用を可能にするプロセス、方法、ツールの適用」と定義できます。[2]
SSEの分野における主な観察の1つは、ソフトウェアエンジニアリングが本質的に社会的活動であるため、ソーシャルソフトウェアアプリケーション向けに作成された概念、原則、およびテクノロジはソフトウェア開発自体に適用できるということです。 SSEは、ソフトウェア開発の特定の活動に限定されません。 したがって、ソーシャルシステム設計やソーシャル要件エンジニアリングなど、SSEのさまざまな部分をサポートするツールが提案されてきました。[3] その結果、ソフトウェア開発ツール、エンジニアリングツール、マーケティングツール、または意思決定プロセスでユーザーを支援するソフトウェアなどの垂直市場ソフトウェアは、ソーシャルコンポーネントから利益を得ることができます。 [4] [5]このような垂直ソーシャルソフトウェアは、ユーザーベースにおいて、 Yammerなどの従来のソーシャルソフトウェアとは大きく異なります。
参考文献
- ^ 第 1 回ソーシャル ソフトウェア エンジニアリングとアプリケーションに関する国際ワークショップ (SoSEA 2008)
- ^ Imed Hammouda、Jan Bosch、Mehdi Jazayeri、Tommi Mikkonen: ソーシャルソフトウェアエンジニアリングとアプリケーションに関する第1回国際ワークショップ (SoSEA 2008)。第23回IEEE/ACM国際自動ソフトウェアエンジニアリング会議 (ASE 2008) の議事録。IEEE、2008、pp. 531-532。
- ^ Steffen Lohmann、Sebastian Dietzold、Philipp Heim、Norman Heino: ソーシャル要件エンジニアリングのための Web プラットフォーム。ソフトウェア エンジニアリング 2009 (ワークショップ)。GI、2009、pp. 309-315。
- ^ ミュンヘン工科大学、セビス: (垂直) ソーシャル ソフトウェアに関する研究プロジェクトを完了
- ^ 「ソーシャルネットワークの未来は垂直的である」。2015年5月17日時点のオリジナルよりアーカイブ。2014年9月15日閲覧。
