Project Horizon Technical Overview. Bob Rullo GM; Presentation Architecture

Similar documents
Project Horizon Technical Overview. Steven Forman Principal Technical Consultant

MAKING THE BUSINESS CASE MOVING ORACLE FORMS TO THE WEB

Oracle Fusion Middleware 11g: Build Applications with ADF Accel

<Insert Picture Here>

Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX

Oracle Forms and Oracle APEX The Odd Couple

Banner Student. Banner Student: Communication Plan, Population Selection and Letter Generation. Description

Full Stack Web Developer Nanodegree Syllabus

Oracle Fusion Middleware 11g: Build Applications with ADF I

Building modern enterprise applications from scratch: lessons learned DOAG 2014 Dr. Clemens Wrzodek

Full Stack Developer with Java

P a g e 1. Danish Tecnological Institute. Developer Collection Online Course k Developer Collection

Developing Applications with Java EE 6 on WebLogic Server 12c

1Z Oracle. Java Enterprise Edition 5 Enterprise Architect Certified Master

SUN Sun Certified Enterprise Architect for J2EE 5. Download Full Version :

Application Design and Development: October 30

Building Effective ASP.NET MVC 5.x Web Applications using Visual Studio 2013

Fast Track Model Based Design and Development with Oracle9i Designer. An Oracle White Paper August 2002

Oracle Fusion Middleware 11g: Build Applications with ADF I

Groovy & Grails in Depth

An Oracle White Paper April Oracle Application Express 5.0 Overview

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints

FULL STACK FLEX PROGRAM

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments.

Open Source Library Developer & IT Pro

Web Frameworks MMIS 2 VU SS Denis Helic. March 10, KMI, TU Graz. Denis Helic (KMI, TU Graz) Web Frameworks March 10, / 18

Imagination To Realization

ECLIPSE PERSISTENCE PLATFORM (ECLIPSELINK) FAQ

THIS IS ONLY SAMPLE RESUME - DO NOT COPY AND PASTE INTO YOUR RESUME. WE ARE NOT RESPONSIBLE Name: xxxxxx

J2EE Technologies. Industrial Training

ENTERPRISE MOBILE APPLICATION DEVELOPMENT WITH WAVEMAKER

1. I NEED TO HAVE MULTIPLE VERSIONS OF VISUAL STUDIO INSTALLED IF I M MAINTAINING APPLICATIONS THAT RUN ON MORE THAN ONE VERSION OF THE.

"Web Age Speaks!" Webinar Series

Oracle Forms Modernization Through Automated Migration. A Technical Overview

Modern App Architecture

Introduction. Key Features and Benefits

Java EE Application Assembly & Deployment Packaging Applications, Java EE modules. Model View Controller (MVC)2 Architecture & Packaging EJB Module

Oracle - Developing Applications for the Java EE 7 Platform Ed 1 (Training On Demand)

The Role of Standards and Open Source Software in Student Information Systems

JBoss World 2009 Aaron Darcy

MarkLogic Server. Reference Application Architecture Guide. MarkLogic 9 May, Copyright 2017 MarkLogic Corporation. All rights reserved.

Automated Testing of Tableau Dashboards

Oracle Application Development Framework Overview

Java- EE Web Application Development with Enterprise JavaBeans and Web Services

Ryan Rich - Software Developer & Architect

The NoPlsql and Thick Database Paradigms

Read & Download (PDF Kindle) PHP Ajax Cookbook

What's New in ActiveVOS 7.1 Includes ActiveVOS 7.1.1

A Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group

Using Data Science to deliver Workforce & Labour Market Insights. Gary Gan Co-Founder, JobKred

Enterprise Systems & Frameworks

Development of an e-library Web Application

FULL STACK FLEX PROGRAM

(p t y) lt d. 1995/04149/07. Course List 2018

Reading Writing Speaking Reading Writing Speaking. English Intermediate Intermediate Elementary Intermediate Intermediate Elementary

Full Stack Java Developer Course

Chapter 6 Enterprise Java Beans

Spring Web Services Tutorial With Example In

<Insert Picture Here> Forms Strategies: Modernizing Your Oracle Forms Investment

Solution overview VISUAL COBOL BUSINESS CHALLENGE SOLUTION OVERVIEW BUSINESS BENEFIT

FULL STACK FLEX PROGRAM

Web Application Development Using Spring, Hibernate and JPA

Application Integration with WebSphere Portal V7

