Utilization of artificial intelligence techniques and machine learning in software engineering