SlideShare a Scribd company logo
1 of 26
RA FRAMEWORK
ARCHITECTURE
Overview
• Developing Quick and Easy JAVA based Web
  Applications.
• Proven N-Tier Architecture Model
   Tiers are loosely coupled.
• Abridges the Developer’s endeavor, evades redundancy,
  implements the hassle-free plug and play solutions.
   Reduces Time and effort
• Certainty of a high probability bug-free solution.
• Enhances the Support’s competency, provides a risk free
  solution, easy means of debugging in case of any issues.
• Easy Integration with the existing Legacy systems if any.
Web Application
• What’s a Web application?
   Provides a dynamic response based on the User request.
   Interacts with databases, file system, other applications
    and can have business logic engines that can be Customized
    as per the requirements.
• JAVA Web application as the names refers to uses the
  JAVA libraries, utilities, APIs…
• Advantages of Java Based Framework .
   Open Source with many API Libraries
   Portability
Necessity…
• Even though the JAVA related APIs, libraries etc are
  Open Source, unless they are utilized in a proper
  manner, managing the ‘ability’ of any application will be
  a challenge.
• For the easy management of any application, N-Tier
  architecture was developed where in the code is
  segregated into different tiers.
   For e.g.: Presentation tier, Business tier, Controller tier etc.,
• Avoid the difficulty during the customization of the
  open source architecture framework to the User
  requirements.
• Avoid the dependency on the Technical Domain
  expertise (which can be avoided).
N-Tier Components
• A Typical N-Tier has the following
   Presentation Layer – Client Apps like the various Browsers
   Middle Tier – Business Rules incorporation
   Data Tier – Data Layer and the DB used.
Ra Framework….
• All the issues of ‘…..ability’ related to software is
  successfully handled here.
   Reliability – As the tiers are loosely coupled and
    independent.
   Reusability – All the technical Components can be reused.
    Only the functionalities change based on the Application
    requirements.
   Maintainability – Enhancement, Up-gradation is much
    simpler because of Plug and Play.
   Portability – Being a pure JAVA Component it can run in
    any Platform.
   Applicability – can be easily Customized based on the
    requirements.
Ra Framework … – contd..
• Apart from the above mentioned qualities, there are
  other unique and extensive features.
   Database interface - Provides seamless integration with all
    database that has JDBC drivers.
   File system based data store – Under development.
   Reporting engine – Based on JASPER.
   Interface to Accounting Systems (Tally) – Under
    development.
   Service Oriented Architecture for Business Logic. – Under
    development.
   Supports Smart Browser Mobile Applications– Under
    development.
Overview of RA
Framework
• There are mainly four layers in multi-tier architecture.
  These are as follows
   Presentation Layer
   Middleware
   Business Layer
   Data Interface Layer
      Document Store Interface Layer
      Database Interface
        XSQL Interface
        Hibernate Interface
   Mailing Server
   Reporting Engine
   Accounting Interface
Pictorial View
Presentation Layer
• As seen by the User. It may be Browsers (PC/Mobile).
• It accesses the data from the Middleware and generates
  the corresponding User Interface (UI).
• It has the following components:
   View
       The View is typically implemented using JSP and Custom
        Tags to format the data.
       Supports theme based UI using CSS framework
       Using Tiles & Layout framework, different layouts can be
        designed to suit different requirements.
   Controller
       Controller decides which Middleware service to be used for
        the View.
       Controller is set of XML files that can be configured to control
        the mapping between view and the middleware
Presentation Layer – contd..
• Advantages:
   The JSPs, Struts XML files and the Tiles XML files
    templates are the same for all the applications. Only the
    fields and functionality differ.
      Template is available for these files using which the developer
       need to fill in the necessary parameters.
      The files enables easy modification or addition of the
       functionalities.
   Both Client side & Server side validations are done using
    XML configuration. JavaScript is used for Client Side
    validations & Java is used for Server side validations.
Presentation Layer – contd..
• Advantages:
   The developer need not write any JavaScript or Java files.
    RA Framework has rich collection of pre-defined
    validations.
   The CSS files that control the UI look and feel is also
    configurable based on the needs.
      Supports all the major Browsers like IE, Firefox, Opera, Safari,
       Chrome.
   The setup reduces the development time of the JSP, Struts
    and Tiles as the user just needs to plug in the needed form
    fields required on the Template.
