LMIS - Solution Architecture and Tech Design (1).pptx

merchantsafa07 5 views 27 slides Oct 20, 2025
Slide 1
Slide 1 of 27
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27

About This Presentation

LMIS Solution Architecture


Slide Content

Solution Architecture and Tech Design LMIS December 15 th, 2020

Glossary of Terms ID Term Definition 1 Solution Definition A robust document describing needs, business goals, objectives, key audiences, success measures and specific metrics to measure effectiveness of the solution to be developed 2 Solution Definition Overall list of capabilities and features that will address the business needs and other internal stakeholders. Prioritization of the overall backlog and features. 3 Solution Definition Detailed schedule, activities, deliverables and sprint plan for the Agile development 4 Solution Design Visual representation of key features of the solution in terms of UX design concepts 5 Solution Architecture Vision High level future state architecture vision for an integrated solution. This document will describe the architecture vision in terms of the system context diagram, data sources, data integration flows, technology stack and infrastructure. 6 Solution Execution Working software implementated and validated on agreed to infrastructure, technology and tools. 7 Quality Assurance A plan on how testing will be done on the components and their integrations. 8 Quality Assurance A documentation of the users, features, and components of the system and how they can be accessed and utilized.

INTRODUCTION

Purpose of this Document The purpose of this document is to provide a comprehensive understanding of the overall Solution Architecture and Design that will enable and support the LMIS application goals and objectives. This document is primarily intended for, but not limited to, the following audiences: Business Stakeholders Technology Stakeholders Delivery Team Members Exosystem Partners It Operations and Support IMPORTANT: This document is intended to be a living document, in that it serves to reflect the state of understanding based on the best information available as of the date the document is published. If new information is available after the published date, the development team will make every effort to incorporate such thinking and publish a revised document to all relevant stakeholders.

What is Solution Architecture? The term Solution Architecture has many subjective definitions based on context. In the context of this document, the following definition is being applied. “ A solution architecture (SA) is an architectural description on a specific solution. SAs combine guidance from different enterprise architecture viewpoints (business, information and technical), as well as from the enterprise solution architecture (ESA) “ - Gartner 2013 Aligned with the afore stated definition, this document will describe the Solution Architecture for the LMIS platform in terms of its business, Information, Application and Technical Architectures and further supported by an understanding of key assumptions, constraints and dependencies.

Business Value of Solution Architecture Digital Transformation Programs are inherently complex involving multiple stakeholders, geographies, audiences, requirements, technologies, regulations, perspectives, assumptions, decisions and most definitely budgets. Hence, a solution that must cater to and enable such diversity is also inherently complex and the business risks of failing are high with serious consequences. The biggest and most real challenge is misalignment on goals, objectives, scope, requirements and governance which then have a trickle down impact on the solution being built. The biggest value then of defining and communication the Solution Architecture are: Shared understanding across stakeholder groups on goals, objectives, scope, requirements Ensuring that technology decisions are aligned with business goals Proactive monitoring and management of planned and unplanned risks Maximizing the chances for success through well-defined governance

2. BUSINESS ARCHITECTURE

Business Architecture Overview Business Architecture is defined as “a blueprint of the enterprise that provides a common understanding of the organization and is used to align strategic objectives and tactical demands”. Business architecture is the bridge between the enterprise business model and enterprise strategy on one side, and the business functionality of the enterprise on the other side. It often enables the value stream of Strategy to Execution. For LMIS, the Project Manager is responsible for defining and designing the business architecture, working collaboratively with key stakeholders. In this document the business architecture for LMIS will be designed as follows: Actors - Key audiences for who the solution is being designed Solution Context Diagram - Single page visualization of actors, channels, functions User Journey Map - High level user flow Business Flows - End-to-End set of activities that deliver value to internal and external stakeholders Organization - Captures the relationships among roles, capabilities and business units (internal and external)

Key Audience Segments & Actors External Users Internal Users External Partners

Actor Descriptions ID CATEGORY ACTOR DESCRIPTION 1 External User Job Seeker An individual user that searches and applies for jobs 2 External User Employer A user that is associated with a company. They create jobs and manage the job registration process as an agent of the company. 3 Internal User System Admin A user that is an agent of the ministry of labour and social security that manages the details of the system. 4 Internal User Content Admin A user that is an agent of the ministry of labour and social security that manages the content of the platform ( e.g. articles) 5 Internal User Job Officer A user that is an agent of the ministry of labour and social security that manages jobs and job seekers. They often perform tasks on behalf of job seekers and companies. 6 External Partner Communications Partner Responsible for managing the communications gateway, ensuring last mile delivery of messages and technical support

