The industry of mobile applications development in Latin America is relatively new, and that’s why it's necessary to take precautions in case you’re planning to start a project in this area, or if you’re working with clients who haven’t had previous experience on similar projects before.
In this post, I’m going to give you some tips in order to save you a few gray hairs and stress for both parties (customers and suppliers):
If the client requests a cross-platform development (Android and iOS), it’s necessary to explain that the iOS user experience isn’t the same as the Android user. This will help to manage expectations properly.
- Graphic design: For development in iOS it is a single design; in the case of Android, there are many more, depending on the devices to which the project is aimed.
- Back-end: Many applications need to send or receive device’s information to a backend or admin panel. It’s necessary to explain this to the client as well as how it improves or gives value to the project, because sometimes this could be considered unnecessary.
- Upload to marketplace: If it’s your first development experience, this is a very important point: for iOS, it takes 1 week for the application to be approved (best case scenario); and for Android, it may take only a few hours.
- Portrait / Landscape: Picking up which orientation the application must have is key to development and design issues, especially for Android, which is the platform that has the greatest amount of devices in the market and requires extra careful thinking. Otherwise, the design of the different models would have to be multiplied by two orientations. My recommendation: If two orientations are in existence, we must decide if this is really necessary or if the app is worth it.
- Tablets: When talking about mobiles, we usually include cell phones and tablets in the same category. Therefore, it’s important to clarify that those are two different things even when they are related. That is, despite the fact that the development can be reused, the way we present the graphic elements to the customer is different as well as the user experience, so the designs or models to use in the case of Android should be considered.
- Target Devices: This is a critical point for development, especially for the customer, because it can aim low-, medium- or high-range cell phones (for Android). According to this, the designs are created and the tests are performed, and even though this doesn’t mean the apps cannot work in other devices, some details may arise.
- Operating systems: Be careful with the different operating systems when developing mobile applications in Android, because this could slow down the development time of the application and it’s necessary to make this clear with the client and also with the team.
In relation to mobile applications development, usually, there is more than one client or more than one decision maker. You can also work with a partner that (at the same time) is the end face ofthe client. Whatever the case is, you have to be very careful because if the expectations aren’t clear from the beginning of the project, it will have long-term consequences.
- Show the apps to the final clients: This point is very important, because it cannot be displayed as a web application. Therefore, in the case of Android the installers could be sent. In the case of iOS, it’s a bit more complicated, there are two ways of showing progress:
- Sending a video (the classic, long and not recommended way)
- Sending the IPAS, for what is needed more support and effort from the client
- Internal management: Meetings and commitments are critical while working as a team, because the project depends on both. For this, there must be a good integration to be able to see and solve together any obstacle.
- Memory management: This point is critical during the app development. It often happens that applications with some peaks generated by some functionality could freeze or may affect other running applications.
- Quality Assurance (QA): There are so many devices for Android that QA can become complicated, especially because the emulators don’t react the same way as a real device, that’s why we need the original device in order to avoid future problems.
- Changes: In case of changes due to modifications in the scope of the project, we need to be aware of how these affect or will affect the performance of the application. It all depends on the type of project. Otherwise, they will affect the app performance or the development time.
- Apis: Usually, interaction with other applications or backend already developed is necessary. In this case, we need to be very careful and take into account the time that it could take in case this have to be modified.
- The use of the phone’s features such as cameras and other inputs could bring efficiency and memory problems. To prevent this, the development method needs to be clear
I hope this post was helpful for you. As a general conclusion, in subjects related to mobile development, we must be prepared to manage the expectations since the beginning of the project and keep in mind every detail of the process to avoid future problems.
Tekton Labs CEO