پیشگفتار
اکثریت قریب به اتفاق سازمانها در تمام صنایعِ مورد بررسیِ DORA، در حال تغییر اولویتهای خود برای ادغام عمیقتر هوش مصنوعی در برنامهها و خدماتشان هستند. بخش بزرگی از متخصصان توسعه نیز برای انجام وظایف اصلی خود (core role responsibilities) به هوش مصنوعی متکی هستند و گزارش دادهاند که این کار منجر به افزایش بهرهوری شده است. دیدگاه توسعهدهندگانِ حرفهای این است که استفاده از هوش مصنوعی برای باقی ماندن در رقابت بازار امروز ضروری است و این موضوع به نظر میرسد عامل مهمی در پذیرش هوش مصنوعی توسط سازمانها و متخصصان باشد.
نادیده گرفتن تأثیرِ قابلتوجهی که هوش مصنوعی در سال جاری (۲۰۲۴) بر فضای کارِ توسعه داشته دشوار است، بهویژه با توجه به انتشار گسترده مقالات خبری محبوب که اثرات آن را از خوب تا بد و حتی ناخوشایند شرح دادهاند. بنابراین، در حالی که هوش مصنوعی در گزارش “Accelerate State of DevOps” سال ۲۰۲۳ تنها بهعنوان یکی از قابلیتهای فنیِ تأثیرگذار بر عملکرد، مورد بحث قرار گرفته بود، امسال این موضوع بهطور جامعتری بررسی میشود.
یافتهها
یافتهها درباره پذیرش هوش مصنوعی نشان میدهد که آگاهی رو به رشدی در این خصوص وجود دارد که هوش مصنوعی دیگر یک “چشمانداز” نیست، بلکه بهطور کامل وارد میدان شده و به احتمال زیاد برای همیشه نیز باقی خواهد ماند.
پذیرشِ سازمانیِ هوشمصنوعی
اکثریت بزرگی از پاسخدهندگانِ دورا (۸۱%) گزارش دادهاند که سازمانهای آنها اولویتهای خود را تغییر دادهاند تا استفاده از هوش مصنوعی را در سرویسها و برنامههای خود افزایش دهند. ۴۹.۲% از پاسخدهندگان شدت این تغییر را بهعنوان “متوسط” یا “قابلتوجه” توصیف کردهاند. جالب توجه است که تنها ۳% از پاسخدهندگان گزارش دادهاند که سازمانهایشان تمرکز خود را بر روی هوش مصنوعی کاهش میدهند — که در محدوده خطای نظرسنجی DORA قرار دارد. این اطلاعات در تصویر زیر مصور شده است.
پذیرشِ شخصیِ هوشمصنوعی
در سطح فردی، ۷۵.۹٪ از پاسخدهندگان، دستکم در بخشی از وظایف حرفهایِ روزانهی خود به هوش مصنوعی متکی هستند. اکثر پاسخدهندگان از هوش مصنوعی برای این وظایف استفاده میکنند:
-
نوشتن کُد | Writing code
-
خلاصهسازی اطلاعات | Summarizing information
-
توضیح کدهای ناآشنا | Explaining unfamiliar code
-
بهینهسازی کد | Optimizing code
-
مستندسازی کد | Documenting code
-
تستنویسی | Writing tests
-
دیباگ کردن کد | Debugging code
-
تحلیل دادهها | Data analysis
از میان تمام وظایف ذکرشده در پاسخهای نظرسنجی، رایجترین موارد استفاده از هوش مصنوعی در کارهای توسعه نرمافزار، نوشتن کد (۷۴.۹%) و خلاصهسازی اطلاعات (۷۱.۲%) بودند.
چتباتها رایجترین رابطهایی (interfaces) بودند که پاسخدهندگان از طریق آنها در کار روزمره خود با هوش مصنوعی تعامل داشتند (۷۸.۲٪). پس از آن، رابطهای وب خارجی (external web interfaces) (۷۳.۹٪) و ابزارهای هوش مصنوعی تعبیهشده در IDEها (۷۲.۹٪) قرار داشتند. پاسخدهندگان کمتر احتمال داشت از هوش مصنوعی از طریق رابطهای وب داخلی (internal web interfaces) (۵۸.۱٪) و به عنوان بخشی از پایپلاینهای CI/CD خودکار (۵۰.۲٪) استفاده کنند.
دانشمندان داده و متخصصان یادگیریماشین بیشتر از سایر نقشهای شغلی به هوش مصنوعی متکی هستند. در مقابل، مهندسان سختافزار کمتر از سایر نقشهای شغلی به هوش مصنوعی وابسته بودند
محرکهایِ پذیرشِ هوشمصنوعی
شرکتکنندگان در مصاحبه (تحقیقِ دورا) اغلب تصمیم به پذیرش هوش مصنوعی را به فشارهای رقابتی و نیاز به هماهنگی با استانداردهای صنعت، هم برای سازمانها و هم برای توسعهدهندگان (شخصی)، مرتبط میکردند. این استانداردها به طور فزایندهای شامل تسلط بر هوش مصنوعی میشوند. برای سازمانهای برخی از شرکتکنندگان، استفاده از هوش مصنوعی بهعنوان یک «شانس بزرگِ بازاریابی» دیده میشد که میتوانست شرکت آنها را از رقبا متمایز کند.
آگاهی از این که رقبا شروع به استفاده از هوش مصنوعی در فرآیندهای خود کردهاند حتی باعث شد یک شرکت فرآیندهای معمولِ “بروکراسیِ عظیم” مرتبط با پذیرش فناوریهای جدید را کنار بگذارد، زیرا احساس فوریت برای پذیرش هوش مصنوعی داشتند و میپرسیدند: “اگر رقیب ما این اقدامات را قبل از ما انجام دهد چه میشود؟“
در سطح فردی، بسیاری از شرکتکنندگان پذیرش هوش مصنوعی را به این احساس مرتبط میکردند که تسلط بر استفاده از هوش مصنوعی در توسعه نرمافزار بهنوعی “سطح جدیدی از مهندسی” است.
چندین شرکتکننده پیشنهاد کردند که سایر توسعهدهندگان باید بهسرعت هوش مصنوعی را در جریان کاری توسعه خود بگنجانند، زیرا “اتفاقات زیادی در این حوزه در حال رخ دادن است که بهسختی میتوان با آن همراه شد… فکر میکنم اگر از آن استفاده نکنید، خیلی زود عقب خواهید ماند.“
برداشتها از هوشمصنوعی
بهبود عملکرد بواسطهی هوشمصنوعی
برای تعداد زیادی از سازمانها و توسعهدهندگانی که هوش مصنوعی را پذیرفتهاند، مزایای استفاده از آن در کارهای توسعهای بسیار چشمگیر به نظر میرسد. ۷۵٪ از پاسخدهندگان افزایش مثبت بهرهوری را در سه ماه منتهی به نظرسنجی که در اوایل سال ۲۰۲۴ انجام شد، گزارش کردند.
نکته قابل توجه این است که بیش از یکسوم پاسخدهندگان افزایش بهرهوری خود را در سطح متوسط (۲۵٪) یا شدید (۱۰٪) توصیف کردند. کمتر از ۱۰٪ از پاسخدهندگان تأثیرات منفی، حتی در حد خفیف، بر بهرهوری خود به دلیل استفاده از هوش مصنوعی گزارش دادند. این دادهها در شکل زیر بهصورت تصویری نمایش داده شده است.
پاسخدهندگانی که بیشترین بهبود بهرهوری را از هوش مصنوعی گزارش دادند شامل متخصصان امنیت، مدیران سیستم، و توسعهدهندگان فولاستک بودند. اگرچه توسعهدهندگان موبایل، مهندسان SRE، و مدیران پروژه نیز بهبود بهرهوری مثبت را گزارش کردند، اما میزان این بهبود برای آنها کمتر از سایر نقشهای ذکرشده بود.
تنها ۵٪ از پاسخدهندگان گزارش کردند که هوش مصنوعی به هر “اندازهای” توانایی آنها برای نوشتن کد را مختل کرده است. در مقابل، ۶۷٪ از پاسخدهندگان دستکم بهبودهایی در توانایی خود برای نوشتن کد به لطف ابزارهای کدنویسی مبتنی بر هوش مصنوعی گزارش دادند، و حدود ۱۰٪ از آنها افزایش بهرهوری “چشمگیر” در توانایی کدنویسی خود را مشاهده کردند.
اعتماد به کد تولید شده بواسطهی هوشمصنوعی
برداشت شرکتکنندگان از قابلاعتماد بودن کد تولیدشده توسط هوش مصنوعی در کارهای توسعه پیچیده بود. اگرچه اکثریت قابلتوجهی از پاسخدهندگان (۸۷.۹٪) سطحی از اعتماد به کیفیت کد تولیدشده توسط هوش مصنوعی را گزارش کردند، اما میزان اعتماد کلی آنها به کیفیت این کدها عموماً پایین بود. به طوری که ۳۹.۲٪ از پاسخدهندگان اعتماد کمی (۲۷.۳٪) یا هیچ اعتمادی (۱۱.۹٪) به آن نداشتند. این دادهها در شکل زیر به صورت تصویری نمایش داده شده است.
شواهد نشان میدهد توسعهدهندگان بهسرعت هوش مصنوعی را میپذیرند، به آن متکی هستند و آن را بهعنوان یک عامل مثبت در عملکرد میبینند، ولی کمبود کلی اعتماد به هوش مصنوعی شگفتانگیز است.
شایان ذکر است که در مصاحبههای DORA، بسیاری از شرکتکنندگان بیان کردند که مایل بودند یا انتظار داشتند خروجیهای کد تولیدشده توسط هوش مصنوعی را ارزیابی و اصلاح کنند تا برای کار حرفهای خود مناسب باشد.
یکی از شرکتکنندگان حتی نیاز به ارزیابی و تغییر کدهای تولیدشده توسط هوش مصنوعی را به “روزهای ابتدایی StackOverflow” تشبیه کرد، وقتی که “فکر میکردید افراد در StackOverflow واقعاً باتجربه هستند و دقیقاً میدانند چه باید بکنند. و بعد، شما فقط کد را کپی و پیست میکردید و همه چیز منفجر میشد.”
شرکتکنندگان نگران این نیستند که کسی فقط کدی را از Copilot یا ChatGPT کپی و پیست کنند، زیرا لایههای زیادی برای بررسی آن در فرآیندهای تضمین کیفیت کد موجود، وجود دارد. فرض میکنیم که توسعهدهندگان لزوماً انتظار اعتماد مطلق به دقت کد تولیدشده توسط هوش مصنوعی را ندارند و به نظر نمیرسد که چنین اعتمادی برای مفید بودن این کدها ضروری باشد. در عوض، به نظر میرسد کد تولیدشده توسط هوش مصنوعی که تا حد زیادی درست است و میتوان آن را با تغییرات کوچکی بهبود داد، قابلقبول و بهاندازه کافی ارزشمند است تا پذیرش و استفاده گسترده را ترغیب کند و با فرآیندهای تضمین کیفیت موجود سازگار باشد.
انتظارات برای آینده هوش مصنوعی
بهطور کلی، یافتههای DORA نشان میدهد که هوش مصنوعی هماکنون نیز تأثیر بزرگی بر کار حرفهای توسعهدهندگان داشته است و انتظار میرود این روند که همچنان رشد کند. اگرچه پیشبینی دقیقِ اینکه هوش مصنوعی چگونه در آینده بر توسعه و جهان ما تأثیر خواهد گذاشت غیرممکن است، اما از پاسخدهندگان خواسته شد تا حدس و گمانهایی درباره تأثیرات هوش مصنوعی در یک، پنج و ده سال آینده به اشتراک بگذارند.
پاسخدهندگان تأثیرات نسبتاً مثبتی از هوش مصنوعی بر کار توسعهای خود در بازتاب تجربیات اخیرشان گزارش کردند، اما پیشبینیهای آنها برای تأثیرات آینده هوش مصنوعی چندان امیدوارکننده نبود.
با خوشبینی، و مطابق با یافتهها که نشان میدهند هوش مصنوعی تأثیر مثبتی بر عملکردِ حرفهای توسعهدهندگان داشته است، پاسخدهندگان گزارش دادند که انتظار دارند کیفیت محصولاتشان به لطف هوش مصنوعی در یک، پنج و ده سال آینده همچنان بهبود یابند.
با این حال، پاسخدهندگان همچنین گزارش کردند که انتظار دارند هوش مصنوعی بطورکلی، تأثیرات منفی بر شغل آنها، محیطزیست و جامعه داشته باشد، و این تأثیرات منفی در حدود پنج سال آینده به طور کامل آشکار خواهد شد. این دادهها در شکل زیر بهصورت تصویری نمایش داده شده است.
شرکتکنندگان در مصاحبهها نیز همانند پاسخدهندگان نظرسنجی، احساسات متناقضی درباره تأثیرات آیندهی هوش مصنوعی داشتند.
برخی نگرانیهای قدیمی را تکرار کرده و پرسیدند: “آیا قرار است جایگزین انسانها شود؟ چه کسی میداند؟ شاید.” در حالی که همتایانشان این ترسها را با یادآوری گذشته رد کردند، زمانی که “مردم میگفتند ‘اوه، Y2K! (مشکل سال ۲۰۰۰) همهچیز نابود خواهد شد!’ چون آن زمان هم چیزی جدید بود. و بعد… هیچ اتفاقی نیفتاد. “
هیچچیزی جایگزین نشد. در واقع، شغلهای بیشتری ایجاد شد. من باور دارم که همین اتفاق برای هوش مصنوعی نیز خواهد افتاد.
تأثیرات آیندهی هوش مصنوعی بر دنیای ما همچنان نامشخص است. اما نظرسنجی امسال بهوضوح نشان میدهد که هوش مصنوعی یک تغییر پارادایم غیرقابل انکار در حوزه توسعه نرمافزار ایجاد کرده است. تاکنون، بطور کلی، این تغییرات توسط حرفهایهای توسعه نرمافزار بهخوبی پذیرفته شدهاند.
تاثیراتِ ثانویهی هوشمصنوعی
تخمینها نشان میدهد که شرکتهای پیشرو و بزرگ فناوری، در پنج سال آینده حدود ۱ تریلیون دلار برای توسعه هوش مصنوعی سرمایهگذاری خواهند کرد. دقت بفرمایید! ۱ ترلیون دلار. این آمار با دادههایی که در ابتدای مقاله (پذیرش و برداشتها) ارائه شده بود، همخوانی دارد؛ جایی که ۸۱٪ از پاسخدهندگان اعلام کردند شرکتشان منابع خود را به توسعه هوش مصنوعی اختصاص داده است.
تأثیراتِ زیستمحیطیِ هوش مصنوعی نیز به این هزینهها اضافه میشود. برخی تخمینها نشان میدهد که تا سال ۲۰۳۰، هوش مصنوعی باعث افزایش ۱۶۰٪ تقاضای برق مراکز داده (data centers) خواهد شد. همچنین، آموزش (train) یک مدل هوش مصنوعی میتواند به اندازه “مصرف سالانه برق بیش از ۱,۰۰۰ خانه در ایالات متحده” انرژی مصرف کند.
تعجبی ندارد که بیش از ۳۰٪ از پاسخدهندگان معتقدند هوش مصنوعی برای محیطزیست مضر خواهد بود.
علاوه بر هزینههای توسعه و زیستمحیطی، هزینههای پذیرش (adoption) هوش مصنوعی نیز میتواند مطرح شود. این هزینهها ممکن است به شکلهای مختلفی ظاهر شوند، از کاهش بهرهوری گرفته تا نیاز به استخدام متخصصان. همچنین، این هزینهها میتوانند در سطح جامعه نیز نمایان شوند. بیش از یکسوم پاسخدهندگان باور دارند که هوش مصنوعی در دههی آینده به جامعه آسیب خواهد رساند.
با توجه به این هزینهها، کنجکاوی عمیق در مورد بازدهیهای آن طبیعی به نظر میرسد. این کنجکاوی به تولید حجم عظیمی از رسانهها، مقالات و تحقیقات منجر شده است که احساسات و دادههای آنها، حداقل تا حدی، مختلط هستند.
برخی معتقدند که هوش مصنوعی به طور چشمگیری تواناییهای بشر را افزایش داده است، در حالی که دیگران آن را چیزی بیش از یک ابزار بیضرر برای کمک به تکالیف نمیدانند، و عدهای نیز از این واهمه دارند که هوش مصنوعی موجب نابودی بشریت شود.
چالش درک این اثرات ثانویه دور از انتظار نیست. هرچه اثر از علت فاصله بیشتری داشته باشد، ارتباط آن کمتر مشهود و شفاف خواهد بود.
هوش مصنوعی در واقع یک سنگ است که به دریای طوفانی از فرآیندها و دینامیکهای دیگر پرتاب شده است. درک وسعت امواج ایجادشده توسط هوش مصنوعی (یا هر تکنولوژی یا عملی) چالشبرانگیز است. این ممکن است بخشی از دلیلی باشد که چرا صنعت در پذیرش یک مجموعه اصولی از چارچوبهای اندازهگیری و تجزیهوتحلیل برای درک تأثیرات هوش مصنوعی با مشکل روبهرو بوده است.
رویکرد دورا به طور خاص برای مقابله با چنین چالشهایی طراحی شده است. DORA به منظور درک سودمندی یا ضرر ناشی از یک “عمل” طراحی شده است. طی ۱۰ سال گذشته، دورا اثرات ثانویهیِ روشهای (practices) مختلف را بررسی کرده است، از جمله روشهای امنیتی، رهبری، فرهنگهای مولد، شیوههای مستندسازی، ادغام مستمر، تحویل مستمر و تمرکز بر کاربر.
من معتقدم که رویکرد DORA میتواند به ما کمک کند تا درباره تأثیر هوش مصنوعی بیاموزیم، بهویژه هنگامی که اثرات هوش مصنوعی را در نتایج مختلف بررسی میکنیم.
اندازهگیریِ پذیرشِ هوشمصنوعی
اولین چالش در سنجش تأثیر پذیرش هوش مصنوعی، اندازهگیری میزان پذیرش آن است. ما دریافتیم که اندازهگیری دفعات استفاده از هوش مصنوعی به احتمال زیاد به اندازهگیری میزان اتکا به هوش مصنوعی برای درک حیاتی بودن آن در جریانهای کاری توسعه، معنادار نیست.
ممکن است شما فقط چند بار در ماه، یا هر چند ماه یکبار کارهایی مانند بررسی کد یا نوشتن مستندات را انجام دهید، اما این وظایف را برای کار خود بهشدت مهم بدانید. برعکس، صرفاً به این دلیل که بهطور مکرر از هوش مصنوعی استفاده میکنید، به این معنا نیست که از آن برای انجام کارهایی استفاده میکنید که آنها را مهم یا حیاتی در جای خود میدانید.
با توجه به این موضوع، از پاسخدهندگان در مورد اتکای آنها به هوش مصنوعی، “به طور کلی” و برای “وظایف خاص” سؤال شده است. ابتدای مقاله نتایج نظرسنجی و تفسیر آنها را به تفصیل بررسی کرده است.
با استفاده از تحلیل عاملی (factor analysis)، دورا دریافت که سؤال مربوط به «اتکای کلی (general reliance)» به هوش مصنوعی همپوشانی بالایی با گزارشهای مربوط به اتکا به هوش مصنوعی در وظایف زیر دارد:
-
نوشتن کد | Code Writing
-
خلاصهسازی اطلاعات | Summarizing information
-
توضیح کد | Code explanation
-
بهینهسازی کد | Code optimization
-
مستندسازی | Documentation
-
تستنویسی | Test writing
همبستگی و اشتراک قوی بین این هفت مورد، یک عامل زیربنایی را نشان میدهد که آن را پذیرش هوش مصنوعی مینامیم.
تأثیر هوش مصنوعی بر زندگی افراد، روایت مزایای چشمگیر همراه با برخی ملاحظات و چالشهای احتمالی است.
مانند هر سال، دورا مجموعهای از مفاهیم مرتبط با موفقیت و رفاه فردی را مورد اندازهگیری قرار داده است:
رضایت شغلی | Job satisfaction
یک شاخص ساده که بهمنظور سنجش احساسِ کلی فرد نسبت به شغلش طراحی شده است.
فرسودگی شغلی | Burnout
عاملی که ابعاد چندگانه فرسودگی شغلی را شامل میشود، از جمله ابعاد فیزیکی، احساسی، و روانی، و همچنین تأثیر آن بر زندگی شخصی.
حالت جریان | Flow
یک شاخص ساده برای اندازهگیری میزان تمرکزی که یک فرد معمولاً هنگام انجام وظایف توسعهای تجربه میکند.
بهرهوری | Productivity
امتیازی که میزان احساس فرد از اثربخشی و کارآمدی در کار را اندازهگیری میکند، شامل خلق ارزش و انجام وظایف.
زمان صرف شده برای کارهای گِل | Time doing toilsome work
یک شاخص برای اندازهگیریِ درصد زمانی که فرد صرف وظایف تکراری و دستی میکند که ارزش بلندمدت کمی دارند.
زمان صرف شده برای کارهای ارزشمند | Time doing valuable work
یک شاخص برای اندازهگیری درصد زمانی که فرد صرف انجام وظایفی میکند که آنها را باارزش میداند.
دورا بررسی میکند که آیا پاسخهای شرکتکنندگان به این سؤالات در اثر پذیرش هوش مصنوعی تغییر میکند یا خیر. نتایج نشان میدهد که این تغییرات اغلب اتفاق میافتند. تصویر زیر برآوردهای دورا از تأثیر پذیرش هوش مصنوعی بر موفقیت و رفاه فردی را نشان میدهد.
مزیای چشمگیر
داستان مزایای پذیرشِ هوش مصنوعی برای افراد عمدتاً مثبت است، اما مانند هر داستان جذاب دیگری، پیچیدگیهایی نیز دارد. چیزی که بهوضوح مشخص است، تأثیر چشمگیر و مثبتی است که هوش مصنوعی بر حالت جریان (Flow)، بهرهوری و رضایت شغلی دارد (عکس بالا).
بهعنوان مثال، بهرهوری احتمالاً با افزایش ۲۵ درصدی در پذیرش هوش مصنوعی، حدود ۲.۱٪ افزایش مییابد. شاید این عدد در نگاه اول کوچک به نظر برسد، اما این تأثیر در سطح فردی است. حال تصور کنید این الگو در میان دهها توسعهدهنده یا حتی دهها هزار توسعهدهنده گسترش یابد. تاثیر آن میتواند شگرف و قابلتوجه باشد.
این الگو همان چیزی است که انتظار میرفت. این الگو تا حدی به لطف توانایی هوش مصنوعی در ترکیب منابع اطلاعاتی مختلف و ارائه پاسخی بسیار شخصیسازیشده در یک پیام واحد به وجود آمده است. درصورتیکه انجام این کار به صورت دستی بسیار زمانبر است.
با توجه به ارتباط قوی بین بهرهوری و حالت تمرکز عمیق (flow) با رضایت شغلی، جای تعجب نیست که میبینیم استفاده از هوش مصنوعی به افزایش رضایت شغلی منجر میشود.
دادوستدهای (tradeoffs) بلقوه
اینجا داستان کمی پیچیده میشود. یکی از ادعاهای اصلی استفاده از هوش مصنوعی این است که به افراد کمک میکند زمان بیشتری را صرف انجام کارهای ارزشمند (valuable work) کنند. یعنی با خودکارسازی وظایف دستی، تکراری و گِل (toilsome)، انتظار میرود افراد وقت خود را برای “چیزهای بهتر” صرف کنند. اما دادههای تحلیلی DORA نشان میدهد که افزایش استفاده از هوش مصنوعی ممکن است تأثیر معکوس داشته باشد – منجر به کاهش زمانی شود که صرف انجام کارهای ارزشمند میشود – در حالی که زمان صرف شده برای کارهای گِل تغییری نمیکند.
نشانههای بهزیستی (well-being) افراد، مانند حالت جریان (Flow)، رضایت شغلی و بهرهوری، معمولاً با زمان صرف شده برای انجام کارهای ارزشمند مرتبط بودهاند. بنابراین، مشاهده افزایش در این شاخصها بهصورت مستقل از کاهش در زمان صرف شده برای کارهای ارزشمند، تعجبآور است.
یک توضیح خوب برای این الگوها با تناقض ظاهری مواجه میشود. یک توضیح خوب برای یک فیلم نمیتواند صحنهای را که با توضیح در تضاد است نادیده بگیرد. یک توضیح خوب برای یک کتاب نمیتواند فصلی را که بهخوبی در توضیح نمیگنجد نادیده بگیرد. به همین ترتیب، یک توضیح خوب برای این الگوها نمیتواند تنها روی بخشی از الگوها تمرکز کند که به ما امکان میدهد یک داستان ساده تعریف کنیم.
فرضیههای بیشماری وجود دارند که میتوانند با دادهها همخوانی داشته باشند، اما ما (DORA) فرضیهای مطرح کردیم که به نظر میرسد با حالت جریان (flow)، بهرهوری و رضایت شغلی که از هوش مصنوعی بهرهمند میشوند، همزمان با کاهش زمان صرف شده برای کارهای ارزشمند و بدون تغییر در کارهای گِل (toilsome)، همخوانی دارد.
ما این فرضیه را «فرضیه خلا (vacuum)» نامیدهایم. با افزایش بهرهوری و حالت جریان، هوش مصنوعی به افراد کمک میکند کارهایی را که ارزشمند میدانند سریعتر به پایان برسانند.
این همان جایی است که خلا ایجاد میشود؛ زمان اضافی. هوش مصنوعی ارزش کارهای افراد را از بین نمیبرد، بلکه تحقق آن را تسریع میکند.
صبرکنید! کار ارزشمند (valuable work) چی هست؟
برای درک بهتر این یافتههای غیرمنتظره، میخواهیم به این موضوع که کدام نوع، از انواع کار، توسط پاسخدهندگان به عنوان ارزشمند یا گِل (toilsome) ارزیابی میشوند، عمیقتر بپردازیم.
خِرد پیشینِ دورا (گزارشهای قبلی) و دادههای کیفی حاصل از مصاحبهها نشان میدهند که پاسخدهندگان، وظایف مرتبط با توسعه، مانند کدنویسی را بهعنوان کار ارزشمند تلقی میکنند، در حالی که کارهای کمتر ارزشمند، حتی خستهکننده، معمولاً شامل وظایفی مرتبط با هماهنگیهای سازمانی، مانند شرکت در جلسات، هستند. در این چارچوب دستهبندی، به نظر میرسد که هوش مصنوعی برای کمک به کارهای «ارزشمند» بیش از کارهای «گِل» (بر اساس تعریف پاسخدهندگان) توانمند است.
ما به دادههای کیفی حاصل از مصاحبهها مراجعه کردیم و متوجه شدیم که هنگامی که پاسخدهندگان به سؤال تسهیلگر درباره اینکه آیا کارشان را «معنادار» میدانند یا خیر، پاسخ میدادند، اغلب ارزش کار خود را در رابطه با تأثیر آن بر دیگران ارزیابی میکردند.
این موضوع که تمرکز بر کاربر تاثیر بسزایی بر رضایت شغلی دارد، (که در شواهد ۲ گزارش قبلی DORA هم مطرح شده است)، اینجا نیز پُررنگ است. به عنوان مثال، یکی از پاسخدهندگان، هنگام توصیف تغییر پوزیشن اخیرش، گفت که تصمیم گرفته این تغییر را انجام دهد زیرا «این به من کمک میکند که بر افراد بیشتری تأثیر بگذارم. این به من کمک میکند بر چیزهای بیشتری تأثیر بگذارم.»
به همین ترتیب، پاسخدهنده دیگری اشاره کرد: «اگر چیزی را از صفر بسازید و ببینید که به دست یک مصرفکننده یا مشتری رسیده، میتوانید آن دستاورد را احساس کنید و به خودتان بگویید: “بله! من این را تحویل دادم و مردم از آن استفاده میکنند!”»
درک و فهمیدنِ اینکه «معناداریِ» کارِ توسعه از تأثیر راهحلِ ایجاد شده، ناشی میشود، نه مستقیماً از فرآیند کدنویسی، کمک میکند توضیح داده شود چرا مشاهده شد که پاسخدهندگان زمان کمتری را صرف کارهای ارزشمند میکنند اما همچنان احساس رضایت بیشتری از شغل خود دارند.
اینکه علیرغم پذیرش هوشمصنوعی همچنان خستگی و فرسودگی شغلی بدون تغییر باقی مانده، نشان میدهد که هوش مصنوعی هنوز نتوانسته راهحلی برای اجتناب از کارهای خستهکنندهای مانند جلسات، بوروکراسی و بسیاری از وظایف گِل پیدا کند. ولی خبر خوب این است که هوش مصنوعی اوضاع را بدتر نکرده و بر رفاه پاسخدهندگان تأثیر منفی نداشته است.
تأثیرات امیدوارکننده هوش مصنوعی بر فرآیندهای توسعه
بخش قبلی به نتایجی متمرکز بر فرد پرداخت. در بخش بعدی، تمرکز به بررسی فرآیندها، کدبیسها و هماهنگی تیمی تغییر میکند. در اینجا فهرستی از نتایجی که بررسی شده، آمده است:
پیچیدگی کد | Code complexity
میزانِ پیچیدگی و دشواری کد که مانعِ بهرهوری میشود.
بدهی فنی | Technical debt
میزان بدهیِ فنیِ موجود در اپلیکیشن یا سرویس اصلی که در شش ماه گذشته بهرهوری را کاهش داده است.
سرعتِ کُد ریویو | Code review speed
میانگین زمانی که برای تکمیل یک کُد ریویو در اپلیکیشن یا سرویس اصلی لازم است.
سرعت تأیید | Approval speed
مدت زمان معمول از پیشنهادِ تغییر در کد تا دریافت تأییدیه، برای استفاده در عملیاتی (Production)، در اپلیکیشن یا سرویس اصلی.
هماهنگیِ تیم چند تخصصه | Cross-functional team (XFN) coordination
میزان توافق با این جمله: “در سه ماه گذشته، توانستهام بهطور مؤثری با اعضای تیم چندتخصصه همکاری کنم.”
کیفیت کُد | Code quality
میزان رضایت یا نارضایتی از کیفیت کدی که زیربنای اپلیکیشن یا سرویس اصلی در شش ماه گذشته بوده است.
کیفیت مستندات | Documentation quality
برداشت و فهم از مستندات داخلی (مانند راهنماها، فایلهای Readme و کامنتهای درون کد) از نظر قابلیت اطمینان، دسترسی، بهروز بودن و کمکرسانی.
هدف ما در اینجا این است که بررسی کنیم آیا این جنبهها، با افزایش استفاده از هوش مصنوعی تغییر میکنند یا خیر. شکل زیر یک تصویرسازی ارائه میدهد که بهترین تخمینهای دورا از تغییراتِ این نتایج را، در رابطه با افزایش ۲۵ درصدی استفاده از هوش مصنوعی نشان میدهد.
بهطور کلی، الگوهای مشاهدهشده، داستانِ بسیار قانعکنندهای برای هوش مصنوعی ارائه میدهند. نتایجِ قابلتوجه در این بخش به شرح زیر است. افزایش ۲۵ درصدی در استفاده از هوش مصنوعی همراه بودهاست با:
-
۷.۵ درصد افزایش در کیفیت مستندات
-
۳.۴ درصد افزایش در کیفیت کد
-
۳.۱ درصد افزایش در سرعت کُد ریویو
-
۱.۳ درصد افزایش در سرعت تأیید
-
۱.۸ درصد کاهش در پیچیدگی کد
بخشِ ابتدایی این مقاله نشان میدهد که رایجترین کاربرد هوش مصنوعی، نوشتن کد است. ۶۷٪ از پاسخدهندگان گزارش دادهاند که هوش مصنوعی به بهبود کد آنها کمک میکند. اینجا، تأیید بیشتری بر این دیدگاه دیده میشود. به نظر میرسد هوش مصنوعی کیفیت کد را بهبود میبخشد و پیچیدگی آن را کاهش میدهد (شکل قبلی). هنگامی که این مزیت با بازسازی و بازنویسی احتمالی کدهای قدیمی ترکیب شود، کدهای تولیدشده با کیفیت بالا توسط هوش مصنوعی میتوانند به بهبود کلی codebase منجر شوند. این پایگاه کد همچنین ممکن است با دسترسی بهتر به مستنداتِ با کیفیت که با کمک هوش مصنوعی تولید میشوند، بهبود یابد (به بخش ابتدایی مقاله مراجعه کنید).
کد با کیفیت بهتر، آسانتر مورد بازبینی (review) و تأیید (approve) قرار میگیرد. حال بازبینی کد به کمک هوش مصنوعی را هم بکار بگیرید، میتوانیم شاهد بازبینی و تأیید سریعتر نیز باشیم، الگویی که به وضوح در دادهها (شکل قبلی) مشاهده میشود.
با این حال، بازبینی و تأیید سریعتر کد، الزاماً به معنای بهتر یا دقیقتر بودن فرآیندهای بازبینی و تأیید نیست. این امکان وجود دارد که سرعت بیشتر به دلیل اتکای بیش از حد به هوش مصنوعی برای کمک در این فرآیند، یا اعتماد بیش از حد به کد تولیدشده توسط هوش مصنوعی باشد. این یافته با الگوهای مشاهدهشده در شکل بالا در تضاد نیست، اما نتیجهگیری آشکاری نیز به شمار نمیآید.
علاوه بر این، مشخص نیست که آیا کیفیت کد و مستندات به دلیل تولید توسط هوش مصنوعی بهبود یافته است یا اینکه هوش مصنوعی توانایی ما را در بهرهبرداری از کدها و مستندات با کیفیت پایینتر، افزایش داده است. اگر آستانهای که ما کد و مستندات را با آن باکیفیت میدانیم، هنگام استفاده از هوش مصنوعی کمی پایینتر بیاید، چه میشود؟ زیرا هوش مصنوعی به اندازهای قدرتمند است که به ما کمک میکند از محتوایِ با کیفیتِ پایینتر، نیز بهرهمند شویم. این دو روش برای درک این الگوها لزوماً در تضاد با یکدیگر نیستند؛ هر دو میتوانند به این الگوها کمک کنند.
آنچه در این الگوها به وضوح دیده میشود، این است که هوش مصنوعی به افراد کمک میکند ارزش بیشتری از مستنداتی که به آنها وابستهاند و پایگاههای کدی (codebases) که روی آنها کار میکنند، استخراج کنند. همچنین هوش مصنوعی به کاهش گلوگاههای پرهزینه در فرآیند بازبینی (review) و تأییدِ (approve) کد کمک میکند. اما آنچه مشخص نیست، این است که دقیقاً هوش مصنوعی چگونه این کار را انجام میدهد و آیا این مزایا به فواید بیشتر در مراحل بعدی، مانند بهبود فرآیند تحویل نرمافزار، منجر میشود یا خیر.
هوش مصنوعی به عملکردِ تحویل نرمافزار آسیب میزند!
در چند سال گذشته مشاهده شد که شاخصهای تعدادِ تحویلِ نرمافزار و ثباتِ تحویلِ نرمافزار، استقلالِ نسبیای نسبت به هم پیدا کردهاند. اگرچه ارتباط سنتی بین تعداد و ثبات همچنان وجود دارد، شواهد جدید نشان میدهند که این دو عامل به اندازهای مستقل عمل میکنند که نیاز به بررسی جداگانه دارند.
برخلاف انتظارات، یافتهها نشان میدهند که پذیرش هوش مصنوعی تأثیر منفی بر عملکرد تحویل نرمافزار دارد.
همانطور که مشاهده میکنید، اثر آن بر تعدادِ تحویل، ناچیز اما منفی است (کاهش تخمینی ۱.۵٪ برای هر ۲۵٪ افزایش در پذیرش هوش مصنوعی). تأثیر منفی بر ثبات تحویل، بیشتر است (کاهش تخمینی ۷.۲٪ برای هر ۲۵٪ افزایش در پذیرش هوش مصنوعی). این دادهها در شکل بالا نشان داده شدهاند.
در تحقیقات پیشین دورا مشخص شده بود که بهبود فرآیند توسعه نرمافزار، از جمله ارتقای کیفیت مستندات، کیفیت کد، سرعت بازبینی کد، سرعت تأیید، و کاهش پیچیدگی کد، منجر به بهبود عملکرد تحویل نرمافزار میشود. بنابراین، برای ما شگفتآور بود که هوش مصنوعی این معیارهای فرآیندی را بهبود میبخشد اما به نظر میرسد که به معیارهای عملکردیِ تعداد و ثباتِ تحویل آسیب میزند.
بر اساس یافتههای سالهای گذشته، ما فرض میکنیم که تغییر اساسی ایجادشده توسط هوش مصنوعی در زمینه بهرهوری و سرعتِ تولید کد ممکن است باعث شده باشد که یکی از اصول اساسی DORA فراموش شود—اهمیتِ اندازههای کوچک تغییرات (small batch size).
به عبارت دیگر، بنظر میرسد، ازآنجاکه هوش مصنوعی امکان تولید حجم بسیار بیشتری از کد را در همان بازه زمانی فراهم میکند، احتمالاً تغییرات در حال بزرگتر شدن هستند. تحقیقات DORA به طور مداوم نشان داده است که تغییراتِ بزرگتر، کندتر هستند و بیشتر احتمال دارد که ناپایداری ایجاد کنند.
با در نظر گرفتن این موضوع، دادهها نشان میدهد که بهبود فرآیند توسعه به طور خودکار منجر به بهبود تحویل نرمافزار نمیشود—حداقل بدون رعایت اصول اساسیِ موفقیت در تحویلِ نرمافزار، مانند اندازههای کوچک تغییرات و مکانیزمهای قویِ تست.
باتوجه به تأثیر مثبتی که هوش مصنوعی بر بسیاری از عوامل فردی و سازمانی دارد، و شرایط لازم برای عملکرد بالای تحویلِ نرمافزار را فراهم میکند، دلیلی برای خوشبینی است. اما فعلا به نظر میرسد هوش مصنوعی یک راهحل همهجانبه نیست.
تیمها و سازمانهای با عملکردِ بالا از هوش مصنوعی استفاده میکنند، اما به نظر نمیرسد محصولاتِ نرمافزاری از آن بهرهمند شوند.
عملکرد سازمانی
این شاخص ترکیبی، عملکردِ کلی یک سازمان را شامل میشود: سودآوری، سهم بازار، تعداد مشتریان، کارایی عملیاتی، رضایت مشتری، کیفیت محصولات/خدمات، و توانایی دستیابی به اهداف.
عملکرد تیمی
این شاخص، توانایی یک تیم در همکاری، نوآوری، فعالیتِ کارآمد، اعتماد به یکدیگر و سازگاری را شامل میشود.
عملکرد محصول
این شاخص، شامل قابلیت استفاده، کارایی، ارزش، دسترسپذیری، عملکرد (مانند تأخیر)، و امنیتِ یک محصول است.
ایجاد ارتباط میان این نتایج و پذیرشِ فردیِ هوشمصنوعی، دشوار و همراه با ابهام است. گاهی اوقات این کار شبیه تحلیل تأثیر غذایی است که امروز برای ناهار خوردهاید بر عملکرد سازمانِ شما در سال جاری.
منطقِ مشخصی برای ایجاد ارتباط میان سطح خُرد (برای مثال، یک فرد) و سطح کلان (برای مثال، یک سازمان) وجود دارد:
به نظر میرسد که عملکرد در سطح سازمانی (افزایش تخمینی ۲.۳٪ برای هر ۲۵٪ افزایش در پذیرش هوش مصنوعی) و عملکرد در سطح تیمی (افزایش تخمینی ۱.۴٪ برای هر ۲۵٪ افزایش در پذیرش هوش مصنوعی) از پذیرش هوش مصنوعی بهرهمند میشوند (تصویرِ بالا). با این حال، عملکرد محصول ارتباط آشکاری با پذیرش هوش مصنوعی نشان نمیدهد. اکنون میتوانیم به بررسی عواملی بپردازیم که ممکن است در پس این تأثیرات وجود داشته باشند.
ما فرض میکنیم که عوامل مؤثر بر عملکردِ قوی تیمها و سازمانها با عواملی که بر عملکرد محصول تأثیر میگذارند، متفاوت هستند. تیمها و سازمانها بهشدت به ارتباطات، اشتراکگذاری دانش، تصمیمگیری و فرهنگ سالم متکی هستند. هوش مصنوعی ممکن است برخی از گلوگاهها را در این حوزهها برطرف کند و تأثیر مثبتی بر تیمها و سازمانها داشته باشد.
اما موفقیت محصولات ممکن است به عوامل دیگری بستگی داشته باشد. هرچند محصولات خوب قطعاً دلایل مشترکی با تیمها و سازمانهای با عملکردِ بالا دارند، احتمالاً ارتباط نزدیکتر و مستقیمتری با جریان کاری توسعه و تحویل نرمافزار دارند که پس از معرفی هوش مصنوعی همچنان در حال تثبیت باشند.
اهمیتِ منحصربهفرد جنبههای فنی، که زیربنای یک محصول خوب هستند، میتواند بخشی از این مسئله را توضیح دهد. با این حال، در توسعهی یک محصولِ عالی، عناصری مانند هنر و همدلی نیز نقش دارند. شاید باور این موضوع برای کسانی که همه چیز را بهعنوان مسئلهای قابلحل از طریق محاسبات میبینند دشوار باشد، اما برخی جنبههای توسعه محصول، مانند خلاقیت یا طراحیِ تجربهی کاربری، ممکن است همچنان (یا برای همیشه) به شدت به شهود و تخصصِ انسانی متکی باشند.
واقعیت این است که عملکرد سازمان، تیم و محصول به طور غیرقابلانکاری به هم مرتبط هستند. در بررسی همبستگیهای دومتغیره (پیرسون)، مشاهده میکنیم که عملکرد محصول، همبستگی مثبتِ متوسطی با عملکرد تیمی (r = 0.56، بازه اطمینان ۹۵٪ = ۰.۵۱ تا ۰.۶۰) و عملکرد سازمانی (r = 0.47، بازه اطمینان ۹۵٪ = ۰.۴۱ تا ۰.۵۳) دارد.
این نتایج به طور متقابل بر یکدیگر تأثیر میگذارند و وابستگیهای روشنی ایجاد میکنند. تیمهای با عملکرد بالا تمایل به توسعه محصولات بهتر دارند، اما داشتن یک محصول ضعیف میتواند موفقیت آنها را محدود کند. به همین ترتیب، سازمانهای با عملکردِ بالا از طریق منابع و فرآیندها، تیمهای با عملکرد بالا ایجاد میکنند، اما مشکلات سازمانی میتواند عملکرد تیمها را تضعیف کند.
بنابراین، اگر پذیرش هوش مصنوعی به طور قابلتوجهی برای تیمها و سازمانها مفید باشد، منطقی است که انتظار داشته باشیم این مزایا در محصولات نیز ظاهر شوند. پذیرش هوش مصنوعی تازه آغاز شده است.
برخی از مزایا و معایب ممکن است به دلیل ماهیت ذاتیِ تأثیر هوش مصنوعی یا منحنیِ یادگیریِ مرتبط با استفادهیِ مؤثر از آن، به مرور زمان آشکار شوند.
شاید داستان این باشد که ما در حال یادگیری نحوه استفاده از هوش مصنوعی برای کمک به سازمانها و تیمها هستیم، پیش از آنکه به طور کامل پتانسیل آن را برای نوآوری و توسعهی محصولات درک کنیم. شکل زیر تلاش میکند تا نشان دهد این روند چگونه در حال شکلگیری است.
حال چه باید کرد؟
ما قصد داشتیم پتانسیل هوش مصنوعی را در وضعیت کنونی آن برای کمک به افراد، تیمها و سازمانها درک کنیم. الگوهای در حال ظهور نشان میدهند که هوش مصنوعی فقط یک هیاهوی بیاساس نیست؛ واقعاً چیزی در حال وقوع است.
شواهد واضحی به نفع پذیرش هوش مصنوعی وجود دارد. با این حال، به همان اندازه روشن است که موانعِ بالقوه، چالشهای رشد و تأثیراتِ منفیِ احتمالی نیز وجود دارند. پذیرش هوش مصنوعی در مقیاس بزرگ ممکن است به سادگی فشار دادن یک دکمه نباشد. یک استراتژی سنجیده، شفاف و انعطافپذیر میتواند به مزایای قابل توجهی منجر شود. این استراتژی باید بهصورت مشترک توسط رهبران، تیمها، سازمانها، محققان و توسعهدهندگانِ هوش مصنوعی تدوین شود.
در اینجا چند پیشنهاد برای جهتدهی به استراتژیِ پذیرشِ هوش مصنوعی ارائه شده است:
مأموریت و سیاستهای مشخصی برای هوش مصنوعی تعریف کنید تا سازمان و تیم خود را توانمند کنید.
به کارکنان اطلاعات شفاف در مورد مأموریت، اهداف و برنامهیِ پذیرش هوش مصنوعی ارائه دهید. با بیان چشمانداز کلی و سیاستهای خاص، مانند نحوه استفاده از ابزارها، میتوانید نگرانیها را کاهش دهید و هوش مصنوعی را بهعنوان ابزاری برای تمرکز بر کارهای ارزشمند، خلاقانه و رضایتبخش معرفی کنید.
فرهنگ یادگیری و آزمایشِ مداوم با هوش مصنوعی ایجاد کنید.
محیطی ایجاد کنید که افراد و تیمها را به کشف مداوم ابزارهای هوش مصنوعی تشویق کند. زمانی را برای شناسایی مواردِ استفادهیِ مفید اختصاص دهید و به آنها آزادی عمل بدهید تا مسیر خود را تعیین کنند. با تجربه عملی در محیطهای ایمن یا کمریسک، اعتماد به فناوریهایِ هوش مصنوعی را افزایش دهید. برای کاهش بیشتر ریسکها، بر توسعه تستهای خودکارِ قویتر تمرکز کنید.
چارچوبی برای ارزیابی تأثیر هوش مصنوعی ایجاد کنید.
موفقیتِ هوش مصنوعی را نه بر اساسِ میزان پذیرش، بلکه بر اساسِ تأثیراتِ معنادار آن ارزیابی کنید. بررسی کنید که چگونه هوش مصنوعی به رشدِ کارکنان کمک میکند، به نفع کاربرانِ محصولاتِ شما است و پتانسیلِ تیمها را آزاد میکند.
از مزایا و معایب هوش مصنوعی برای ایجاد مزیت رقابتی استفاده کنید.
با شناسایی چالشها، مانند کاهش زمان صرف شده برای کارهای ارزشمند، وابستگیِ بیش از حد به هوش مصنوعی، یا تأثیراتِ آن بر پایداری و سرعت تحویل نرمافزار، میتوانید از مشکلات جلوگیری کرده و مسیر هوش مصنوعی را در سازمان و تیم خود بهطور مثبت شکل دهید.