Tutorial: Create an MVP
Learn how to use Uniscale from end to end by creating a sample project. This will function as a minimum viable product.
Introduction
The purpose of this article is to create a minimum viable product called "UserSolution" in Uniscale. You can follow along and replicate the steps in your Uniscale workspace.
The article will walk you through the phases of the Uniscale Method:
Specification: Write the functional specification.
Documentation: Link your UX flows to a service and model the service.
Implementation: Generate the Uniscale SDK and implement it into your IDE.
Create a sample project
Functional Specification
Here we will describe the functional requirements.
Create a
solution
called "UserSolution"Idea: Use the solution description template here Template: Solution description and use the generative AI in Uniscale to prefill the text.
Create a
module
called: "UserModule"Create a
page
called "User Listing Page"Create a
Functional use case
called: "User Listing Table"Include a description: "Be able to list all users in the solution"
Add a
UX flow
called "Should have name, email, phone, and gender"Add a
Service flow
called: "UserService"
We have described our solution's functional requirements and are ready to move to the next phase.
Service linking
First, we will link the Service flow to a Service. For a detailed walkthrough, please check: Tutorial: Service linking
Go to the module "UserModule"
Navigate to "Service linking"
Click "Add service draft"
Name: "UserService"
Click "Create root namespace"
In Overview, expand the "User Listing Table" to find the Service flow called "UserService"
Drag the Service flow to the Service "UserService"
Create the service by selecting "Create service"
Service modeling
Here we will describe the technical documentation to support the functional requirements.
Click on "Go to" to enter the service editor
Add an named "User"
Add the and define them with the details below:
Property name | Property type | Data type | Additional settings |
---|---|---|---|
Native type | String | ||
Gender | Native type | Terminology | |
Name | Native type | String | |
Phone | Value object | New - Product owned |
Complete the
aggregate
andvalue object
.Create the
Select "Link endpoint" from the menu
Endpoint origin: "Create new endpoint"
Endpoint type "Request/respond"
Endpoint behavior: "Get"
Endpoint action: "Users"
Select "Create endpoint"
Add endpoint input
Create a
value object
Name "Empty"
Property type: Value object - Structure
Mark as complete
Data representation: Select the value object "Empty"
Cardinality: "Single"
Add endpoint output
Data representation: Select the aggregates "Value objects" and "UserIdentifier"
Cardinality: "Multiple"
Mark the endpoint as complete
Service locking and approving
You will lock and approve each service revision as you want to keep track of your changes over time.
Select "Ready all"
In the overview, select "Set all to ready"
Select "Approve"
Name it "Initial revision"
Select "Submit"
We have completed the technical documentation and are ready to begin the implementation.
SDK generation
Now we will generate the SDK and begin the technical implementation. For a detailed walkthrough, please check Generating the SDK
Go to the SDK Portal
Libraries setup:
Select service the service you want to generate the SDK for
Select your preferred programming languages.
Click "Save changes"
Use the Uniscale SDK
With the sample project described in Uniscale, it is time to begin the technical implementation.
Learn how to utilize the Uniscale SDK: Library implementation basics
Integrate Uniscale with your IDE: IDE plugins
Find the relevant article based on your intention: Implementation
Congratulations! We have now fully implemented the solution "UserSolution".
Create a revision
As with any product, you will likely have several product releases with fixes and improvements. In Uniscale, this is done by creating a new revision.
You can either create a new Module revisionor Service revisions depending on what you are updating.
Note that for every new revision, you will generate a new SDK
Build your solution
You are now ready to build your solution in Uniscale:
Visit: Quick start guide
Need help? Book a meeting and let us help you: https://www.uniscale.com/onboarding
Last updated