Comprehensive Solution Architecture and Tech Design for LMIS December 15th, 2020

Slide Note
Embed
Share

This document outlines the Solution Architecture and Tech Design for LMIS, providing a detailed description of key components such as Solution Definition, Design, Architecture Vision, Execution, and Quality Assurance. It serves as a guide for stakeholders involved in the development and implementation of the LMIS application, emphasizing the importance of understanding key concepts and objectives for successful execution.


Uploaded on Sep 26, 2024 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Solution Architecture and Tech Design LMIS December 15th, 2020

  2. 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.

  3. 1. INTRODUCTION

  4. 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.

  5. 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.

  6. 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: 1. 2. 3. 4. 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

  7. 2. BUSINESS ARCHITECTURE

  8. 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: 1. 2. 3. 4. 5. 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)

  9. Key Audience Segments & Actors External Users Internal Users External Partners

  10. 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

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

  12. 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.

  13. 3. INFORMATION ARCHITECTURE

  14. 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 Independently deployable services are published with explicit interface definitions. Business processes are choreographed using RESTFUL protocols and a lightweight messaging bus. Secure efficient and reliable data management provides access to internal data sources

  15. 4. TECHNICAL ARCHITECTURE

  16. 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.

  17. 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: 1. Architecture Guiding Principles 2. System Context Diagram 3. Application Architecture (Services, Interactions, Interfaces) 4. Content Architecture 5. Data Architecture (Data Domains, Data Flow) 6. Integration Architecture (Middleware, Communications) 7. Technical Architecture (Layers, Hardware, Software, Protocols, Deployment) 8. Security Architecture (Authentication, Role Based Authorization)

  18. EXECUTION PLAN Implementation Strategy - Deliverables ID Category Deliverables 1 The solution must be designed to deliver a comprehensive, personalized, frictionless and confidence building experience across all channels and audience groups Experience 2 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 Engagement 3 Audience Centric Ensure that the solution is personalized to each unique audience in order to deliver a tailored and delightful experience 4 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 Secure 5 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 Best of Breed Technology 6 Platform Driven Conceive and implement the solution to function as a platform for audience engagement

  19. 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: 1. 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.

  20. Application Overview Fully leverage the core capabilities of the Drupal 8 CMS framework including, but not limited to Themes, User Permissions, Blocks, Modules and Nodes 1 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

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

  22. 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

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

  24. 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

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

  26. 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

Related


More Related Content