गुणवत्ता अभियांत्रिकी

गुणवत्ता इंजीनियरिंग या उत्कृष्ट अभियांत्रिकी उत्पाद और सेवा गुणवत्ता आश्वासन और नियंत्रण के सिद्धांतों और अभ्यास से संबंधित इंजीनियरिंग का अनुशासन है। सॉफ्टवेयर विकास में, यह उच्च गुणवत्ता वाले मानक के साथ आईटी सिस्टम और एंटरप्राइज आर्किटेक्चर का प्रबंधन, विकास, संचालन और रखरखाव है।

विवरण
गुणवत्ता इंजीनियरिंग इंजीनियरिंग का अनुशासन है जो उत्पाद विकास और उत्पादन के साथ-साथ सॉफ्टवेयर विकास में गुणवत्ता आश्वासन के लिए रणनीति बनाता और लागू करता है।

गुणवत्ता इंजीनियर उत्पाद की गुणवत्ता को अनुकूलित करने पर ध्यान केंद्रित करते हैं जिसे डब्ल्यू एडवर्ड्स डेमिंग ने इस प्रकार परिभाषित किया है:
 * $$\text{Quality} = \frac{\text{Results of work efforts}}{\text{Total costs}}$$

गुणवत्तापूर्ण इंजीनियरिंग ज्ञान का निकाय सम्मिलित है:
 * प्रबंधन और नेतृत्व
 * गुणवत्ता प्रणाली
 * गुणवत्ता प्रणाली के तत्व
 * उत्पाद और प्रक्रिया डिजाइन
 * गुणवत्ता विशेषताओं का वर्गीकरण
 * डिज़ाइन इनपुट और समीक्षा
 * डिज़ाइन सत्यापन
 * विश्वसनीयता और रखरखाव
 * उत्पाद और प्रक्रिया नियंत्रण
 * निरंतर सुधार
 * गुणवत्ता नियंत्रण उपकरण
 * गुणवत्ता प्रबंधन और योजना उपकरण
 * निरंतर सुधार तकनीकें
 * सुधारात्मक क्रिया
 * निवारक क्रिया
 * सांख्यिकीय प्रक्रिया नियंत्रण (एसपीसी)
 * जोखिम प्रबंधन

भूमिकाएँ
ऑडिटर: आईएसओ9000 और एएस9100 जैसे अंतरराष्ट्रीय गुणवत्ता मानकों के अनुपालन के लिए गुणवत्ता इंजीनियर अपनी कंपनियों या अपने आपूर्तिकर्ताओं के ऑडिट के लिए जिम्मेदार हो सकते हैं। वे किसी लेखापरीक्षा निकाय के अंतर्गत स्वतंत्र लेखापरीक्षक भी हो सकते हैं।

प्रक्रिया गुणवत्ता: गुणवत्ता इंजीनियरों को यह निर्धारित करने के लिए मूल्य स्ट्रीम मैपिंग और सांख्यिकीय प्रक्रिया नियंत्रण का काम सौंपा जा सकता है कि क्या किसी प्रक्रिया में दोषपूर्ण उत्पाद उत्पन्न होने की संभावना है। वे यह सुनिश्चित करने के लिए निरीक्षण योजनाएं और मानदंड बना सकते हैं कि पूरा होने से पहले दोषपूर्ण भागों का पता लगाया जा सके।

आपूर्तिकर्ता गुणवत्ता: गुणवत्ता इंजीनियर आपूर्तिकर्ताओं का ऑडिट करने या उनकी सुविधा पर मूल कारण और सुधारात्मक क्रिया करने या दोषपूर्ण उत्पादों की डिलीवरी को रोकने के लिए ऐसी गतिविधि की निगरानी करने के लिए जिम्मेदार हो सकते हैं।

सॉफ्टवेयर
आईटी सेवाएँ प्लेटफ़ॉर्म सीमाओं, डिवाइस और संगठनात्मक सीमाओं के पार वर्कफ़्लो में तेजी से जुड़ी हुई हैं, उदाहरण के लिए साइबर-भौतिक सिस्टम, बिजनेस-टू-बिजनेस वर्कफ़्लो, या क्लाउड सेवाओं का उपयोग करते समय। ऐसे संदर्भों में, गुणवत्ता इंजीनियरिंग गुणवत्ता विशेषताओं पर आवश्यक सर्वव्यापी विचार की सुविधा प्रदान करती है।

