/
Architecture Business Case

Architecture Business Case

 

 

Enterprise CMS Application

The proposed Enterprise CMS application provides scalable, high performance, cost-effective cloud native solution with AWS services to meet current challenges of CATALIS clients and covers small, medium and large courts in the country with its new case management system. It is a next generation solution for the courts.

It is an AWS cloud based SaaS solution comes with modern .Net Core (C#) based back-end with microservices, Modernized UI using a front-end framework that can be run on Linux or Windows, Multi-tenant architecture allowing for each customer to have their own database. The modernized application and databases will  improve the delivery of case management of courts  across the country. It helps digitization of internal workflows and processes of courts with a state-of-the-art integrated features utilizing cloud native and open source technologies.

The proposed CMS application develops from existing CMS360 application and adds best functionalities of Benchmark application and is developed with microservices architecture and Amazon Aurora PostgreSQL and NoSQL databases. By using Open source technologies and AWS services, it is going to save on license cost and achieve scalability, reliability, Resiliency, Fault tolerance, Efficiency and Application and Data security.

In order to achieve the business objectives, We have identified the challenges and a thorough discovery and assessment of current CMS360 and Benchmark application architecture is being done. The proposed new architecture for Enterprise CMS application comes with the technology stack as described below.

Technology Selection for Target   Enterprise CMS Application

Sl. No

Application /Component

Source environment

(Product/Tool/Framework

 Enterprise CMS Application (Product/Tool/Framework)

1

  UI/UX

CMS360: .NET framework-based application with a UI built on webforms technology.

Benchmark:  IDE: Visual Studio

Programming Languages:

http://VB.NET , C#, JavaScript

UI Frameworks

 

IDE: Visual Studio 2022

Programming Languages: C#

UI Frameworks: Angular, http://ASP.NET COREMVC, Telerik controls

 

2

Data access

http://ADO.NET , CODESMITH

 Latest ENTITY FRAMEWORK CORE 8.0, Coldsmith

3

Database platform

SQL Server 2014 on Windows Server 2016

Amazon RDS for PostgreSQL

Amazon Aurora PostgreSQL, Linux operating system, NoSQL databases. 

4

Version control and Collaboration

Azure DevOps and JIRA

Azure DevOps, Github

5

Development methodology

 Agile Methodology

Agile methodology

6

Infrastructure components /Tools

 

AWS cloud, Linux operating system, VPC, ROUTE53, AWS Lambda, AWS API Gateways, Cloudfront, Cognito, Cloudwatch

8

Deployment tools

 

Docker, Amazon AKS

9

Monitoring and logging

CMS360: AWS services

Benchmark: SSMS and File based logging. Microsoft Tools for monitoring.

AWS Cloudwatch, AWS X-Ray, ELK stack, Grafana, VPC Flow logs

10

CI/CD Pipeline

N/A

Azure DevOps, Jenkins

11

Messaging   and event-driven architecture

N/A

Amazon SQS or SNS

12

Authentication   and authorization

CMS360: IAM, AWS Cloud based

 

Benchmark: Form based authentication

Amazon Cognito for User Authentication, IAM

OAuth2: For token-based authentication.

JWT (JSON Web Tokens): For secure data exchange.

 

13

Containerization and Orchestration

Not used.

Docker to containerize microservices, Amazon ECS or EKS for orchestration.

14

CI/CD implementation

QA manual processes

AWS services like Code Pipeline and CodeBuild.

15

Security and Networking

 

VPC, Internet Gateway, NAT Gateway, Route Tables, Network ACL, VPC peering,

16

Security and Compliance

GDPR, HIPAA

IAM roles, security groups, encryption

Compliance regulations: GDPR, HIPAA etc.

17.

Testing of microservices

Not applicable

Testing Frameworks: JUnit, NUnit, pytest, Mocha, etc.

API Testing: Postman, SoapUI, or REST Assured.

Load Testing: JMeter, Gatling.

Monitoring: AWS CloudWatch, AWS X-Ray.

Security Testing: OWASP ZAP, AWS Inspector.

18

Low-code/No-code

Tools

Not applicable

Appian, Mendix, OutSystems : To be determined

19.

Migration tools

N/A

AWS DMS, AWS SCT, AWS Microservice .NET Extractor, AWS Toolkit for .NET Refactoring.

20

Discovery and Assessment

N/A

AWS Discovery agent, Migration Evaluator,

21

Serverless Tools

 

AWS Fargate - container management service, Serverless functionality for large applications

Lambda: serverless functionality for small applications.  

22

Feature flag functionality tools

 

AWS feature flag

 

23

Other tools/services

 

As applicable , TBD

 

 

Key Benefits of Modernizing with Aurora PostgreSQL and AWS:

  1. Managed Services: Aurora PostgreSQL is fully managed, so tasks like backups, patching, and scaling are automated.

  1. High Availability: Aurora automatically replicates data across multiple availability zones, providing high availability and fault tolerance.

  1. Scalability: Aurora can scale automatically with serverless and can handle millions of transactions with minimal latency.

  1. Isolation: By breaking monolithic components into microservices, Each microservice can have its own database schema or table space within Aurora to support scalability and isolation.

  1. Flexibility and Cross-platform: http://ASP.NET Core is compatible with Windows, macOS and Linux. It also can be run on other OS. .NET 8 is truly cross-platform and integrates seamlessly with cloud platforms. 

  1. Performance: Aurora PostgreSQL provides up to 5x the throughput of standard PostgreSQL, making it ideal for SaaS solutions.

  1. Cost Efficiency: You only pay for what you use, and the ability to automatically scale Aurora helps optimize costs.

By adopting a cloud-native, SaaS-based approach using Amazon Aurora PostgreSQL, We can achieve higher agility, performance, and cost-efficiency for our modernized CMS Application.

Add label

Related content