Presentation Layer – contd..
• Advantages:
   Theme based UI. The CSS can be configured to support
    multiple colored themes.
   Multi lingual support for the labels in all the Unicode
    supported Languages.
Middleware
• The data extracted from the business logic layer which
  has to be presented to the user, and after processing
  passed back to the business logic layer, is contained here.
   The data can be represented in any form - JavaBeans, files,
    Network or even memory
• Typically JavaBeans are used to implement the
  Middleware object because JavaBeans easily can
  represent any type of data store, be it Tables, files etc.
Middleware – contd..
• In RA framework, XML replaces the Java Bean.
• The XML configuration files will be used to create Java
  Beans by the framework.
• The defining the set of middleware to be used by the
  presentation layer is also defined in the XML files.
Middleware – contd..
• Advantages:
   Developers need not have Java knowledge to implement the
    Middleware. Knowledge in XML is sufficient to configure
    and manage the middleware.
   XML configuration files will be transformed into
    middleware objects by the framework.
   In short, this is a Configurable XML based middleware.
Business Layer
• This layer uses Service Oriented Architecture. Business
  logic can be implemented as service and can be plugged
  into the middleware using configuration files.
Documents Store
• This layer provides integration to the file system data
  store.
   For e.g.: storage of images or documents or for
    implementing doc store. This layer uses JCR and provides
    integration to the data store.
Other Services
• Mailing Server - Java mail is used for implementation of
  mailing server. The application will be able to send /
  receive mails using this layer. This layer is a future
  enhancement.
• Reporting Engine - Jasper Report is used for
  implementation of the Reporting engine. Supported
  formats include PDF & Excel.
• Accounting Interfaces - Accounting Interfaces provides
  integration to accounting software. Using this layer
  application will be able to access data from Tally. This
  layer is a future enhancement.
Data Interface Layer
• This is the interface between the middleware and the
  database. Data interface layer provides the data to the
  middleware which will then processed and provided to
  presentation layer.
• It has the following components:
   Database Interface
   Oracle Framework
   Generic DB Interface
Database Interface
• This layer provides seamless integration between
  different database frameworks.
   Switching from one DB to another DB for an existing
    application is hassle- free. It needs only the development
    and configuration of the DB Tier only.
Oracle DB Framework
• This layer provides interface to oracle database. It uses
  Oracle’s native XSQL framework and hence it’s faster.
•  This tier consists of the FXSQL, XSQL and XSL. FXSQL
  consists of the DB SQL Queries; XSQL/XSL consists of
  the DB Transaction Oriented Functions.
• The FXSQL, XSQL and XSL files vary for the different
  applications and they can be plugged in or modified
  based on the requirements to add a new functionality or
  modify the existing one.  
Oracle DB Framework –
contd..
•  The Data format from the Business Logic Tier to the
  Database Interface Tier is in the XML format.
•  Oracle framework interacts with Oracle data store. This
  contains the DB Objects like View, Type, Sequences,
  Stored Procedures, and Functions etc. The Stored
  Procedures also can contain the Business Logic
Generic DB Framework
• It uses hibernate framework and hence it supports
  different databases like Oracle, MS SQL server, My SQL
  etc.,
•  The Hibernate DB XML files vary for the different
  Applications and they can be plugged in or modified
  based on the requirements to add a new Functionality or
  modify the existing one.
• The Data format from the Business Logic Tier to the
  Database Interface Tier is in the XML format.  
Q&A
Thank you.

More Related Content

What's hot (20)

JDBC Driver Types
JDBC Driver TypesJDBC Driver Types
JDBC Driver Types
 
Towards Requirements Management Issues in Excel
Towards Requirements Management Issues in ExcelTowards Requirements Management Issues in Excel
Towards Requirements Management Issues in Excel
 
Jdbc drivers
Jdbc driversJdbc drivers
Jdbc drivers
 
People soft overview
People soft overviewPeople soft overview
People soft overview
 
