What is the best mobile app practice to develop new function after production?

Here is my situation: 

After putting the app on google store, some user already installed the app. I would like to add new function to the app, but every time I add something and would like to test on my own mobile phone, the app of common user will have the same update. 

How can I develop and test the new function without updating the current user's mobile app?

You know, the new function may have bugs and sometime I have to add some temporary entry/data to server which I don't want common user to see it.

Should I open a new account and test everything there, and then copy the new function to my current (in production status) environment??

Thank You 

Solution

Hi,

Normally you have DEV, TEST and PRODUCTION environment, which avoids this problem.

I assume your problem arises from developing the mobile application in your Personal Environment.

I don't think it is possible to share your application between two different personal environments.

What you could consider is using a site property as a kind of feature switch. Create a public server action that exposes the site property. The public server action can be used to condition your new logic, you can put your username in it, and then only execute code if it has your username. When the logic works, change the site property so all users can use it.

For the data, I assume this is already tight to a specific user. If there is data not specific to a user, consider looking at the concept of multi-tenancy for server data.

It is not ideal, but with only one environment for DEV/TEST en PROD you need to be a little bit creative.

One final note: The personal environments are made available for free by OutSystems for people to learn OutSystems and experiment with it not to run production on.

Regards,

Daniel

Solution

Hi,

how many environments you have?

Usually you put in the stores a version of the APK and IPA, if you generate a new version, it hardly reaches production, either way usually has multiple environments, at least one for production and one non-productive.

You can test your application in non-productive environments, before deploying in the productive environment.

sb chung wrote:

Here is my situation: 

After putting the app on google store, some user already installed the app. I would like to add new function to the app, but every time I add something and would like to test on my own mobile phone, the app of common user will have the same update. 

How can I develop and test the new function without updating the current user's mobile app?

You know, the new function may have bugs and sometime I have to add some temporary entry/data to server which I don't want common user to see it.

Should I open a new account and test everything there, and then copy the new function to my current (in production status) environment??

Thank You 


Hi,

Are you making the changes directly on the production?, you must have different environments to develop and test the changes before pushing it to production.


Thanks,

Sachin

Thank you guys, I will try the methods you mention.

I'm working in the free personal environment, I don't know it is only available for testing (as i remember if the number of user > 100, then I have to buy license, I have several users only). I will have a look on the licensing issue.

Thank you :)