project horizon technical overvie—project horizon is being tested on oracle weblogic 11g basic...

51
Project Horizon Technical Overview Steven Forman Principal Technical Consultant

Upload: others

Post on 22-May-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Project Horizon Technical Overview

Steven FormanPrincipal Technical Consultant

Page 2: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Agenda

• Banner Evolution Overview

• Project Horizon Overview

• Project Horizon Architecture ReviewProject Horizon Architecture Review

• Preparing for Project Horizon—What skills?—When?

• Questions and Answers

2

Page 3: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Banner Evolution Overview

Page 4: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Banner Evolution

• Features—New architecture to keep Banner technically current and

extensibleextensible—An improved user interface across the Banner Digital

CampusE d d lti tit i t—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

Page 5: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Banner Evolution

Banner EvolutionBanner Evolution

Project H i

ProjectMEP

Database Horizon MEPChanges

5

Page 6: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Banner Evolution TimingDatabase Changes - Q1 2011Database Changes Q1 2011

• All core Banner applications, Banner Student Aid for C d d th l ti t l li ti fCanada 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 technicaloptimistic lock tokens to support the new technical architecture

—Expand the data structure to standardize and supportExpand the data structure to standardize and support multi-entity processing capability

6

Page 7: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Banner Evolution TimingBanner Student UI Modernization - Q1 2011Banner 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 Horizonj

7

Page 8: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Banner Evolution TimingUI Modernization 2011/2012UI Modernization 2011/2012

• Provide new user interface for the remaining core B li tiBanner applications

• Continue to consolidate business logic to improve Banner’s architecture

• Multiple incremental releases plannedMultiple incremental releases planned

8

Page 9: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Project Horizon Overview

Page 10: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Introduction to Project Horizon

• Modernize the user experience of Banner by removing our dependency on Oracle FormsForms—Sub-set of Banner Evolution initiative

• Project Horizon Goals—Provide a consistent look and feel across all

SunGard Higher Education applicationsg pp

—Replace Oracle Forms

—Provide an alternative to Oracle Application Server

10

Page 11: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

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

Page 12: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Project Horizon - Key Points

• Functionally equivalent to Classic Banner—Same screen names

Si il k b d i ti—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

Page 13: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Architecture ReviewProject Horizon

Page 14: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Banner and the Java Platform

• The Java Platform already plays a key role within Banner—Leveraging the platform allows us to select the appropriateLeveraging 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 Relationship Management—Banner Flexible Registration—Banner Travel and Expense

Banner Effort Reporting and Labor Redistribution—Banner Effort Reporting and Labor Redistribution

• Spring and ORM tools like Hibernate prevalently used in Banner todayBanner today

14

Page 15: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

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

Page 16: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

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)over Configuration (CoC)

• Documented architecture with a growing communityG d B k G il i A ti D fi iti G id t G il—Good Books: Grails in Action, Definitive Guide to Grails

16

Page 17: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

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• 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

Page 18: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Project Horizon – UI Technology

• Using industry ‘standards’—HTML using Ajax

CSS—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 g yacross the Banner Digital Campus

• Ensure that user interfaces are accessible by screen• Ensure that user interfaces are accessible by screen reader—Testing against Jaws 11.x

18

Page 19: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Software Requirements

• Application Server—Project Horizon is being tested on Oracle WebLogic 11g

Basic Edition and Apache Tomcat 6 xBasic 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 R1g

• Java VMDeveloping using Java 6—Developing using Java 6

19

Page 20: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Deployment Strategies – Oracle WebLogic 11g Basic EditionEdition• All Banner

solutions can be Oracle 11g WebLogic Basic Edition

deployed to the same Oracle 11g W bL i B i

Internet Native Banner (Oracle Forms)

B S lf S iWebLogic Basic Edition application server

Banner Self ServiceBanner

serverBanner Student

Horizon

20

Page 21: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Deployment Strategies – Tomcat 6.x

• The Banner Evolution Student module (and subsequent modules)

