स्पेसिफिकेशन लैंग्वेज: Difference between revisions

From Vigyanwiki
No edit summary
Line 1: Line 1:
{{Short description|Formal language used in computer science}}
{{Short description|Formal language used in computer science}}
एक '''स्पेसिफिकेशन लैंग्वेज''' [[कंप्यूटर विज्ञान]] में [[औपचारिक भाषा|औपचारिक]] लैंग्वेज है जिसका उपयोग [[सिस्टम विश्लेषण]], [[आवश्यकताओं के विश्लेषण]] और [[सिस्टम डिज़ाइन]] के समय [[प्रोग्रामिंग भाषा|प्रोग्रामिंग]] लैंग्वेज की तुलना में बहुत उच्च स्तर पर सिस्टम का वर्णन करने के लिए किया जाता है, जिसका उपयोग किसी सिस्टम के लिए निष्पादन योग्य कोड का उत्पादन करने के लिए किया जाता है।<ref>[[Joseph Goguen]]
'''स्पेसिफिकेशन लैंग्वेज''' [[कंप्यूटर विज्ञान]] में [[औपचारिक भाषा|फॉर्मल]] लैंग्वेज है जिसका उपयोग [[सिस्टम विश्लेषण]], [[आवश्यकताओं के विश्लेषण]] और [[सिस्टम डिज़ाइन]] के समय [[प्रोग्रामिंग भाषा|प्रोग्रामिंग]] लैंग्वेज की तुलना में बहुत उच्च स्तर पर सिस्टम का वर्णन करने के लिए किया जाता है, जिसका उपयोग किसी सिस्टम के लिए निष्पादन योग्य कोड का उत्पादन करने के लिए किया जाता है।<ref>[[Joseph Goguen]]
"One, None, A Hundred Thousand Specification Languages" Invited Paper, [[IFIP]] Congress 1986 pp 995-1004</ref>
"One, None, A Hundred Thousand Specification Languages" Invited Paper, [[IFIP]] Congress 1986 pp 995-1004</ref>
==अवलोकन==
==अवलोकन==
स्पेसिफिकेशन लैंग्वेज को समान्यत: सीधे निष्पादित नहीं किया जाता है। वे क्या का वर्णन करने के लिए हैं, कैसे का नहीं। वास्तव में, यदि किसी आवश्यकता स्पेसिफिकेशन को अनावश्यक कार्यान्वयन विवरण के साथ अव्यवस्थित किया जाता है तो इसे त्रुटि माना जाता है।
स्पेसिफिकेशन लैंग्वेज को समान्यत: सीधे निष्पादित नहीं किया जाता है। वह क्या का वर्णन करने के लिए हैं, क्या नहीं है। वास्तव में, यदि किसी आवश्यकता स्पेसिफिकेशन को अनावश्यक कार्यान्वयन विवरण के साथ अव्यवस्थित किया जाता है तो इसे एरर माना जाता है।


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


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


