एक सॉफ्टवेयर उत्पाद को सक्षम और प्रभावी ढंग से कैसे विकसित किया जाए

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

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

इस सॉफ्टवेयर की मुख्य समस्याएं थीं:

  • लगातार सर्वर क्रैश;
  • सहायक शाखाओं से प्रसारण के दौरान डेटा हानि;
  • जब सेवाओं की बढ़ती संख्या (जियोलोकेशन, संबंधित सेवाओं के साथ एकीकरण) को संसाधित करने में लोड का सामना करना बंद हो जाता है;
  • नए संस्करणों की रिलीज के लिए समय सीमा का पालन करने में विफलता।

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

आपको क्या पता चला


विश्लेषण से पहले, काम के लिए प्राथमिकताएं निम्नानुसार थीं: 70% - नई सुविधाओं का विकास जो पहचान की गई समस्याओं को हल करेगा, और 30% - स्केलेबिलिटी परीक्षण सहित मौजूदा कार्यक्षमता का परीक्षण।


उत्पाद गुणवत्ता ऑडिट करने से पहले कार्य योजना

ऑडिट प्रक्रिया के दौरान, यह पता लगाना बेहद महत्वपूर्ण है कि अन्य क्षेत्रों के निष्पादक कैसे काम करते हैं और परियोजना और प्रक्रियाओं के मुख्य कार्यों पर उनके विचार हैं।

ग्राहक की टीम के साथ बात करने के बाद, हमने अन्य समान रूप से महत्वपूर्ण मुद्दों के बारे में सीखा:

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

ग्राहक ने पहले से इन समस्याओं की पहचान नहीं की थी, परियोजना की वृद्धि और विकास पर उनका महत्वपूर्ण प्रभाव पड़ा। अक्सर इस तरह की समस्याओं पर उचित ध्यान नहीं दिया जाता है, जिससे पूरी परियोजना में परिवर्तन करने की प्रभावशीलता कम हो सकती है।

हमने क्या सुझाव दिया


विशेषज्ञ टीम द्वारा तैयार की गई चरण-दर-चरण योजना ने ग्राहक की पहचान की गई समस्याओं को हल किया। एक अधिक चिकनी और दर्द रहित विधि को एक व्यक्तिगत दृष्टिकोण का प्रस्ताव दिया गया था - एक एकल ग्राहक टीम का विचार, जो निम्नलिखित सिद्धांतों पर आधारित है:

  • लक्ष्यों को प्राप्त करने और कार्यों को पूरा करने में टीम की सामान्य रुचि;
  • आंतरिक उत्पाद की गुणवत्ता को प्रभावित करने वाले सभी व्यक्तियों की भागीदारी;
  • हमारी टीम द्वारा ग्राहकों के विशेषज्ञों का निरंतर परामर्श।

परिणामस्वरूप, ग्राहक की मूल योजना से, जिसका अर्थ केवल विकास पर चर्चा करना था, हम कार्यों की विस्तारित सूची को अनुमोदित करने के लिए आगे बढ़े:

  • ऐसी प्रक्रियाएँ जिनसे कार्यों का जीवन चक्र गुजरता है;
  • उन कार्यों का चयन करना जो अगले संस्करण रिलीज में शामिल होंगे, और सामान्य रूप से कार्यों को प्राथमिकता देना;
  • परीक्षण प्रक्रिया, उत्पाद की समग्र गुणवत्ता का विचार प्राप्त करने के लिए इसका संगठन;
  • Git Flow को कॉन्फ़िगर करें
  • नई कार्यक्षमता का विकास और दोषों का सुधार;
  • एक परियोजना के लिए एक स्वचालित परिनियोजन प्रणाली स्थापित करना।



उत्पाद की गुणवत्ता ऑडिट करने के बाद कार्य योजना

ऑडिट के अंत में, पहले दो महीनों के लिए एक योजना तैयार की गई थी, जिसमें न केवल काम की सूची शामिल थी, बल्कि प्रक्रियाओं पर एक समझौता भी था।

परिणाम


2 महीने के बाद, योजनाबद्ध समय सीमा के भीतर प्राथमिकता कार्यक्षमता के साथ एक रिलीज जारी किया गया था। आवेदन का मुख्य व्यावसायिक तर्क स्वचालित और मैनुअल परीक्षणों द्वारा कवर किया गया था, जिसने आवेदन की गुणवत्ता के स्तर की बेहतर समझ दी, दोषों की एकाग्रता को कम किया, साथ ही उत्पाद विकास के बिंदुओं की पहचान करने की क्षमता भी।

उत्पाद समर्थन के क्षेत्र में ऑडिट से पहले और बाद में कुछ कामकाजी आंकड़ों में काम के परिणाम और इसकी गुणवत्ता सुनिश्चित करना।



एक एकल टीम के रूप में काम करने के लिए हमारे दृष्टिकोण ने इसी परिणाम दिया:

  • आवेदन की मुख्य कार्यक्षमता स्थिर है, सर्वर विफलताओं की संख्या, डेटा हानि में कमी आई है;
  • प्रणाली की बेहतर उपयोगिता, जिसने कर्मचारियों की गति में वृद्धि की;
  • समय पर आवेदन के संस्करणों की रिहाई;
  • नियमित ग्राहकों की वापसी और बढ़ी हुई वफादारी का प्रतिशत प्रारंभिक आंकड़े से दोगुना है;
  • तकनीकी सहायता सेवा में महत्वपूर्ण कॉल की संख्या में 70% की कमी आई है।

Source: https://habr.com/ru/post/hi432174/


All Articles