تجزیه و تحلیل شبکه برای شناسایی کتابخانه های نرم افزار منبع باز که در شرف خاموش شدن هستند


همه به کسی نیاز دارند

همخوانی DC در سطح کتابخانه در اکوسیستم جاوا اسکریپت npm. اعتبار: کنیچی ماتسوموتو

محققان ژاپنی از تکنیک‌های فنی-اجتماعی برای اندازه‌گیری همخوانی بین شبکه مشارکت‌کنندگان کتابخانه‌های برنامه‌نویسی منبع باز و وابستگی‌های آن کتابخانه در اکوسیستم استفاده کرده‌اند. این کار نشان می‌دهد که سطح تطابق بین شبکه مشارکت‌کنندگان و شبکه‌های وابستگی می‌تواند به عنوان شاخصی برای کتابخانه‌هایی که در معرض خطر غیرفعال شدن هستند استفاده شود.

برنامه های کامپیوتری مدرنی که برنامه ها یا وب سایت های مورد علاقه شما را اجرا می کنند، می توانند بسیار بزرگ باشند و اغلب در میلیون ها خط کد اندازه گیری می شوند. این بدیهی است که بسیار پیچیده تر از آن است که هر فردی بتواند آن را مدیریت کند. بنابراین اکثر زبان های برنامه نویسی برای انجام وظایف خاص به ماژول های تخصصی به نام کتابخانه های شخص ثالث متکی هستند. این کتابخانه ها اغلب متن باز هستند و به صورت رایگان در دسترس هرکسی است که می خواهد آنها را دانلود و استفاده کند.

به عنوان مثال، برنامه نویسان در جاوا اسکریپت به بیش از یک میلیون کتابخانه دسترسی دارند، در حالی که بیش از 300000 کتابخانه برای جامعه پایتون وجود دارد. خود کتابخانه‌ها اغلب به یکدیگر متکی هستند، در حالی که کتابخانه‌های معمولی نیاز به استفاده از حدود پنج کتابخانه دیگر دارند. با این حال، اکوسیستم کتابخانه های به هم پیوسته و وابستگی آنها به یکدیگر به خوبی درک نشده است، که نگران کننده است زیرا شکست در یکی می تواند اثرات آبشاری بر کل سیستم داشته باشد.

مشارکت‌های پایدار بسیار مهم است، زیرا وابستگی‌های هر یک از کتابخانه‌ها به کتابخانه‌های دیگر باید دائماً در پاسخ به تغییرات به‌روزرسانی شود. با این حال، نگهبانان این کتابخانه ها اغلب بیش از حد کار می کنند و اغلب به عنوان داوطلبان بدون مزد مشارکت می کنند.

اکنون، تیمی از محققان در موسسه علوم و فناوری نارا (NAIST) این شبکه‌ها را با تعریف معیاری به نام «همخوانی وابستگی-مشارکت» (تناسب DC) مورد مطالعه قرار دادند، که اندازه‌گیری می‌کند که شبکه وابستگی‌های کتابخانه چقدر با شبکه تغییرات مشارکت‌کننده مطابقت دارد. . معیار تطابق زمانی بزرگ‌تر است که یک مشارکت‌کننده هم در کتابخانه و هم در بخش‌های وابسته به آن تغییراتی ایجاد کند.

Supatsara Wattanakriengkrai، نویسنده اول، می گوید: “ما دریافتیم که همخوانی DC رابطه معکوس با احتمال خاموش شدن یک کتابخانه دارد. به طور خاص، اگر مشارکت ها با وابستگی های در حال ارتقا همخوانی داشته باشند، کتابخانه ای کمتر احتمال دارد که خاموش شود.” این تیم تطابق DC را در اکوسیستم npm کتابخانه های جاوا اسکریپت اندازه گیری کرد و بیش از 5.3 میلیون تعهد تغییر را در 107242 کتابخانه مختلف تجزیه و تحلیل کرد.

کنیچی ماتسوموتو، نویسنده ارشد، می‌گوید: «اوج‌ها در معیارهای تولید شده ما با رویدادهای مهم اکوسیستم مرتبط است.

این تحقیق ممکن است به اجرای نرم‌افزار و شناسایی نقاط شکننده در شبکه وابستگی کمک کند و در نهایت ممکن است مشارکت‌های وابستگی را تشویق کند که از نگهداری کتابخانه‌های شخص ثالث وابسته به هم که در توسعه نرم‌افزار استفاده می‌شوند، پشتیبانی می‌کند.

این مطالعه در مجله منتشر شده است معاملات IEEE در مهندسی نرم افزار.

اطلاعات بیشتر:
Supatsara Wattanakriengkrai و همکاران، بازپرداخت: مشارکتهای همسو با تغییرات وابستگی کتابخانه در اکوسیستم نرم افزاری، معاملات IEEE در مهندسی نرم افزار (2022). DOI: 10.1109/TSE.2022.3225197

ارائه شده توسط موسسه علم و فناوری نارا

نقل قول: تجزیه و تحلیل شبکه برای شناسایی کتابخانه‌های نرم‌افزار متن‌باز که در شرف خفته شدن هستند (2022، 21 دسامبر) بازیابی شده در 21 دسامبر 2022 از

این برگه یا سند یا نوشته تحت پوشش قانون کپی رایت است. به غیر از هرگونه معامله منصفانه به منظور مطالعه یا تحقیق خصوصی، هیچ بخشی بدون اجازه کتبی قابل تکثیر نیست. محتوای مذکور فقط به هدف اطلاع رسانی ایجاد شده است.





منبع