स्पेसिफिकेशन लैंग्वेज: Difference between revisions
No edit summary |
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]] | ||
"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 अंकन]] जैसे | |||
विशिष्टताओं को वास्तव में | विशिष्टताओं को वास्तव में प्रयुक्त करने से पहले उन्हें परिशोधन की प्रक्रिया (कार्यान्वयन विवरण भरना) के अधीन होना चाहिए। ऐसी शोधन प्रक्रिया का परिणाम एक निष्पादन योग्य एल्गोरिदम है, जिसे या तो प्रोग्रामिंग लैंग्वेज में तैयार किया जाता है, या हैण्ड स्पेसिफिकेशन लैंग्वेज के निष्पादन योग्य सबसेट में तैयार किया जाता है। उदाहरण के लिए, [[हार्टमैन पाइपलाइन]] को, जब ठीक से प्रयुक्त किया जाता है, तो [[ डेटा प्रवाह |डेटा फ्लो]] स्पेसिफिकेशन माना जा सकता है जो सीधे निष्पादन योग्य है। एक अन्य उदाहरण [[अभिनेता मॉडल|एक्टर मॉडल]] है जिसमें कोई विशिष्ट एप्लिकेशन सामग्री नहीं है और निष्पादन योग्य होने के लिए इसे विशेषीकृत किया जाना चाहिए। | ||
विनिर्देशन | विनिर्देशन लैंग्वेज का एक महत्वपूर्ण उपयोग प्रोग्राम की शुद्धता के [[गणितीय प्रमाण]] के निर्माण को सक्षम करना है ([[स्वचालित प्रमेय कहावत|स्वचालित प्रमेय]] देखें)। | ||
== | ==लैंग्वेज एँ== | ||
{{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> | ||
*[[ | *[[सामान्य बीजीय विशिष्टता भाषा|CASL]] | ||
*[[ | *[[वियना विकास विधि|वीडीएम]] | ||
*[[ | *[[जेड संकेतन]] | ||
*[[ | *[[टीएलए+]] | ||
*[[Lepus3|LePUS3]] ( | *[[Lepus3|LePUS3]] (एक दृश्य, वस्तु-उन्मुख डिजाइन विवरण भाषा) | ||
*[[ | *[[परफेक्ट डेवलपर|परफेक्ट]] | ||
*[[ | *[[मिश्र धातु (विनिर्देश भाषा)|मिश्र धातु]] | ||
*[[ | *[[अस्थायी आदेश विशिष्टता की भाषा|LOTOS]] | ||
*[[ | *[[ई-लोटोस]] | ||
*[[ | *[[एमएमएल (प्रोग्रामिंग भाषा)|एमएमएल]] | ||
* | * भाषा को परिष्कृत करें | ||
*[[ | *[[अनुक्रमएल]] | ||
*[[ | *[[प्रतीकात्मक मॉडल सत्यापन|एसएमवी]] | ||
*[[ | *[[विनिर्देश और डिजाइन भाषा|एसडीएल]] | ||
*[[ | *[[बी-विधि]] | ||
}} | }} | ||
==यह भी देखें== | ==यह भी देखें== | ||
*[[औपचारिक विशिष्टता]] | *[[औपचारिक विशिष्टता|फॉर्मल]] [[सामान्य बीजगणितीय विशिष्टता भाषा|स्पेसिफिकेशन]] | ||
*[[भाषा-स्वतंत्र विशिष्टता]] | *[[भाषा-स्वतंत्र विशिष्टता|लैंग्वेज -इंडिपेंडेंट]] [[औपचारिक विशिष्टता|स्पेसिफिकेशन]] | ||
* | *स्पेसिफिकेशन और डिस्क्रिप्शन लैंग्वेज | ||
*[[एकीकृत मॉडलिंग भाषा]] | *[[एकीकृत मॉडलिंग भाषा|एकीकृत मॉडलिंग लैंग्वेज]] | ||
==संदर्भ== | ==संदर्भ== |
Revision as of 10:17, 3 August 2023
एक स्पेसिफिकेशन लैंग्वेज कंप्यूटर विज्ञान में एक औपचारिक लैंग्वेज है जिसका उपयोग सिस्टम विश्लेषण, आवश्यकताओं के विश्लेषण और सिस्टम डिज़ाइन के समय प्रोग्रामिंग लैंग्वेज की तुलना में बहुत उच्च स्तर पर एक सिस्टम का वर्णन करने के लिए किया जाता है, जिसका उपयोग किसी सिस्टम के लिए निष्पादन योग्य कोड का उत्पादन करने के लिए किया जाता है।[1]
अवलोकन
स्पेसिफिकेशन लैंग्वेज को समान्यत: सीधे निष्पादित नहीं किया जाता है। वे क्या का वर्णन करने के लिए हैं, कैसे का नहीं। वास्तव में, यदि किसी आवश्यकता स्पेसिफिकेशन को अनावश्यक कार्यान्वयन विवरण के साथ अव्यवस्थित किया जाता है तो इसे एक त्रुटि माना जाता है।
कई विशिष्ट दृष्टिकोणों की एक सामान्य मौलिक धारणा यह है कि कार्यक्रमों को बीजगणित या मॉडल सिद्धांत या मॉडल-सैद्धांतिक संरचनाओं के रूप में तैयार किया जाता है जिसमें उन सेटों पर फ़ंक्शन (गणित) के साथ डेटा मानों के सेट (गणित) का संग्रह सम्मिलित होता है। अमूर्तता का यह स्तर इस दृष्टिकोण से मेल खाता है कि किसी कार्यक्रम की शुद्धता इनपुट/आउटपुट व्यवहार की शुद्धता को उसके अन्य सभी गुणों पर प्राथमिकता दी जाती है।
विनिर्देशन के लिए प्रॉपर्टी -ओरिएंटेड दृष्टिकोण में (उदाहरण के लिए सामान्य बीजगणितीय स्पेसिफिकेशन लैंग्वेज द्वारा लिया गया), कार्यक्रमों के विनिर्देशों में मुख्य रूप से तार्किक एक्सिम होते हैं, समान्यत: एक तार्किक प्रणाली में जिसमें समानता की प्रमुख भूमिका होती है, जो उन गुणों का वर्णन करती है जिन्हें कार्यों को संतुष्ट करने की आवश्यकता होती है - अधिकांशतः केवल उनके अंतर्संबंध द्वारा यह वियना विकास विधि और Z जैसे फ्रेमवर्क में तथाकथित मॉडल-आधारित स्पेसिफिकेशन मॉडल-ओरिएंटेड स्पेसिफिकेशन के विपरीत है, जिसमें आवश्यक व्यवहार का एक सरल अनुभव सम्मिलित है।
विशिष्टताओं को वास्तव में प्रयुक्त करने से पहले उन्हें परिशोधन की प्रक्रिया (कार्यान्वयन विवरण भरना) के अधीन होना चाहिए। ऐसी शोधन प्रक्रिया का परिणाम एक निष्पादन योग्य एल्गोरिदम है, जिसे या तो प्रोग्रामिंग लैंग्वेज में तैयार किया जाता है, या हैण्ड स्पेसिफिकेशन लैंग्वेज के निष्पादन योग्य सबसेट में तैयार किया जाता है। उदाहरण के लिए, हार्टमैन पाइपलाइन को, जब ठीक से प्रयुक्त किया जाता है, तो डेटा फ्लो स्पेसिफिकेशन माना जा सकता है जो सीधे निष्पादन योग्य है। एक अन्य उदाहरण एक्टर मॉडल है जिसमें कोई विशिष्ट एप्लिकेशन सामग्री नहीं है और निष्पादन योग्य होने के लिए इसे विशेषीकृत किया जाना चाहिए।
विनिर्देशन लैंग्वेज का एक महत्वपूर्ण उपयोग प्रोग्राम की शुद्धता के गणितीय प्रमाण के निर्माण को सक्षम करना है (स्वचालित प्रमेय देखें)।
लैंग्वेज एँ
यह भी देखें
- फॉर्मल स्पेसिफिकेशन
- लैंग्वेज -इंडिपेंडेंट स्पेसिफिकेशन
- स्पेसिफिकेशन और डिस्क्रिप्शन लैंग्वेज
- एकीकृत मॉडलिंग लैंग्वेज
संदर्भ
- ↑ Joseph Goguen "One, None, A Hundred Thousand Specification Languages" Invited Paper, IFIP Congress 1986 pp 995-1004
- ↑ Template:उद्धरण पुस्तक
बाहरी संबंध
- Media related to Specification languages at Wikimedia Commons