ऐसे संदर्भों में प्रबंधन से लेकर संचालन तक की गुणवत्ता का "पूरे सिरे तक" दृष्टिकोण महत्वपूर्ण है। गुणवत्ता इंजीनियरिंग उद्यम वास्तुकला प्रबंधन, सॉफ्टवेयर उत्पाद प्रबंधन, आईटी सेवा प्रबंधन, सॉफ्टवेयर इंजीनियरिंग और सिस्टम इंजीनियरिंग, और सॉफ्टवेयर गुणवत्ता प्रबंधन और सूचना सुरक्षा प्रबंधन से विधियों और उपकरणों को एकीकृत करती है। इसका मतलब यह है कि गुणवत्ता इंजीनियरिंग सॉफ्टवेयर इंजीनियरिंग, सूचना सुरक्षा प्रबंधन या सॉफ्टवेयर उत्पाद प्रबंधन के क्लासिक विषयों से आगे निकल जाती है क्योंकि यह प्रबंधन के मुद्दों (जैसे व्यवसाय और आईटी रणनीति, जोखिम प्रबंधन, व्यवसाय प्रक्रिया के विचार, ज्ञान और सूचना प्रबंधन, ऑपरेटिव प्रदर्शन प्रबंधन), डिजाइन विचार (सॉफ्टवेयर विकास प्रक्रिया, आवश्यकताओं का विश्लेषण, सॉफ़्टवेयर परीक्षण सहित) और ऑपरेटिव विचार (जैसे कॉन्फ़िगरेशन, निगरानी, ​​आईटी सेवा प्रबंधन) को एकीकृत करती है। कई क्षेत्रों में जहां इसका उपयोग किया जाता है, गुणवत्ता इंजीनियरिंग कानूनी और व्यावसायिक आवश्यकताओं, अनुबंध संबंधी दायित्वों और मानकों के अनुपालन से निकटता से जुड़ी हुई है। जहां तक गुणवत्ता विशेषताओं का सवाल है, आईटी सेवाओं की विश्वसनीयता, सुरक्षा और सुरक्षा प्रमुख भूमिका निभाती है।

गुणवत्ता इंजीनियरिंग में, गुणवत्ता उद्देश्यों को एक सहयोगात्मक प्रक्रिया में कार्यान्वित किया जाता है। इस प्रक्रिया के लिए बड़े पैमाने पर स्वतंत्र कलाकारों की सहभागिता की आवश्यकता होती है जिनका ज्ञान सूचना के विभिन्न सोर्सों पर आधारित होता है।



गुणवत्ता उद्देश्य
गुणवत्ता उद्देश्य सॉफ़्टवेयर गुणवत्ता के लिए मूलभूत आवश्यकताओं का वर्णन करते हैं। गुणवत्ता इंजीनियरिंग में, वे अक्सर उपलब्धता, सुरक्षा, सुरक्षा, विश्वसनीयता और प्रदर्शन की गुणवत्ता विशेषताओं को संबोधित करते हैं। ISO/IEC 25000 जैसे गुणवत्ता मॉडल और लक्ष्य प्रश्न मीट्रिक दृष्टिकोण जैसी विधियों की सहायता से, गुणवत्ता उद्देश्यों के लिए मेट्रिक्स को विशेषता देना संभव है। इससे गुणवत्तापूर्ण उद्देश्यों की प्राप्ति की डिग्री मापने की अनुमति मिलती है। यह गुणवत्ता इंजीनियरिंग प्रक्रिया का एक प्रमुख घटक है और साथ ही, इसकी निरंतर निगरानी और नियंत्रण के लिए एक शर्त है। गुणवत्ता उद्देश्यों की प्रभावी और कुशल माप सुनिश्चित करने के लिए निर्णय लेने के आधार के रूप में मुख्य संख्याओं का एकीकरण, जिन्हें मैन्युअल रूप से पहचाना गया था (उदाहरण के लिए विशेषज्ञ अनुमान या समीक्षाओं द्वारा), और स्वचालित रूप से पहचाने गए मेट्रिक्स (उदाहरण के लिए सोर्स कोड या स्वचालित प्रतिगमन परीक्षणों के सांख्यिकीय विश्लेषण द्वारा) अनुकूल है।

