The mobile application development is increasing rapidly due to the popularity of smartphones among end-users. The need to present the business as a mobile application has become essential to guarantee the value of the presented business services. The currently used software development methods for mobile application development could be appropriate, but it is not facilitating the complexity of the mobile application development and how it is built. Although some of the existing software development lifecycle models are adapted for mobile application development, but there are certain challenges that need to be addressed in each phase of the development lifecycle despite of the used software development method, such as; performance, user interface, and testing. The objective of this paper is to compare the different software development methods that were applied for mobile application development, and shows the required practices that should be applied specifically in each phase of the software development lifecycle to address the mobile native application challenges. Accordingly a qualitative study was conducted, in which 18 mobile native application professionals working in different companies were interviewed to collect the information about the current applied practices in their jobs and decide on the most effective practices that help them to facilitate the mobile application development challenges.