NASA-IMPACT / EIC-Mobile

EIC Mobile Concept
https://earth.gov/mobile-climate-mapper/
1 stars 0 forks source link

Technical debt and future scenarios #70

Open j08lue opened 2 weeks ago

j08lue commented 2 weeks ago

What to consider technical debt really depends on the intended future of this app or its components.

Current state - one-off, stable application

As it is, there are a few smaller things we need to fix now or make more robust (see remaining tickets). Otherwise, the app can continue to live as it is.

In my view, there is no major technical debt that we need to pay off now to make this app sustainable in its current form (and maybe with a dataset or two more).

Future scenarios

If we have plans of scaling animated globe visualization to many new datasets, make the content more dynamically generated, or reusing it for other exhibits or topics or inside other applications (like VEDA-based dashboards), etc., some decisions we made for this application will become a limiting factor.

For example:

  1. The decision to have a lot of information describing datasets configured in the application instead of coming from a metadata service limits the scaling to many other data sources.
  2. Relying on ArcGIS endpoints for pulling time series - this would need to be made interoperable with services that extract time series directly from datasets in DAACs, so we do not need to host copies of datasets in ArcGIS.
  3. Relying on ArcGIS Maps SDK is different from our choice in other applications and not actually required for MCM, since we do not make use of a lot of ESRI ecosystem connectivity. In VEDA UI, we have been using Mapbox GL, maybe Cesium JS is also a better choice? Something to evaluate when we consider to build 3D globe animations elsewhere.
  4. We currently rely on manually pre-generated videos for the globe animation. If the content is not changing or growing a lot, this is fine. But if it does, we would need more automated approaches and perhaps video streaming solutions instead of static video assets.

None of these I would consider technical debt now. Only things to consider when planning future evolutions of this app or its approaches.