La ingeniería de software aplica un enfoque sistemático y disciplinado al desarrollo, operación y mantenimiento de software. Integra matemáticas, ciencias de la computación y prácticas de ingeniería. La inteligencia artificial estudia la creación de entidades capaces de resolver problemas utilizando la inteligencia humana como paradigma, y puede referirse a sistemas que piensan o actúan como humanos o que lo hacen de forma racional.