Product Overview

ePMOLite is a cutting edge multi-tenant, serverless, cloud based comprehensive IT PMO solution for small scale and middle scale organizations helping them to report progress on initiatives, track financials and inform their decision making and doing away with 20th century practices like relying on Excel spreadsheet, document and presentation documents. This project uses multiple AWS services to deploy the frontend and backend. This product is available in multiple configurations, professional version as well as enterprise version. It is flexible enough to be deployed in a shared nothing or a shared everything architecture without code changes (except for database schema). Numino has worked from scratch on this product and delivered a high performance,available, secure and scalable application

ePMO Technology Stack

Stack

ePMO Architecture

The following is the architecture for enterprise users.

ePMO Architecture

Each enterprise user gets a completely separate environment and secure https subdomain to provide isolation, in other words a shared nothing architecture. This environment is set up in a completely automated way from the UI which ultimately invokes a cloudformation script to set up EBS, API Gateway, Lambdas and the MySQL schema for the database. All schemas for the enterprise users are on the same RDS instance to optimize costs yet keep them isolated. Cognito is used for authentication and authorization by both the front end as well as back end using API Gateway lambda authorizer. Separate user pools and identity pools are set up for each enterprise user in Cognito.

The architecture for professional users is as follows:
All professional users share the same front end but get their own secure subdomain. The front end built using Angular is hosted on EBS. The back end stack from API gateway to lambdas and database schema is completely separate for each professional user, thus providing isolation. There is a single Cognito user pool and identity pool for all the professional users.

There are 3 separate demo environments sharing a common backend but different front ends deployed on CDN/S3 as shown below:

ePMO Environment

Deployment Architecture

The system is completely flexible to be deployed into multiple configurations. The front end can be deployed on S3/Cloudfront or on EBS. The front end and back end code are unaware of the exact deployment configuration. We can have one user pool and identity pool for multiple subdomains or have them completely separate. Each database schema can also be on a completely different RDS instance or one can share the RDS instance with multiple schemas, depending on the requirement of enterprise users.

Continuous Integration, Testing and Development Flow

Gitlab is used as the version control system. There are two repositories, the code for automating the set up of enterprise environments is a separate code base and the business related code is a separate repository, thus the two can follow their own life cycles.

The build and deployment for enterprise users is completely automated and can be invoked from the UI.

Agile DevOps based delivery to meet market evolution

Based on the product road map, this was delivered in small incremental sprint release cycles, our Product Delivery Engineers developed a modern angular frontend web application integrated with serverless services at the back end system.

Results

The client is able to offer his customers a high performance scalable environment as per their choice, completely isolated or shared and is able to offer at multiple price points. The application helps client’s customers a clear view of all their data at a single spot allowing them to analyze org at various levels, map organization’s strategic goals to executable initiatives with measurable targets, manage the status and progress of various initiatives and helps optimize allocation of precious resources.

Product Screenshots

Roadmap

Roadmap

Portfolio

Portfolio - Can add, edit portfolio program and project

Resource_Management

Resource Management - can add resources for the given fiscal year

ImportExport

Import and Export functionality, converted hrs data to percentage and percentage data to hrs

Dashboard

Project Dashboard

Work at Numino Labs

See our open positions
ImportExport