Java SE7 Fundamentals

Review. Fundamentals of Website Development. Web Extensions Server side & Where is your JOB? The Department of Computer Science 11/30/2015

MarkLogic 8 Overview of Key Features COPYRIGHT 2014 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

20486 Developing ASP.NET MVC 5 Web Applications

BEAWebLogic. Portal. Overview

Migrating traditional Java EE applications to mobile

Ur/Web: A Simple Model for Programming the Web. Adam Chlipala MIT CSAIL POPL 2015 January 15, 2015

Extreme Java Productivity with Spring Roo and Spring 3.0

Private Cloud Management Manage and Operate Applications

LEARN JAVA FOR WEB DEVELOPMENT

FULL STACK FLEX PROGRAM

Mail: Web: juergen-schuster-it.de

Java Enterprise Edition

Composer Guide for JavaScript Development

Course Details. Skills Gained. Who Can Benefit. Prerequisites. View Online URL:

Tecnológico de Monterrey Coding Boot Camp LIVE ONLINE PROGRAM

JAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP

Software Design COSC 4353/6353 DR. RAJ SINGH

Job Description: Junior Front End Developer

Model Driven Development with EMF and EclipseLink (experiences in MDD and generating user interfaces)

Groovy and Grails in Google App Engine

Deploying to the Edge CouchDB

FULL STACK FLEX PROGRAM

ASP.NET MVC Training

Books by Michael R. Ault

THE DUAL MODEL ARCHITECTURE

Flex 3 Pre-release Tour

IT Training Catalog Attend face-to-face in the classroom, remotelive, on-demand or on site at your facility

Etanova Enterprise Solutions

FERNANDO ALEGRIA. Full Stack Web Developer CAREER SUMMARY WORK EXPERIENCE

Achieving Continuous Delivery - Micro Services. - Vikram Gadang

Oracle Corporation

Efficient Object-Relational Mapping for JAVA and J2EE Applications or the impact of J2EE on RDB. Marc Stampfli Oracle Software (Switzerland) Ltd.

Peter Moskovits Principal Product Manager Oracle Corporation. Sue Vickers Group Manager Oracle Corporation

: 20488B: Customized Developing Microsoft SharePoint Server

Hackveda Appsec Labs Java Programming Course and Internship Program Description:

SOFTWARE DEVELOPMENT SERVICES WEB APPLICATION PORTAL (WAP) TRAINING. Intuit 2007

Transcription:

Project Horizon Technical Overview Bob Rullo GM; Presentation Architecture robert.rullo@sungardhe.com

Agenda Banner Evolution Overview Project Horizon Overview Project Horizon Architecture Review Preparing for Project Horizon What skills? When? Questions and Answers 2

Banner Evolution Overview

Banner Evolution Features New architecture to keep Banner technically current and extensible An improved user interface across the Banner Digital Campus Expanded multi-entity processing support Enables two or more entities to coexist in a single application architecture Setting foundation for future releases Provide new Banner capabilities sooner to you with less disruption 4

Banner Evolution Banner Evolution Project Horizon Database Changes Project MEP 5

Banner Evolution Timing Database Changes - Q1 2011 All core Banner applications, Banner Student Aid for Canada and other solution center localizations of Banner applications What s being updated? Expand the data structure by adding surrogate keys and optimistic lock tokens to support the new technical architecture Expand the data structure to standardize and support multi-entity processing capability 6

Banner Evolution Timing Banner Student UI Modernization - Q1 2011 Provide new user interface for Banner Student Project Horizon Consolidate business logic in the middle tier application server in order to improve Banner s technical currency and architecture Project Horizon 7

Banner Evolution Timing UI Modernization 2011/2012 Provide new user interface for the remaining core Banner applications Continue to consolidate business logic to improve Banner s architecture Multiple incremental releases planned 8

Project Horizon Overview

Introduction to Project Horizon Modernize the user experience of Banner by removing our dependency on Oracle Forms Sub-set of Banner Evolution initiative Project Horizon Goals Provide a consistent look and feel across all SunGard Higher Education applications Replace Oracle Forms Provide an alternative to Oracle Application Server 10

Benefits of Project Horizon Integration out of the box using RESTful web services Employ both Services Oriented Architecture and Web Oriented Architecture Provides choice of application server 11

Project Horizon - Key Points Functionally equivalent to Classic Banner Same screen names Similar keyboard navigation A modern web based user interface Banner business processes remain intact Allow Banner Forms and new user interface to co-exist 12

