Wednesday, 31 October 2018

OpenWorld 2018 - Day 3 Wednesday

Moscone West from Howard Street

Day 3 of OpenWorld and another full day of sessions, a hands-on lab, demo pods, networking and customer appreciation party to round it all off.

My first session of the day was a Selective Adoption - Customer Panel at which three PeopleSoft customers were answering questions on how they were operating the PeopleSoft continuous delivery model.  Julie Alonso (HCM Strategy, Oracle) introduced the session with some home truths about the value of keeping your systems well maintained along with results from a recent  customer survey.  I was pleasantly surprised by how many PeopleSoft customers have established the regular cadence of  routine get-current projects, PeopleTools upgrades and selectively adopting value added features throughout the year.  Over 80% of customers are doing a get current project from between every 3 months to every 18 months. Julie's key message can be summed up in this cartoon she used during her intro.

 There's a lot of potential value locked up inside each new PeopleSoft Image (version) and key to unlocking this is to engineer time in our business year to KNOW what's in each Image, EVALUATE it and PLAN to deploy now or in the next get current.  Each of the panelists stressed that corporate governance is key. Getting the Selective Adoption strategy burnt into the corporate lifecycle of change is essential.

The panel also stressed the importance of including PeopleTools upgrades and PeopleTools patching into a cycle.  Interestingly, some of the panel combined application updates and PeopleTools upgrades and some separated them.  The testing of a PeopleTools update has a very different profile than the more functional testing of an application update.  Got into some very interesting side conversations around the value of testing.  Could it be better to take the new software, only test what's absolutely business critical and then deal with the fallout from anything untested post go live?

My next session was a hands-on-lab showing the power of "infrastructure as code" using Hashicorp's Terraform running against OCI.   The lab delegates were all given their own OCI account for the duration of the session and we walked through the creation of 2 load balancers with a public IP, 2 web servers and a database server along with all the necessary network & security configuration.
I built this with Terraform

The infrastructure is not built using a script but rather with definitions in native Terraform or JSON format which the Terraform engine reads and executes.  There's a number of advantages in this.
  • Firstly, you can validate your build prior to actually creating the infrastructure;
  • because the definitions are stored in simple text files they can be secured and managed in a version control system;
  • because it's code there's consistency in build compared to if a human were manually following a set of written instructions.
One of the really powerful features of Terraform is the ability to validate that the built infrastructure still matches the Terraform definition file.  Differences between definition and reality can be either reported or the actual build can be re-adjusted back to match the definition. Powerful! For example, if someone manually opens a firewall port directly in OCI and the Terraform definition does not define this port then Terraform can be used to report this and then undo this manually made change.  Very useful for keeping environments secure and also for ensuring compliance because you can now demonstrate that not only did you configure security in a certain way but that the security is still defined in that way.

Oracle have made the lab guide and the required files public.  All you need is an OCI tenancy and the ability to edit a file in vi - good luck Windows admins :-)

   Lab Guide
   Lab Files

(left to right - me, Dan, Kyle & Jim)
In the afternoon I was thrilled to be invited by Dan and Kyle to join them and PeopleSoft developer legend, Jim Marion, in a recording of the latest podcast where we talked about our conference highlights, new features in 8.57, Cloud Manager, Fluid development and "not all customisations are evil".    We could easily have talked for hours on these subjects and it's one of the most useful aspects of in-person conferences like OpenWorld.   You can listen online or download for later using the links below,

We love PeopleSoft !
My final session of the day was probably one of my favourites of the conference.  Customers Using Personalization, Configuration, Customization in PeopleSoft HCM .  It was in tough slot... late in the day just before the Oracle party (CloudFest) but still we had a great enthusiastic crowd showup.  I was speaking on a panel hosted by Tammy Boyles (PeopleSoft Director HCM Product Management ) alongside customers  Arkalgud Venkatesh (Alameda County), Bennett Walker (Beth Israel Deaconess Medical Center) and Chris Pannell (Allen & Overy).

