Social software engineering
सोशल सॉफ्टवेयर इंजीनियरिंग (एस. एस. ई.) सॉफ्टवेयर इंजीनियरिंग की एक शाखा है जो सॉफ्टवेयर विकास और विकसित सॉफ्टवेयर के सामाजिक पहलुओं से संबंधित है। एस. एस. ई. सॉफ्टवेयर इंजीनियरिंग और विकसित सॉफ्टवेयर दोनों की सामाजिकता पर ध्यान केंद्रित करता है। एक ओर, सॉफ्टवेयर इंजीनियरिंग गतिविधियों, प्रक्रियाओं और केस उपकरणों में सामाजिक कारकों पर विचार करना विकास प्रक्रिया और उत्पादित सॉफ्टवेयर दोनों की गुणवत्ता में सुधार के लिए उपयोगी माना जाता है। उदाहरणों में सहयोगी सॉफ्टवेयर विकास में स्थितिजन्य जागरूकता और बहु-सांस्कृतिक कारकों की भूमिका शामिल है। दूसरी ओर, सामाजिक संदर्भों की गतिशीलता जिसमें सॉफ्टवेयर काम कर सकता है (उदाहरण के लिए, क्लाउड वातावरण में) एक रनटाइम पुनरावृत्ति गतिविधि के रूप में इंजीनियरिंग सामाजिक अनुकूलनशीलता की आवश्यकता होती है। उदाहरणों में ऐसे दृष्टिकोण शामिल हैं जो सॉफ़्टवेयर को उपयोगकर्ताओं की गुणवत्ता प्रतिक्रिया एकत्र करने में सक्षम बनाते हैं और इसका उपयोग स्वायत्त रूप से या अर्ध-स्वायत्त रूप से अनुकूलित करने के लिए करते हैं। एस. एस. ई. सॉफ्टवेयर इंजीनियरिंग में सहयोग और ज्ञान साझा करने के लिए सामाजिक-उन्मुख उपकरणों का अध्ययन और निर्माण करता है। एस. एस. ई. गतिशील सामाजिक संदर्भों के लिए सॉफ्टवेयर की अनुकूलन क्षमता की भी जांच करता है जिसमें यह काम कर सकता है और रनटाइम पर सॉफ्टवेयर अनुकूलन निर्णयों को आकार देने में ग्राहकों और अंतिम उपयोगकर्ताओं की भागीदारी की भी जांच करता है। सामाजिक संदर्भ में मानदंड, संस्कृति, भूमिकाएं और जिम्मेदारियां, हितधारक के लक्ष्य और परस्पर निर्भरता, प्रत्येक सॉफ्टवेयर व्यवहार की गुणवत्ता और उपयुक्तता के बारे में अंतिम उपयोगकर्ता की धारणा आदि शामिल हैं। सोशल सॉफ्टवेयर इंजीनियरिंग एंड एप्लीकेशन (एस. ओ. एस. ई. ए. 2008) पर पहली अंतर्राष्ट्रीय कार्यशाला के प्रतिभागियों ने निम्नलिखित विशेषताओं का प्रस्ताव दियाः समुदाय-केंद्रितः सॉफ्टवेयर का उत्पादन और उपभोग व्यक्तियों के सहयोग/सामूहिकता पर ध्यान केंद्रित करने के बजाय एक समुदाय द्वारा और/या एक समुदाय के लिए किया जाता है। एस. एस. ई. के क्षेत्र में मुख्य टिप्पणियों में से एक यह है कि सामाजिक सॉफ्टवेयर अनुप्रयोगों के लिए बनाई गई अवधारणाएं, सिद्धांत और प्रौद्योगिकियां सॉफ्टवेयर विकास पर ही लागू होती हैं क्योंकि सॉफ्टवेयर इंजीनियरिंग स्वाभाविक रूप से एक सामाजिक गतिविधि है। एस. एस. ई. सॉफ्टवेयर विकास की विशिष्ट गतिविधियों तक सीमित नहीं है। तदनुसार, एस. एस. ई. के विभिन्न भागों का समर्थन करने वाले उपकरण प्रस्तावित किए गए हैं, उदाहरण के लिए, सामाजिक प्रणाली डिजाइन या सामाजिक आवश्यकता इंजीनियरिंग। नतीजतन ऊर्ध्वाधर बाजार सॉफ्टवेयर, जैसे सॉफ्टवेयर विकास उपकरण, इंजीनियरिंग उपकरण, विपणन उपकरण या सॉफ्टवेयर जो निर्णय लेने की प्रक्रिया में उपयोगकर्ताओं की मदद करते हैं, सामाजिक घटकों से लाभ उठा सकते हैं। इस तरह के ऊर्ध्वाधर सामाजिक सॉफ्टवेयर अपने उपयोगकर्ता-आधार में यम्मर जैसे पारंपरिक सामाजिक सॉफ्टवेयर से दृढ़ता से अलग करते हैं। संदर्भ सॉफ्टवेयर इंजीनियरिंग