कर्ता (एक्टर्स)
गुणवत्ता इंजीनियरिंग के लिए शुरू से अंत तक गुणवत्ता प्रबंधन दृष्टिकोण के लिए विभिन्न जिम्मेदारियों और कार्यों, विभिन्न विशेषज्ञता और संगठन में भागीदारी वाले कई कलाकारों की आवश्यकता होती है।

गुणवत्ता इंजीनियरिंग में सम्मिलित विभिन्न भूमिकाएँ:
 * बिजनेस आर्किटेक्ट,
 * आईटी वास्तुकार,
 * सुरक्षा अधिकारी,
 * आवश्यकताएँ इंजीनियर,
 * सॉफ्टवेयर गुणवत्ता प्रबंधक,
 * टेस्ट मैनेजर,
 * प्रोजेक्ट मैनेजर,
 * उत्पाद प्रबंधक और
 * सुरक्षा वास्तुकार.

प्रायः, ये भूमिकाएँ भौगोलिक और संगठनात्मक सीमाओं पर वितरित की जाती हैं। इसलिए, गुणवत्ता इंजीनियरिंग में विभिन्न भूमिकाओं के विषम कार्यों को समन्वित करने और कार्यों को पूरा करने में आवश्यक डेटा और जानकारी को समेकित और सिंक्रनाइज़ करने और उन्हें प्रत्येक एक्टर्स को उचित रूप में उपलब्ध कराने के लिए उचित उपाय किए जाने की आवश्यकता है।

ज्ञान प्रबंधन
गुणवत्तापूर्ण इंजीनियरिंग में ज्ञान प्रबंधन एक महत्वपूर्ण भूमिका निभाता है। गुणवत्ता इंजीनियरिंग ज्ञान आधार में कोड रिपॉजिटरी से लेकर आवश्यकता विनिर्देशों, मानकों, परीक्षण रिपोर्ट, एंटरप्राइज आर्किटेक्चर मॉडल से लेकर सिस्टम कॉन्फ़िगरेशन और रनटाइम लॉग तक कई प्रकार के संरचित और असंरचित डेटा सम्मिलित हैं। सॉफ़्टवेयर और सिस्टम मॉडल इस ज्ञान को मैप करने में महत्वपूर्ण भूमिका निभाते हैं। गुणवत्ता इंजीनियरिंग ज्ञान आधार का डेटा भौगोलिक, संगठनात्मक और तकनीकी रूप से वितरित संदर्भ में मैन्युअल रूप से और टूल-आधारित दोनों तरह से उत्पन्न, संसाधित और उपलब्ध कराया जाता है। सबसे महत्वपूर्ण बात गुणवत्ता आश्वासन कार्यों, जोखिमों की शीघ्र पहचान और एक्टर्स के सहयोग के लिए उचित समर्थन पर ध्यान केंद्रित करना है।

इसके परिणामस्वरूप गुणवत्तापूर्ण इंजीनियरिंग ज्ञान आधार के लिए निम्नलिखित आवश्यकताएँ उत्पन्न होती हैं:


 * ज्ञान आवश्यकतानुसार गुणवत्ता में उपलब्ध है। महत्वपूर्ण गुणवत्ता मानदंडों में यह सम्मिलित है कि ज्ञान सुसंगत और अद्यतन होने के साथ-साथ उपयुक्त एक्टर्स के कार्यों के संबंध में विवरण के संदर्भ में पूर्ण और पर्याप्त हो।
 * एक्टर्स के बीच बातचीत का समर्थन करने और डेटा के विश्लेषण को सुविधाजनक बनाने के लिए ज्ञान आपस में जुड़ा हुआ है और पता लगाया जा सकता है। इस तरह की ट्रैसेबिलिटी न केवल अमूर्तता के विभिन्न स्तरों पर डेटा के अंतर्संबंध से संबंधित है (उदाहरण के लिए उन्हें साकार करने वाली सेवाओं के साथ आवश्यकताओं का कनेक्शन) बल्कि समय अवधि के साथ उनकी ट्रैसेबिलिटी से भी संबंधित है, जो केवल तभी संभव है जब उचित संस्करण अवधारणाएं उपस्थित हों। डेटा को मैन्युअल रूप से और साथ ही (अर्ध-) स्वचालित रूप से आपस में जोड़ा जा सकता है।
 * जानकारी ऐसे रूप में उपलब्ध होनी चाहिए जो उपयुक्त एक्टर्स के डोमेन ज्ञान के अनुरूप हो। इसलिए, ज्ञान के आधार को सूचना परिवर्तन (उदाहरण के लिए एकत्रीकरण) और विज़ुअलाइज़ेशन के लिए पर्याप्त तंत्र प्रदान करना होगा। आरएसीआई अवधारणा एक गुणवत्तापूर्ण इंजीनियरिंग ज्ञान आधार में जानकारी के लिए एक्टर्स को नियुक्त करने के लिए एक उपयुक्त मॉडल का एक उदाहरण है।
 * ऐसे संदर्भों में, जहां विभिन्न संगठनों या स्तरों के कलाकार एक-दूसरे के साथ बातचीत करते हैं, गुणवत्ता इंजीनियरिंग ज्ञान आधार को गोपनीयता और अखंडता सुनिश्चित करने के लिए तंत्र प्रदान करना होता है।
 * गुणवत्ता इंजीनियरिंग ज्ञान आधार एक्टर्स के गुणवत्ता नियंत्रण कार्यों का समर्थन करने के लिए विश्लेषण और जानकारी खोजने के लिए संभावनाओं की एक पूरी श्रृंखला प्रदान करते हैं।

