پیام سپاهان

آخرين مطالب

یادگیری ماشینی و تغییر آینده توسعه و آزمایش نرم افزارها علمی

یادگیری ماشینی و تغییر آینده توسعه و آزمایش نرم افزارها
  بزرگنمايي:

پیام سپاهان - دیجیاتو / یادگیری ماشینی (ML) و هوش مصنوعی (AI) دو عنصر مهمی هستند که گفته می‌شود ربات‌ها در آینده به کمک آن‌ها به انسان شبیه‌تر و کامپیوترها در تمام زمینه‌ها هوشمندتر خواهند شد. یادگیری ماشینی در حال حاضر در میلیون‌ها اپلیکیشن به کار رفته و زوایای آشکار و پنهان زندگی حرفه‌ای و شخصی ما را تحت تأثیر قرار داده است.
یادگیری ماشینی در فناوری‌های نوظهوری همچون نرم افزار اتومبیل‌های خودران به کار می‌رود. نرم افزار ماشین‌های خودران به لطف یادگیری ماشینی خود را به کمک میلیون‌ها شبیه سازی بهبود داده و اتومبیل را حین حرکت با شرایط پیش بینی نشده وفق می‌دهد.
یادگیری ماشینی اهمیت بیشتری در فرآیندهایی مثل تست نرم افزار (Software Testing) دارد. اما این فناوری چه تأثیری بر دنیای توسعه و فرآیند آزمایش نرم افزار خواهد گذاشت و این تعامل در آینده چگونه خواهد بود؟
خلاصه‌ای از یادگیری ماشینی و هوش مصنوعی
برای شروع بهتر است به تفاوت میان هوش مصنوعی و یادگیری ماشینی اشاره کنیم، چرا که کاربران اغلب این دو فناوری را به دلیل شباهت‌ها با هم اشتباه می‌گیرند. یادگیری ماشینی به سیستمی از الگوریتم‌ها گفته می‌شود که برای کمک به بهبود خودکار کامپیوتر از طریق کسب تجربه طراحی شده‌اند.
به عبارت دیگر به کمک یادگیری ماشینی عملکرد فناوری‌هایی همچون تشخیص چهره، رانندگی خودکار، تبدیل گفتار به نوشتار و غیره با آزمایشات و اصلاحات به طور پیوسته بهتر و بهتر شده و از دید کاربر این طور به نظر می‌رسد که در حال «یادگیری» هستند.
هوش مصنوعی نیز همانطور که از نامش پیداست، به هوش و خرد تعریف شده توسط ماشین گفته می‌شود و اغلب از یادگیری ماشینی به عنوان پایه و اساس آن استفاده می‌شود. می‌توان سیستمی مبتنی بر یادگیری ماشینی و بدون هوش مصنوعی توسعه داد، اما توسعه هوش مصنوعی بدون یادگیری ماشینی بسیار مشکل است.
اهمیت فرآیند تست نرم افزار
تست نرم افزار عنصری حیاتی در فرآیند توسعه نرم افزار بوده و اگر بگوییم مهم ترین عنصر است بیراه نگفته‌ایم. توسعه دهنده به کمک فرآیند تست نرم افزار از کارکرد صحیح محصول نهایی اطمینان حاصل کرده و در روند توسعه نرم افزار و پیش از انتشار نسخه نهایی محصول بارها از آن استفاده می‌کند.
به کمک فرآیند تست نرم افزار می‌توان به شکل فعالانه باگ‌ها و دیگر خطاها را پیش از تبدیل شدن آن‌ها به مشکلات دردسرساز شناسایی نموده و رفع کرد. علاوه بر این به کمک آن می‌توان ظرفیت محصول را با انجام آزمایشات سرعت و عملکرد تحت شرایط مختلف ارزیابی کرد. فرآیند تست نرم افزار در نهایت به تولید محصولی بهتر و مطمئن‌تر منتهی شده و هزینه تعمیر و نگهداری آن را کاهش می‌دهد.
تولید یک محصول نرم افزاری بدون آزمایش کامل آن همانند احداث یک آسمان خراش بدون فنداسیون محکم است و در صورت عدم آزمایش صحیح، هزینه تعمیرات و رفع مشکلات می‌تواند 4 الی 5 برابر بیشتر از هزینه پروژه تمام شود.
یادگیری ماشینی چگونه فرآیند تست نرم افزار را دگرگون می‌کند؟
تسترهای نرم افزار در حال حاضر از یادگیری ماشینی برای خودکار کردن و بهبود فرآیند آزمایش استفاده می‌کنند. این فناوری معمولاً در کنار متد توسعه چابک نرم افزار (Agile Software Development) مورد استفاده قرار می‌گیرد. در متد توسعه چابک نرم افزار به جای توسعه محصول به شکل کامل، نرم افزار به شکل تدریجی و مبتنی بر تکرار ساخته می‌شود. محققان معتقدند در آینده هوش مصنوعی و یادگیری ماشینی به طور گسترده در متد توسعه چابک نرم افزار و چارچوب اسکرام (Scrum) به کار گرفته خواهند شد.
یادگیری ماشینی فرآیند تست نرم افزار را با روش‌های زیر بهبود خواهد داد:
آزمایشات سریع‌تر و کم زحمت‌تر: اغلب روش‌های آزمایش نرم افزار سنتی، به دخالت انسان و اصلاحات دستی وابسته هستند. در این روش‌ها گروهی از مهندسان نرم افزار و تسترهای تضمین کیفیت (QA) برنامه را به شکل دستی اجرا کرده و ارورها را پیدا می‌کنند. اما به کمک یادگیری ماشینی می‌توان فرآیند تست را خودکار کرده و آزمایشات را با سرعت بسیار بیشتر و بدون نیاز به تلف کردن ساعت‌ها وقت از نیروی انسانی انجام داد.
آزمایشات پیوسته: تسترهای تضمین کیفیت تنها در ساعات مشخصی در دسترس هستند و این مشکل برای شرکت‌ها که به طور پیوسته در حال توسعه نرم افزار هستند، دردسرساز خواهد بود. به کمک سیستم تضمین کیفیت مبتنی بر یادگیری ماشینی می‌توان آزمایشات را به صورت پیوسته انجام داده و دائما عملکرد نرم افزار را تحت شرایط مختلف ارزیابی کرد.
آزمایشات بی تناقض: اگر یک آزمایش را برای یک نرم افزار دو بار انجام داده‌اید، آیا از انجام آن به طور کاملاً یکسان در هر دو بار مطمئن هستید؟ پاسخ احتمالاً منفی است، چون درصد خطا در انسان بالاست. الگوریتم‌های یادگیری ماشینی اما یک فرآیند را بارها و به شکل مطمئن تکرار کرده و تناقضات در آزمایش‌ها از بین می‌برند.
دقت بالا در تشخیص: ‌ابزارهای اعتبارسنجی مبتنی بر یادگیری ماشینی توانایی تشخیص خطاها و ارورهایی را دارند که از دید انسان پنهان می‌مانند. به کمک این ابزارها می‌توان از بکارگیری رنگ صحیح در رابط کاربری و مکان مناسب المان‌ها اطمینان حاصل کرده و باگ‌های دیداری را با دقت بالاتر شناسایی و رفع کرد.
آزمایشات چند لایه‌ای: آزمایش مبتنی بر یادگیری ماشینی انجام آزمایشات چند لایه‌ای بدون نیاز به رابط کاربری را امکان پذیر می‌کند. یک سیستم آزمایش نرم افزار مبتنی بر یادگیری ماشینی صحیح می‌تواند در رخدادهای اپلیکیشن (Log) شامل سورس کد و فرآیند ذخیره سازی آنی عملکرد کلی نرم افزار بکار گرفته شود.
بکارگیری یادگیری ماشینی در فرآیند تست نرم افزار در حال حاضر مزایایی همچون بهبود آزمایشات بدون تناقض، کاهش ارورها، صرفه جویی در وقت و کاهش هزینه را در پی دارد. این فناوری با پیشرفته تر شدن فرآیند تست را با شیوه‌هایی جدیدتر متحول خواهد کرد. پیش بینی می‌شود در یک دهه آینده توسعه دهندگان نرم افزار به کمک این فناوری نرم افزارها را با سرعت بسیار بالا توسعه دهند.

