Uniscale Method
Discover the Uniscale Method and how to effectively leverage our approach throughout the software development journey.
Last updated
Discover the Uniscale Method and how to effectively leverage our approach throughout the software development journey.
Last updated
Before reading this article, we recommend watching our brief video introduction:
The Uniscale Method uses a systematic breakdown approach that allows you to utilize domain-driven AI. This ensures that problems are accurately identified and solutions are cost-effective. By using this method, you'll understand the reasoning behind Uniscale and the different stages of software development. This gives you a framework to break a specification down across multiple roles into a single source of truth. Each stage has its own requirements, details, and results. Understanding these is crucial for your software development journey, helping you build the right product on your first try.
The specification, also known as “Functional Requirement Specification”, is where you describe the solution's intended capabilities, appearance, and interactions with users.
What
High-level overview and introduction of your product:
Abstract specification
Purpose and motivation
High-level requirements
High-level end-user behaviour
Overview of actors
Structure breakdown
Moving from abstract to concrete thinking:
Decide the overall approach to your solution.
Concrete user interface.
UX requirements.
UI requirements.
Why
Align all stakeholders on what you are building and the purpose while serving as a reference point for your solution.
The detailed specification guides all UI and UX design aspects, forming the user experience foundation.
Who
Product Owner or someone with a deep understanding of the product.
UX/UI Designer
Outcome
A clear understanding of the requirements and desired outcome.
An overview of the structure of your product.
A specification ready to be handed over to your product designer for continuing on the detailed specification.
Deciding on the look and feel of your product.
A fully specified solution that can be handed to your technical team to start the service linking.
How
Validation: We highly recommend validating both your high-level and detailed specifications with the relevant stakeholders to ensure complete alignment on the solution's purpose, objectives, and proposed UI and UX.
This collaborative validation process ensures everyone understands the solution and its underlying rationale.
Here you will begin defining the architecture envisioned for your services, establishing their boundaries, and detailing how they will interact.
What
Define the requirements for all technical functionality needed to build the intended user experience.
Identify what functionality you would need from services to be able to implement this user experience
Define the initial architecture for your services.
Define your services' boundaries.
Outline how the services will interact with one another.
Why
Ensure a sustainable product architecture with low technical debt and an optimized services dependency for better ownership distribution.
Who
Software architect or Tech Lead
Outcome
Having each UX flow linked to a service draft that is ready to be further described and modeled.
How
This is where you begin to model your services and outline the needed requirements to specify the technical functionality of your solution.
What
Defining the requirements for technical functionality.
Service functionality requirements
Definition of each service and its purpose
Model how each service will work
Endpoint modeling
Error code & sample data
Data validations
Why
Describe and validate the purpose of each service to ensure a clean architecture.
Have a detailed overview of how each service is modeled and how they relate to each other.
Who
Software architect or Tech Lead
Software architect, Tech Lead, Software Engineer, or DevOps
Outcome
A clear overview of your services and understanding of their purpose.
Fully modeled services that are ready to be implemented.
How
Here you will automatically generate and have access to an SDK library with a set of code snippets based on the documentation you have defined for your solution and services.
What
Collection of tools, code samples, and documentation that will be used by developers to build your solution.
Why
Allows for a decoupled backend and frontend and helps your developers to write better code.
Who
Software Developer
Outcome
Fully generated SDK library in the language of your choice.
How
Validation: Ensure alignment with relevant stakeholders to confirm consensus on the generated SDK Library. This step is crucial to guarantee accurate implementation.
Here, you will write and implement your code in the Code Editor, utilizing our IDE plugin to enhance your coding efficiency and quality.
What
Involves writing and integrating code based on the specified functional and technical requirements defined inside Uniscale.
Why
Provides a seamless coding experience due to the IDE plugin.
Who
Software Developer
Outcome
Implement the required code to build your solution according to the functional and technical specifications within Uniscale.
How
In conclusion, the Uniscale Method stands out as a robust framework for collaborative software development, integrating domain-driven AI to streamline problem validation and optimize cost-effective solutions.
By adhering to this structured approach, development teams can enhance their productivity, ensure alignment with project goals, and deliver high-quality software efficiently.
Embracing the Uniscale Method not only fosters better collaboration but also paves the way for innovative and scalable software solutions