Android Question Multi-Tenant SaaS Platform Archtecture

Timothy Njeru

New Member
Licensed User
Hi All,

I would like to get your help in defining how I should structure an application which will eventually involve 7 different types of Android apps for seven different types of users all inter-connected. As illustrated on attached images, each app will have multiply users and the interactions are mixed as happens in a typical ecosystem.

I had prepared XML resource with Android Studio for main App (Client App) before I came across B4A. I was persuaded that B4A is the best solution for me in order to get the prototype up and running within a short time. So I need experience/knowledgeable developers in this forum to advise on the following:

1. How does use of external XML resource through XMLBuilder affect the performance an app?
2. What are some general rules that i need to know when developing this magnitude of application with B4A.
3. Which are the general critical areas whose code need to be done on the server side and which ones do i need to have the code on the app side.

More system requirements documentation is available and i can share with those who would be willing to offer further consultation in regard to this application. I am actually considering hiring a developer to fast track the project.

Thanking you in advance.

upload_2017-9-11_11-23-9.png




Below is how the entire ecosystem is supposed to look as illustrated below:

upload_2017-9-11_11-24-41.png
 

Attachments

  • upload_2017-9-11_11-16-55.png
    upload_2017-9-11_11-16-55.png
    177.4 KB · Views: 137

keirS

Well-Known Member
Licensed User
Longtime User
That looks like a reasonable sized project.

Point 1: Can you clarify what you mean by XMLBuilder? Are you referring to using the UI Editor / Vector Graphics in Android Studio to build layout files and resources or are you referring to XMLBuilder library. I think you are referring to the former rather than the latter but clarity always helps.

Point 2: Probably the most important rule is to understand that the Starer Service is the best place for any code that isn't directly involved with the UI.

Point 3: What should and shouldn't be done on the server is rather dependent on whether the app should be capable of functioning without a connection to the server and what that level of functionality should be.
 
Upvote 0

Timothy Njeru

New Member
Licensed User
Hello @keirS, thanks for feedback and yes the project is huge but the plan is to build it slowly. And that's why i need advise from experienced developers so that we can lay a very good foundation. We don't want to build then we have a problem of scaling at a later stage.

In regard to Point 1, I was refering to XMLLayoutBuilder library . I started doing this project in Android Studio and so i have a couple of layouts that can be used by harnessing the power of XMLLayourBuilder library.
 
Upvote 0

keirS

Well-Known Member
Licensed User
Longtime User
Erel beat me to it but I think you would be better off using the internal designer. It's better to have consistent approach to all layouts rather than using some XMLayoutBuilder and some from the internal designer. So unless you have put a lot of resource into the Xml layouts I would start from scratch and use the designer for everything.
 
Upvote 0

udg

Expert
Licensed User
Longtime User
Let me add the obvious: you need to carefully and professionally design your central DB.

udg
 
Upvote 0
Top