Solution Context Diagram User Accounts, Profiles & Permissions Content & Action Plans Progress & Engagement Data Content Management Job Management Company Management User Management Admin Features Landing Experience Onboarding Enroll Responsive Web Application Account Mgmt Login Pwd Mgmt Notification Preferences Engagement Rule based Notifications Register Research Skills bank Labour Market Intelligence Career Development Employer Resources Job Job Matching Job Management Resume Management Data Reporting Job Seeker Employer System Admin Content Admin Users Functions Data

Solution Components and Descriptions ID COMPONENT ACTOR DESCRIPTION 1 Enroll A robust document describing needs, business goals, objectives, key audiences, success measures and specific metrics to measure effectiveness of the solution to be developed 2 Account Management Prioritized Backlog [Excel] Overall list of capabilities and features that will address the business needs and other internal stakeholders. Prioritization of the overall backlog and features. 3 Research Work Plan [Doc] Detailed schedule, activities, deliverables and sprint plan for the Agile development 4 Job UX Designs [InVision/PDF] Visual representation of key features of the solution in terms of UX design concepts 5 Admin Features Solution Architecture (Data and Technology) Vision [PPT] High level future state architecture vision for an integrated solution. This document will describe the architecture vision in terms of the system context diagram, data sources, data integration flows, technology stack and infrastructure. 6 Application Data Working Software [Software] Working software implementated and validated on agreed to infrastructure, technology and tools. 7 Quality Assurance Test Plan [PPT] A plan on how testing will be done on the components and their integrations. 8 Quality Assurance User Manual [Doc] A documentation of the users, features, and components of the system and how they can be accessed and utilized.

3. INFORMATION ARCHITECTURE

Information System Architecture Overview The Information System Architecture follows industry best practices. Utilizing a “ mobile-friendly ” approach for the presentation interfaces and a suite of small services deliver business capabilities which are independently deployable with a minimum of centralized management employing ML models and a REST software architecture. Fluid user experience utilizing adaptive, responsive design techniques Business processes are choreographed using RESTFUL protocols and a lightweight messaging bus. Independently deployable services are published with explicit interface definitions. Secure efficient and reliable data management provides access to internal data sources

4. TECHNICAL ARCHITECTURE

Application and Technical Architecture Overview Application Architecture describes the behaviour of applications used in a business, focused on how they interact with each other and with users, It is focused on the data consumed and produced by applications rather than their internal structure. Furthermore application architectures demonstrate how application modules or capabilities are mapped to business functions to ensure greater business and IT alignment. The application architecture is specified on the basis of business and functional requirements. This involved defining the interaction between application modules, packages, databases, and middleware systems in terms of functional coverage. Technical Architecture describes how the chosen hardware, software and network components are deshmed to power the application capabilities and its integration with the ecosystem of internal and external systems.

Application and Technical Architecture (cont..) The development team is responsible for defining, designing and implementing the Application and Technical architectures, working collaboratively with the MLSS team. In this document, the Application and Technical architectures will be described as follows: Architecture Guiding Principles System Context Diagram Application Architecture (Services, Interactions, Interfaces) Content Architecture Data Architecture (Data Domains, Data Flow) Integration Architecture (Middleware, Communications) Technical Architecture (Layers, Hardware, Software, Protocols, Deployment) Security Architecture (Authentication, Role Based Authorization)

EXECUTION PLAN Implementation Strategy - Deliverables ID Category Deliverables 1 Experience The solution must be designed to deliver a comprehensive, personalized, frictionless and confidence building experience across all channels and audience groups 2 Engagement Build or leverage platform capabilities that can capture specific actions by audience and apply the usage context to generate deeper insights that can help drive stronger engagement 3 Audience Centric Ensure that the solution is personalized to each unique audience in order to deliver a tailored and delightful experience 4 Secure The solution must employe layered security mechanisms and protocols to ensure strong authentication, role based authorization and periodic security audits to ensure audience trust while meeting regulatory and compliance requirements 5 Best of Breed Technology Build the solution using best of breed tools and technology to achieve speed to value while balancing cost, quality and risk. Buy for Commodity, Build for IP 6 Platform Driven Conceive and implement the solution to function as a platform for audience engagement

