Types of Software Application Development