विशिष्टताओं को वास्तव में प्रयुक्त करने से पहले उन्हें परिशोधन की प्रक्रिया (कार्यान्वयन विवरण भरना) के अधीन होना चाहिए। ऐसी शोधन प्रक्रिया का परिणाम निष्पादन योग्य एल्गोरिदम है, जिसे या तो प्रोग्रामिंग लैंग्वेज में तैयार किया जाता है, या हैण्ड स्पेसिफिकेशन लैंग्वेज के निष्पादन योग्य सबसेट में तैयार किया जाता है। उदाहरण के लिए, [[हार्टमैन पाइपलाइन]] को, जब ठीक से प्रयुक्त किया जाता है, तो [[ डेटा प्रवाह |डेटा फ्लो]] स्पेसिफिकेशन माना जा सकता है जो सीधे निष्पादन योग्य है। अन्य उदाहरण [[अभिनेता मॉडल|एक्टर मॉडल]] है जिसमें कोई विशिष्ट एप्लिकेशन सामग्री नहीं है और निष्पादन योग्य होने के लिए इसे विशेषीकृत किया जाना चाहिए।
विशिष्टताओं को वास्तव में प्रयुक्त करने से पहले उन्हें परिशोधन की प्रक्रिया (कार्यान्वयन विवरण भरना) के अधीन होना चाहिए। ऐसी शोधन प्रक्रिया का परिणाम निष्पादन योग्य एल्गोरिदम है, जिसे या तो प्रोग्रामिंग लैंग्वेज में तैयार किया जाता है, या हैण्ड स्पेसिफिकेशन लैंग्वेज के निष्पादन योग्य सबसेट में तैयार किया जाता है। उदाहरण के लिए, [[हार्टमैन पाइपलाइन]] को, जब ठीक से प्रयुक्त किया जाता है, जिससे [[ डेटा प्रवाह |डेटा फ्लो]] स्पेसिफिकेशन माना जा सकता है जो सीधे निष्पादन योग्य है। अन्य उदाहरण [[अभिनेता मॉडल|एक्टर मॉडल]] है जिसमें कोई विशिष्ट एप्लिकेशन कंटेंट नहीं है और निष्पादन योग्य होने के लिए इसे विशेषीकृत किया जाना चाहिए।


विनिर्देशन लैंग्वेज का महत्वपूर्ण उपयोग प्रोग्राम की शुद्धता के [[गणितीय प्रमाण]] के निर्माण को सक्षम करना है ([[स्वचालित प्रमेय कहावत|स्वचालित प्रमेय]] देखें)।
विनिर्देशन लैंग्वेज का महत्वपूर्ण उपयोग प्रोग्राम की शुद्धता के [[गणितीय प्रमाण]] के निर्माण को सक्षम करना है ([[स्वचालित प्रमेय कहावत|स्वचालित प्रमेय]] देखें)।


