The Spotfire platform can be extended programmatically. It provides concepts and APIs to solve analytic problems by adding custom capabilities.
Define the problem
Initially you may be confused by new Spotfire concepts, or the
broad set of types in the API documentation. But remember, the
API is there to solve an analytic problem, so first define the
problem. What do you want to do?
Can the problem be solved by configuring the Spotfire
application? If it can, this is usually a simple and straightforward
procedure. Creating custom expressions, for instance, can be
very rewarding, providing great analytic power already at a
low time cost and often relatively low level of complexity.
If the problem can't be solved without some missing analytic
capability, consider adding the functionality by extending
the platform. Rather than lumping all logic and presentation
together, add each piece of functionality in its proper location.
The key to good Spotfire design is to break down the problem
in functional units. As we will see shortly, each functional
unit will correspond to an extension.
Outline the solution
It is a good start to consider the problem at a high abstraction
level. Is new or configured visualizatons part of the solution?
Should the user have access to new or configured panels? The
basic design principle is to separate the presentation layer
and its components from the underlying data.
Is there a need to perform data actions or even adding new data
dynamically based on the existing data? It may be a time saver
to explore the power of calculations, instead of implementing
heavy duty data operations.
Is there a part of the problem concerning the loading and formatting
of data? Then a simple data source extension should be considered
part of, or possibly the whole, solution.
Create the Solution
The term solution directly translates to .NET's Solution concept:
First create a Visual Studio® project; then add a Spotfire
extension to the project for each functional unit required to
solve the problem.
See also:
-
Architecture
The Spotfire architecture is conceptually divided. The Automation APIs control Spotfire, and the Extension APIs enable developers to add functionality.
-
Infrastructure
The infrastructure comprises client runtime and programming concepts not directly related to the features of Spotfire. Particularly the Document Model Framework must be mastered.
-
Developing on the Spotfire Platform
A Spotfire extension is the smallest functional unit added to the platform. It is developed in Visual Studio® and is included in a Spotfire AddIn, enabling versioning, licensing, deployment and loading.