How do I get started with Vahana? What are the recommended steps? What is the design approach recommended?

I want to design a Mobile Application on Vahana. The application is a standalone application and needs a backend as well. How do I get started.

What are the guidelines?

Consider Following. I came across Recommended steps in one of the posts internally

  1. By now you know what Application you need to build. What Interfaces does it need Web, Android , or IPhone

  2. Let’s get Started with creating an Application ID in Vahana. Once you Login to Vahana Create an Application and select Interfaces and Platforms you want

  3. Let’s make a decision on where you want to run this Application. Do you want to use Managed Vahana Cloud, your own account on AWS or you plan to run in your Data Centre

  4. Based on your decision on where you want to run the application, you need to setup VRT (Vahana Run Time). Just start with Go to VRT Manager and get started with creating a VRT for your application. The step by step process will guide you through VRT setup. You will need this VRT to test your application and run the application I am sure you would need multiple environments like SIT, UAT, Production. If yes then create Environments for your Application and define workflow like the order in which your application moves between environments. You can name the environments the way you want them. Name something fun. You will need environments before you make your application available to your users

  5. Great, we have had a good start. Who you think is going to work on building this application. It’s just you or you have some of your team members joining you. I believe you would have someone to collaborate with. Now you need to add team members. You Can go to IAM and add team members and assign access levels to your team members. Don’t worry you can add members later as well and change access level anytime. After you are the boss.

  6. Ok, I am sure your application has to deal with some APIs and/or database. If yes, then you need to use modules like Data Modeler and vConnect.

  7. If you have APIs that help you connect with your core applications or database or some external third party functions then we need to configure these APIs in vConnect. You can have one of your team members who deals with APIs do it. Make sure that you have given access to her in IAM

  8. I am sure your API developer will take care of APIs in the meanhwile lets deal with the data model if you have one. If you want to map your application with the data model that you have then just export you data model as Json objects and configure that in Data Modeler section. This just needs to be done once but you can sure change it anytime

  9. Ok, great, I am sure you have some List of Values and Master data that you plan to use in your application. LOVs like Occupation, City List etc etc. This can be configured in data Modeler as well.

  10. Great, we have done some good work, now lets get to the most important part User Interface
    10.b) We need to setup some design guidelines, right. You want to make sure that you follow same design principles and language across your application. You need to just do it once, set Template for the application. In the template you can set colours, fonts and styles that you want to use in the application. This is like choosing a Style in Power Point or Word Document.

    1. I believe you have some designs wireframes with you Or may be you have everything up there in your mind. We can get started either ways but wireframes or Visual Designs will give you faster way to get there.
    1. So, lets first decide some key attributes about your application. Does it need to have any Login or SignUp. If yes we can start with that.
    1. If you have gone through Designer Training Videos, that will be awesome and if you haven’t then here it is this can help you .
    1. Now for every page you need to do the following steps
      Create Page
      Add Elements/Controls and set attributes for each element like Validations, length visual properties
  11. You will need to map the element with the data model that you have configured and in case you haven’t setup one then also you need to map elements with storage and in case you are not using a data model then you can map elements to either Temp Storage or Element Storage. This makes sure that your data is persisted as user starts to use the application

Ok, once you have added all elements on the Page you can start to think of Interactions like your primary CTA or actions based on events for any element. You can configure interactions using Events available for each UI element that you have added. |

Once you setup an event you can not setup a complete workflow based on that event. Workflow means you can orchestrate various tasks like going to next page, calling an API, Validating data. Designer provides for umpteen tasks in workflow manager|

You can setup business rules for any task that you want to run and while setting up rules you can use various Functions like CONCATENATE, SUBSTRING, ADD , DATEFORMAT etc along with all the data elements you have added in the application or the elements from your data model

Using above process you can create User Interface and Integrate with the APIs your team member has configured in vConnect|
|11e|Looks like you have dome some work but you are not sure how it is going to look like and behave for a user, don’t worry we have your back, there a Preview Function in Designer, that will help you run the actual application and show you what’s going to be the user experience in real time. this preview is a real application and not a simulation so, you can be sure that what you see is what you will get|
|12|Ok, great job We almost have our first application. Now you need to give it to you team members or your boss to impress her. Just go to our CI/CD section. Start with Create Build|
|12b|Choose the platforms you need build for- Android, iOS and Web. You will be required to provide some details for each plaform and then just say create build. You will be required to choose an environment for which you need build. Your application that you have built will be in default Sandbox Environment|
|12c|Once you have initiated the create build you will be notified in a few minutes when your build is ready and you will get links to download your build. Web will be auto deployed and will be available for you to use|
|12d|Great, you just need to share these links with people who need to experience your first creation and they can experience your application|
|13|This is fantastic, you have moved big leaps, now lets see what all you must do to prepare for taking this application live. For you to manage this application well you are advised to setup the following|
|13b|Monitoring- All APIs that you want to be monitored for taking longer time or for larger pay load you just need to set that up in vMonitoring|
|13c|Setting up security policy for your app is another very important task, in Designer setup Security policies for your application|
|13d|Are there any events that you want to capture, you may want to configure those events in vConnect or raise those events as part of Application workflow in Designer. These events will help you track your pipeline and build analytics for your business|
|13e|Before you go to production, you will need to do some tasks related to Configiration and Release Management like, you can migrate your application from One Environment to Another as you have configured in Environmenets. This will need you to create Branches when required. very Similar to what you have been doing in GIT. When you have a branch you can deploy a branch in environmenets for people to use the application in that environment|
|14|Wallah… Your boss saw the application and was impressed, right…After all you did a months job in a day. But he somehow could not get response from an API that you had configured. No worries, we have you covered. just go to vlogs and you will see if your boss did everything right to call APIs. In vLogs you will see the name of the service/API that you had configured and you will also see Identifier for your Boss as User. Just click on that log and you will see what was passed to the API and what did API return. If there was an error you will see it right there|


Welcome to the community @lmehta

Valuable steps shared. A little formatting will add immense value to the post going forward.

Thanks again for sharing this.

Thank you for the elaborate response. Brings out the fact that while a platform can address the “how” of building a complex, enterprise grade production app, the “what” part must be learnt and mastered by the practitioner

While there are many ways of building apps, each one requires us to learn and master the complex lifecycle of an app that spans TBs of data, millions of transactions and thousands of users, working 24X7 with millisecond performance

A tool that makes this complex exercise simpler shouldn’t be confused with a wonder tool that renders the complex enterprise magically simple