Oracle 11g WebLogic Basic Edition

subsequent modules) can be deployed to Tomcat 6.x

Internet Native Banner (Oracle Forms)

B S lf S i

T 6

• A way to lower TCO through an open source option and

Banner Self ServiceBanner

Tomcat 6.xsource option and ability to leverage existing resources—Resource Load

Banner StudentHorizon

Resource Load Demands

—E.g. Dev, Test instances

21

Page 22: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

New Banner Architecture

ResponseRequest(HTML, JSON, XML)

Security Filters using Banner Security

Controllers Views

Services Domain Models Banner Database

TablesViewsBanner API

22

Page 23: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Model View Controller Pattern

ResponseRequest(HTML, JSON, XML)

The model is the domain-specific representation of the data upon which the application

t D i l i dd

The model is the domain-specific representation of the data upon which the application

t D i l i ddSecurity Filters using Banner Security

operates. Domain logic adds meaning to raw data (for example, a row in a table)

operates. Domain logic adds meaning to raw data (for example, a row in a table)

Controllers ViewsThe view renders the model into a form suitable for interaction, typically a user interface element.

The view renders the model into a form suitable for interaction, typically a user interface element.

Services Domain Models Banner Database

Multiple views can exist for a single model for different purposes.

Multiple views can exist for a single model for different purposes.

TablesViewsBanner API

The controller receives input and initiates a response by making calls on model objects typically

The controller receives input and initiates a response by making calls on model objects typically

23

j yp ythrough services.

j yp ythrough services.

Page 24: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Model View Controller Pattern

ResponseRequest(HTML, JSON, XML)

Request goes through security filters that call out to Banner S it

Request goes through security filters that call out to Banner S it

Security Filters using Banner Security

SecuritySecurity

Controllers Views

Services Domain Models Banner Database

TablesViewsBanner API

24

Page 25: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Model View Controller Pattern

ResponseRequest(HTML, JSON, XML)

If the user is granted access through the security filters the request is passed through to the

If the user is granted access through the security filters the request is passed through to the

Security Filters using Banner Security

request is passed through to the Controllerrequest is passed through to the Controller

Controllers Views

Services Domain Models Banner Database

TablesViewsBanner API

25

Page 26: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Model View Controller Pattern

ResponseRequest(HTML, JSON, XML)

In almost all situations the controller delegates requests to services

In almost all situations the controller delegates requests to services

Security Filters using Banner Security

services.

When fetching data we can go directly against the domain

services.

When fetching data we can go directly against the domain

Controllers Views

directly against the domain modelsdirectly against the domain models

Services Domain Models Banner Database

TablesViewsBanner API

26

Page 27: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Model View Controller Pattern

ResponseRequest(HTML, JSON, XML)

Domain Models are responsible for persisting the data to the database

Domain Models are responsible for persisting the data to the database

Security Filters using Banner Security

to the database.

Database connections to Banner are proxied to ensure that already

to the database.

Database connections to Banner are proxied to ensure that already

Controllers Views

existing database security is utilized.existing database security is utilized.

Domain Models Banner DatabaseServices

TablesViewsBanner API

27

Page 28: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Model View Controller Pattern

ResponseRequest(HTML, JSON, XML)

Views are responsible for building the content to send back in the response based off the

Views are responsible for building the content to send back in the response based off the

Security Filters using Banner Security

in the response based off the request.

A view can return HTML, JSON or

in the response based off the request.

A view can return HTML, JSON or

Controllers Views

XML providing opportunities to extend to other applications.XML providing opportunities to extend to other applications.

Banner DatabaseServices Domain Models

TablesViewsBanner API

28

Page 29: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

High Level Categorization of Banner Forms

• CRUD - Creating, Retrieving, Updating and Deleting Data—Oracle Forms provided us support for all CRUD operations

Littl t SQL i l t f it ti—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

29

Page 30: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Decomposing Banner to Grails based Architecture

Existing Architecture New ArchitectureViewsControllersServicesModels

