Healthcare Logo
Healthcare Software For A Healthcare Professional
A web app that will help a healthcare organization to deliver solutions to healthcare centers to simplify communication, align processes and deliver quick and effective care to patients.
Timeline
Timeline
13 weeks
Industry
Industry
Healthcare App Development Services
Location
Location
Australia
Project
Project
Development
Year
Year
2020
  1. Strategy

    Simplifying healthcare service delivery with our client, the strategy for the project decided was to work on a fixed timeline model, with a scope of 13 weeks of development.

    1
  2. Analysis Planning

    The choice of tech stack for this project was ReactJS, which supports and works great with VanillaJs and Express JS in the backend.

    2
  3. UI/UX

    The UI designs were provided by the client, which were implemented using Ant Design in the project.

    3
  4. Development

    Starting with RBAC features, we developed the admin function module, mission management, objective management and other extensive features using APIs. We also developed a report generator in PDF format.

    4
  5. Testing

    We utillized our in-house CLI testing tool called GA-WDIO for automated testing. The project was also delivered to the client for UAT and feedback was implemented on to make the app more stable.

    5
  6. Delivery

    In 12 weeks, we delivered a product that exceeded the client's expectations. The project already has live users and has been a huge success in pushing healthcare towards a better future.

    6
About the Client

In 2019, the founders of a healthcare organization had a vision of facilitating effective healthcare to the locals in their country. The company was established to focus solely on aligning healthcare organisations that would ultimately lead to better outcomes for patients. Their aim is to simplify organisational communication, eliminate issues that lead to less focus on the end-user and help healthcare experts work efficiently and achieve optimal outcomes.

The Problem

On March 26th 2019, the company reached out to us to explain their requirements. They wanted a web app built to supplement the vision of their company and help it carry out its mission. The designs were already set by them and they required us to translate those designs into a fully working web app.

After confirmations and introductions, a fixed scope-fixed price model was agreed upon, which essentially meant that the timeline, costs, scope and cost were decided before the initiation of the project. This project would be completed within 13 weeks, which would be divided into 7 distinct milestones out of which 6 would last for 2 weeks each and the final milestone would reach its end within a week's time. As everything was discussed in detail and agreed upon, it was time to analyse the technical aspects of things.

Team On-Call

Since the project was a web app, it was important to pick out the absolute experts in web app development from our arsenal and based on the complexity of the application, we needed minds that could crack the case and make it look as simple as can be. Since designs were provided by the client themselves, the design sat this one out. We looked to employ one backend and one frontend developer with a single QA engineer, all spearheaded by Faiz Farooqui, the tech architect.

Requirements

A web app to manage organizations, teams within organizations and help them streamline their work and fix anomalies.

The app feature Role Based Access Control (RBAC) for different levels of users.

A view to define organizational hierarchy and sorting functions within the hierarchies.

A feature for report printing was also necessary.

Development

It was time for the team on call to get to work. Since the web app was being built to handle complex views and would attain a complex structure within, it was imperative to pick a tech stack that could complement the requirements of the project. The designs provided were to be amalgamated and translated into a working app within the frontend. To achieve that, ReactJS with Ant Design was used to build the UI with VanillaJS as the API SDK. To work in tandem with the frontend, ExpressJS was used as the backend API. The next step was to decide upon a database that could handle the enormous amounts of data that was to be fed to the app. Without a shadow of a doubt, AWS Aurora was the bright star that would guide this project home.

For testing purposes, an automation CLI tool called GA-WDIO, which was built by us in-house, was used to test the web app over chrome and Firefox.

With the tech stack decided, the development of the web app was commenced.


The features of the web app were supposed to fit in perfectly into the mission of the company like a piece of a jigsaw puzzle. The very first milestone involved two sprints. Within this milestone, authentication and RBAC features were implemented along with email templates. The first feature to be implemented was the admin function. All processes for admins were established and developed first and then for users of other levels, with the access of all these users being given to admin through the process. This complete feature block consumed the second milestone to complete as well.

The third and fourth milestone involved development of Mission Management, Objective Management, Initiative Management & Contribution Management features, all part of the extensive features of the organization. Permissions for each API were created against the role of each user, which would attach and detach to grant permission to the user.


Milestones five and six focused on report generation features and template designs, while rounding off basic features such as profile and notification management. Report generation was handled by generating reports in HTML on server side and then generating them in PDF format on the client side. Some other features such as using B-Tree algorithms to create the organizational hierarchy and enable sorting within them were applied.

A common function amongst all these milestones was writing test cases extensively. The final milestone was dedicated to rigorous testing of the now complete web app using our in-house GA-WDIO CLI tool. Not just that but testing was an integral part of the complete development process and client's feedback was processed and fixed before proceeding to the next planned action.

Overcoming Challenges

With the complexity of the app, problems were bound to show up and surface during and post development. With the amount of versions of the web app released, it was pivotal to automate CI/CD which was difficult. To facilitate this task, BitBucket Pipeline was hooked up with Docker so that as soon as the code was pushed, Pipeline started Docker which created a build, tested it, zipped it and uploaded it to AWS S3 with a proper version number.

For deployment of this app, it was mandatory for the project to have two environments, namely Production and Staging, which made it tedious. To simplify this, we hooked up our 'Master' branch with the Production Environment and the 'Release' branch with the Staging environment.

The choice of using automation testing brought forward a requirement of a tool that would develop and run things over various kinds of platforms, OS and browsers. The straightforward solution to this was offered by our own testing tool called GA-WDIO that creates and runs test cases over any OS, local browsers, mobile browsers and BrowserStack's browsers.

In bird's eye view
  • BitBucket was the choice of tool for version control.
  • SendGrid was the Email provider.
  • Deployment was handled through PM2, Docker, AWS CodeDeploy, AWS S3 & BitBucket Pipeline.
Final Impression

In the words of the client, "The Platform exceeded the expectations of the internal team, providing the foundation for the business." The app imbued the essence of the company and we were happy to hear these words from our client. The project was completed on time and the client is extremely satisfied with the outcome. With this app, they can begin chasing their vision and fulfill their mission of helping organizations provide better healthcare services and focus on the patients. They now have live customers on board the app and the company is on its way to transform healthcare in the world and push it towards a better future. We wish it all the success in the world and we feel lucky to be a part of this venture.