(ATS3-PLAT04) Database Connectivity for Application Development
(ATS3-PLAT04) Database Connectivity for Application Development(ATS3-PLAT04) Database Connectivity for Application Development
(ATS3-PLAT04) Database Connectivity for Application Development
 
Jdbc driver types
Jdbc driver typesJdbc driver types
Jdbc driver types
 
DBMS CONCEPT
DBMS CONCEPTDBMS CONCEPT
DBMS CONCEPT
 
Java ee introduction
Java ee introductionJava ee introduction
Java ee introduction
 
Jdbc Ppt
Jdbc PptJdbc Ppt
Jdbc Ppt
 
Java Database Connectivity (Advanced programming)
Java Database Connectivity (Advanced programming)Java Database Connectivity (Advanced programming)
Java Database Connectivity (Advanced programming)
 
Resume..
Resume..Resume..
Resume..
 
jdbc
jdbcjdbc
jdbc
 
jdbc
jdbcjdbc
jdbc
 
Manageability Enhancements of SQL Server 2012
Manageability Enhancements of SQL Server 2012Manageability Enhancements of SQL Server 2012
Manageability Enhancements of SQL Server 2012
 
java database connection (jdbc)
java database connection (jdbc)java database connection (jdbc)
java database connection (jdbc)
 
Peoplesoft PIA architecture
Peoplesoft PIA architecturePeoplesoft PIA architecture
Peoplesoft PIA architecture
 
Java Training in Chennai
Java Training in Chennai Java Training in Chennai
Java Training in Chennai
 
L19 Application Architecture
L19 Application ArchitectureL19 Application Architecture
L19 Application Architecture
 
Enterprise java unit-1_chapter-1
Enterprise java unit-1_chapter-1Enterprise java unit-1_chapter-1
Enterprise java unit-1_chapter-1
 
Rajesh jdbc
Rajesh   jdbcRajesh   jdbc
Rajesh jdbc
 

Viewers also liked

Database system utilities by dinesh
Database system utilities by dineshDatabase system utilities by dinesh
Database system utilities by dineshDinesh Kumar
 
Tera data install guide for linux
Tera data install guide for linuxTera data install guide for linux
Tera data install guide for linuxbajmi
 
Database Tools - ER Studio Facts and Features
Database Tools - ER Studio Facts and FeaturesDatabase Tools - ER Studio Facts and Features
Database Tools - ER Studio Facts and FeaturesMichael Findling
 
Hp Polyserve Database Utility For Sql Server Consolidation
Hp Polyserve Database Utility For Sql Server ConsolidationHp Polyserve Database Utility For Sql Server Consolidation
Hp Polyserve Database Utility For Sql Server ConsolidationCB UTBlog
 
Literature Survey on Mobile Database Tools
Literature Survey on Mobile Database ToolsLiterature Survey on Mobile Database Tools
Literature Survey on Mobile Database ToolsSisuru Kekiriwaragodage
 
MySQL Utilities -- Cool Tools For You: PHP World Nov 16 2016
MySQL Utilities -- Cool Tools For You: PHP World Nov 16 2016MySQL Utilities -- Cool Tools For You: PHP World Nov 16 2016
MySQL Utilities -- Cool Tools For You: PHP World Nov 16 2016Dave Stokes
 

Viewers also liked (6)

Database system utilities by dinesh
Database system utilities by dineshDatabase system utilities by dinesh
Database system utilities by dinesh
 
Tera data install guide for linux
Tera data install guide for linuxTera data install guide for linux
Tera data install guide for linux
 
Database Tools - ER Studio Facts and Features
Database Tools - ER Studio Facts and FeaturesDatabase Tools - ER Studio Facts and Features
Database Tools - ER Studio Facts and Features
 
Hp Polyserve Database Utility For Sql Server Consolidation
Hp Polyserve Database Utility For Sql Server ConsolidationHp Polyserve Database Utility For Sql Server Consolidation
Hp Polyserve Database Utility For Sql Server Consolidation
 
Literature Survey on Mobile Database Tools
Literature Survey on Mobile Database ToolsLiterature Survey on Mobile Database Tools
Literature Survey on Mobile Database Tools
 