FormsCanvasesWindowsApplication Triggers ModelsApplication TriggersBlocksBlock TriggersFieldsField Triggers

30

Page 31: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Decomposing Banner to Grails based Architecture

Existing Architecture New ArchitectureViewsControllersServicesModels

FormsCanvasesWindowsApplication Triggers ModelsApplication TriggersBlocksBlock TriggersFieldsField Triggers

31

Page 32: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Decomposing Banner to Grails based Architecture

Existing Architecture New ArchitectureExisting Architecture New ArchitectureViewsControllersServices

FormsCanvasesWindows

ModelsApplication TriggersBlocksBlock TriggersFieldsFieldsField Triggers

32

Page 33: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Decomposing Banner to Grails based Architecture

Existing Architecture New ArchitectureExisting Architecture New ArchitectureViewsControllersServices

FormsCanvasesWindows

ModelsApplication TriggersBlocksBlock TriggersFieldsFieldsField Triggers

33

Page 34: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

How are we creating the new architecture?

• Automation—We’ve developed tools that read database and Oracle

Forms metadata to generate new componentsForms 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

34

Page 35: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Shift in QA techniques as part of Project Horizon

• Test Driven Development Approach—Test early and often

T t fi t th i l t—Test first then implement—Leads to higher quality

• Code Generation—Recognize patterns and provide tools to generate for

consistency and completenessy—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 25, 2010 | www.sungardhe.com 35

Page 36: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Automated Testing

• Unit Tests—Unit testing is for small focused, fast loading tests that

don't load supporting componentsdon t load supporting components—Validate interfaces and mocking while mocking out

underlying services

• Integration Tests—Tests that load the surrounding environment—Mimic deployed environmentp y—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 25, 2010 | www.sungardhe.com 36

Page 37: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Testing Results

Tests kicked off withTests kicked off with every change

June 25, 2010 | www.sungardhe.com 37

Page 38: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Testing Results

Status can show us when failures occur, duration, stability

June 25, 2010 | www.sungardhe.com 38

, y

Page 39: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Preparing for Project HorizonWhen? What skills? Training?

Page 40: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

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 Hibernatep g g

• Oracle DatabasePLSQL l t b t t di d lb it l l—PLSQL prevalent, but trending down albeit slowly

Page 41: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

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—Grails – www.grails.org

—Spring - www.springsource.com• Specifically Spring IoC Spring Security• Specifically Spring IoC, Spring Security

—Hibernate – www.hibernate.org• Specifically Hibernate CoreSpecifically Hibernate Core

Page 42: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Improving the user experience within Banner

• Focus on new styles of interaction using Web 2.0 technologies

• Increasing focus on web ‘standards’—HTML using Ajaxg j—JavaScript libraries such as jQuery—CSS (aesthetics and layouts)

Page 43: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

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:y g

• Scalability of component interactions• Generality of interfaces• Independent deployment of components• Independent deployment of components• Intermediary components to reduce latency, enforce

security and encapsulate legacy systems

Page 44: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

New Banner Self Service running on Aurora

June 25, 2010 | www.sungardhe.com 44

Page 45: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Aurora Components

Common Header

Global Navigation

Common Footer

June 25, 2010 | www.sungardhe.com 45

Common Footer

Page 46: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Examples of consistency – Banner Self-Service

June 25, 2010 | www.sungardhe.com 46

Page 47: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Examples of consistency - Banner Relationship ManagementManagement

June 25, 2010 | www.sungardhe.com 47

Page 48: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Example of Banner – Home Page

June 25, 2010 | www.sungardhe.com 48

Page 49: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Example of Banner – Course Catalog Page

June 25, 2010 | www.sungardhe.com 49

Page 50: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Example of Banner – Person Page

June 25, 2010 | www.sungardhe.com 50

Page 51: Project Horizon Technical Overvie—Project Horizon is being tested on Oracle WebLogic 11g Basic Edition and Apache Tomcat 6 xBasic Edition and Apache Tomcat 6.x —We expect to be

Questions