Thanh Pham

Foundation Team Lead · 2022 · Digital Twin · pivoted

Deployment CLI and SDK

Pivoted to part of original scope after evaluation.

Open it on the map

Lesson

A tool’s value is not measured by its features or vision, but by how users adopt it to solve problems.

The lesson in full: The tool performed as intended with planned features. However, observed problems remained mostly the same and got worse as we waited for adoption for ~6 months. Three main reasons: the CLI tool allowed a ‘legacy’ mode for the transition which became an easy/no-action-needed path; no time was allocated beyond the ‘getting started’ phase; adoption was measured on usage, not understanding of root problems. Result: near 100% ‘adoption’ with the majority simply replacing ‘script A’ with ‘ktw command A --legacy’.

What it is

A command line tool to manage Kognitwin deployment repositories, automate repetitive tasks, provide consistency and enforce validation. After 2 years of scaling up and deploying Kognitwin to multiple customers in multiple regions, the ‘extreme flexibility’ that makes the product unique began to show its downside: managing multiple deployment repositories with copy-paste pasta with slight modifications became extremely error-prone and time consuming. The tool was built with many sub-commands to handle different aspects of the deployment process, including setting up new data sources, stamping out standard configurations for newly deployed facilities, validating configuration and applying changes to different environments, and triggering task pipelines for data clean up, import, and contextualization.

Results

  • Full adoption across deployment teams.
  • Pivoted to 2 of 8+ sub-commands.
  • For in-use commands, fully replaced duplicated scripts.

Tools and technologies

CLI · TypeScript · SDK

Lineage

Built on lessons from Digital Twin Platform, First Global Twin Deployment, First Twin Admin.

Lessons carried into Catbot AI Test Bed, Self-Service Twin Portal, Situation Awareness Cockpit, Task Orchestration V2.