Solution basics
The first dive into the specification and all its aspects: exploring the definition of the solution and its various elements, such as modules, pages, and more.
This article will explain each of the elements in Uniscale that allows you to describe and structure your specification. If you want to start using Uniscale, please check our Quick start guide
Solution elements
In this article, we will explain each of the elements in Uniscale that allows you to break describe and structure your specification.
In this video you will get a short introduction to the structure of a specification:
Solution
A solution is the product, project, or system that you are working on. It contains all the information such as your functional specification and technical documentation.
In Uniscale, we provide various elements to describe and structure your solution. In this article, we will go through each of the elements and explain their purpose and functionality.
Module
A module is a functionally isolated part of the software that has distinct ownership over its functionality and revision lifecycle.
Modules let you place a boundary in the solution at points where it makes sense to divide responsibilities for parts of the software.
Best practices for creating modules
To to create a module: Create and describe your first modules
Pages
Pages define the top-level structure of a module.
Use pages to break down the structure of your solution. In the image below, you will see an example of two pages: Timeline and Direct message. These are both created as pages in the Uniscale solution.
Creating pages is part of the detailed specification that is described further here: Detailed specification
Sections
Sections help break pages into manageable chunks, ensuring every detail in your description is captured.
The idea is to keep breaking them down into a structure of nested sections to define the interface.
A section can be further broken down into:
Sibling section: A section that can be added on the same level as others.
Child section: A subsection to a section for further breaking down the structure.
Functional use case
Functional use cases describe the user behavior within a module or page. This is in contrast to pages and sections that describe the structure.
A functional use case (FUC) can be used for two purposes:
Abstract: To describe the high-level user behavior of a module. An example can be to describe how a new user to your product should be onboarded.
Concrete: To describe the concrete behavior of a page or section. An example can be to describe concrete steps for what should happen when clicking on a button.
A Functional use case can further be broken down into the following elements:
UI Designer notes
For every User Interface (UI) element there is a UI designer note where your designer or product lead can describe the functionality and the restrictions you envision for that part of the UI.
UX Product notes
The UX Product notes allow you to add notes and provide a detailed description regarding the intended user experience for a specific functional use case.
UX flow
UX flows describe the detailed behaviors within functional use cases.
Functional acceptance criteria
A list of qualifications that the implementation of the UX flow needs to fulfill.
You can use our generative AI to help suggest acceptance criteria. Learn more here: Tutorial: Using AI in Specification
Service flow
Service flows are the first steps towards creating your technical documentation.
This part should be done by people familiar with your existing services, like a Solution Architect or Tech Lead.
For each UX flow in your solution, you can create a Service flow to begin to link your functional specification directly to your services.
Service
A service refers to a discrete unit of functionality or capability provided by a system or application.
Each service is defined by its inputs, outputs, behavior, and interactions with other components of the system. Describe the requirements for the underlying technical flows that will enable you to build the desired functionality.
To learn more about Services, visit our detailed Service basics article
Functionalities
Last updated
Comments
You can also comment on different sections of your solution allowing you to add notes to the development process that can be seen and answered by your colleagues.