Application Overview Consistent with the goals and objectives for the LMIS platform, combined with due consideration for broader industry best thinking and existing MLSS standards, and the need to develop a secure, externally hosted, content and experience rich, responsive and engaging site, the following key application building blocks are envisioned: Drupal 8 Web Content Management framework and platform powering a Responsive and Content rich site and application functionality which will deliver a personalized and highly engaging experience users.

1 Fully leverage the core capabilities of the Drupal 8 CMS framework including, but not limited to Themes, User Permissions, Blocks, Modules and Nodes 2 Leverage standard Drupal 8 Authentication and Authorization (Role Based User Access - User Permissions) framework to secure and personalize the application. 3 Leverage standard Drupal 8 language, locale, content translation and configuration translations modules to support multilingual sites in the future. 4 Leverage native support for multisite installations offered by the integrated Drupal and Acquia platform. 5 Leverage the Drupal 8 Database API which provides a standard, vendor-agnostic abstraction layer for accessing database servers 6 Leverage the Drupal 9 WSDATA module for accessing external systems that publish web service based interfaces to access data 7 Leverage Acquia Cloud Enterprise platform’s standard and out-of-the-box capabilities, tools, best practices and standards that integrate with Git and GitHub to achieve a streamlined development and deployment process and workflow for build and release engineering activities Application Overview

System Context Diagram LMIS Core REST API Admin UI Code + Plugins Front-end templates + CSS MySQL Web Server REDIS MongoDB DATABASES/QUEUES Resume Parser Notification Server INTERNAL SERVICES EXTERNAL SERVICES ReDash

Data Architecture - Key Considerations 1 Fully managed and hosted service for the storage and retrieval of protected data via RESTful API 2 Capable of supporting multiple solution environments such as integration and testing 3 Capable of integrating with multiple device vendors, directly or indirectly 4 Provides SDK and documentation in support of developing solutions on the platform 5 Provides access to the data and/or tools for analyzing and reporting on the data captured by these solutions 6 Demonstrates high availability and reliability in real-time, production data scenarios 7 Provides ability to customize the behavior of the platform (e.g. data cleansing and validation) 8 Provides ability to export data in reusable format(s) 9 Capable of integrating with automatic build and deploy systems

Distilling Data Domains from Requirements Data Domains USER PROFILES COMPANY DATA JOBS REPORTS CONTENT

Technology Stack and Components # Component Technology Version 2 Web Server IIS 3 Database MySQL 5.6 4 Website Scripting Language PHP 7.3 5 Caching Memcache 2.2.0 6 Frontend UI Vue.js, Bootstrap 2.5.xxx, 3.3.xxx 7 Content Management Drupal CMS 9

Security Architecture - Overall The LMIS platform is being architected and designed using a multi-layered approach to security, both at an: Application Level Infrastructure Level More specifically, the following elements of security will be addressed to ensure a safe and trust enhancing experience for users of the LMIS platform. APPLICATION SECURITY Authentication Authorization (Role Based Access) Data In Motion Data Auditing INFRASTRUCTURE SECURITY Confidentiality Physical Security System Access LAMP Stack Security Activity Logging Network Security Security Monitoring Disaster Recovery

Security Architecture - Application Security 1. Authentication All users of the application will need to be authenticated before using the system All communications between the client (web or mobile browser) and the LMIS platform will be via HTTPS (Port 443) and SSL/TLS. That way, all user provided data in transit is encrypted. Non HTTPS traffic will be secured/blocked. Authentication will be handled by Authentication subsystem supported by Drupal 9 CMS Inbound traffic to the application from the client and any external interfaces will pass thru appropriate physical and virtual firewalls to enforce perimeter level protections and authentication Access to Servers within all environments will be properly authenticated through proper credentials and approvals 2. Authorization (Role Based Access) All authenticated users of the system will be assigned one or more roles to properly authorize use of application All permissions will be assigned to roles and authenticated users will inherit from the roles they are assigned to Users, Roles, Permissions will be managed and administered via core Drupal 9 user management capabilities. Fine grained access down to a page/button/link/content element will be managed via Drupal 9 CMS features 3. Data In Motion Data being sent from the client to the application will be encrypted over the wire and until it reaches the Drupal 9 based LMIS application All Data exchanged between Cloud Providers and Communications Gateway will be encrypted using access via HTTPS RESTful APIs 4. Data Auditing Application Data stored in the Drupal 9 MySQL database will capture appropriate attributes such as create user, create datetime, update user and update datetime to support auditing