لغة المواصفات: الفرق بين النسختين

من ويكيبيديا، الموسوعة الحرة
تم حذف المحتوى تمت إضافة المحتوى
أنشأ الصفحة ب''''لغة المواصفات''' هي لغة شكلية في علم الحاسوب تستخدم أثناء تحليل الأنظمة و<...'
(لا فرق)

نسخة 20:31، 13 يوليو 2020

لغة المواصفات هي لغة شكلية في علم الحاسوب تستخدم أثناء تحليل الأنظمة وتحليل المتطلبات وتصميم الأنظمة لوصف نظام على مستوى أعلى بكثير من لغة البرمجة، والتي تستخدم لإنتاج التعليمات البرمجية القابلة للتنفيذ لنظام ما.

نظرة عامة

لا يتم تنفيذ لغات المواصفات بشكل مباشر بشكل عام. والمقصود منها أن تصف ما، وليس كيف. في الواقع، يعتبر خطأ إذا كانت مواصفات المتطلبات تشوش مع تفاصيل التنفيذ غير الضرورية.

ومن الافتراضات الأساسية الشائعة للعديد من الأساليب المواصفات أن البرامج هي على غرار الهياكل الجبرية أو النظرية النموذجية التي تشمل مجموعة من مجموعات من قيم البيانات جنبًا إلى جنب مع وظائف على تلك المجموعات. يتزامن هذا المستوى من التجريد مع الرأي القائل بأن صحة سلوك الإدخال/الإخراج للبرنامج لها الأسبقية على كافة خصائصه الأخرى.

في نهج الملكية المنحى للمواصفات (التي اتخذت على سبيل المثال من قبل CASL)، ومواصفات البرامج تتكون أساسًا من البديهيات المنطقية، وعادة ما يكون في نظام منطقي فيه المساواة دورا بارزًا، واصفًا الخصائص التي يتعين على وظائف لتلبيتها، في كثير من الأحيان فقط من خلال العلاقة المتبادلة بينهما. وهذا على النقيض مما يسمى بالمواصفات الموجهة نحو النموذج في أطر مثل VDM وZ، والتي تتكون من تحقيق بسيط للسلوك المطلوب.

ويجب أن تخضع المواصفات لعملية صقل (ملء تفاصيل التنفيذ) قبل أن يتسنى تنفيذها فعلياً. نتيجة عملية التحسين هذه هي خوارزمية قابلة للتنفيذ، والتي يتم إما صياغتها بلغة برمجة، أو في مجموعة فرعية قابلة للتنفيذ من لغة المواصفات في متناول اليد. على سبيل المثال، خطوط أنابيب هارتمان، عند تطبيقها بشكل صحيح، يمكن اعتبارها مواصفات تدفق البيانات التي هي قابلة للتنفيذ مباشرة. مثال آخر هو نموذج الممثل الذي لا يحتوي على محتوى تطبيق محدد ويجب أن يكون متخصصاً ليكون قابل للتنفيذ.

استخدام مهم للغات المواصفات هو تمكين إنشاء براهين رياضية من صحة البرنامج (انظر نظرية بروفير).

لغات

انظر أيضًا

مراجع

  1. ^ Fuchs، Norbert E.؛ Schwertel، Uta؛ Schwitter، Rolf (1998). "Attempto Controlled English—not just another logic specification language". International Workshop on Logic Programming Synthesis and Transformation. Lecture Notes in Computer Science. Springer. ج. 1559. ص. 1–20. DOI:10.1007/3-540-48958-4_1. ISBN:978-3-540-65765-1. {{استشهاد بكتاب}}: الوسيط غير المعروف |chapterurl= تم تجاهله يقترح استخدام |مسار الفصل= (مساعدة) وروابط خارجية في |chapterurl= (مساعدة)
  2. ^ Linden، Theodore؛ Lawrence Markosian (1989). "Transformational Synthesis Using Refine". في Richer، Mark (المحرر). AI Tools and Techniques. Ablex. ص. 261–286. ISBN:0-89391-494-0. {{استشهاد بكتاب}}: الوسيط |accessdate بحاجة لـ |مسار= (مساعدةالوسيط غير المعروف |chapterurl= تم تجاهله يقترح استخدام |مسار الفصل= (مساعدة)، وروابط خارجية في |chapterurl= (مساعدة)