Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Engage 2017 - Choose your own adventure


Published on

A world of adventure awaits you within every app's lifetime, none greater than when the managers decide it is looking a bit long in the tooth.
The realm is a tricky one, your cause may be just but how to you justify you opinion to the grand council of the Elder PMs?
Hunt for the hidden forest where backing from the business is said to dwell.
Visit the fantasy lands of 'bolting on the latest tech'
Face the dark overlord of Rip and Replace
Your challenges will not just be technical, but political & economic, can you defeat evil forever or will it rise stronger in 5 years time?
Let us be your Gandalf, and take you on a journey where you are the hero

Published in: Software
  • Be the first to comment

  • Be the first to like this

Engage 2017 - Choose your own adventure

  1. 1. Choose your own adventure Update / Convert / Replace? Mark Myers Matt White LDC Via
  2. 2. Firstly, let’s have a little chat about passports Originally this session was meant to have been presented by my esteemed colleague Mark. There was some unpleasantness at the passport office.
  3. 3. Mark has a statement to make “I, Mark Myers, absolve Matt White of the need to do all the fantasy analogy s**t that I was going to do, and thus you can explain all the stuff we have learnt about how to deal with the human side of app migration without having to talk about Orcs” “Also you don't have to wear a wizard's hat and a clip on beard” - @stickfight
  4. 4. All of which means… - You’re stuck with me - Domino developer since 1995 - Lead developer of IdeaJam - XPages developer since before it was released - Co-owner of LDC Via
  5. 5. So, who remembers these?
  6. 6. Choose your own adventure books Fighting Fantasy was a series of single-player role- playing gamebooks created by Steve Jackson and Ian Livingstone. The first volume in the series was published in 1982. The series distinguished itself by mixing Choose Your Own Adventure-style storytelling with a dice-based role-playing element, the caption on many of the covers claiming each title was an adventure "in which YOU are the hero!"
  7. 7. You receive a map with three destinations on it...
  8. 8. You receive a map with three destinations on it... - The Land of Update. - To just add new features or a new skin, to give the app a face-lift, a better UI or other specific feature at the request of the users. - The Kingdom of Conversion - To change an application’s platform (front or back-end) whilst retaining established look and feel or behaviour (i.e. don't scare the existing user base) - The Realm of Replacement - To only retain the application’s data, to rebuild the application from the ground-up, to reflect changing use-cases.
  9. 9. And the prize at the end? - Happier users - ROI - Return on Investment - And for you… - Interesting technical stuff - Job security
  10. 10. The Land of Update - Depending on your strategy this may be the best route to follow - Are you keeping your Notes and Domino infrastructure? - This may be as simple as adding new features - Give your app a face-lift - To be honest, the Land of Update is a little boring. - Shall we move on
  11. 11. The Land of Update Ah no, WE WON'T!! - From a technical perspective, it’s boring, mainly because it's been done to death in conferences for the last 10 years, but because so many apps are being pushed for migration, we must have missed something! - Why do the users want to change? - What are the drivers for grumbling about an application that has served them well?
  12. 12. The Land of Update - Why? - My new thing is shiny - When compared to a modern web app how does the existing app stand up? - When a new starter arrives are they impressed with it? - Does it integrate with the new apps in your company? - Your company won't be staying still, it will add new applications and new platforms all the time. Can your application keep up, or is it in danger of becoming isolated? - Does it integrate with your users today? - A Notes client or even a desktop browser may no longer your user’s main interaction point (think mobile devices). Are they not using your application because it's just too much of a pain? If you don't give users what they want, they will go elsewhere
  13. 13. Level 1 Boss Battle - The Meddling Middle Manager Mage - A devious foe, who prioritises his personal advancement over the project, quick to capitalise on any late deliveries…. Special Attacks - The subtle email: a terrifying attack, where doubt and uncertainty about a project or application is whispered quietly into stakeholders’ ears Weakness - Only attacks the weak, so keep all stakeholders informed, and if there is slippage on the project, inform people promptly with rectifying actions.
  14. 14. The Kingdom of Conversion - You want to keep the functionality of your application but there needs to be a change. - There are two routes you can take - Switch out the front-end but keep Domino - Create an entirely new version of the application - They are both perfectly valid paths depending on your larger strategy. - Are you retaining a Domino infrastructure but moving away from the Notes client for example? - Or have you been commanded to remove Domino, but your application is business critical?
  15. 15. The Kingdom of Conversion - New front end - If you’re keeping your Domino server infrastructure, you have a lot of options - Key to understand the app’s functionality - “Classic” Domino and XPages routes: both in support for the foreseeable future - Create a modern web application: REST + one of the key JavaScript frameworks (Angular, React, etc.)
  16. 16. The Kingdom of Conversion - New front end and back end - We often see situations where Domino has to be completely removed - But the application is business critical, you want to replace like with like - This will be more work - You need a full understanding of all of the functionality required - This includes what we’ve been used to being provided by Domino - Security - Data backup - The application functionality should be decomposed into REST services - The front end needs design work to ensure users can continue to use it without too much retraining - At this point the technology isn’t really important
  17. 17. The Kingdom of Conversion - new front end and back end - Ensure that real users (not managers) sign off the functional spec that you write - Remember that providing a new application with a reduced feature set can be very painful if it’s not properly managed - What is the driver for the work? - Politics? (in which case this may be tricky to manage) - Financial? (saving money) - Is it going to cost more to do the work than it will in terms of adding value?
  18. 18. Level 2 Boss Battle - The Rumour Ghoul - A creature that crawls from user to user, manager to manger, spreading half- truths and exaggerating minor niggles into project-breaking disasters. Special attacks - Able to spread from user to user infecting all it touches - Infecting a senior manager can lead to project cancellation Weakness - Shrivels in the hard light of truth: quickly arrange demos, desk visits and workshops with stakeholders to expose the lies and lay it to rest - NEVER LET IT FESTER
  19. 19. The Realm of Replacement - The most extreme journey: you’re moving onto a new platform, creating brand new apps, changing work-flows, all at the same time - Maybe this is a switch to Salesforce or Sharepoint - The rule should be that a replacement is always better - This is, unfortunately, not always the case - There are a number of quests you will have to go on… - Unlock the vault of security - Understand the parchment of field mappings - Have the book of understanding of the business requirements
  20. 20. The Realm of Replacement - the journey
  21. 21. The Realm of Replacement - Assessment - Here you determine what is needed and can it be done - It breaks down into 2 basic types Business / Human - As you are doing a full replacement, you can sit back down with the business and determine EXACTLY what they need. Have the application needs changed over the year? Technical - Can the target platform handle the existing application? - Often a platform is chosen for political reasons or to adhere to a standard. - How complex will the conversion be.
  22. 22. The Realm of Replacement - Rationalisation Now that we know what needs to be done we have to justify it to see if the Realm can afford it. - You will need to work out the R.O.I. on the Replacement. - Are there any changes that will make it better for the Realm long term that you need to factor in? - Can the current applications use be expanded, Can other departments/areas use it and so spread the financial load.
  23. 23. The Realm of Replacement - Planning Now we need a real plan - If you are not 100% sure you understand the business get a native guide (or business analyst) make sure they are a good one. - Ensure you communicate with both a Power User and manager to get a solid understanding of what needs to be done - Whatever timescale your developers tell you, DOUBLE IT, then add 20% for testing, and another 20% for meetings / management - We are serious about this - If you are adopting an agile approach, ensure expectations are managed
  24. 24. The Realm of Replacement - Design Review This is where you run a final check of your armour and get the village elder to confirm in writing what type of dragon you are about to battle - People will try and avoid this Quest, but appeal to the Lord of the Realm to get them to take part so you have everything correct. - Point out to them that if something is wrong, then after the dragon has killed you and picked its teeth with your bones, it will come for them… - In all seriousness, a proper signed-off design review can catch last-minute issues and save a fortune versus the cost of fixing problems once live
  25. 25. The Realm of Replacement - Migration The fun bit: actually doing it! - Plan for issues happening, make them an expected part of the migration. - Search out the rare “power user.” Give them (and only them) access to your test environment, so that they can give you sensible feedback and nip issues in the bud - Expect (and resist) pressure to promote code to UAT before it is ready - (This is the hardest part, the Realms Lord with press for this every day)
  26. 26. The Realm of Replacement - Deployment Getting the users off the old system and on to the new - You WILL discover integration points, that no one mentioned, that are suddenly CRITICAL - Beware of the “The Rumour Ghoul” - this is his or her feeding ground - Have a “go-to” member of your team who will be responsible for investigating and rectifying data matching issues between the old and new systems. The important point here is that users see you responding to all of their issues. Failure to do so will mean they will be escalated to some form of Demon Lord.
  27. 27. Level 3 Boss Battle - Standardisation Demon - This Brutish monster is often called up by the Lords of the Kingdom to ensure all applications are written in one platform and only one system is supported Special Attacks - Systems look neat on paper - Integration with existing systems Weakness - Required functionality is often not provided. Fight it with the sword of “best of breed” and prove that your alternative will bring more advantage to the business
  28. 28. Secret Hidden Levels Not all horrors you face will be obvious - Not all your users will be aware of all parts of an application - Users and the business may not be aware of legal or regulatory requirements - Users may have created ad hoc integrations with other systems that are not generally known - The most common being Excel exports sent via email These will not be your responsibilities but you will be blamed post-migration, so prepare well, investigate fully and try to get people to reveal oddities up-front
  29. 29. Secret Hidden Levels Other hidden issues that you may face during your quest if you’re going to the cloud are: - Loss of control - Data storage laws in different countries. - Provider consolidation - Is your new application provider still going to be there in 5 years? - Hidden costs - Multi-tenancy - SLAs
  30. 30. Final Boss Battle - Scope Creeper of Doom - The most feared of all enemies to projects, an unchecked Scope Creeper can bring misery to an app upgrade or conversion. - Attacks with the battle cry “Could you just…” Special Attacks - On a project the Creeper can eat all the budget before the core deliverables are completed Weakness - A solid functional spec is your best defence, it is a shield to take you through the dark times. And it’s never too late to try and get one signed-off.
  31. 31. Dungeon Master's Guide - Keeping Leveled Up - Domino skills are hard to come by these days - Some of the key things you need to understand instead - Various JavaScript frameworks - Modern JavaScript (ES6) is evolving fast - REST services - Authentication mechanisms (OAuth / SAML etc.) - Cloud services (Azure / Bluemix / EC2 etc.) - Modern project management skills are becoming more important – think agile (Scrum, Kanban, etc.)
  32. 32. Dungeon Master's Guide - Paying your way - An application has to pay its way - If it’s going to cost more to replace than it makes or saves, then it’s not worth doing - If it’s no longer paying its way then “managed decline” may make more sense - What can you do with the data - Can it be kept in a simpler or cheaper format? - Does it need to be retained for regulatory reasons? - Some applications are hard to value in financial terms - They can still be useful for your user community or your business - Will changing the application damage that value? - Make sure you understand the value by talking to the users - A good understanding of usage patterns will help inform these choices - There are tools out there to help you, some of them in the showcase here
  33. 33. Dungeon Master's Guide - Paying your way - If new features are required, it’s worth balancing up the cost differences between updating and converting. - If adding a new feature would cost 80k but migration would cost 100k and includes the new feature, then suddenly the migration only costs 20k - Always calculate the ROI on any major changes for a number of years - Some other services (e.g. Salesforce) cost a fortune. But developers on obscure or out of date platforms can cost even more. - Lock-in is not just a software vendor issue
  34. 34. You can be the Hero!!! Technical features are only part of the battle. People, politics, perception and budget will make or break your journey