لینک کوتاه:
https://www.payamesepahan.ir/Fa/News/160933/

نظرات شما

ارسال دیدگاه

Protected by FormShield
مخاطبان عزیز به اطلاع می رساند: از این پس با های لایت کردن هر واژه ای در متن خبر می توانید از امکان جستجوی آن عبارت یا واژه در ویکی پدیا و نیز آرشیو این پایگاه بهره مند شوید. این امکان برای اولین بار در پایگاه های خبری - تحلیلی گروه رسانه ای آریا برای مخاطبان عزیز ارائه می شود. امیدواریم این تحول نو در جهت دانش افزایی خوانندگان مفید باشد.

ساير مطالب

رفع 48نقطه حادثه‌خیز شناسنامه‌دار از راه‌های استان

معدوم‌سازی 2 تن مواد غذایی فاسد در اردستان

لزوم استفاده از ظرفیت مشاغل خانگی برای توانمندسازی محلات شهر اصفهان

توانمندسازی محلات شهر صرفا ایجاد اشتغال نیست

ارتقای برنامه سازی و تقویت نگرش حرفه‌ای در شبکه استانی

ادامه مسابقات بسکتبال لیگ دسته دو باشگاههای کشور در مهاباد

برنامه رادیویی «محبت بی دریغ» از رادیو سلامت

