How Applications are Developed