Summary: It is possible to "extend" CAST AIP with an extension to provide additional analysis and measurement capabilities both for technologies that are not supported "out-of-the-box" and for technologies supported by CAST AIP. Extensions fall into distinct categories, described below.

CAST AIP official extensions

"Official" CAST AIP Extensions are provided by CAST and are downloaded and installed on top of CAST AIP to provide support for specific technologies (analysis/measurement/discovery/extraction) that are not supported "out-of-the-box" by CAST AIP. These "official" CAST AIP extensions have their own product life-cycle for development, testing, shipping and support, which is independent from CAST AIP. You can find out more about the extensions that are available in CAST AIP Technologies.

Within this category, there are three distinct types of official CAST AIP extension:

SDK extension

SDK based extensions are provided to offer support for the analysis and measurement of frameworks that are not supported "out of the box" by CAST AIP. These extensions are built with the Extension SDK (you can find out more about this in the CAST AIP documentation, here) and can also use the Universal Analyzer framework (you can find out more about this in the CAST AIP documentation, here). These extensions provide support for specific technology frameworks and either:

  • rely on an existing CAST analyzer provided "out of the box" by CAST AIP, for example WPF for the .NET analyzer or JAX-RS for the JEE analyzer.
  • or rely on another analyzer delivered as an extension - for example the HTML5/JavaScript analyzer which is required by the  jQuery or AngularJS extensions

Universal Analyzer extension

Universal Analyzer extensions are provided to offer support for the analysis and measurement of technologies that are not supported "out of the box" by CAST AIP (such as PHP or RPG). These extensions are built with the Universal Analyzer framework (you can find out more about this in the CAST AIP documentation, here) and rely on the Universal Analyzer which is provided with CAST AIP.

DMT (CAST Delivery Manager Tool) extension

The CAST Delivery Manager Tool (DMT) is bundled with instructions (known as "extensions", containing "discoverers" and "extractors") that provide information on how standard CAST supported languages should be extracted and packaged ready for analysis - in other words:

  • what files and folders should be taken into account and transformed into Analysis Units for the CAST Management Studio (discoverer)
  • how the files should be accessed - for example if the technology is stored in a Source Code Management (SCM) system (extractor)

CAST provides additional extensions (not provided "out of the box" with CAST AIP) for very specific situations, such as:

  • the support of a Source Code Management system (such as Git)
  • the support of a particular aspect of a technology (such as JEE File Discoverer)
Note that you can find out more information about the release "status" of an extension in: Release types.

Custom extensions

Custom extensions are those that have been built by third-parties - i.e. by the CAST User Community or by CAST Labs (see Contributor types). These extensions are provided "as is" and have no official testing or support. In the same way as official CAST AIP Extensions, custom extensions are downloaded and installed on top of CAST AIP.

Custom extensions are primarily created (see Create a new extension):

  • using the CAST AIP Extension SDK (introduced in CAST AIP 8.0.x) to exploit existing CAST analyzers such as those for .NET/J2EE/SAP-ABAP/Universal Analyzer
  • using the Universal Analyzer framework (available in all current and legacy releases of CAST AIP) to provide analysis support through the creation of a Universal Analyzer language package for technologies that are neither supported out-of-the-box by CAST AIP, nor via an official CAST AIP Extension

However, a custom extension can also be any "add-on" that enhances CAST AIP (see Creating a custom extension to share an add-on to CAST AIP), for example:

  • CAST Scripts
  • DLM rule sets 
  • Customer-specific rules 
  • Jira integration
  • Scripts for automation with different schedulers (e.g. Jenkins) 
  • Customized assessment models; Architecture patterns; 
  • Regular expressions for the Metric Assistant 
  • SQL queries in SQL Tool and KB Update Assistant 
  • Reference Pattern
  • Parametrization engines 
  • Productivity Data for Assessment Model 
  • Report generator templates 
  • Excel sheets with examples of calculations or specific uses of AIP data