सहयोगात्मक प्रक्रियाएँ
गुणवत्ता इंजीनियरिंग प्रक्रिया में किसी चुने गए संदर्भ में किसी भी गुणवत्ता सुविधाओं को पहचानने, पूरा करने और मापने के लिए मैन्युअल रूप से और (अर्ध-) स्वचालित तरीके से किए गए सभी कार्य सम्मिलित होते हैं। यह प्रक्रिया इस अर्थ में अत्यधिक सहयोगात्मक है कि इसमें एक्टर्स की परस्पर क्रिया की आवश्यकता होती है, जो व्यापक रूप से एक-दूसरे से स्वतंत्र रूप से कार्य करते हैं।

गुणवत्ता इंजीनियरिंग प्रक्रिया में किसी भी उपस्थिता उप-प्रक्रिया को एकीकृत करना होता है जिसमें आईटी सेवा प्रबंधन जैसी अत्यधिक संरचित प्रक्रियाएं और चुस्त सॉफ्टवेयर विकास जैसी सीमित संरचना वाली प्रक्रियाएं सम्मिलित हो सकती हैं। एक अन्य महत्वपूर्ण पहलू परिवर्तन-संचालित प्रक्रिया है, जहां परिवर्तन की घटनाओं, जैसे कि बदली हुई आवश्यकताओं को जानकारी के स्थानीय संदर्भ में और ऐसे परिवर्तन से प्रभावित एक्टर्स से निपटा जाता है। इसके लिए एक पूर्व-आवश्यकता विधियाँ और उपकरण हैं, जो परिवर्तन प्रसार और परिवर्तन प्रबंधन का समर्थन करते हैं।

एक कुशल गुणवत्ता इंजीनियरिंग प्रक्रिया का उद्देश्य स्वचालित और मैनुअल गुणवत्ता आश्वासन कार्यों का समन्वय करना है। कोड समीक्षा या गुणवत्ता उद्देश्यों को प्राप्त करना मैन्युअल कार्यों के उदाहरण हैं, जबकि प्रतिगमन परीक्षण और कोड मेट्रिक्स का संग्रह स्वचालित रूप से निष्पादित कार्यों के उदाहरण हैं। गुणवत्ता इंजीनियरिंग प्रक्रिया (या इसकी उप-प्रक्रियाएं) को टिकटिंग सिस्टम या सुरक्षा प्रबंधन टूल जैसे उपकरणों द्वारा समर्थित किया जा सकता है।

यह भी देखें

 * गुणवत्ता के सात बुनियादी उपकरण
 * इंजीनियरिंग प्रबंधन
 * उत्पादन व्यवाहारिक
 * मिशन आश्वासन
 * प्रणाली अभियांत्रिकी
 * डब्ल्यू एडवर्ड्स डेमिंग

संघों
 * गुणवत्ता के लिए अमेरिकन सोसायटी
 * सूचना
 * औद्योगिक इंजीनियर संस्थान

बाहरी संबंध

 * Txture is a tool for textual IT-Architecture documentation and analysis.
 * mbeddr is a set of integrated and extensible languages for embedded software engineering, plus an integrated development environment (IDE).
 * qeunit.com is a blog on QE matters