Upload
peter-presnell
View
344
Download
0
Tags:
Embed Size (px)
Citation preview
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.
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).