In this session each of us shared how we were exploiting the configuration capabilities of PeopleSoft to change PeopleSoft system to meet requirements but at the same time reduce technical debt.  You can get the slide deck we used here so you can get some idea of the things we talked about.  A lively Q&A session which could easily have gone on for hours as we explored the pros and cons of Event Mapping, Page & Field Configurator, using Event Mapping with Component Interfaces, using Related Actions for embedded page and field level help and more.  My good friend Chris, from global law firm A&O, closed the session with some fabulous insights into how to present the value from your PeopleSoft investment.  One day it might be right to move to software as a service in the cloud but take head of Gartner's warning in their March 2018 report What Oracle ERP Customers Need to Know About Oracle Cloud Applications.

"Avoid confusing the sourcing of new technology with the fulfillment of business requirements. A full "rip and replace" of your current applications may not be your best option." [Gartner, March 2018]

And then on to San Francisco's AT&T Park for the Oracle party to listen to bands I'd never heard of (except Beck that is).  The guitarist from Portugal. The Man  was incredible - you might know them from this catchy tune.  Reminded a lot of early Gary Moore (am I showing my age?) Who's Gary Moore... check this out.

Wednesday, 24 October 2018

OpenWorld 2018 - Day 2 Tuesday

"The World's Most Intelligent..."
The second day of OpenWorld begins with a morning at the demo pods chatting with the PeopleSoft team about Cloud Manager 08 (coming soon), Drop Zones and new 8.57 features of Change Assistant.  

Did you know:  In 8.57 Change Assistant jobs can now be run in "Subsequent Pass" mode and not just Initial and MTP modes?  It always seemed a bit odd doing a Move-To-Production against my UAT or Test system!

