asymetric modernization

12
www.redpilldevelopment.com learn. do. dream. Underneath the hood of Asymmetric Modernization

Upload: peter-presnell

Post on 13-Jul-2015

340 views

Category:

Technology


0 download

TRANSCRIPT

www.redpilldevelopment.comlearn. do. dream.

Underneath the hood of

Asymmetric Modernization

www.redpilldevelopment.comlearn. do. dream.

Go

al

The goal of asymmetric modernization is to establish aprocess for modernizing applications that scales for largeportfolios of applications.To do this we must recognize that modernization is ajourney and not a destination. It is therefore essential thatnew “modern” capabilities can be continually added to anapplication portfolio in a way that does not require changesbeing made on an application-by-applications basis.

Note: This process is not specific to Notes applications but is particularly wellsuited to the Notes platform because of the large number of Notes applicationsfound in many organizations (200 on average).

www.redpilldevelopment.comlearn. do. dream.

Ap

pro

ach

es

Migration

The focus is on achieving a platformchange. This is an internal IT focus as userstypically do not care about the underlyingplatform, but rather what it delivers.

Modernization

Focuses on delivering modern capabilitiesto existing applications. The ability todeliver this functionality is more importantthan the platform used. This is usually acustomer-focused initiative.

Traditional ModernizationAnalysts/developers build an understanding ofan existing application and use thatunderstanding to develop a new applicationon the target platform.Skilled analysts/developers and developmentframeworks are important.

Automated ModernizationAutomated tooling scans the code of theexisting application and uses thatunderstanding to generate new code.Developers are usually needed to completethe work which requires them to still build anunderstanding of the application.Skilled developers (but less of them) arerequired along with a good set of automatedtools.

Asymmetric ModernizationCode and data forensics builds anunderstanding of each application and fromthis understanding a new, modern, interfaceis provided.Good forensics is needed along with asophisticated meta-driven UI. There is a higherfixed cost to develop/acquire the technologybut a much lower variable cost for eachapplication

www.redpilldevelopment.comlearn. do. dream.

www.redpilldevelopment.comlearn. do. dream.

Exte

nd

v R

epla

ce

Leaving the existing application (and associated)data intact is a key requirement for AsymmetricModernization. Replacing an applicationrequires a cutover from the “old” to the “new”.Extending an application allows the “old” tocontinue operation while the “new” evolves.

With the original application still available foruse new capabilities can be delivered in a stagedapproach until there is no longer a need for theold. In many cases a lot of the functionality inthe original application is never requestedreducing the cost, time, and risk.

It is usually possible to meet the business needsof 80% of the existing platform for 20% of thecost. Having a strategy that provides analternative to spending the remaining 80% canbe the difference in the success or failure of theproject.

www.redpilldevelopment.comlearn. do. dream.

Co

de

& D

ata

Fore

nsi

csAnalysis of code helps to provide anunderstanding of what the developer thoughtan application should do. Analysis of data helpsprovide an understanding of how theapplication is actually being used. Combiningboth code and data forensics provides a morecomplete picture about the true nature of anapplication.

Automating the forensics process allows 100sor 1,000s of applications to be quickly analyzed.While not a requirement, it is often a good ideato take advantage of the unique capabilities ofgraph databases to store the large volume ofdata associated with representing the forensicsresults a large application portfolio.

During the course of a large modernizationproject is is common for the existingapplications to change. The forensics processmust therefore be designed to run on a regularbasis to reflect the changes that occur until theproject is completed.

www.redpilldevelopment.comlearn. do. dream.

Met

a-D

ata

Dri

ven

UI The asymmetric approach not only has the ability to dramatically reduce

the cost of modernizing an application portfolio it also can result in largenumbers of modernized applications being delivered within a few days orweeks of the project starting. This is achieved by developing a userinterface that is driven by the the meta-data collected during the forensicsphase.