MySQL Utilities -- Cool Tools For You: PHP World Nov 16 2016
MySQL Utilities -- Cool Tools For You: PHP World Nov 16 2016MySQL Utilities -- Cool Tools For You: PHP World Nov 16 2016
MySQL Utilities -- Cool Tools For You: PHP World Nov 16 2016
 

Similar to RA Framework Architecture Overview

Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2sandeep54552
 
enterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfenterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfEidTahir
 
Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic ReviewFrameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Reviewnetc2012
 
Introduction to j2 ee frameworks
Introduction to j2 ee frameworksIntroduction to j2 ee frameworks
Introduction to j2 ee frameworksMukesh Kumar
 
J2EE PPT --CINTHIYA.M Krishnammal college for women
J2EE PPT --CINTHIYA.M Krishnammal college for womenJ2EE PPT --CINTHIYA.M Krishnammal college for women
J2EE PPT --CINTHIYA.M Krishnammal college for womenlissa cidhi
 
Chapter 12:Understanding Server-Side Technologies
Chapter 12:Understanding Server-Side TechnologiesChapter 12:Understanding Server-Side Technologies
Chapter 12:Understanding Server-Side TechnologiesIt Academy
 
Web programming and development - Introduction
Web programming and development - IntroductionWeb programming and development - Introduction
Web programming and development - IntroductionJoel Briza
 
Introduction to ejb and struts framework
Introduction to ejb and struts frameworkIntroduction to ejb and struts framework
Introduction to ejb and struts frameworks4al_com
 
Deliver Dynamic and Interactive Web Content in J2EE Applications
Deliver Dynamic and Interactive Web Content in J2EE ApplicationsDeliver Dynamic and Interactive Web Content in J2EE Applications
Deliver Dynamic and Interactive Web Content in J2EE Applicationsinfopapers
 
Lecture 19 dynamic web - java - part 1
Lecture 19   dynamic web - java - part 1Lecture 19   dynamic web - java - part 1
Lecture 19 dynamic web - java - part 1Д. Ганаа
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC vipin kumar
 
Oracle Weblogic for EBS and obiee (R12.2)
Oracle Weblogic for EBS and obiee (R12.2)Oracle Weblogic for EBS and obiee (R12.2)
Oracle Weblogic for EBS and obiee (R12.2)Berry Clemens
 
OpenProdoc Overview
OpenProdoc OverviewOpenProdoc Overview
OpenProdoc Overviewjhierrot
 
Vivek_Ojha (1)
Vivek_Ojha (1)Vivek_Ojha (1)
Vivek_Ojha (1)Vivek Ojha
 

Similar to RA Framework Architecture Overview (20)

Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2
 
enterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfenterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdf
 
Devjyotippt
DevjyotipptDevjyotippt
Devjyotippt
 
Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic ReviewFrameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Review
 
Ravi Kiran Resume
Ravi Kiran ResumeRavi Kiran Resume
Ravi Kiran Resume
 
Introduction to j2 ee frameworks
Introduction to j2 ee frameworksIntroduction to j2 ee frameworks
Introduction to j2 ee frameworks
 
4. J2EE.pptx
4. J2EE.pptx4. J2EE.pptx
4. J2EE.pptx
 
J2EE PPT --CINTHIYA.M Krishnammal college for women
J2EE PPT --CINTHIYA.M Krishnammal college for womenJ2EE PPT --CINTHIYA.M Krishnammal college for women
J2EE PPT --CINTHIYA.M Krishnammal college for women
 
Chapter 12:Understanding Server-Side Technologies
Chapter 12:Understanding Server-Side TechnologiesChapter 12:Understanding Server-Side Technologies
Chapter 12:Understanding Server-Side Technologies
 
Web programming and development - Introduction
Web programming and development - IntroductionWeb programming and development - Introduction
Web programming and development - Introduction
 
Introduction to ejb and struts framework
Introduction to ejb and struts frameworkIntroduction to ejb and struts framework
Introduction to ejb and struts framework
 
Prashant Patel
Prashant PatelPrashant Patel
Prashant Patel
 
Spring framework
Spring frameworkSpring framework
Spring framework
 
Deliver Dynamic and Interactive Web Content in J2EE Applications
Deliver Dynamic and Interactive Web Content in J2EE ApplicationsDeliver Dynamic and Interactive Web Content in J2EE Applications
Deliver Dynamic and Interactive Web Content in J2EE Applications
 
