يوفر هذا المستودع مواد تكميلية لورقة ICSE 2023 "تحليل تأثير أعباء العمل على نمذجة أداء أنظمة البرمجيات القابلة للتكوين"، بما في ذلك البيانات التجريبية (عينات التكوين، رمز النظام الموضوعي) والقياسات (الأداء، وتغطية الكود الخاص بالخيارات وعبء العمل ) بالإضافة إلى لوحة معلومات تفاعلية. وهذا الأخير يكمل عرض نتائج الدراسة في الورقة ويسمح باستنساخ تحليلاتنا ونتائجنا.
تتضمن المادة معلومات حول الأنظمة البرمجية التسعة التالية:
اسم | اِختِصاص | لغة | مستودع | الكود المستخدم/الإصدار | رخصة |
---|---|---|---|---|---|
jump3r | التشفير الصوتي | جافا | Link | v1.0.4 | إل جي بي إل 2.1 |
kanzi | ضاغط الملفات | جافا | Link | v1.9 | ترخيص أباتشي 2.0 |
dconvert | تحجيم الصورة | جافا | Link | v1.0.0.-alpha7 | ترخيص أباتشي 2.0 |
h2 | قاعدة البيانات | جافا | Link | v1.4.200 | ترخيص موزيلا العام الإصدار 2.0 |
batik | SVG النقطية | جافا | Link | v.1.14 | ترخيص أباتشي 2.0 |
xz | ضاغط الملفات | ج/ج++ | Link | v5.2.0 | جي بي إل 2.0 وجي بي إل 3.0 |
lrzip | ضاغط الملفات | ج/ج++ | Link | v0.651 | جي بي إل 2.0 |
x264 | تشفير الفيديو | ج/ج++ | Link | baee400.. | جي بي إل 2.0 |
z3 | سمت حلالا | ج/ج++ | Link | v4.8.14 | رخصة معهد ماساتشوستس للتكنولوجيا |
يتضمن هذا الأرشيف التكوينات التي تم أخذ عينات منها والمستخدمة لإجراء التجارب كملفات CSV:
data/coverage_raw.tar.gz
تم جمع الملفات المستخدمة كأحمال عمل/مدخلات في التجارب من مصادر مختلفة. نحن نقدم قائمة بمصدر الملفات على:
data/workload_sources.csv
وفقًا للترخيص (LICENSE.txt). لا يتضمن هذا الأرشيف المجموعة الكاملة من الملفات المستخدمة لأنه ليست كل الملفات المستخدمة تسمح بإعادة التوزيع بموجب ترخيص CC BY-SA 4.0.
يتضمن هذا الأرشيف قياسات الأداء (الإنتاجية ووقت التنفيذ) لكل تكوين وعبء عمل كملفات CSV. يمكن العثور على قياسات الأداء لكل <software system>
في المجلد الفرعي التالي:
dashboard/resources/<software_system>/measurements.csv
يتضمن هذا الأرشيف (كملف منفصل!) قياسات التغطية الأولية لكل تكوين وعبء عمل كملفات CSV. واستنادًا إلى هذه الملفات، يتم استنتاج الكود الخاص بالخيار وعبء العمل. يمكن العثور على قياسات تغطية الكود الأولي كأرشيف gz-ipped tar:
./coverage_raw.tar.gz
يتضمن هذا الأرشيف أقسام التعليمات البرمجية المحسوبة التي هي أ) خاصة بالخيار وب) عبء العمل والخيار المحدد. يمكن العثور على أقسام التعليمات البرمجية لكل <software system>
في المجلد الفرعي التالي:
dashboard/resources/<software_system>/code/
نحن نقدم لوحة معلومات تفاعلية باستخدام إطار العمل streamlit
الذي يسمح باستكشاف تحليلنا بالتفصيل لكل خيار تكوين وعبء عمل. تقدم الورقة الأصلية مجموعة فرعية تمثيلية من النتائج، ويمكن إعادة إنتاج جميع التحليلات والتصورات باستخدام لوحة المعلومات هذه. نحن نقدم نسخة Docker-ized لتشغيل لوحة المعلومات محليًا.
لإنشاء حاوية Docker وتشغيلها، قم بتنفيذ الأوامر التالية:
#!/bin/sh
cd ./dashboard
docker build -t streamlitapp:latest .
docker run -p 8501:8501 streamlitapp:latest
يمكنك الآن استكشاف لوحة المعلومات التي تعمل محليًا على https://127.0.0.1:8501 أو https://localhost:8501.
لاستخدام التطبيق المُرسى، يجب إعداد بيئة الحاوية Docker وتشغيلها. لتثبيت Docker، توفر هذه البرامج التعليمية التوجيه: