0
Accelerating Legacy Application Modernization using the JBoss Seam Framework<br />Jeff D. Brown, Senior Consultant<br />jb...
Agenda<br />CITYTECH Introduction<br />JBoss Seam Overview<br />Application Modernization<br />Seam for Application Modern...
CITYTECH Introduction<br />Professional Services:  Specializing in the design, development and execution of highly availab...
CITYTECH Introduction<br />Proponent to the open source business model with partnerships with both Red Hat and Alfresco So...
Agenda<br />CITYTECH Overview<br />JBoss Seam Overview<br />Application Modernization<br />Seam for Application Modernizat...
What is JBoss Seam?<br />An open-source web framework developed by Red Hat employees and supported as part of the JBoss EA...
Benefits of Using Seam<br />Security included<br />Rich UI included (“Web 2.0”)<br />Cache included (performance)<br />BPM...
Benefits of Using Seam<br />Additional stateful context scopes (Page, Conversation, Biz Proc)<br />Dynamic Language suppor...
Agenda<br />CITYTECH Overview<br />JBoss Seam Overview<br />Application Modernization<br />Seam for Application Modernizat...
Application Modernization<br />What is Application Modernization?<br />Benefits of Application Modernization<br />Move to ...
Application Modernization Challenges<br />Risks<br />The big unknown – what does this application actually do?<br />End us...
Target Platforms Ripe for Modernization:  Oracle Forms<br />Why modernize?<br />Proprietary with no long term new feature ...
Modernizing Oracle Forms Application Using JBoss Seam<br />Oracle Database<br />Legacy  Forms Application<br />BEFORE<br /...
Target Platforms Ripe for Modernization:  Microsoft Access<br />Why Modernize?<br />Typically grows from a one person “uti...
Modernizing Microsoft Access Application using JBoss Seam<br />Access Database<br />Legacy  Access Application<br />BEFORE...
Agenda<br />CITYTECH Overview<br />JBoss Seam Overview<br />Application Modernization<br />Seam for Application Modernizat...
Leverage JBoss Seam for Modernizing Applications<br />Why?<br />Provides utilities to jump start your modernization proces...
JBoss Seam’s Tools for Rapid Modernization<br />Project generator serving two main functions:<br />Sets up the structure o...
Agenda<br />CITYTECH Overview<br />JBoss Seam Overview<br />Enterprise Application Modernization<br />Seam for Application...
Case Study:  Application Modernization using Seam<br />Application Function:  Manages Departmental Employee Disciplinary A...
Case Study:  Modernizing a Microsoft Access Based Application<br />Modernization Process<br />Analyzed the VBA code and re...
Case Study:  Modernizing a Microsoft Access Based Application<br />Modernization Process<br />Seam setup (set up project d...
Case Study:  Modernizing a Microsoft Access Based Application<br />BEFORE<br />
Case Study:  Modernizing a Microsoft Access Based Application<br />AFTER<br />
Case Study:  Modernizing a Microsoft Access Based Application<br />AFTER<br />
Case Study:  Modernizing a Microsoft Access Based Application<br />AFTER<br />
Agenda<br />CITYTECH Overview<br />JBoss Seam Overview<br />Enterprise Application Modernization<br />Seam for Application...
Conclusion<br />Leverage JBoss’ Seam framework to automate the modernization of your legacy applications.<br />CITYTECH ca...
Contact Us to help with your enterprise application modernization initiatives!<br />Matt Van Bergen<br />Chief Technology ...
Upcoming SlideShare
Loading in...5
×

Citytech Application Modernization Using JBoss Seam

2,718

Published on

In this presentation, CITYTECH, a Red Hat JBoss Advanced Business Partner, shares how they leveraged the JBoss Seam framework to rapidly modernize legacy applications.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,718
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
28
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Jdashjhd
  • Matt to cleanup
  • Jdashjhd
  • Mention that it can be POJO or Session Beans
  • Jeff Brown to confirm
  • Jeff Brown to confirm
  • Jdashjhd
  • Jdashjhd
  • Jeff to tidy up – can we reduce the number of words here and add some graphics?
  • Jdashjhd
  • Transcript of "Citytech Application Modernization Using JBoss Seam"

    1. 1. Accelerating Legacy Application Modernization using the JBoss Seam Framework<br />Jeff D. Brown, Senior Consultant<br />jbrown@citytechinc.com<br />http://www.citytechinc.com<br />March 23, 2010<br />
    2. 2. Agenda<br />CITYTECH Introduction<br />JBoss Seam Overview<br />Application Modernization<br />Seam for Application Modernization<br />Case Study<br />Conclusion / Q&A<br />
    3. 3. CITYTECH Introduction<br />Professional Services: Specializing in the design, development and execution of highly available and scalable enterprise applications<br />Consultants: Average experience is 10 years<br />Offices: Located in downtown Chicago, IL<br />Goal: Strive for long-term partnerships with partners and clients<br />Focus: Java EE and Grails.<br />
    4. 4. CITYTECH Introduction<br />Proponent to the open source business model with partnerships with both Red Hat and Alfresco Software<br />Red Hat Advanced Business Partner since 2007<br />JBoss Expertise:<br />Enterprise Application Platform (EAP)<br />Enterprise SOA Platform (SOA-P)<br />Enterprise Portal Platform (EPP)<br />Red Hat Expertise:<br />Red Hat Enterprise Linux<br />Red Hat Enterprise Virtualization<br />
    5. 5. Agenda<br />CITYTECH Overview<br />JBoss Seam Overview<br />Application Modernization<br />Seam for Application Modernization<br />Case Study<br />Conclusion/ Q&A<br />
    6. 6. What is JBoss Seam?<br />An open-source web framework developed by Red Hat employees and supported as part of the JBoss EAP subscription.<br />Component architecture for JavaServer Faces (JSF) and Enterprise JavaBeans (EJB) 3.0<br />Integrates Java EE standards: <br />Java Server Faces (JSF)<br />Enterprise Java Beans (EJB3)<br />Java Persistence API (JPA)<br />Java Authentication and Authorization Services (JAAS)<br />Provides for Dependency Injection (Bijection)<br />Provides for concurrency and state management<br />
    7. 7. Benefits of Using Seam<br />Security included<br />Rich UI included (“Web 2.0”)<br />Cache included (performance)<br />BPM included (page flows)<br />Code Generation to kick-start development <br />Messaging integration included<br />
    8. 8. Benefits of Using Seam<br />Additional stateful context scopes (Page, Conversation, Biz Proc)<br />Dynamic Language support included (Groovy)<br />Annotations instead of XML<br />EL for page developers<br />Tag libraries for rendering PDF, outgoing email, and charts<br />Developer Tool support <br />Hot deployment<br />Debug page<br />High “test-ability”<br />
    9. 9. Agenda<br />CITYTECH Overview<br />JBoss Seam Overview<br />Application Modernization<br />Seam for Application Modernization<br />Case Study<br />Conclusion/ Q&A<br />
    10. 10. Application Modernization<br />What is Application Modernization?<br />Benefits of Application Modernization<br />Move to a supported and standards-based platform<br />Reduce support and maintenance costs<br />Enhance application usability<br />Web-enable application with zero client install<br />Provide application security<br />Provide stakeholders with higher reliability, extensibility and scalability<br />Modernizing an existing enterprise application involves porting a custom enterprise application from an obsolete platform or framework to a current day platform or framework reducing support costs and providing usability benefits to end users.<br />
    11. 11. Application Modernization Challenges<br />Risks<br />The big unknown – what does this application actually do?<br />End user expectations and training<br />Support staff expectations and training<br />Costs<br />An unknown scope can lead to inability to estimate project accurately<br />Legacy data migration<br />Legacy data cleanup<br />
    12. 12. Target Platforms Ripe for Modernization: Oracle Forms<br />Why modernize?<br />Proprietary with no long term new feature development road map<br />The effort in moving from 6i to 10g and beyond may be as great as modernizing to a new platform anyway.<br />Oracle moving its eBusiness Suite away from Forms to Fusion<br />Over time, Forms apps will demand higher cost for support due to declining interest in new deployments.<br />Inability to separate data, presentation logic and business logic<br />
    13. 13. Modernizing Oracle Forms Application Using JBoss Seam<br />Oracle Database<br />Legacy Forms Application<br />BEFORE<br />Stays Same<br />Modernized<br />Application<br />Business Services<br />AFTER<br />Oracle Database<br />Seam<br />Existing Database <br />SOA<br />Seam<br />
    14. 14. Target Platforms Ripe for Modernization: Microsoft Access<br />Why Modernize?<br />Typically grows from a one person “utility” application into a departmental wide, multiple user application.<br />Very limited scalability<br />Inherently unsecure<br />Does not handle multiple users<br />Lacks disaster recovery capabilities<br />Difficult to maintain – bug fixes or new features fall to the original developer.<br />No source code management<br />
    15. 15. Modernizing Microsoft Access Application using JBoss Seam<br />Access Database<br />Legacy Access Application<br />BEFORE<br />Modernized<br />Application<br />MySQL or PostgreSQL Database<br />AFTER<br />Seam<br />New Database <br />
    16. 16. Agenda<br />CITYTECH Overview<br />JBoss Seam Overview<br />Application Modernization<br />Seam for Application Modernization<br />Case Study<br />Conclusion/ Q&A<br />
    17. 17. Leverage JBoss Seam for Modernizing Applications<br />Why?<br />Provides utilities to jump start your modernization process<br />Based on accepted and highly used standards<br />Allows for freedom of CHOICE<br />Presentation choice (JSF, Flex, Wicket, Tapestry, GWT)<br />Architectural choice (presentation vs. business. logic)<br />POJO or EJB<br />Deployment (app server or servlet container)<br />Professionally Supported by Red Hat or Community<br />Java and/or Groovy<br />Scale (single instance to massive HA cluster with Failover)<br />Standalone and/or Portal <br />
    18. 18. JBoss Seam’s Tools for Rapid Modernization<br />Project generator serving two main functions:<br />Sets up the structure of a Seam-based project<br />Build script<br />Environment profiles<br />Libraries<br />Eclipse and NetBeans project files<br />Creates a fully functional CRUD application <br />Reverse engineers an existing database schema<br />There really are a LOT of advantages to starting with the seam-gen structure. I did a lot of work on things that will take you a while to reproduce if you do it all from scratch (like, weeks of work!).<br />
    19. 19. Agenda<br />CITYTECH Overview<br />JBoss Seam Overview<br />Enterprise Application Modernization<br />Seam for Application Modernization<br />Case Study<br />Conclusion<br />
    20. 20. Case Study: Application Modernization using Seam<br />Application Function: Manages Departmental Employee Disciplinary Actions<br />State before Modernization<br />Microsoft Access based application<br />Originally only used by a handful of departmental users, but now requested across departments<br />Used hardcoded paths in the database to reference documents related to disciplinary cases.<br />Required Access installed and local network drive mappings<br />No security or audit trail<br />No proven process for backup and disaster recovery<br />Needing new functionality, original developer no longer around <br />
    21. 21. Case Study: Modernizing a Microsoft Access Based Application<br />Modernization Process<br />Analyzed the VBA code and related tables.<br />Documented business rules and main entities in the system.<br />Leveraged a utility called “Access to MySQL” to migrate the data from Access to MySQL<br />Optimized the database schema by creating additional keys, increased data constraints and renamed tables and columns for consistency.<br />
    22. 22. Case Study: Modernizing a Microsoft Access Based Application<br />Modernization Process<br />Seam setup (set up project defaults)<br />Seam create-project (create the Eclipse project)<br />Seam generate (create all application artifacts based on the MySQL Database)<br />At this point there is a fully-functional web application with CRUD functionality!<br />Extended generated artifacts and user interface elements.<br />Test, Deploy, Run<br />
    23. 23. Case Study: Modernizing a Microsoft Access Based Application<br />BEFORE<br />
    24. 24. Case Study: Modernizing a Microsoft Access Based Application<br />AFTER<br />
    25. 25. Case Study: Modernizing a Microsoft Access Based Application<br />AFTER<br />
    26. 26. Case Study: Modernizing a Microsoft Access Based Application<br />AFTER<br />
    27. 27. Agenda<br />CITYTECH Overview<br />JBoss Seam Overview<br />Enterprise Application Modernization<br />Seam for Application Modernization<br />Case Study<br />Conclusion / Q&A<br />
    28. 28. Conclusion<br />Leverage JBoss’ Seam framework to automate the modernization of your legacy applications.<br />CITYTECH can help!<br />
    29. 29. Contact Us to help with your enterprise application modernization initiatives!<br />Matt Van Bergen<br />Chief Technology Officer<br />312-673-6433 x111<br />mvanbergen@citytechinc.com<br />http://blogs.citytechinc.com/matt<br />http://twitter.com/mvanbergen<br />Jeff Brown<br />Senior Consultant<br />312-673-6433 x114<br />jbrown@citytechinc.com<br />http://blogs.citytechinc.com/jeffbrown<br />Web: http://www.citytechinc.com<br />Phone: 312-673-6433<br />Email: sales@citytechinc.com<br />Twitter: http://twitter.com/citytech<br />Blogs: http://blogs.citytechinc.com<br />Melissa Geoffrion<br />Red Hat Partnership Manager<br />312-673-6433 x148<br />mgeoffrion@citytechinc.com<br />
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×