Skip to main content

System Prototype Template

Overview

A System Prototype Template defines the structure and parameters for creating preliminary versions of systems. It serves as a blueprint that specifies what information needs to be collected during the prototype creation process, allowing for customization and standardization of the prototype's initial configuration.

Parameter Definition

The template defines parameters through the parameters section in the template specification. These parameters determine what information users need to provide when creating a new system prototype.

Entity Definition

To define a new SystemPrototypeTemplate entity, create a system-prototype-template.yaml file in your Git repository with the following structure:

apiVersion: witboost.com/v1
kind: SystemPrototypeTemplate
metadata:
name: dataproduct-prototype-template
title: Data Product Prototype
description: Template definition of a Data Product Prototype
mesh:
icon: https://cdn-icons-png.flaticon.com/512/589/589598.png
tags:
- data-product-prototype
spec:
owner: agilelab
type: dataproductprototype
parameters:
- title: Value Proposition
required:
- name
- owner
- domain
properties:
name:
title: Name
type: string
description: Unique name of the component
owner:
title: Owner
type: string
description: Owner of the component
ui:field: OwnerPicker
domain:
title: Domain
type: string
description: The domain this component belongs to
ui:field: EntityPicker
ui:options:
allowedKinds:
- Domain
description:
title: Description
type: string
description: A description for this component
purpose:
title: Purpose
type: string
description: The main purpose or intended usage of this component
keyResults:
title: Key Results
type: array
default: []
description: Add key results
ui:field: CustomUrlPicker

- title: Product Discovery
properties:
expectedUsage:
title: Expected Usage
type: string
desiredTimeToMarket:
title: Desired Time to Market
type: string
importance:
title: Importance
type: string
successMetrics:
title: Success Metrics
type: array
default: []
description: Add success metrics
ui:field: CustomUrlPicker

- title: Information Prototyping
properties:
dataSources:
title: Data Sources
description: Select data sources from available Data Products
ui:field: EntitySearchPicker
ui:options:
multiSelection: true
entities:
- type: System
displayName: Systems
displayField: '{{spec.mesh.name}}'
returnField: ref

steps:
- id: edit
name: Edit Prototype
action: edit:prototype

output:
links:
- title: Repository
url: ${{ steps.publish.output.remoteUrl }}
- title: Open in Backlog
icon: backlog
entityRef: ${{ steps.register.output.entityRef }}