Dave Bain (Oracle PeopleTools)
Next stop was to the main PeopleSoft session of the day... Applications Technology Update and Roadmap for PeopleSoft presented by Dave Bain (Oracle PeopleTools Strategy).   Two main news items here PeopleTools and PeopleSoft Cloud Manager.  Here's a quick summary:
  • PeopleTools 8.57 went GA in September 
    • Support for Drop Zones.  This is the ability to add custom fields/subpages into delivered application pages that have been enabled for Drop Zone.  We should start to see delivered pages enabled for Drop Zones from Image 30.  Sounds like this is for Fluid only initially.  This will eventually be a great addition to the Configuration tools now available in PeopleSoft.
    • Personalised Analytic Notifications.  This adds a feature into existing Pivot Grid technology to allow a user to create their own threshold alerts on the Pivot Grid data itself.  (eg notify me when my number of unapproved Purchase Orders exceeds 20).  Currently the notification can be a push notification and/or email but their working on adding SMS to this too. Nice feature!
    • More PUM Analytics to help understand customisation impact.
    • Improved multi-facet search selection in Elasticsearch
    • Fluid page preview in App Designer
    • Event Mapping visibility in App Designer
    • and more....
  • PeopleSoft Cloud Manager Image 07 also released at the same time
    • Read my blog here for detail of "The Magic Upgrade Button".  Nice shout-out from Dave on the work that Cedar Consulting have been doing in running PeopleSoft on OCI.
    • New features coming in Cloud Manager Image 08 include
      • Bare Metal shape support
      • Adding custom scripts (.sh and Python) to pre and post build
      • More granularity over defining nodes (ie web only or web and app).
      • Ability to import Oracle databases and features to support RMAN (that's Oracle backup and restore for anyone not using Oracle DBMS)
      • GA could be later this year (2018)
Cedar Consulting & PeopleSoft 8.57 in OCI - Upgrade Magic

The PeopleTools team continues to deliver on their commitment to:
  1. Optimize the user experience
  2. Provide tools to help isolate customisations
  3. Help customers migrate PeopleSoft to Oracle Cloud Infrastructure
  4. Automate the lifecycle processes (patching, app updates, install, config, etc)
  5. Prepare to adopt new technology (ie chatbots, digital assistants, etc)
(left to right) Me, Dan Iverson & Kyle Benson (,
Jim Marion (
and Ranjith Ramachandran (Presence of IT)
One of the most valuable aspects of any conference is that you get to meet some great people - share stories, dream up solutions together and share ideas.   Hanging out with these people helps me to learn more, get different perspectives and also to share my own experiences and knowledge.

My next session of the day was a set of partners all working with PeopleSoft in Oracle Cloud Infrastructure.  Customers Using Oracle Cloud for PeopleSoft - featuring Cloud specialist Presence of IT, Astute, SpearMC and Cedar Consulting.  Fielding questions from the audience I found this session really useful even though I was one of the panellists.  

And finally, another customer success story - Customers Using the Modern User Experience of PeopleSoft HCM from Oliver Fix at Deutsche Bahn.  These guys MAKE TRAINS and they're pretty successful at it too.  I knew I was in the right session when the speakers first slide looked like this below.  Never mind PeopleSoft... tell me about the history of German train engineering!  
Another PeopleSoft Train fan !

The customer talked through the business benefit of creating a compelling user experience and how they achieved it using Fluid branding, Homepages, Tiles and Navigation Collections combined with Interaction Hub and a few neat plugins from Portal champions Intrasee.  I have to say... it looked pretty good... in fact ... it looked outstanding.  Important tip of the day "don't ask a developer to do the visual UI design - hire a professional UI designer". My photos below really don't do it justice. 
Interaction Hub Landing Page

Employee Self Service - Personal Details

And finally the view from the Quest party venue overlooking San Francisco bay bridge. Another great networking time with customers, partners and the Oracle PeopleSoft team.

Tuesday, 23 October 2018

OpenWorld 2018 - Day 1 Monday

The first day of Oracle OpenWorld 2018 and it's been a full day.   Here's a few of my highlights.

Dan and Kyle from
Advanced PeopleSoft Administration Using the PeopleSoft Cloud Architecture : Dan and Kyle from gave a brilliant session describing the role of DPK and ACM in the world of automating PeopleSoft installation and configuration.  They included a cool demo of using ACM (Automated Configuration Management) to configure ElasticSearch server and deploy and build a set of selected indexes - all with literally one click.

Jim Marion 
Getting the Most Out of PeopleSoft PeopleTools: Tips and Techniques : Jim Marion from jsmpros walked through some cool development ideas using CSS and Event Mapping to a backed room.  Did you know the Fluid Homepage was "just a grid" ? If it's a grid of rows then we can apply conditional formatting to each tile by injecting our own Page Activate code using Event Mapping.

Paco Aubrejuan
PeopleSoft Update and Vision: Ongoing Investment and Long-Term Support: Paco Aubrejuan heads up the PeopleSoft division at Oracle and in this keynote session successfully crammed into 45 minutes the PeopleSoft vision, strategy  and several live demos of new and upcoming features.

There continues to be an exciting future for PeopleSoft.  Loads of new features and enhancements planned, exciting innovations like chat-bots and digital assistants all backed by a passionate and dedicated team under Paco.

Chatbot in PeopleSoft
Highlights included:
  • Premier Support through to at at least 2030
  • Drop Zones: adding custom fields to delivered pages.
  • New features in Search framework plus new version of ElasticSearch plus Kibana
  • Unified Related Content frames in Fluid
  • Live conversation with a chatbot built using Oracle Mobile Cloud launched from inside PeopleSoft
  • Improvements to LideCycle management tools.
  • Pivot Grid threshold notifications.
  • Define threshold rule and notification 

Monday, 22 October 2018

My Top 5 PeopleSoft Customisation Tips

So... up-front...let's get something straight. One of the reasons you fell in love with PeopleSoft is that you can customise it.  Not just develop your own fully integrated custom applications but also that you can modify the delivered code.  This blog post is about customisations to delivered code.

Something else we need to understand is that customisations in and of themselves are not evil.  If the customisation saves you money, makes money and/or improves quality of customer service then why wouldn't you do it?  It is this capability that makes PeopleSoft so strong in delivering value to your organisation.  Of course, you do need to do the maths.

[Value Created] + [Quality improved] should be greater than [Cost of build] + [Cost of maintenance]

Cost of Build is usually quite easy to work out (especially once you've finished the work).

Cost of Maintenance (sometimes referred to as Technical Debt is not so easy to compute.   This is the cost of your customisation getting in the way of applying updates from the latest PeopleSoft Image.  Like Cost of Build the impact of Cost of Maintenance is easier to compute once you've done it a few times. What I'm saying here is that experience helps in estimating cost of build and cost of maintenance.  To compute this you need to consider how intertwined your customisation is with delivered code, how likely (and frequently) it is that Oracle might change this same code in the future, the level of testing you need to do and the speed and expertise of your people.
What's the maintenance cost?

Value and Quality are outside the scope of this blog post - I hope to share my thoughts on this sometime soon though.

So, we have two principles outlined

    (i) a key strength of PeopleSoft is that you can customise it, and
    (ii) Customisations are not evil if they add value.

So here's my Top 5 Tips for Customising PeopleSoft.

NOTE: I'm assuming you've already discovered that the delivered application does not do what you need it to do and that you need the delivered application do something new in order to make money, save money and/or improve quality.

(1)  Adding a new field to a delivered Record will render the record customised but this is a light touch customisation and very low cost to re-apply (technical debt is small).  Deleting fields or changing datatypes is bad and will incur lots of technical debt with very little payback.  Changing a field length is not as bad as it sounds and still relatively low technical debt.  Don't waste your time creating "shadow" tables with matching keys for your new fields. You're just creating a lot of unnecessary work during build in keeping data in sync and for end users if they ever need to report on the data using Query. (Note: Those who once read my 2008 article in Oracle Scene magazine on Safer Customisations (see item # 3) may notice I've changed my mind on this one).

(2) If you need to add PeopleCode to an event then, if you can, choose an event with no pre-existing code in it.  The rationale behind this is that if the Oracle developers haven't added code to an event then it's likely they won't in the future.  This plays out nicely on Record PeopleCode vs Component Record PeopleCode.  The technical debt is low because it's likely (although not impossible) that your code will never get overwritten during an application update.

QUICK QUIZ. Which event fires first.  Record PeopleCode or Component PeopleCode?  (knowing this can help you decide on (2) above.

Old Code is good
(3) Customising Definitions with an old LASTUPDDTTM becomes safer the older the definition is.  The rationale here is that if Oracle hasn't touched it in years then they're unlikely to in the future probably because a) it's a very stable part of the system and never has any bugs and/or b) Oracle have lost interest in enhancing it.  Either way.... your customisation is going to be safer on an older definition.

(4) Use Event Mapping.  This feature of PeopleTools just gets better and better.  Actually, to be fair this really isn't a customisation top tip as Event Mapping doesn't result in a customisation.  However, one of the things that you can't do (yet) with Event Mapping is to specify that your code should fire instead of the delivered code.  You can specify that it fires before or after the delivered code but you can't define that you want your code to fire instead of the delivered code.  Of course, this could be dangerous but then anyone with Application Designer can be dangerous so let's ignore this issue.  If I want my FieldChange code to fire instead of the delivered FieldChange code I would need to wrap the delivered code in a condition which checked for the existence of an alternative event mapping event.  Something like this...

if not existsAnEventMappingConfig() then /*execute the delivered code*/

   /*...delivered code ...*/

end-if; /*last line of code in the event*/

Yes... i know this is a customisation... and Event Mapping is supposed to eliminate customisations but this is a very light touch custo.  If this got overwritten by an Application Update then it would take all of about 10 mins to re-apply this wrapper.  Got any better ideas?

(5) Pages are the hardest definition to re-apply customisations to.  If you're a developer you know this and if you're not a developer then go ask a developer why (bring coffee as a gift).  So, here's my most popular suggestions for handling page customisations.
Drop Zones in 8.57
(i) Try and control as much as you can with Event Mapping Page Activate code (or just straight Page Activate if you're not on 8.56 yet).
(ii) If you have to drop new fields on the page don't move around existing page fields.  If you move a grid by a few pixels then the compare report will pick this up, the compare report for pages is very hard to read, no one will have documented anywhere that they moved the grid 10 pixels up and 4 pixels left and so re-applying this grid move becomes time consuming and costly.
(iii) if the customisation involves adding new fields on a page then propose these questions to your users. Can they live with all the new fields on a new page in the component?  (technical dept near zero) or  Can they locate all the fields together in a sub-page on the delivered page (technical debt very very low)
(iv) Take a look at Drop Zones once you get your hands on 8.57.
(v) Cloning a page and then customising the heck out of the clone leaves you with the situation that if Oracle delivers a new version of the page then how do you pickup any important differences?  I'm not saying don't clone... just that the technical debt can be quite high.

I'll close with one other observation.  For each customisation you make add up the technical debt. That is... add up the cost of re-applying the changes in the event that all the definitions get overwritten during an Application Update.  Re-application of customisations do not take as long as developing the customisation in the first place. In reality it's a tiny fraction of the build time.  A 4 week development project could quite easily be recustomised in a several hours or less.  The HIGHEST cost of applying an Application Update is the testing time.  Using the techniques above will help reduce this re-customisation effort still further.

If you bump into me at OpenWorld and you agree or disagree with any of this or you have some alternative views then stop me (buy me a coffee) and let's discuss it.  Or ...feel free to post below.

"Happy Safer Customising" ...and just to keep everyone extra happy..."Happy Safer Customizing".

Sunday, 14 October 2018

My Top 5 Things at OpenWorld 2018

In the last 12 months since OpenWorld 2017, the PeopleSoft team have released over a dozen new images across HCM, FSCM, Campus, CRM, ELM and Interaction Hub. 12 patches for PeopleTools 8.56 and released the all-new, cloud-first PeopleTools 8.57. Top that all off with PeopleSoft Cloud Manager releases 06 and 07 and you have something of a busy year!

The innovative and dedicated PeopleSoft product development teams at Oracle have continued to deliver on Paco Aubrejuan's promise to innovate and deliver.  Watch here ... "look at what we've done...." he says when highlighting the past investment and then goes on to say it's as strong as ever.  "The current state of PeopleSoft is the best it's ever been".  This video was recorded nearly a year ago and it has to be said again ... look at what Oracle have done!

The future looks very bright indeed for customers running PeopleSoft applications.

So OpenWorld 2018 is around the corner and here are my top 5 things to look out for if you're attending (if you're not attending then I hope my daily update while at the event will help a little).

(1) The people.  It really is about the people... the customers, the developers, the strategy teams, product development, the partners... they are all real people with real experiences (thankfully, none of them are machines yet and there's no sign of any Artificial Intelligence amongst any of them either).  Any event where people get together with a common interest always makes for terrific value.  Look out for UK Oracle User Group Apps18  conference coming up on 3 - 5 Dec in Liverpool, UK (home of the Beatles) followed closely by the All India Oracle Users Group Conference - Sangam18 in Benguluru, India at which I'll be presenting.  More ton these 2 events later.

(2) Paco Aubrejuan's keynote is on Monday @ 16.45 in Moscone South 153/155.  PeopleSoft Update & Vision [GEN4141].  The big PeopleSoft picture. Don't miss it.

(3) Customer stories.  This is like item #1 but just a bit more formal.  I love hearing about real stories of what customers and partners are doing with PeopleSoft.  Come and hear these 2 session that I have the privilege to be involved in.

Customers Using Oracle Cloud for PeopleSoft [CAS4438] on Tuesday @ 12.30 in Moscone West 3011 
Customers Using Personalization, Configuration & Customization in PeopleSoft [CAS4322] on Wednesday @ 16.45 in Moscone West 3012

(4) Something for the Techies. After all there'd be no application without PeopleTools... and OpenWorld wouldn't be quite the same without the legendary Jim Marion and the super-admins Dan & Kyle.

* Advanced PeopleSoft Administration Using PeopleSoft Cloud Architecture [TIP2994] - Dan Iverson & Kyle Benson ( on Monday @ 11.30 in Moscone West 3011
Getting the Most Out of PeopleTools: Tips & Techniques [TIP4444- Jim Marion ( on Monday @ 3.45 in Moscone West 3016

(5) Finally something slightly off-piste for us PeopleSoft aficionados.  A session from Oracle DevOps specialists -   Using Ansible, Terraform, and Jenkins on Oracle Cloud Infrastructure [DEV5582on Thursday, Oct 25, 9:00 a.m. | Moscone West - Room 2001

Really looking forward to meeting everyone again, to learning new things and to hear about Oracle's vision of the future. See you soon.