Architecture Review Project Horizon

Banner and the Java Platform The Java Platform already plays a key role within Banner Leveraging the platform allows us to select the appropriate technical language for the task at hand E.g. Java and Groovy The Java Platform is already used in Banner Workflow Banner Relationship Management Banner Flexible Registration Banner Travel and Expense Banner Effort Reporting and Labor Redistribution Spring and ORM tools like Hibernate prevalently used in Banner today 14

Grails Project Horizon is using Grails (http://www.grails.org/) as our web application framework Open Source Web Application Framework First 0.1 release in 3/2006 with 1.0 release in 2/2008 Grails leverages Java Platform Programming Language = Groovy 15

Grails cont d Uses proven Java technologies such as Hibernate and Spring under a simple, consistent interface A consistent framework which reduces confusion and is easy to learn High-productivity framework by following Convention over Configuration (CoC) Documented architecture with a growing community Good Books: Grails in Action, Definitive Guide to Grails 16

Groovy An agile and dynamic language that runs on the Java Platform Builds upon the strengths of Java but has additional power features inspired by languages like Python, Ruby and Smalltalk Seamlessly integrates with all existing Java objects and libraries Compiles straight to Java bytecode so you can use it anywhere you can use Java 17

Project Horizon UI Technology Using industry standards HTML using Ajax CSS JavaScript through libraries like jquery Project Horizon is not using Adobe Flex as the core UI technology Leverage the Aurora Platform to ensure consistency across the Banner Digital Campus Ensure that user interfaces are accessible by screen reader Testing against Jaws 11.x 18

Software Requirements Application Server Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6.x We expect to be able to run Oracle Forms on the same Oracle WebLogic 11g Basic Edition instance Database Database must be at Oracle 11g R1 Java VM Developing using Java 6 19

Deployment Strategies Oracle WebLogic 11g Basic Edition All Banner solutions can be deployed to the same Oracle 11g WebLogic Basic Edition application server Oracle 11g WebLogic Basic Edition Internet Native Banner (Oracle Forms) Banner Self Service Banner Student Horizon Banner 20

Deployment Strategies Tomcat 6.x The Banner Evolution Student module (and subsequent modules) can be deployed to Tomcat 6.x Oracle 11g WebLogic Basic Edition Internet Native Banner (Oracle Forms) A way to lower TCO through an open source option and ability to leverage existing resources Resource Load Demands E.g. Dev, Test instances Banner Self Service Tomcat 6.x Banner Student Horizon Banner 21

Hardware Requirements Specifics not available at this time To be provided during our performance and stress testing scheduled for Q2 2010 22

New Banner Architecture Request (HTML, JSON, XML) Response Security Filters using Banner Security Controllers Views Services Domain Models Banner Database Tables Views Banner API 23

Model View Controller Pattern Security Filters using Banner Security Request (HTML, JSON, XML) Response The model is the domainspecific representation of the data upon which the application operates. Domain logic adds meaning to raw data (for example, a row in a table) Controllers Services Views Domain Models The view renders the model into a form suitable for interaction, typically a user interface element. Multiple views can exist for a single model for different purposes. Banner Database Tables Views Banner API The controller receives input and initiates a response by making calls on model objects typically through services. 24

Model View Controller Pattern Security Filters using Banner Security Request (HTML, JSON, XML) Response Request goes through security filters that call out to Banner Security Controllers Views Services Domain Models Banner Database Tables Views Banner API 25

Model View Controller Pattern Security Filters using Banner Security Request (HTML, JSON, XML) Response If the user is granted access through the security filters the request is passed through to the Controller Controllers Views Services Domain Models Banner Database Tables Views Banner API 26

Model View Controller Pattern Security Filters using Banner Security Request (HTML, JSON, XML) Controllers Response Views In almost all situations the controller delegates requests to services. When fetching data we can go directly against the domain models Services Domain Models Banner Database Tables Views Banner API 27

Model View Controller Pattern Security Filters using Banner Security Request (HTML, JSON, XML) Controllers Response Views Domain Models are responsible for persisting the data to the database. Database connections to Banner are proxied to ensure that already existing database security is utilized. Services Domain Models Banner Database Tables Views Banner API 28

Model View Controller Pattern Security Filters using Banner Security Request (HTML, JSON, XML) Controllers Response Views Views are responsible for building the content to send back in the response based off the request. A view can return HTML, JSON or XML providing opportunities to extend to other applications. Services Domain Models Banner Database Tables Views Banner API 29

High Level Categorization of Banner Forms CRUD - Creating, Retrieving, Updating and Deleting Data Oracle Forms provided us support for all CRUD operations Little to no SQL necessary in a lot of situations Transaction Level Validation Typically the validation pulled into Banner APIs Is the closest thing to a service in Banner Field Level Validation Restricts user from advancing to address data issues Provides default values in other fields to improve user efficiency 30

Decomposing Banner to Grails based Architecture Existing Architecture Forms Canvases Windows Application Triggers Blocks Block Triggers Fields Field Triggers New Architecture Views Controllers Services Models 31

Decomposing Banner to Grails based Architecture Existing Architecture Forms Canvases Windows Application Triggers Blocks Block Triggers Fields Field Triggers New Architecture Views Controllers Services Models 32

Decomposing Banner to Grails based Architecture Existing Architecture Forms Canvases Windows Application Triggers Blocks Block Triggers Fields Field Triggers New Architecture Views Controllers Services Models 33

Decomposing Banner to Grails based Architecture Existing Architecture Forms Canvases Windows Application Triggers Blocks Block Triggers Fields Field Triggers New Architecture Views Controllers Services Models 34

How are we creating the new architecture? Automation We ve developed tools that read database and Oracle Forms metadata to generate new components ~80% of our Domain Models are generated ~70% of our Services are generated Expect high percentage of Controllers and Views to be generated Tools will be available for customer use on custom modifications and local forms 35

Shift in QA techniques as part of Project Horizon Test Driven Development Approach Test early and often Test first then implement Leads to higher quality Code Generation Recognize patterns and provide tools to generate for consistency and completeness Minimize human error Generate integration tests Continuous Build Integration We use open source CI server Hudson Every code change commit queues a request for testing June 4, 2010 www.sungardhe.com 36

Automated Testing Unit Tests Unit testing is for small focused, fast loading tests that don't load supporting components Validate interfaces and mocking while mocking out underlying services Integration Tests Tests that load the surrounding environment Mimic deployed environment Do not test the user interface Functional Tests Tests that mimic the end user interacting with the system In past, this was manually done, now automated through OSS tools like Selenium June 4, 2010 www.sungardhe.com 37

Testing Results Tests kicked off with every change June 4, 2010 www.sungardhe.com 38

Testing Results Status can show us when failures occur, duration, stability June 4, 2010 www.sungardhe.com 39

Preparing for Project Horizon When? What skills? Training?

Skill sets to support Banner in the future The Java Platform plays a key role within Banner The ideal IT staff would be Familiar with deploying Java EE applications WAR files; EAR files Knowledgeable of open source frameworks like Grails, Spring and ORM technologies such as Hibernate Oracle Database PLSQL prevalent, but trending down albeit slowly

Skill sets to develop and/or modify Banner in the future Sound understanding of the fundamentals of Object Oriented (OO) development Knowledge of Groovy and the Java language Groovy and Java plays a key role in Banner Intermediate familiarity with Grails, Spring and Hibernate Grails www.grails.org Spring - www.springsource.com Specifically Spring IoC, Spring Security Hibernate www.hibernate.org Specifically Hibernate Core

Improving the user experience within Banner Focus on new styles of interaction using Web 2.0 technologies Increasing focus on web standards HTML using Ajax JavaScript libraries such as jquery CSS (aesthetics and layouts)

Extending your Banner Digital Campus Project Horizon is stressing a Web Oriented Architecture Moving to more RESTful based web services Key goals of REST include: Scalability of component interactions Generality of interfaces Independent deployment of components Intermediary components to reduce latency, enforce security and encapsulate legacy systems

Wrap up Where can I learn more about Project Horizon?

Learn more about Project Horizon Throughout 2010 Project Horizon Webinars will be given to provide status updates on the project Banner Evolution: What s on the Horizon? Wednesday, May 21, from 3:30 pm - 4:30 pm Eastern Friday, May 21, from 11:00 am-12:00 pm Eastern Banner Evolution: Project Horizon Tech Overview Thursday, June 3, from 11:00 am 12:00 pm Eastern Friday, June 4, from 1:00 pm 2:00 pm Eastern June 4, 2010 www.sungardhe.com 46

Questions Email: robert.rullo@sungardhe.com Twitter: bobrullo