Lecture 19 dynamic web - java - part 1
Lecture 19   dynamic web - java - part 1Lecture 19   dynamic web - java - part 1
Lecture 19 dynamic web - java - part 1
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC
 
Oracle Weblogic for EBS and obiee (R12.2)
Oracle Weblogic for EBS and obiee (R12.2)Oracle Weblogic for EBS and obiee (R12.2)
Oracle Weblogic for EBS and obiee (R12.2)
 
OpenProdoc Overview
OpenProdoc OverviewOpenProdoc Overview
OpenProdoc Overview
 
SQL_DBA USA_M&T Bank
SQL_DBA USA_M&T BankSQL_DBA USA_M&T Bank
SQL_DBA USA_M&T Bank
 
Vivek_Ojha (1)
Vivek_Ojha (1)Vivek_Ojha (1)
Vivek_Ojha (1)
 

Recently uploaded

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 

Recently uploaded (20)

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 

RA Framework Architecture Overview

  • 2. Overview • Developing Quick and Easy JAVA based Web Applications. • Proven N-Tier Architecture Model  Tiers are loosely coupled. • Abridges the Developer’s endeavor, evades redundancy, implements the hassle-free plug and play solutions.  Reduces Time and effort • Certainty of a high probability bug-free solution. • Enhances the Support’s competency, provides a risk free solution, easy means of debugging in case of any issues. • Easy Integration with the existing Legacy systems if any.
  • 3. Web Application • What’s a Web application?  Provides a dynamic response based on the User request.  Interacts with databases, file system, other applications and can have business logic engines that can be Customized as per the requirements. • JAVA Web application as the names refers to uses the JAVA libraries, utilities, APIs… • Advantages of Java Based Framework .  Open Source with many API Libraries  Portability
  • 4. Necessity… • Even though the JAVA related APIs, libraries etc are Open Source, unless they are utilized in a proper manner, managing the ‘ability’ of any application will be a challenge. • For the easy management of any application, N-Tier architecture was developed where in the code is segregated into different tiers.  For e.g.: Presentation tier, Business tier, Controller tier etc., • Avoid the difficulty during the customization of the open source architecture framework to the User requirements. • Avoid the dependency on the Technical Domain expertise (which can be avoided).
  • 5. N-Tier Components • A Typical N-Tier has the following  Presentation Layer – Client Apps like the various Browsers  Middle Tier – Business Rules incorporation  Data Tier – Data Layer and the DB used.
  • 6. Ra Framework…. • All the issues of ‘…..ability’ related to software is successfully handled here.  Reliability – As the tiers are loosely coupled and independent.  Reusability – All the technical Components can be reused. Only the functionalities change based on the Application requirements.  Maintainability – Enhancement, Up-gradation is much simpler because of Plug and Play.  Portability – Being a pure JAVA Component it can run in any Platform.  Applicability – can be easily Customized based on the requirements.
  • 7. Ra Framework … – contd.. • Apart from the above mentioned qualities, there are other unique and extensive features.  Database interface - Provides seamless integration with all database that has JDBC drivers.  File system based data store – Under development.  Reporting engine – Based on JASPER.  Interface to Accounting Systems (Tally) – Under development.  Service Oriented Architecture for Business Logic. – Under development.  Supports Smart Browser Mobile Applications– Under development.
  • 8. Overview of RA Framework • There are mainly four layers in multi-tier architecture. These are as follows  Presentation Layer  Middleware  Business Layer  Data Interface Layer  Document Store Interface Layer  Database Interface  XSQL Interface  Hibernate Interface  Mailing Server  Reporting Engine  Accounting Interface
  • 10. Presentation Layer • As seen by the User. It may be Browsers (PC/Mobile). • It accesses the data from the Middleware and generates the corresponding User Interface (UI). • It has the following components:  View  The View is typically implemented using JSP and Custom Tags to format the data.  Supports theme based UI using CSS framework  Using Tiles & Layout framework, different layouts can be designed to suit different requirements.  Controller  Controller decides which Middleware service to be used for the View.  Controller is set of XML files that can be configured to control the mapping between view and the middleware
  • 11. Presentation Layer – contd.. • Advantages:  The JSPs, Struts XML files and the Tiles XML files templates are the same for all the applications. Only the fields and functionality differ.  Template is available for these files using which the developer need to fill in the necessary parameters.  The files enables easy modification or addition of the functionalities.  Both Client side & Server side validations are done using XML configuration. JavaScript is used for Client Side validations & Java is used for Server side validations.
  • 12. Presentation Layer – contd.. • Advantages:  The developer need not write any JavaScript or Java files. RA Framework has rich collection of pre-defined validations.  The CSS files that control the UI look and feel is also configurable based on the needs.  Supports all the major Browsers like IE, Firefox, Opera, Safari, Chrome.  The setup reduces the development time of the JSP, Struts and Tiles as the user just needs to plug in the needed form fields required on the Template.
  • 13. Presentation Layer – contd.. • Advantages:  Theme based UI. The CSS can be configured to support multiple colored themes.  Multi lingual support for the labels in all the Unicode supported Languages.
  • 14. Middleware • The data extracted from the business logic layer which has to be presented to the user, and after processing passed back to the business logic layer, is contained here.  The data can be represented in any form - JavaBeans, files, Network or even memory • Typically JavaBeans are used to implement the Middleware object because JavaBeans easily can represent any type of data store, be it Tables, files etc.
  • 15. Middleware – contd.. • In RA framework, XML replaces the Java Bean. • The XML configuration files will be used to create Java Beans by the framework. • The defining the set of middleware to be used by the presentation layer is also defined in the XML files.
  • 16. Middleware – contd.. • Advantages:  Developers need not have Java knowledge to implement the Middleware. Knowledge in XML is sufficient to configure and manage the middleware.  XML configuration files will be transformed into middleware objects by the framework.  In short, this is a Configurable XML based middleware.
  • 17. Business Layer • This layer uses Service Oriented Architecture. Business logic can be implemented as service and can be plugged into the middleware using configuration files.
  • 18. Documents Store • This layer provides integration to the file system data store.  For e.g.: storage of images or documents or for implementing doc store. This layer uses JCR and provides integration to the data store.
  • 19. Other Services • Mailing Server - Java mail is used for implementation of mailing server. The application will be able to send / receive mails using this layer. This layer is a future enhancement. • Reporting Engine - Jasper Report is used for implementation of the Reporting engine. Supported formats include PDF & Excel. • Accounting Interfaces - Accounting Interfaces provides integration to accounting software. Using this layer application will be able to access data from Tally. This layer is a future enhancement.
  • 20. Data Interface Layer • This is the interface between the middleware and the database. Data interface layer provides the data to the middleware which will then processed and provided to presentation layer. • It has the following components:  Database Interface  Oracle Framework  Generic DB Interface
  • 21. Database Interface • This layer provides seamless integration between different database frameworks.  Switching from one DB to another DB for an existing application is hassle- free. It needs only the development and configuration of the DB Tier only.
  • 22. Oracle DB Framework • This layer provides interface to oracle database. It uses Oracle’s native XSQL framework and hence it’s faster. •  This tier consists of the FXSQL, XSQL and XSL. FXSQL consists of the DB SQL Queries; XSQL/XSL consists of the DB Transaction Oriented Functions. • The FXSQL, XSQL and XSL files vary for the different applications and they can be plugged in or modified based on the requirements to add a new functionality or modify the existing one.  
  • 23. Oracle DB Framework – contd.. •  The Data format from the Business Logic Tier to the Database Interface Tier is in the XML format. •  Oracle framework interacts with Oracle data store. This contains the DB Objects like View, Type, Sequences, Stored Procedures, and Functions etc. The Stored Procedures also can contain the Business Logic
  • 24. Generic DB Framework • It uses hibernate framework and hence it supports different databases like Oracle, MS SQL server, My SQL etc., •  The Hibernate DB XML files vary for the different Applications and they can be plugged in or modified based on the requirements to add a new Functionality or modify the existing one. • The Data format from the Business Logic Tier to the Database Interface Tier is in the XML format.  
  • 25. Q&A

Editor's Notes

  1. T