این شعر زیبا از دختر شیرین زبان را از دست ندهید

اپل بیش‌از 250 میلیون دلار در پردیس سنگاپور سرمایه‌گذاری می‌کند

اندروید 15 احتمالاً برای افزایش امنیت اقدام به قرنطینه اپلیکیشن‌های مشکوک می‌کند

فرش قرمز برای اسکناس درشت؟

از چاله به چاه؟

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

نذر کاشی برای توسعه حرم سید الشهدا (ع) در کاشان

پیروزی پیکان سبزوار مقابل هوانیروز اصفهان

درگذشت مادر شهید قاسمی ابوزیدآبادی

جریمه 60 میلیونی پرسپولیس به دلیل اتفاقات عجیب اصفهان

ایرانی‌ترین غیرایرانی

آنر 200 لایت به زودی برای عرضه در بازار جهانی رونمایی می‌شود

تقابل نظامی اسرائیل و ایران؛ پیامدها و راه‌حل‌ها

متحدان اسرائیل در برزخ

رفتار موذیانه همسایه شمالی زیر ذره‌بین

تربیت علمی و فرهنگی دانشجویان به بهترین شکل انجام پذیرد

دل دوستان شکستی، بر دشمنان نشستی

گوشی پرچمدار 2024 هواوی از اندروید 12 استفاده می‌کند

رسوایی 99 درصدی

آشیانه سری

پیش‌بینی کاهش رشد اقتصادی ایران

تخریب ساخت و ساز‌های غیر مجاز در زمین‌های کشاورزی

شناسایی دو هزار و 613 کودک دارای اختلال اوتیسم در اصفهان

تشییع و خاکسپاری مادر شهید قاسمی در آران و بیدگل

مبارزه با «سِن گندم» در 12 هزار هکتار از اراضی استان

احداث 86 کیلومتر راه روستایی طی سال 1402 در استان اصفهان

ورود بیش از 3800 معلم به مدارس ابتدایی در استان

رفع 48 نقطه حادثه‌خیز شناسنامه‌دار از راه‌های استان

هشدار زرد هواشناسی برای این استان‌ها

خسارت بارش‌های بهاره به 6 هزار هکتار از مزارع استان

گازکشی نشدن برخی از محله‌های روستای بهارستان و دردسرساز شدن آن برای اهالی

پست اینستاگرامی عجیب مادر امیر تتلو ؛ شکر که درهای به ظاهر ناگشودنی بر روی تتلو گشوده شد (عکس)

فوت جوان 30 ساله بر اثر واژگونی نیسان در محور شیراز - اصفهان

هم‌افزایی شهرداران کلان‌شهرها در توسعه فرهنگ رضوی در ایام دهه کرامت

طبیعتِ تماشایی بهارِ میمه

برخی گوشی‌های سری گلکسی S21 سامسونگ با مشکل نمایشگر مواجه شده‌اند

چه شد که ون‌ها برگشتند؟

هیچ مانعی برای برنامه های فرهنگی در حوزه ترویج فرهنگ ایثار و شهادت وجود ندارد

دیدار رئیس بنیاد شهید و امور ایثارگران با خانواده شهید نادر مهدوی

آخرین وضعیت شاخص آلودگی هوای اصفهان

◄ امضا کنید؛ کارزار دو بانده شدن جاده نصرآباد به شهرضا

راهپیمایی مردم اصفهان در حمایت از مردم غزه

حریق در کارگاه مکانیکی در شهر دولت آباد