فعالیت مهم تکامل نرم افزار شامل استفاده از refactorings برای افزایش کیفیت کد بدون تغییر رفتار آن است. داشتن یک ابزار مناسب برای پالایشگاه در هر شرایط توسعه حرفه ای امری ضروری است. علاوه بر این ، برنامه نویسی زنده امکان توسعه سریعتر از روند معمول ویرایش-کامپایل-اشکال زدایی را فراهم می کند. در طول برنامه های زنده برنامه نویسی ، توسعه دهنده می تواند به طور مستقیم موارد را دستکاری و وضعیت برنامه در حال اجرا را تغییر دهد. با این حال ، هنگامی که یک پالایشگاه پیچیده انجام می شود ، موارد ممکن است خراب شود (به عنوان مثال ، وضعیت آنها از بین می رود). به عنوان مثال ، هنگام فشار دادن متغیر نمونه به سوپر کلاس یک لحظه وجود دارد که ابرخودرو هنوز متغیر نمونه جدید را به دست نیاورد و زیر کلاس دیگر آن را ندارد. این بدان معنی است که مقدار اختصاص داده شده به این متغیر نمونه در نمونه های موجود پس از refactoring از بین می رود. این مشکل از آن حکایتی ندارد زیرا ۳۶٪ از refactorings شرح داده شده در کاتالوگ Fowler موارد فاسد هنگام استفاده در یک زمینه برنامه نویسی زنده. نیاز به انتقال دستی ، بازسازی یا بارگیری مجدد از منابع مداوم به صورت دستی وجود دارد. این رفع دستی ، سودمندی برنامه نویسی زنده را کاهش می دهد.