While building software there are several steps to be followed. Two of these steps are compile-time and run time. Compile-time is the duration when the programming code is converted to machine code. The source code is written using high-level language so it is easier to convert it into machine code. During this, the source code is converted to byte code. Run time is the duration where a program is running. This occurs after the compile time. Several errors can occur during its lifecycle such as division by zero, running out of memory, and referencing a null pointer.