Pivotal Application Analyzer: Your Forensic Source Code Analysis

July 23, 2019 Steve Woods

Migrating to the cloud is a big, complex endeavor. You need to map out a migration plan for your portfolio that contains applications that are a mix of legacy and brand new. To get started on a smooth transition, you need to conduct a detailed analysis to assess the cloud-readiness of each application to determine the best cloud migration approach.

Sound like a daunting process?  It is! Let’s understand why that is. On average, an enterprise portfolio contains around 1,000 applications and you have to evaluate every single one of them. Doing some quick math, that’s about 5 million lines of code and that needs to be evaluated against our list of 800 Cloud critical API patterns. You need to score these patterns to understand each app’s suitability for the cloud - these scores equate to migration work. That’s about 4 trillion API pattern matches.  This analysis can take weeks, if not months to do. How can you do this efficiently and consistently? 

What if there was a rapid, more objective way to assess your portfolio? Introducing the Pivotal Application Analyzer (PAA): a powerful tool that scans your source code and generates a technical score (between 1 to 10) to quickly determine the cloud-readiness of your application portfolio. 

 

Why Did We Create Pivotal Application Analyser?

We understand competitive business code is sensitive. It should never leave your premises.  With that in mind, PAA was designed to launch right from your laptop, evaluating large application portfolios quickly so you can make objective, data-driven decisions.  

Portfolios are a huge amount of code. Since PAA was written in the Go Programming language it is highly parallel.  We did this because scanning source code is a special type of problem called “embarrassingly parallel”.  It means there is an opportunity to exploit parallel processing. 

We also wanted to easily extend and add rules without rebuilding PAA so the rules are written in  YAML which means they are easily expanded and edited right on your laptop. These rules were created by some of our most talented and experienced architects and have been tuned and adapted to dozens of customers in a wide range of vertical sectors. It’s like having all of Pivotal’s expertise looking over your shoulder.

PAA is also adaptable to any language.  We currently support Java and C#, but we’re adding support all the time, C++ is in progress. 

Of course, since it’s GO, PAA runs on OSX, Windows, and Linux. It’s just a single file, a single executable. 

And, in keeping with our “one executable to rule them all,” philosophy, from that same executable, we’ve built in a browser-based reporting and visualization tool. All the while, your code has not left your premises,  so it is safe. 

And the most important design criteria, PAA scales to very large portfolios.

What’s the Scoring Model?

PAA is based on a scoring model, so your applications will be evaluated based on a simple numeric scale. We’ve devised a statistical model to provide a simple output so you quickly and easily decide on your applications. It’s like a “technical fitness” score.

How does it work?  The scale is between 0 (bad) and (10) good. It’s that simple!  If your score is somewhere around 5 your decision wavers between PAS and PKS.  If PKS is your first and only destination, then think of your score as a deployment complexity indicator.  Higher scores are better and means less effort to get cloud-native.  If an application scores a 10, that’s perfect and it’s cloud-native. Whereas applications that have lower scores require more effort to get cloud-native ready. For PAS, the score indicates the amount of remediation required to move toward cloud-native. For PKS, the score indicates the amount of accommodation, such as persistent i/o and other non-ephemeral behaviors. 

Of course, your decision rests upon more than just the technical factor. So, where possible, factor in the business value. Just enter your business value right in PAA’s user interface.

The details underlying your scores specify the amount of effort to migrate applications to PKS or PAS. These details also determine the pertinent skill sets and staffing model you will need to be effective.  

So, the idea is this: Make informed decisions. You now have the data to confidently and quickly decide what applications to move over to the cloud and the level of effort required. To see the Pivotal Application Analyzer in action, check out the demo.

If you are interested in learning more about the PAA, contact your Pivotal rep or contact us

About the Author

Steve Woods

Steve Woods is a Advisory Solutions Architect at Pivotal.

Previous
Your Path to Agile Matters
Your Path to Agile Matters

Next
Implementing Comprehensive PCF Automation Pipelines
Implementing Comprehensive PCF Automation Pipelines

SpringOne Platform 2019 Presentations

Watch Now