La práctica de la ingeniería del software se basa en entender el problema, planear una solución, ejecutar el plan y examinar la exactitud del resultado obtenido. Este proceso está estructurado en tareas con objetivos bien definidos y acciones que consisten en conjuntos de tareas.