The goal of this modernization layer is to remove many design decisionsfrom individual applications applications and consolidate them into asingle “application”. As UI standards evolve over time this modernizationlayer also evolves ensuring applications are always being presented with afresh “modern” interpretation of the underlying data. E.g. It is nowexpected that addresses are integrated with a mapping application, namesare integrated with contact details and (on a smartphone) telephonenumbers are linked to the phone application.

It is unlikely that the computer-based guessing of UI needs will be perfectfor every application but it can result in the rapid delivery of mobileinterfaces or responsive web interfaces for thick client applications thatmeet many of the needs of existing application users. The extend overreplace approach ensures the original application remains available to fillany initial gap in functionality provided via the meta-data.

An administration tool to over-ride the meta-data generated by theforensics allows comprehensive fine-tuning of the resulting applications ina matter of minutes. Because much of the application functionality is nowrepresented as meta-data it is possible to implement changes to theapplication without the need for changes to the original code.

www.redpilldevelopment.comlearn. do. dream.

Co

re C

apab

iliti

esA lot of the functionality required for an applicationis not unique to a single application. Examplesinclude comments, keywords, export, print to PDF,like, share, author profiling, contact integration,integrated messaging. We refer to these as corecapabilities.

Rather than build those capabilities into eachapplication, an application framework is establishedthat allows the core capabilities to be madeavailable to all applications. Where needed theability can be added to customize which corecapabilities are made available (e.g. an applicationcontaining confidential data may not benefit fromhaving an export feature).

The modernization process involves meeting userexpectations for quickly adding new corecapabilities to each application. In the past this mayrequire each application to be redeveloped, tested,and deployed. This is an expensive and time-consuming process. With asymmetric modernizationthe core capability is developed once and thenautomatically added to all applications in a mannervery similar to that found in cloud-base platforms.

www.redpilldevelopment.comlearn. do. dream.

Co

ded

Cu

sto

miz

atio

n

While meta-data can go a long way to delivering a modern interpretation of the UI for aging applications there is alwaysgoing to be applications whose complexity goes beyond that which can be easily understood by forensics scans and/orreplicated in a meta-data (only) driven UI. The ability to integrated code with the meta-data UI becomes a must formany mission critical applications.Another important characteristic of asymmetric modernization is the ability to integrate code with meta-data. This canoften be the most time-consuming part of the process as there is rarely a fast way to reproduce complex business logicwritten in languages such as @formula or LotusScript that will run from within a web browser or mobile client.

www.redpilldevelopment.comlearn. do. dream.

Inte

grat

ed F

eed

bac

k

When modernizing an application one of the greatestareas of savings comes from not assuming all theexisting functionality is required. A lot of thefunctionality found in existing applications is no longerused, needed, or does not have a compelling ROI tojustify its continued existence. As an example,compare the functionality delivered on most mobilemail clients with that found in desktop clients such asNotes or Outlook.Core capabilities are delivered to all applications firstand an integrated feedback mechanism is provided toquickly identify features needed the most. These arethen implemented in a priority order across theapplication portfolio.Eventually the number of requests falls away or theROI of the requests remaining does not warrant thembeing acted upon. At this stage you usually find theexisting application is no longer being used at all, oronly by a handful of people with very specific needs.

www.redpilldevelopment.comlearn. do. dream.

Ap

plic

atio

n S

tore Business user will typically make use of

multiple applications in order to do their job.We therefore need to provide a central place inwhich people can both find and access theseapplications. This will typically be provided inthe form of a portal/application store.

The application store should allow users toidentify their applications, the ones containingthe data with which they work. Customizationshould be available to control the way in whicheach person chooses to work with each datastore.

A modern user experience will deliverinformation consolidated across applications(e.g. notifications, to-dos, activity streams andcalendars). It will also provide a mechanism tosearch for content that is contained in theunderlying data silos. The application storeshould also be the place in which all corefunctionality is delivered that is not specific toan application (e.g. export, share, feedback).

www.redpilldevelopment.comlearn. do. dream.

Asymmetric Modernization is…

Extend v Replace

Code & Data Forensics

Meta-Data Driven UI

Core Capabilities

Coded Customization

Integrated Feedback

Application Store