==लैंग्वेज                                ==
==लैंग्वेज                                ==
{{main article|:श्रेणी:औपचारिक विशिष्टता भाषाएँ}}
{{main article|:श्रेणी:फॉर्मल स्पेशिफिकेशन लैंग्वेज}}
{{div col|content=
{{div col|content=
*[[एएनएसआई/आईएसओ सी विशिष्टता भाषा|एसीएसएल]]
*[[एएनएसआई/आईएसओ सी विशिष्टता लैंग्वेज|एसीएसएल]]
*[[नियंत्रित अंग्रेजी का प्रयास]]<ref>{{उद्धरण पुस्तक |last1=Fuchs |first1=Norbert E. |first2=Uta |last2=Schwertel |first3=Rolf |last3=Schwitter |अध्याय=नियंत्रित अंग्रेजी का प्रयास—सिर्फ नहीं एक अन्य तर्क विनिर्देश भाषा |chapter-url=ftp://nozdr.ru/biblio/kolxo3/Cs/CsLn/Logic%20Programming%20Synthsis%20and%20Transformation,%208%20conf.,%20LOPSTR'98(LNCS1559,%20Springer ,%201990)(आईएसबीएन%203540657657)(340s).pdf#page=10 |शीर्षक=तर्क प्रोग्रामिंग संश्लेषण और परिवर्तन पर अंतर्राष्ट्रीय कार्यशाला |प्रकाशक=स्प्रिंगर |श्रृंखला=कंप्यूटर विज्ञान में व्याख्यान नोट्स |खंड=1559 |वर्ष=1998 | isbn=978-3-540-65765-1 |पेज=1–20 |doi=10.1007/3-540-48958-4_1}}</ref>
*[[नियंत्रित अंग्रेजी का प्रयास]]<ref>{{उद्धरण पुस्तक |last1=Fuchs |first1=Norbert E. |first2=Uta |last2=Schwertel |first3=Rolf |last3=Schwitter |अध्याय=नियंत्रित अंग्रेजी का प्रयास—सिर्फ नहीं एक अन्य तर्क विनिर्देश भाषा |chapter-url=ftp://nozdr.ru/biblio/kolxo3/Cs/CsLn/Logic%20Programming%20Synthsis%20and%20Transformation,%208%20conf.,%20LOPSTR'98(LNCS1559,%20Springer ,%201990)(आईएसबीएन%203540657657)(340s).pdf#page=10 |शीर्षक=तर्क प्रोग्रामिंग संश्लेषण और परिवर्तन पर अंतर्राष्ट्रीय कार्यशाला |प्रकाशक=स्प्रिंगर |श्रृंखला=कंप्यूटर विज्ञान में व्याख्यान नोट्स |खंड=1559 |वर्ष=1998 | isbn=978-3-540-65765-1 |पेज=1–20 |doi=10.1007/3-540-48958-4_1}}</ref>
*[[सामान्य बीजीय विशिष्टता भाषा|सीएएसएल]]
*[[सामान्य बीजीय विशिष्टता भाषा|सीएएसएल]]
Line 22: Line 22:
*[[जेड संकेतन]]
*[[जेड संकेतन]]
*[[टीएलए+]]
*[[टीएलए+]]
*[[Lepus3|LePUS3]] (एक दृश्य, वस्तु-उन्मुख डिजाइन विवरण भाषा)
*[[Lepus3|LePUS3]] (एक दृश्य, वस्तु-उन्मुख डिजाइन विवरण लैंग्वेज)
*[[परफेक्ट डेवलपर|परफेक्ट]]
*[[परफेक्ट डेवलपर|परफेक्ट]]
*[[मिश्र धातु (विनिर्देश भाषा)|मिश्र धातु]]
*एलाय
*[[अस्थायी आदेश विशिष्टता की भाषा|लोटोस]]
*[[अस्थायी आदेश विशिष्टता की लैंग्वेज|लोटोस]]
*[[ई-लोटोस]]
*[[ई-लोटोस]]
*[[एमएमएल (प्रोग्रामिंग भाषा)|एमएमएल]]
*[[एमएमएल (प्रोग्रामिंग लैंग्वेज)|एमएमएल]]
* भाषा को परिष्कृत करें  
* लैंग्वेज को परिष्कृत करें  
*[[अनुक्रमएल]]
*[[अनुक्रमएल]]
*[[प्रतीकात्मक मॉडल सत्यापन|एसएमवी]]
*[[प्रतीकात्मक मॉडल सत्यापन|एसएमवी]]
Line 43: Line 43:
==संदर्भ==
==संदर्भ==
{{Reflist}}
{{Reflist}}


==बाहरी संबंध==
==बाहरी संबंध==
*{{Commonscatinline|Specification languages}}
*{{Commonscatinline|Specification languages}}
{{Computer language}}
[[Category: विशिष्टता भाषाएँ| विशिष्टता भाषाएँ]] [[Category: कंप्यूटर भाषाएँ]] [[Category: वैज्ञानिक मॉडलिंग]] [[Category: औपचारिक विशिष्टता]]  
[[Category: विशिष्टता भाषाएँ| विशिष्टता भाषाएँ]] [[Category: कंप्यूटर भाषाएँ]] [[Category: वैज्ञानिक मॉडलिंग]] [[Category: औपचारिक विशिष्टता]]  



Revision as of 17:48, 6 August 2023

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

अवलोकन

स्पेसिफिकेशन लैंग्वेज को समान्यत: सीधे निष्पादित नहीं किया जाता है। वह क्या का वर्णन करने के लिए हैं, क्या नहीं है। वास्तव में, यदि किसी आवश्यकता स्पेसिफिकेशन को अनावश्यक कार्यान्वयन विवरण के साथ अव्यवस्थित किया जाता है तो इसे एरर माना जाता है।

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

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

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

विनिर्देशन लैंग्वेज का महत्वपूर्ण उपयोग प्रोग्राम की शुद्धता के गणितीय प्रमाण के निर्माण को सक्षम करना है (स्वचालित प्रमेय देखें)।

लैंग्वेज

यह भी देखें

संदर्भ

  1. Joseph Goguen "One, None, A Hundred Thousand Specification Languages" Invited Paper, IFIP Congress 1986 pp 995-1004
  2. Template:उद्धरण पुस्तक

बाहरी संबंध