लोग सॉफ्टवेयर के लिए न्यूनतम हार्डवेयर आवश्यकताओं को कैसे परिभाषित करते हैं?


21

लोग सॉफ्टवेयर के लिए न्यूनतम हार्डवेयर आवश्यकताओं को कैसे परिभाषित करते हैं? उदाहरण के लिए: एक सॉफ्टवेयर डेवलपमेंट कंपनी ग्राहक को कैसे बता सकती है कि प्रोग्राम को ठीक से चलाने के लिए उन्हें 8 जीबी रैम की आवश्यकता होगी?

जवाबों:


31

सबसे पहले, सभी आवश्यकताएं कठोर आवश्यकताएं नहीं हैं, बल्कि न्यूनतम समर्थित हार्डवेयर हैं। यदि किसी के पास न्यूनतम से कम है, तो वह चल सकता है - लेकिन आशावादी नहीं है, या यह बिल्कुल भी नहीं चल सकता है। किसी भी मामले में, यह एक समर्थित प्रणाली नहीं है और आपके पास जो समस्याएं हैं, वे आपके अपने हैं।

हार्डवेयर आवश्यकताओं को प्राप्त करने का सबसे सरल तरीका अनुमान है। डेवलपर उनकी मशीन को देखता है और कहता है "हां, यह मेरा चलता है, यही आवश्यकताएं हैं।"

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

हार्डवेयर आवश्यकताओं में एक अन्य कारक ऑपरेटिंग सिस्टम के लिए आधार आवश्यकताएं हैं। सिद्धांत रूप में, विंडोज 7 को चलाने के लिए न्यूनतम 1GB RAM की आवश्यकता होती है। इसलिए विंडोज 7 पर चलने वाले 512 एमबी सिस्टम के खिलाफ परीक्षण निरर्थक है।

1 जीबी रैम के साथ चलने वाले सिस्टम का परीक्षण करें। क्या यह काम करता है? नहीं ... राम को अपग्रेड करें। परीक्षण और उन्नयन को दोहराएं जब तक कि एप्लिकेशन सहायक तरीके से काम न करे और न्यूनतम आवश्यकताओं के रूप में उन लोगों को सूचीबद्ध करें।

जब प्रदर्शन सॉफ़्टवेयर के वादे का हिस्सा बन जाता है, तो 'सपोर्टेबल' में वास्तव में चलने के अलावा, यह शामिल होता है कि ऑपरेशन न्यूनतम प्रदर्शन की अपेक्षा को पूरा करता है।


8
ठोस जवाब। यह जोड़ने के लिए दुख नहीं होगा कि कुछ समय यह बस दीवार पर एक रूपक डार्ट फेंकने और एक अनुमान के साथ आने की बात है। यह निश्चित रूप से एक बहुत ही व्यक्तिपरक प्रक्रिया हो सकती है।

1
+1: बहुत अच्छा जवाब। यह भी नोट करने में मदद कर सकता है कि प्रदर्शन का परीक्षण सॉफ्टवेयर अक्सर हार्डवेयर आवश्यकताओं को इंगित करता है। यही है, यह "इसे चलाता है" के बारे में कम है और पूर्ण आवश्यकताओं को देखने के बारे में अधिक है। यदि कोई आवश्यकता है कि एक ऑपरेशन को पूरा करने के लिए o<समय लगता है t, तो जो भी हार्डवेयर संयोजन उस लक्ष्य को पूरा करता है वह न्यूनतम होता है।
स्टीवन एवर्स

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

@ डेडप्लिकेटर मैं हाल ही में एक नियोक्ता का उल्लेख कर सकता था जिसमें डेल 280s (वहाँ चल रहे ग्रहण और jboss के फ्लैशबैक) थे। यकीन है, कि लक्ष्य मंच भी था - लेकिन वे केवल IE भाग गया।

6

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

वास्तुकला में तकनीकी बाधाओं

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

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

हार्डवेयर आवश्यकताओं को लागू करें

कभी-कभी आप सक्रिय रूप से अपने आप को विवश करने का विकल्प नहीं चुनते हैं, लेकिन अन्य निर्णय जो आप पर अनिवार्य रूप से मजबूर करते हैं। एक सामान्य परिदृश्य किसी भी तरह के ढांचे के ऊपर निर्माण कर रहा है।

एक उदाहरण के रूप में, यदि आप एक .Net 4.0 अनुप्रयोग का निर्माण कर रहे हैं, तो .net 4.0 में Microsoft की हार्डवेयर प्रयोगशालाओं के माध्यम से हार्डवेयर आवश्यकताएं हैं। अब आपके एप्लिकेशन को कम से कम समान हार्डवेयर आवश्यकताओं की आवश्यकता है जो कि .net 4.0 फ्रेमवर्क की आवश्यकता है।

प्रासंगिक हार्डवेयर आवश्यकताएँ

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

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

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

इस उदाहरण में, किसी भी उत्पादन प्रणाली के लिए, एक लैपटॉप वास्तव में ऐसा नहीं करेगा, भले ही यह तकनीकी रूप से "न्यूनतम" आवश्यकताओं को पूरा करता हो। उस कार्यान्वयन का संदर्भ - विशिष्ट परिदृश्य और डेटा, चाहे वह उत्पादन में चल रहा हो या नहीं, और इसी तरह, हार्डवेयर आवश्यकताओं को निर्धारित करता है।

यदि परिदृश्यों में मान्यताओं में परिवर्तन होता है, तो हार्डवेयर आवश्यकताओं को पूरा करना होगा। तो वाक्यांश, "वाई जीबी रैम को सॉफ्टवेयर को ठीक से चलाने के लिए आवश्यक है," वास्तव में इसका मतलब है "जेड घंटे में एक्स मिलियन दस्तावेजों को क्रॉल करने या एबीसी डॉक्स / मिनट की दर से वाई जीबी रैम की आवश्यकता है।"

न्यूनतम समर्थित हार्डवेयर आवश्यकताएँ

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

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

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


0

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

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.