10 June, 2008

Finally upgrading to 3.1.1

In the wonderful world of commercial software development, adoption of technology tends to happen in a bit of a "leap-frog" fashion. For instance, our 200806101104.jpg current release of HAWCS is coded using 2.2.1 of ApEx, but we're getting ready to add some new features to our upcoming 2.1 release that very specifically take advantage of ApEx 3.1 features.


In some ways, this can be helpful. For example, we let the world at large test 3.1 and get to jump straight to the benefits of the 3.1.1 patch. However it can be very frustrating too. I've been reading blogs and forum posts for ages that talk about the great things in 3.1 and have not been able to really try them out on our software.


Another example of playing "leap-frog" is the graphing in our product. In the early days of ApEx, back when dinosaurs like SVG graphs ruled the earth, we took a huge step and decided to use MAANI XML-SWF charts instead. They were way more pleasing to the eye and were cross browser compatible. We spent loads of time building a graphing framework and sewing that into our ApEx application.


Now with 3.1+ of ApEx, Oracle have included the Flash based AnyChart graphing solution directly in their product. Now we have to make the decision as to whether we abandon our home grown framework and the XML-SWF charts in favor of the built in AnyChart solution. Something that makes this a little bit more interesting is that Oracle ships both V3 and V4 of the AnyChart software with ApEx 3.1+


The built in graphs use V3 while the Interactive reports use V4. If you look at them side by side, there is definitely a difference in their style and attractiveness, V4 being far superior in quality and functionality.


So what is a Product Manager to do? I now have 4 choices in front of me.

1. Continue to use our home grown XML-SWF chart solution

2. Switch to the built in V3 graphs and wait for Oracle to upgrade THOSE to V4

3. Try to use Interactive Reports for everything I want to graph and just have the default view be the graph

4. Build a new (or alter our current) graphing framework to use the V4 charts

My XP training tells me to do the least amount of work necessary to get the job done, so that would mean staying with option 1, but I know that at some point I will want to move to the built in graphs, if for no other reason, so that we can stop maintaining our complex graphing framework and spend more time on the CORE code that people are actually paying us for.


Anyway, I'm upgrading our development environment to 3.1.1 as I type this, so I guess I'll have to do a little research to see how hard it will be to migrate the SQL statements that drive our graphs into the built in graphing solution.


I'll let you know how it goes.






No comments: